my syntax suger

i have an unbeknown dictionary. everything is up to me.

de:code2019 CD13 Azure Monitor周りのまとめ

f:id:hrt0kmt:20190529090621j:plain

  • Session: CD13 / クラウド ネイティブ / ハイブリッド アプリケーションの監視 ~ DevOps モニタリング アーキテクチャ ~
  • Date: 2019/05/30
  • Place: 港区芝公園ザ・プリンス パークタワー東京
  • Contents: Azure Monitor、Azure Monitor Logsのdata source
  • Official URL

Agenda

  • Azure Monitorとは何か
  • Azure Monitor Logsのデータソース

Presentation

当該セッションにて重要だと僕が思ったところを抽出した。Azure自体触ったことが無いため、誤った独自の解釈を含んでいる場合は指摘いただけると助かります。

Azure Monitorによるクラウド-ネイティブ/ハイブリッドアプリケーションの監視

Azure Monitorでアプリケーション、インフラストラクチャ、ネットワークのログ収集、分析を一括管理可能。
※ 複数の異なる監視ツールを利用する必要がない。

  • 以下のログを収集
    • APM (Application Performance Management) によるWeb Appの可用性、Performance、使用状況、エラーログの監視(Application Insights)
    • Syslog、Event Log、Performance Counter Log
    • IIS等MWのログ
    • Azure resourceの操作ログ
    • Azure subscriptionの操作、管理ログ
    • Azure tenant level (Azure Active Directory)の操作ログ
  • AKS (Azure Kubernetes Service) のコンテナリソース、ログ監視
  • 仮想マシンとAKSのインフラストラクチャレベルの問題を関連付け
  • スマートアラート機能によるアラート通知自動化
  • Azure Monitor Logsでトラブルシューティング

f:id:hrt0kmt:20190530175335j:plain
DevOpsモニタリングアーキテクチャ (CD13)

f:id:hrt0kmt:20190530174617j:plain
Azure Monitor: アプリケーションとインスラストラクチャを監視 (CD13)

f:id:hrt0kmt:20190530180049j:plain
Azure Monitor: アプリケーションとインスラストラクチャを監視 (CD13)

Azure Subscription ログ

  • Subscription (※1.) 内のAzure serviceの正常性に関する情報を提供
  • Azure Resourceに対し行われた構成変更

※1. Subscriptionについてはこちらが分かりやすかった為、引用させていただきます。

f:id:hrt0kmt:20190530180623j:plain
Subscription Log (CD13)

f:id:hrt0kmt:20190530180805j:plain
Subscription Log (CD13)

Azureが出力するログ

  • Activity Logs
    • リソースに対し外部から誰が何を行ったか記録する。
    • Log Analytics workspaceが同一subscriptionにある場合、workspaceと紐付けるだけでActivity Logがworkspaceに転送される。
    • 90日間は基盤側に保存。
    • 別workspaceの場合、Event Hub, Logic Appを利用してログを格納させる。
  • Diagnostic Logs
    • 各リソースが出力する診断ログ。
    • 多くのserviceの診断設定でLog Analytics workspaceを指定することで転送可能。
    • metricsは93日間Monitorのmetric storeに自動保存されるが、診断ログは自分で設定が必要。

f:id:hrt0kmt:20190530181029j:plain
Activity Logsのカテゴリ (CD13)

Application Insights

  • App Mapによるサーバー・クライアントの関連性や依存関係を視覚化。
  • 分散されたE2Eトランズアクションのトラック。
  • Snapshot DebuggingとProfiling機能でコードレベルまでドリルダウン。
  • エンドユーザーの行動把握。

f:id:hrt0kmt:20190530182249j:plain
Application Insightsの有効化: Node.jsの場合

Custom Sources

  • 他社クラウド、オンプレ経由でも、以下のことが可能。
    • REST clientからCustom Metrics APIを介してAzure Monitor Metricsへデータ保存。
    • REST clientからCustom Data Collector APIを介しAzure Monitor Logsへデータ保存。

その他データソース

  • Azure Security Center
    • 収集したセキュリティ関連のデータをLog Analytics workspaceへ保存しAzure Monitorで収集された他データと一緒に分析可能。
  • Azure Sentinel
    • 様々なdata sourceから収集したデータを (同上)。

f:id:hrt0kmt:20190530182425j:plain
Azure Security Centerのしくみ (CD13)

f:id:hrt0kmt:20190530182459j:plain
Azure Security Center (CD13)

Digression

Azure Seriviceの各種ログ関連はデフォルトでの保持期間が比較的短い為、トラブルシューティング的な用いられ方で利用し、アーカイブ・分析を目的とした利用は、subscriptionとworkspaceを意識して転送設定を都度行う (Log Analytics workspaceへログを集約する) 必要性があると感じた。

以上。