

Contents
責任共有モデル(SaaS提供責任管理)
ユーザーとAWS側、各リソースの管轄を下記画像にて明示している。

[参考公式サイト]
Tag Editer
【タグ検索フィルター】
複数のリソースにタグを一度に追加・編集、置換、削除、検索することができる。タグ付けするリソースを検索し、検索結果からそのリソースのタグを管理できる。
System Manager(SSM)

【リソースの運用効率化】
サーバーにログインせず、AWSのリソースの運用管理をスケーラブルかつコスト効率よく行うサービス群。
※SSMは多くのサービスコンポーネントから構成されており、100以上の事前定義されたドキュメントがある。
・ユーザーポリシーを制御しない。ユーザーにアクセス許可を付与するには、IAMポリシーをアタッチすること。
| managed node (マネージドノード) | 【SSMのリソース】 Systems Manager のために設定されたハイブリッド環境の EC2インスタンス、エッジデバイス、またはオンプレミスのサーバーや仮想マシン (VM) のこと。 |
| SSM パラメータタイプ | Systems Manager パラメータストア内の既存のパラメータに対応。Systems Manager パラメータキーは SSM パラメータの値として指定。CloudFormation は、スタックに使用するパラメータストアから最新の値を取得。 |
| SSMエージェント | 【コンポーネントへの指示】 SystemsManagerで管理したいサーバ(EC2、オンプレサーバ、他の仮想マシン)にインストールするエージェント。EC2に対して、エージェントのインストールや「パラメータストア」内に保存した設定ファイルを選択してのエージェントの起動ができる。例えば、CloudWatchエージェントをSSHログインして直接作業せずとも、SSMコンソール経由でインストール、起動することもできる。 |
| SSMドキュメント | 【コンポーネント指示セット】 マネージドインスタンスに対するSystem Managerの振る舞いの設定をするためのリソース。JSONやYAMLの形式で、ステートマネージャーやRun Commandで、いつ何を行うか、管理しているEC2インスタンスに対して実行するアクション(インスタンスにパッチを適用するなど)を定義、管理できる。 ※マネージドインスタンスが最新のセキュリティアップデートでパッチが適用された状態に維持できるように公開されている(合計7つ) |
[オンプレミスにも対応]
オンプレミスとAWSそれぞれにITシステムが存在している場合、Systems Managerはオンプレミスのサーバを対象にした機能があるため、AWSにてオンプレミス側の運用を巻き取ることができ、運用負荷を大幅に減らすことができる。このように、AWSとオンプレミス双方でリソースや運用の自動化や効率化を実現できることが大きな特徴。
[ハイブリッド環境での設定]
・オンプレミスのサーバーやVMを設定すると、AWSマネジメントコンソール上で「マネージドインスタンス」として表示される。
・これらのインスタンスはIDの接頭辞で区別され、ハイブリッド環境のものは「mi-」、Amazon EC2のものは「i-」で始まる。
[推奨されている3種類のドキュメント]
・AWS-ConfigureWindowsUpdate
・AWS-InstallWindowsUpdates
・AWS-RunPatchBaseline
[ドキュメント名:AWS-RunPatchBaseline]
- 目的:EC2インスタンスにセキュリティ更新とその他のパッチを適用する。
- ベースライン:現在「デフォルト」として指定されている patch baseline が使用される。
- 対応範囲
・OS パッチ適用が可能(Linux/Windows)
・アプリケーションのパッチ適用も可能(ただし Windows では Microsoft アプリケーションに限られる)
主要プラグイン一覧
| プラグイン名 | 説明 |
|---|---|
| aws:applications | Windows EC2 インスタンスにアプリケーション(MSI形式)をインストール・修復・アンインストールします。 |
| aws:cloudWatch | Windows Server から CloudWatch Logs にログやメトリクスを送信します(※現在は CloudWatch Agent の使用が推奨)。 |
| aws:configureDocker | Docker をインストール・設定します。Linux インスタンスでのコンテナ環境構築に便利です。 |
| aws:configurePackage | SSM Distributor や SSM Documents を使って、パッケージのインストール・更新・アンインストールを行います。 |
| aws:domainJoin | Windows インスタンスを Active Directory ドメインに参加させます。 |
| aws:downloadContent | 指定された URL からファイルをダウンロードして、インスタンス上に保存します。 |
| aws:psModule | PowerShell モジュールをインストール・更新・削除します(Windows専用)。 |
| aws:refreshAssociation | State Manager の関連付けを即時再評価・再実行します。 |
| aws:runDockerAction | Docker コンテナの起動・停止・削除などの操作を実行します。 |
| aws:runDocument | 他の SSM ドキュメントを呼び出して実行します(ネスト構造の実現に便利)。 |
| aws:runPowerShellScript | Windows インスタンス上で PowerShell スクリプトを実行します。 |
| aws:runShellScript | Linux/macOS インスタンス上でシェルスクリプトを実行します。 |
| aws:softwareInventory | インスタンス上のソフトウェア情報を収集し、Inventory に登録します。 |
| aws:updateAgent | SSM Agent を更新します(非推奨、代わりに aws:updateSsmAgent を使用)。 |
| aws:updateSsmAgent | SSM Agent を最新バージョンに更新します(推奨)。 |
[引用元サイト]
主要なコンポーネントの一覧
[運用管理]
| Explorer | 運用アイテム情報などを表示するカスタマイズ可能なダッシュボード。利用しているAWSリソースすべてに関して、情報を統合した、カスタマイズ可能なダッシュボードを提供。情報のグルーピングやフィルタリングが可能。 |
| OpsCenter | 運用上の問題の確認、調査、解決を一元的に管理。AWSのリソースに関する問題の確認、調査、解決を一元的に実施できる環境を提供。 |
| CloudWatch ダッシュボード | CloudWatch コンソールで作成したカスタマイズ可能なダッシュボードを表示。CloudWatchのコンソールにあるダッシュボードをSystems Managerの画面からもアクセスできる。わざわざCloudWatchのサービス画面を開く必要がないため、運用の効率性が向上する。 |
| Incident Manager | 事前に準備した対応計画に基づくインシデント管理。 |
[アプリケーション管理]
| Application Manager | アプリケーション単位でのAWSリソースデータの表示、アクション実行。CloudFormationやECS、EKSの状態を確認することが可能で、AWSリソースに関する問題を調査および修正するのに役立つ。 |
| App Config | アプリケーション設定の管理。EC2インスタンス、AWS Lambda、コンテナなどにデプロイするアプリ、環境変数などの設定を事前に決定しておくことで、アプリケーションデプロイ時のエラーを防止するのに役立つ。 |
| Parameter Store | 設定データを一元的に管理するストア。パスワード、データベース文字列といった設定データや機密情報を保存しておき、外部のアプリケーションなどから参照できる。こちらを利用することで、アプリケーションに認証情報等を直接書いてしまう、といったことを回避できる。 |
[ノード管理]
| Fleet Manager | AWSおよびオンプレミスサーバの管理。 |
| コンプライアンス | ログやパッチの適用状況などコンプライアンスの管理に必要なデータを表示。 |
| インベントリ | サーバのシステム設定とインストールされたアプリケーションの把握。 |
| ハイブリッドアクティベーション | ハイブリッド環境でサーバー、エッジデバイス、仮想マシン (VM) をマネージドノードとして設定する。 |
| セッションマネージャー | サーバへのブラウザベースのリモートアクセス。 |
| Run Command | サーバ群の上でリモートコマンド実行。 |
| ステートマネージャー | サーバ設定の一貫性の維持。 |
| パッチマネージャー | 指定ルールに基づいたサーバ群へのパッチ適用。Patch Manager を使うことで、手動の作業を減らしながら、セキュリティとコンプライアンスを維持できる。 |
| ディストリビュータ | サーバへのパッケージの配信およびインストール。 |
[変更管理]
| オートメーション | AWS環境全体に対する自動化処理の実行。 |
| Change Manager | 構成変更ワークフローの簡素化。アプリケーションの設定やインフラストラクチャに対する運用上の変更について、確認や承認を行うワークフローのような機能を提供。 |
| Change Calendar | 指定したアクションが AWS アカウント で実行できるまたはできない日付と時刻の範囲を設定。 |
| メンテナンスウィンドウ | タスクのスケジュール管理。 |
[参照元サイト]
【運用管理】
OpsCenter

