👨‍🍳 AWS SSM ドキュメント

料理レシピシステムで理解する超入門ガイド

👨‍🍳 シェフ ↔️ 📖 レシピ ↔️ 🍳 調理場

AWS Systems Manager ドキュメントを、身近な料理のレシピシステムで分かりやすく説明します!

🤔 まず、SSMドキュメントって何?

📝 簡単に言うと...

AWS Systems Manager が使う 「作業指示書」 です。
サーバーに対して 「何をどの順番で実行するか」 を詳しく書いた設計書のようなものです

🍳 日常生活の例

料理のレシピ


📖 材料、分量、手順を
詳しく書いた 作り方


👨‍🍳 シェフがレシピを見て
🍳 調理場で正確に料理を作る

☁️ AWSの世界

SSMドキュメント


📄 パラメータ、手順、実行内容を
詳しく書いた 自動化指示書


🤖 Systems Managerがドキュメントを読んで
💻 サーバーで正確に作業を実行

🍳 3つの重要な要素を料理で理解

👨‍🍳

Systems Manager
= 料理長(シェフ)

作業の実行者 です。
レシピ(SSMドキュメント)を読んで、
調理場(サーバー)で 正確に料理(作業) を作ります。

特徴: 自動実行 + 結果レポート
対象: EC2、オンプレミス
📖

SSMドキュメント
= 料理のレシピ

作業手順書 です。
材料(パラメータ)、手順(ステップ)、
完成品(出力)を 詳しく記載 します。

形式: JSON または YAML
種類: Command、Automation など
🍳

EC2インスタンス
= 調理場(キッチン)

作業が実行される場所 です。
シェフ(Systems Manager)が
レシピ通りに 料理(自動化作業) を作ります。

設備: SSMエージェント
種類: Linux/Windows

📖 SSMドキュメントの5つのタイプ

🍳 料理の種類に合わせて、レシピも違う!

作りたい料理によってレシピの書き方が違うように、SSMドキュメントも用途に応じて5つのタイプがあります

Command ドキュメント

= 簡単な一品料理レシピ


🍳 用途: 単発のコマンド実行

📝 例: ソフトウェアインストール
ログ収集、再起動

料理例: 目玉焼き、サラダ
特徴: シンプル、すぐできる
🤖

Automation ドキュメント

= フルコースレシピ


🍽️ 用途: 複雑な自動化ワークフロー

📝 例: AMI作成、パッチ適用
インスタンス起動・停止

料理例: フレンチフルコース
特徴: 複数手順、高度
📋

Policy ドキュメント

= 食品安全基準


用途: 設定の検証・コンプライアンス

📝 例: セキュリティ設定チェック
構成の妥当性確認

料理例: 衛生管理マニュアル
特徴: ルール確認
📦

Package ドキュメント

= 調味料セット


📥 用途: ソフトウェアパッケージ管理

📝 例: アプリインストール
バージョン管理

料理例: スパイスミックス
特徴: まとめて配布
🖥️

Session ドキュメント

= 調理実習の手順


🔗 用途: リモート接続の設定

📝 例: Session Manager接続
ポートフォワーディング

料理例: 料理教室の進行表
特徴: 対話的作業

📝 ドキュメントの構造を理解しよう

📖 レシピの基本構成

どんな料理のレシピも基本的な構成は同じです。SSMドキュメントも同様に決まった構造があります

🍳 カレーライスのレシピ vs SSMドキュメント

📋

基本情報 = レシピのタイトル

料理: 「家庭風カレーライス(4人分)」
SSM: ドキュメント名、説明、バージョン、対象OS

{ "schemaVersion" : "2.2" , "description" : "ソフトウェアをインストールします" , "documentType" : "Command" }
🥕

パラメータ = 材料と分量

料理: 「じゃがいも 3個、人参 1本、玉ねぎ 2個...」
SSM: 実行時に指定する変数(インストールするソフト名など)

