以下の講演メモです。
【初級】AWS におけるシステム運用管理の自動化 | AWS Summit Tokyo 2019
動画 https://www.youtube.com/watch?v=Lja1rMCSRV8
資料 https://pages.awscloud.com/rs/112-TZM-766/images/C1-05.pdf
Systems Manager(SSM)とはどんなサービスか
EC2インスタンスとオンプレサーバをまとめて設定管理することができる。
SSMインベントリ
課題 どのサーバに何がインストールされているか不明。
- OSバージョンは何?
- 必要なアプリケーション?不要なアプリ?
- パッチ適用済み?
解決方法 SSMインベントリ
SSMエージェントをEC2やオンプレサーバにインストールする。
SSMエージェントがOSやアプリ構成情報を収集してくれる。
※Systems Manager インベントリで収集できるメタデータのタイプの一覧
https://docs.aws.amazon.com/ja_jp/systems-manager/latest/userguide/systems-manager-inventory.html
応用 インベントリの収集と詳細な分析
インベントリの情報収集して一箇所のS3バケットへ転送。
https://docs.aws.amazon.com/ja_jp/systems-manager/latest/userguide/sysman-inventory-configuring.html
↓
そのデータをAthenaで分析する
SSMメンテナンスウィンドウ
課題 たくさんのサーバに対して定期的に同じ処理をしたい
解決法 メンテナンスウィンドウを利用
- SSMドキュメントという形で定義されたタスクを実行
- AWSの提供済みSSMドキュメントが利用可能
- Automationタイプ AWSサービスに処理を実施
- https://docs.aws.amazon.com/ja_jp/systems-manager/latest/userguide/automation-actions.html#automation-action-runcommand
- Commandタイプ サーバ内でコマンドを実行
- その他
(初級者はAutomationタイプとコマンドタイプがあることを知っておく。)SSM ドキュメントのタイプ
https://docs.aws.amazon.com/ja_jp/systems-manager/latest/userguide/sysman-ssm-docs.html
SSMステートマネージャー
あるべき状態を保つため定期的にドキュメントを実行してくれる。
AWS Configでリソースの変更を追跡
課題 AWSがリソースがあるべき状態を保てない
解決方法 AWS Configを利用する
-
誰がいつ、どのような変更を行ったのか記録したい。
- 記録場所はどこ? 強いて言うならAWSのポータルかな。基本はAPIで取得。
https://docs.aws.amazon.com/ja_jp/config/latest/developerguide/looking-up-discovered-resources.html
- 記録場所はどこ? 強いて言うならAWSのポータルかな。基本はAPIで取得。
-
ルールに反する変更を修復
- AWS Config マネージドルールをAWSが提供
Amazon CloudWatch Eventsでイベントに自動的に反応
課題 特定のイベントが発生した際になるべく早く解決したい。
解決方法 CloudWatch Eventsで解決
- イベントソース → Amazon CloudWatch Events → ターゲット
- イベントソースはイベントパターン or スケジュール
- ターゲット AWSサービスを指定
SSMとCloudWatch Eventsの使い分け
- SSM
- SSMエージェントを介してEC2上のコマンド実行ができる。
- 管理対象になにかをしたいとき
- SSMセッションマネージャを使えば、ブラウザ上でSSHアクセス可能
(WindowsだとAWS CLI?)
https://docs.aws.amazon.com/ja_jp/systems-manager/latest/userguide/session-manager-working-with-sessions-start.html
- Amazon CloudWatch Events
- 汎用的なイベントドリブンなトリガーとして機能
- 何らかの出来事に反応してタスクを実行したいとき
所感
AWSには運用自動化のため便利なツールが用意されているという印象。
これに相当するAzureのサービスがわからないので調べておいたほうがいい・・・