【運用問題解決】
オペレーションエンジニアやITプロフェッショナルがAWSリソースに関連する運用作業項目を表示、調査、解決できるような中心的な環境を提供する。
⇒AWSリソースに影響する問題の解決までの平均時間を短縮できる
・EventBridgeやCloudWatchと統合されている
【アプリケーション管理】
Parameter Store

【設定用ストレージ】
設定データ管理と機密情報を一元的に管理するための安全な階層型ストレージを提供。
・パスワード、データベース文字列、Amazon Machine Image (AMI) ID、ライセンスコードなどのデータをパラメータ値として保存できる。
・お客様が管理するキーの機能を備えたAPIキーの安全なストレージを提供できる。
・認証情報のハードコーディングを防ぐためにIAMロールを使用する必要がある。
[保存形式]
・パラメータ値はプレーンテキストまたは暗号化された形式で保存可能。
・暗号化には AWS KMS(Key Management Service) を使用。
※保存可能な情報の例
・パスワードやライセンスキー
・DB接続文字列や AMI ID など
Secure String
【値の暗号化】データを Secure String として保存することで、値が暗号化され管理が容易になる。アプリケーション起動時にパラメータストアからこれらの値を取得し、環境変数として利用する。
[設定管理の自動化と整合性]
データベースサーバーのIPアドレスなどを一元的に管理し、必要に応じて自動的にアプリケーションサーバーの設定ファイルに挿入することができる。
【ノード管理】
Fleet Manager
EC2 の一括管理を主目的としたサービス。サーバーフリート全体の正常性やパフォーマンスステータスを表示する。
・個々のノードからデータを収集してトラブルシューティングや管理タスクを実行。
・インスタンスのパフォーマンス状況やファイルシステム、イベントログなどの情報をコンソールから確認。
・仮想マシンにリモート接続しなくても、個々のサーバーにドリルダウンして、ディスクとファイルの探索、ログ管理、Windows レジストリ操作、ユーザー管理などを行う。
Inventory

