Azureガイダンスレポート

Azureサービスのコストの最適化、パフォーマンスと信頼性の向上を行うためにベストプラクティスを取得します。これら推奨事項は3つの優先度「高・中・低」で分けられています。

メトリクスベースのプラクティスはAzure監視のデータ収集時にその情報が取得されます。その他のプラクティスはAzure APIによりデータを収集し、プラクティスに沿っているかを確認します。

ガイダンスレポートの有効化

次の手順を参照してください。

  1. Site24x7にログインし、Cloud > Azureの順にアクセスし、Azure監視を選択します。
  2. 左パネルのガイダンスレポートをクリックします。
  3. ガイダンスレポートの有効化をクリックします。

すべての推奨事項が反映されるまで少し時間をおいてください。

ベストプラクティスチェック

Azure仮想マシン (VM)

1. アイドルVM

優先度:

ベースライン:

CPU使用率、出力・入力ネットワークパターンの解析によりVMはアイドル状態とみなされます。CPU使用率が2%未満、かつ全ネットワークインターフェースの入力および出力バイト数の合計が100バイト未満の場合、デフォルトでそのVMはアイドル状態としてマークされます。

推奨事項:

Azureでは、アイドルのVMでも課金が発生します。このコスト削減のために、VMの停止や削除を行うか、サイズのスケールダウンを行ってください。

2. VMの高い使用率

優先度:

ベースライン:

Azure VMは次の条件に1つ以上でも合致すれば過剰に使用されているとみなされます。

  • 1日の平均CPU使用率が過去7日で90%を超過している。
  • 1日の平均メモリ使用率が過去7日間で90%を超過している。(Azure VMにエージェント拡張が行われている場合のみ利用可能です)

推奨事項:

VMサイズを変更するか、オートスケーリンググループにVMを追加してください。

3. VMのネットワークセキュリティグループ(NSG)のネットワークポート制限

優先度:

ベースライン:

次の問題を回避するために、VMに関連付けられているNSGですべてのネットワークポートを制限する必要があります。

  • 悪意のあるインサイダー
  • データ流出
  • データ引き出し

推奨事項:

複数VMのインバウンドルールを編集し、特定のソースレンジへのアクセスを制限します。

  1. アクセスを制限したいVMを選択します。
  2. "ネットワーキング"欄で過度に許容的なルールを持つネットワークセキュリティグループをクリックします。
  3. "ネットワークセキュリティグループ"欄で過度に許容的なルールをクリックします。
  4. ソースIPレンジを編集しルールを改良します。
  5. "保存"をクリックし、変更を適用します。

インターネットから直接VMにアクセスする必要がない場合、それらは関連付けられているパブリックIPから取り除かれます。

4. VMのユーザー定義のタグ

優先度:

ベースライン:

タグ(キーと値のペア)の形式でメタデータを割り当てて、インスタンス、イメージ、自動スケーリンググループの追跡と管理を改善します。

推奨事項:

タグの作成が、Azureベストプラクティスにつながります。

5. 高I/OのVM

優先度:

ベースライン:

ディスクが少ない状態でのI/O集中型のワークロードは、VMのパフォーマンスに大きな影響を与えます。

推奨事項:

高いIOPSを必要とするVMディスクをプレミアムストレージに移行します。

6. 低使用率のVM

優先度:

ベースライン:

過去48時間でCPU使用率が2%未満の場合、低使用率とみなされます。

推奨事項:

Azureでは、インスタンスタイプや利用時間に基づいて課金が発生します。使用率の低いVMを特定し停止して、コストを削減してください。

7. ネットワークセキュリティグループ(NSG)のインバウンド・アウトバウンドルールが50以上

優先度:

ベースライン:

VMインスタンスに関連付ける最大5つのセキュリティグループを指定し、セキュリティグループごとに、受信トラフィックと送信トラフィックを制御するルールを追加します。セキュリティグループに多数のルールがある場合、インスタンスのパフォーマンスが影響を受ける可能性があります。

推奨事項:

VMセキュリティグループ内の必要のないルールや重複しているルールを削除します。