"parameters" : { "packageName" : { "type" : "String" , "description" : "インストールするパッケージ名" , "default" : "httpd" } }
👩‍🍳

ステップ = 調理手順

料理: 「1. 野菜を切る 2. 炒める 3. 煮込む...」
SSM: 実行する作業の順番(コマンド、スクリプトなど)

"mainSteps" : [ { "action" : "aws:runShellScript" , "name" : "installPackage" , "inputs" : { "runCommand" : [ "yum install -y {{packageName}}" ] } } ]
🍽️

出力 = 完成した料理

料理: 「香り豊かなカレーライスの完成!」
SSM: 実行結果、ログ、エラー情報など

"outputs" : [ "installPackage.Output" ]

🗺️ 実行の流れを図で見てみよう

👨‍🍳

Systems Manager

料理長(シェフ)

レシピを読んで
指示を出す責任者
📖

SSMドキュメント

料理のレシピ

材料、手順、完成品を
詳しく記載した設計書
🍳

EC2インスタンス

調理場(キッチン)

実際に料理が作られる
作業場所

🔄 実行の流れ

シェフがレシピを確認 → 材料を準備 → 手順通りに調理 → 完成品をお客様に提供

📋 実際の使用例(カレー作りで理解)

1

レシピを用意

料理: カレーのレシピを準備
SSM: 「Apache Webサーバーインストール」ドキュメントを作成
→ 必要なパラメータ(パッケージ名、設定ファイル)を定義

2

調理場を選択

料理: 家庭のキッチンで作るか、レストランで作るか決める
SSM: 実行対象のEC2インスタンスを選択
→ タグや名前で複数のサーバーを一括指定可能

3

材料を準備

料理: じゃがいも、人参、玉ねぎを買ってきて下準備
SSM: 必要なパラメータ値を設定
→ パッケージ名「httpd」、バージョン「latest」など

4

調理開始

料理: シェフがレシピ通りに調理開始
SSM: Systems Managerがドキュメントを実行
→ 各ステップを順番に自動実行

5

進捗確認

料理: 「野菜が柔らかくなったかな?」
SSM: AWSコンソールで実行状況をリアルタイム監視
→ 成功、失敗、実行中のステータスを確認

6

完成・結果確認

料理: 「美味しいカレーが完成しました!」
SSM: 実行結果とログを確認
→ Apacheが正常にインストール・起動されたかチェック

❓ よくある質問

🤔 なぜSSMドキュメントが必要なの?
💰 料金はどのくらいかかるの?
🔧 ドキュメントの作成は難しい?
🛡️ セキュリティは大丈夫?

✨ SSMドキュメントのメリット

🤖

自動化

手作業を削減し、人的ミスを防止。レシピ通りに正確な作業を実行

📊

一括実行

複数のサーバーに同時実行。100台でも同じ作業を一度に実施

📋

標準化

作業手順を文書化し、チーム全体で同じ品質を保つことができる

スケジュール実行

深夜のメンテナンスやパッチ適用を自動で実行

📝

ログ管理

実行結果とログを自動記録。監査やトラブルシューティングに活用

🔄

再利用性

一度作ったレシピは何度でも使用可能。他のプロジェクトでも活用

🎯 まとめ

👨‍🍳 Systems Manager = 料理長(作業の実行者)

📖 SSMドキュメント = レシピ(作業手順書)

🍳 EC2インスタンス = 調理場(作業が実行される場所)

📋 5つのタイプ = 料理の種類(Command、Automation、Policy、Package、Session)


この仕組みを使うことで、 サーバー管理を自動化 し、 ミスを削減 できます!


🎯 初心者へのアドバイス:

  • まずはAWS公式のドキュメントを使ってみる
  • 簡単なCommand型から始める
  • 小さなテスト環境で練習する
  • 慣れてきたら自分用のレシピ(ドキュメント)を作成

Created by SSuzuki1063

AWS SAP Learning Resources