EC2 やオンプレミス環境における可視性を提供。
[機能]
・マネージドインスタンスからメタデータを収集。
・メタデータはAmazon S3バケットに保存。
・組み込みツールでデータにクエリを実行可能。
・インスタンスで実行されているソフトウェアや、更新やポリシー適用の必要性を特定できる。
[設定]
・ワンクリック手順で全インスタンスにインベントリを設定可能。
・複数リージョン・アカウントに対応した統合管理が可能。
[収集できるメタデータタイプ]
| アプリケーション | アプリケーション名、発行元、バージョンなど |
| AWS コンポーネント | EC2 ドライバ、エージェント、バージョンなど |
| ファイル | 名前、サイズ、バージョン、インストール日、変更および最新アクセス時間など |
| ネットワーク設定の詳細 | IP アドレス、MAC アドレス、DNS、ゲートウェイ、サブネットマスクなど |
| Windows 更新 | Hotfix ID、インストール者、インストール日など |
| インスタンスの詳細 | システム名、オペレーティングシステム (OS) 名、OS バージョン、最終起動、DNS、ドメイン、ワークグループ、OS アーキテクチャなど |
| サービス | 名前、表示名、ステータス、依存サービス、サービスのタイプ、起動タイプなど |
| タグ | インスタンスに割り当てられるタグ |
| Windows レジストリ | レジストリキーのパス、値の名前、値タイプおよび値 |
| Windows ロール | 名前、表示名、パス、機能タイプ、インストール日など |
| カスタムインベントリ | カスタムインベントリの操作 に説明されるようにマネージドインスタンスに割り当てられたメタデータ |
Hybrid Activation
AWSの外にあるサーバー(オンプレミスや他社クラウド)を、AWS Systems Managerで管理できるようにする機能。これにより、AWS EC2インスタンスと同じように、一元的にサーバーのパッチ適用、インベントリ収集、自動化などの運用管理が可能になる。
Session Manager