8. タグ"環境:テスト"を持田リソースの自動シャットダウン

優先度:

ベースライン:

テストなどの目的で作成したVMを削除し、コストを削減します。

推奨事項:

テスト用に追加され、1週間以上実行されているVMを削除します。

9. 可用性セットグループに関連付けられていないVM

優先度:

ベースライン:

可用性セット内のVMは全体のパフォーマンスを維持するのに役立ちます。ハードウェアやソフトウェアに障害が発生した場合に、サブセットのVMのみその影響を受けます。

推奨事項:

VMの可用性セットを作成してください。

AzureパブリックIPアドレス

1. マッピングされていないIPアドレス

優先度:

ベースライン:

リソースからIPアドレスの関連付けを解除し、同じアカウントの別のIPアドレスに再マッピングすることにより、インスタンスまたはリソースの障害を非表示にします。

推奨事項:

未使用のアドレスにも少額の時間料金がかかります。そのため、パブリックIPアドレスをアクティブなインスタンス/インターフェースに関連付けるか、削除します。

Azure App Service Plan

1. 使われていないApp Service Planのスケールアウト

優先度:

ベースライン:

あまり使用されていないApp Service Planの支払いを停止します。

推奨事項:

プランをスケールアウトしてコストを削減します。

2. 平均メモリ80%を超えているWeb Appの削減

優先度:

ベースライン:

高メモリ使用率はApp Service Planで稼働しているアプリケーションのパフォーマンスを減少させます。プランの拡張を検討し、メモリ制限を増やしてください。

推奨事項:

プランをスケールアップし。パフォーマンスを改善します。

3. CPU時間が80%を超えているWeb Appの削減

優先度:

ベースライン:

高CPU使用率はApp Service Planで稼働しているアプリケーションのパフォーマンスを減少させます。プランの拡張を検討し、メモリ制限を増やしてください。

推奨事項:

プランをスケールアップし、パフォーマンスを改善します。

4. App Service Planのサイト数使用率が5%未満

優先度:

ベースライン:

サイト数が許容しているサイト数の5%未満の場合、あまり使用されていないものとしてみなされます。

推奨事項:

別のApp Service Planのアプリケーションを移動し、コストを削減します。

Azure Web App

1. 平均応答時間が200ミリ秒を超えているWeb App

優先度:

ベースライン:

遅延はダウンにつながります。Web Appの遅い応答時間はビジネスに影響を与えます。過去一週間でパフォーマンスが遅いWeb Appの監視をしましょう。

推奨事項:

APMを使用してアプリケーションを監視し、問題のあるモジュールやリソースを特定します。

2. 5xxエラーコード数の多いWeb App

優先度:

ベースライン:

エラーの起こりやすいWeb Appはいくつかの部分やモジュールに障害が発生しやすくなり、ビジネスに影響を与えます。

推奨事項:

適切なエラー処理メカニズムによってエラー応答を減らし、エラーモジュールを修正します。

3. 認証が無効化されているWeb App

優先度:

ベースライン:

認証が無効なWebアプリは匿名のエントリを許可し、ユーザーログインが効果しなくなります。

推奨事項:

認証を有効化し、匿名のアクセスを防止します。

4. バックアップが無効化されているWeb App

優先度:

ベースライン:

Azureバックアップは障害があった際のWeb Appの回復に役立てられます。

推奨事項:

Azure Web Appのバックアップを有効にします。

5. タグ付けされていないWeb App

優先度

ベースライン:

タグを用いてAzureリソースの管理をより良くします。タグ付けされていないリソースは目が届かなくなり、管理が難しくなります。

推奨事項:

わかりやすいキーとバリューのペアを用いたタグをAzureリソースに付与し管理しやすくします。

Azure Function App

1. 公開されているAzure Function

優先度:

ベースライン:

Azure Functionは要求数に基づいて課金が発生し、要求はイベント通知または呼び出しに対する応答を示します。不正な実行を許可すると、サブスクリプションに予期しない請求が発生する可能性があります。

推奨事項:

Azure functionログインポリシーを使用し、呼び出し権限を管理します。

FAQ