【安全なセッション】
SystemManagerの完全マネージド型の機能。サーバへのブラウザベースのリモートアクセス(ワンクリックブラウザベースのシェル)、またはAWS CLIを介して、安全で監査可能なインスタンスの管理を提供する。
AWS CLI を使用してマネージドノードとの Session Manager セッションを開始するには、ローカルマシンに Session Manager プラグインをインストールする必要がある。Microsoft Windows Server、macOS、Linux、および Ubuntu Server のサポート対象のバージョンにプラグインをインストールできる。
※インバウンドポートを開いたり、踏み台ホストを維持したり、SSHキーを管理が不要
・ポートに依存しない非SSHのセッションを確立できる。また、セッション中に実行されたコマンドをCloudWatch Logs に保存できる。
・アカウント内のインスタンスとのセッションを開始できる。セッションの開始後、他の接続タイプと同様、Powershellコマンドを実行できる。
●ポートフォワーディング
【パケットの転送指定】
インターネットから特定のポート番号宛てに届いたパケットを、あらかじめ設定しておいたLAN側の機器に転送する機能。SSHセッション中に実行したコマンドのログを保持し、ポートフォワーディング機能を維持する。
[セキュアなアクセス]
下記、要件を保証する。
●プラットフォーム
EC2インスタンスへの簡単なワンクリックのクロスプラットフォームアクセスの提供。
●堅牢なアクセス要件
インスタンスへの制御されたアクセス、厳格なセキュリティプラクティス、インスタンスアクセスの詳細を含む、完全に監査可能なログ環境を提供。
・インバウンドポートを開かずに、セキュアなインスタンスへのアクセスを提供できる。
・エンジニアが実行するコマンドの監査を提供し、エンジニアのアクションが完全に監査可能になる。
Run Command

【大規模なコマンド操作】
一般的な管理タスクを自動化し、臨時(または1回限り)の大規模な設定変更を実行できる。
※サーバ群の上でリモートコマンド実行
・AWSマネジメントコンソールからWindows サーバーのPowerShellスクリプトを実行できる。
・CLIを介してEC2インスタンスマネージドノードの設定を安全にリモートで管理ができる。
スケジュールに従ってマネージドノードをスキャンしてコンプライアンスをレポートしたり、利用可能なパッチをインストールしたり、必要に応じてターゲット オンデマンドへのパッチの適用やスキャンを行ったりするオプションがある。
State Manager

【設定の維持】
EC2 とハイブリッドインフラストラクチャを定義された状態に保つプロセスを自動化する、安全かつスケーラブルな設定管理サービス。
※運用チームが望む状態(特定のソフトウェアがインストールされている、ポートが閉じているなど)を定義し、それを自動的に適用・維持する。
【一例】
・起動時に特定のソフトウェアを使用してインスタンスをブートストラップする
・ライフサイクルを通じてソフトウェアの更新でインスタンスをパッチする。
・ライフサイクルを通じて Linux および Windows マネージドインスタンスでスクリプトを実行。
・インスタンスを Windowsドメインに結合する (Windows Server インスタンスのみ)。
・定義済みのスケジュールに従ってエージェント(SSMエージェントなど) をダウンロードして更新。
[State Manager の前提条件]
利用するにあたり、EC2には以下のような条件が必要。
・適切なRole(ProfileがEC2へ割り当たっている事)の準備。
・インターネットへの接続、もしくはSSM Endpointsへの接続が可能なこと。
・ステートマネージャーでログを出力するため、ログ用のバケットへの書き込み権限があること。
Patch Manager

【パッチの迅速適用】
指定ルールに基づいたサーバ群へのパッチ適用。問題の迅速な特定と修正パッチ適用が可能。セキュリティアップデートやその他の更新を、マネージドインスタンスに自動的に適用。(Windows Server、Ubuntu Server、RHEL、SLES、CentOS、Amazon Linux 1/2を対象)
・インスタンスをスキャンして、不足しているパッチのみをレポート。
・必要に応じて、不足パッチを自動インストールも可能。
・System Managerエージェントによって、リソースの更新、管理、設定を実施できる。
・パッチ承認ルール(例:リリース後数日で自動承認)や承認/拒否パッチのリストを設定可能。
[タグによる管理]
EC2タグを使って、個別インスタンスやグループ単位でパッチ適用の対象を指定。タグはパッチベースラインにも追加可能。
[メンテナンスのスケジューリング]
Systems Managerのメンテナンスウィンドウ機能で、パッチ適用を定期的にスケジュール可能。オペレーションシステムのパッチ適用、ドライバー更新、ソフトウェアやパッチのインストールなど、インスタンスに対して中断の可能性があるアクションを実行するスケジュールを定義できる。
[自動承認の遅延]
パッチがリリースまたは最後に更新されてから自動承認されて適用されるまでの待機日数。
【例】
CriticalUpdates 分類を使用してルールを作成し、自動承認の遅延として 7 日間を設定した場合、7 月 7 日にリリースされた新しい重要なパッチは 7 月 14 日に自動的に承認される。
Distributor

【パッケージ運用】
サーバへのパッケージ配信およびインストール。
・アカウントにソフトウェアパッケージを安全に保存、配布するために使用。
・ソフトウェアをパッケージ化して Systems Managerマネージドノードへの公開に役立つ。
・管理対象となっている複数のマネージドインスタンスに対してAWSで公開されたパッケージ化された(既存含む)ソフトウェアを新規作成またはデプロイ、配布することができる。
[パッケージ作成]
Distributor でパッケージを作成すると、システムに SSM ドキュメントが作成。このドキュメントに .zip ファイルを添付できる。
Distributor を実行すると、システムは SSM ドキュメントにある指示を処理し、指定されたターゲットに .zip ファイルのソフトウェアパッケージをインストールする。
[パッケージ展開]
独自のソフトウェアをパッケージ化して公開したり、Distributor を使用して、CloudWatchAgent などの AWS から提供されるエージェントソフトウェアパッケージ、または Trend Micro などのサードパーティーパッケージを検索して公開することができる。
パッケージの公開により、ノード ID、AWS アカウント ID、タグ、または AWS リージョン を使用して特定のマネージドノードに、パッケージのドキュメントの特定のバージョンを公開できる。

【変更管理】
Automation

【タスク自動化】
ランブックを使用してEC2 やその他の AWS リソースのオペレーションやメンテナンス、デプロイ作業を自動化する。
特徴
・Runbook(ランブック)を使用して作業手順を定義。
・AWSが提供するテンプレートを利用。または自分でカスタムRunbookを作成可能。
・Amazon EventBridgeと連携して通知を受信可能。
・Systems Managerコンソールから進行状況をモニタリング可能。
・Document:自動化したい一連の処理を定義。事前定義されたものを選択することもできれば、自前で作成することもできる。
機能性
| 機能カテゴリ | 実装例・説明 |
|---|---|
| 同時実行制限 | maxConcurrency パラメータで、同時に処理するターゲット数を制限可能。過負荷や予期せぬ影響を防止する。 |
| エラーしきい値 | maxErrors パラメータで、許容可能なエラー数を指定し、それを超えると自動化を停止する。 |
| 承認ステップ | aws:approve アクションを使って、特定のステップで、指定ユーザーの承認を求めることが可能。 |
| 入力バリデーション | allowedValues や allowedPattern を使って、パラメータの不正入力を防止。 |
| ログと監査 | CloudWatch Logs や CloudTrail に記録し、実行履歴やトラブルシュートに活用。 |
| オートメーションランブック | [実行アクション定義] Systems ManagerがマネージドインスタンスとAWSのリソースに実行するアクションの定義を行う。 Automationには事前にランブックが用意されており、EC2の再起動など一般的なタスクも使用するできる。 [自動アクション] Automationにはステップというものがあり、各ステップごとにAutomationを関連付ける。 |
| オートメーションクォーター | AWSアカウントはAutomationを同時に100個実行できる。100以上の実行は保留中のステータスになる。 |
| オートメーションキューのクォータ | 100個の同時Automationの数より多くのAutomationを実行しようとすると、後続にAutomationが追加。 追加制限として、最大1000個までキューに保存できる。 |
| レート制御のオートメーションクォータ | AWSアカウントは最大25個のレート制御のオートメーションを同時実行できる。 25個より多くの実行すると保留中のステータスになる。 |
| レート制御のオートメーションキューのクォータ | 最大25個のレート制御のAutomationより多くのAutomationを実行すると、後続にAutomationが追加。 最大1000個のレート制御のAutomationをキューに追加できる。 |
Maintenance Windows

【タスクの実行・管理】
タスクのスケジュール管理。
・タグを作成または更新するときに、タグをメンテナンスウインドウに追加できる。
・各メンテナンスウインドウには、スケジュール、最長期間、登録されたターゲットのセット(実行されるインスタンス)、登録されたタスクのセットがある。
ノードに対して破壊的になり得るアクションを実行する下記のようなスケジュールを定義できる。
・オペレーティングシステムのパッチ適用
・ソフトウェアやパッチのインストール
・ドライバーの更新など
※Amazon S3バケット、Amazon SQS キュー、AWS KMS キーなど、他の AWS リソースタイプでアクションをスケジュールできる。
Well-Architected Tool
[大まかな流れ]
①Well Architected Framework Toolを利用してレビューを実施する。
②レビューの結果をもとに課題に対して改善活動を行う。
③Well Architected Framework Toolからレポートが作成される。
④レビュー時の議論、レポートの内容から改善施策を立案する。
⑤課題の改善を実施する。
フレームワーク
| Well Architected Framework | AWSがこれまで蓄積してきた経験から生まれたシステム設計・運用における「ベストプラクティス集」。 |
| Well Architected Framework Tool | ユーザのワークロードがベストプラクティスにどれほど沿っているかレビュー項目に対して、関係者で議論して進めていく。理想像と現行の環境とのギャップを理解できる。結果をレポートとして出力。 |
Well Architected Framework
以下の6つの観点をもとに実施する。
| 運用上の優秀性 | 変更の自動化、イベントへの対応、日常業務を管理するための標準化。 |
| セキュリティ | データの機密性と整合性、ユーザー許可の管理、セキュリティイベントを検出するための制御。 |
| 信頼性 | 分散システムの設計、復旧計画、および変化する要件への処理方法。 |
| パフォーマンス効果 | 最適化されたリソースの選択、パフォーマンスのモニタリング、ニーズ増大に応じて効率を維持。 |
| コスト最適化 | 時間の経過による支出把握と資金分配の制御、適切なリソースの種類と量の選択など。 |
| 持続可能性 | 持続可能性の責任共有モデル、影響についての把握、および必要なリソースを最小化してダウンストリームの影響を減らすための使用率を最大化。 |
[AWSパートナーとレビューを行う場合]
[メリット]
・熟練のAWSエンジニアが設問を正しく質問・解説するためレビューがより意味のあるものになる。
・レビュー後、出力されるレポートを整理されたオリジナルのフォーマットに変換してもらえる。
・改善施策の立案・並走まで対応してくれる
[一例]
例①)
「セキュリティサービスの標準化・一元管理」「各アカウントのホスト管理の一元化」ができていない
➡AWSを利用する上でガイドラインを作成する。セキュリティ、コストなどの項目についてガイドラインを作成し標準化を狙う。
例②)
定期的な不要リソース削除の仕組みがなく、スナップショットだけで利用料全体の20%を占めていた。
➡不要なスナップショットを削除すべく、効率




