メニュー
Amazon EC2 Systems Manager
ユーザーガイド

Automation コンソールのチュートリアル: Linux AMI にパッチを適用する

この Systems Manager Automation のチュートリアルでは、Amazon EC2 コンソールと Systems Manager AWS-UpdateLinuxAmi ドキュメントを使用して Linux AMI に自動的にパッチを適用する方法を示します。このチュートリアルを使用して、Ubuntu、CentOS、RHEL、Amazon Linux AMI の各 Linux バージョンを更新できます。AWS-UpdateLinuxAmi ドキュメントは、その他のサイト固有のパッケージと設定のインストールも自動化します。

このチュートリアルでは、AWS-UpdateLinuxAmi ドキュメントのパラメータをランタイムに指定する方法を説明します。Automation にステップを追加するか、デフォルト値を指定する場合は、AWS-UpdateLinuxAmi ドキュメントをテンプレートとして使用できます。

Systems Manager ドキュメントの使用の詳細については、「Systems Manager ドキュメント」を参照してください。ドキュメントに追加できるアクションについては、「Systems Manager Automation アクション」を参照してください。

AWS-UpdateLinuxAmi ドキュメントを実行すると、Automation は以下のタスクを実行します。

  1. Linux AMI から一時 Amazon EC2 インスタンスを起動します。このインスタンスに設定されているユーザデータスクリプトで SSM エージェントがインストールされます。SSM エージェントは、Systems Manager の Run Command からリモート送信されたスクリプトを実行します。

  2. 以下のアクションを実行してインスタンスを更新します。

    1. インスタンスでユーザー提供の更新前のスクリプトを起動します。

    2. インスタンスの AWS ツールを更新します (ツールがある場合)。

    3. ネイティブパッケージマネージャを使用してインスタンスのディストリビューションパッケージを更新します。

    4. インスタンスでユーザー提供の更新後のスクリプトを起動します。

  3. 一時インスタンスを停止します。

  4. 停止したインスタンスから新しい AMI を作成します。

  5. インスタンスを終了します。

このワークフローが Automation で正常に完了すると、Amazon EC2 コンソールの AMI ページで新しい AMI が利用可能になります。

重要

Automation を使用してインスタンスから AMI を作成すると、インスタンスの認証情報、パスワード、データ、その他の機密情報が新しいイメージに記録されることに注意してください。インスタンスから AMI を作成する場合は注意が必要です。

Automation を開始する際に、以下の制限に注意してください。

  • Automation は、リソースのクリーンアップを実行しません。サンプルワークフローの最後のインスタンス終了ステップに達する前にワークフローが停止した場合、インスタンスを手動で停止するか、Automation ワークフロー中に開始されたサービスを無効にする必要があります。

  • Automation でユーザーデータを使用する場合、ユーザーデータが base-64 エンコードである必要があります。

  • Automation は、実行レコードを 30 日間保持します。

  • Systems Manager および Automation には、次のサービス制限があります。

Automation を使用して パッチを適用した AMI を作成するには

  1. 以下の情報を収集します。この情報は、この手順で後ほど指定します。

    • 更新する AMI のソース ID。

    • インスタンスでアクションを実行するためのアクセス許可を Systems Manager に与える AWS Identity and Access Management (IAM) インスタンスプロファイルのロール。詳細については、「方法 2: IAM を使用した Automation のロールの設定」を参照してください。

    • Automation がユーザーのアクションを実行するために使用する Automation (ロールの継承) の IAM サービスロール。詳細については、「Automation の設定」を参照してください。

    • (オプション) 更新の適用前に実行するスクリプトの URL。

    • (オプション) 更新の適用後に実行するスクリプトの URL。

    • (オプション) 更新する特定のパッケージの名前。デフォルトでは、Automation はすべてのパッケージを更新します。

    • (オプション) 更新から除外する特定のパッケージの名前。

  2. Amazon EC2 コンソールを開き、ナビゲーションペインの [Systems Manager Services] を展開し、[Automations] を選択します。

  3. [Run automation] を選択します。

  4. [Document name] リストで、[AWS-UpdateLinuxAmi] を選択します。

  5. [Version] リストで、[1] を選択します。

  6. [Input parameters] セクションで、ステップ 1 で収集した情報を入力します。

  7. [Run automation] を選択します。Automation 実行 ID が表示されます。[OK] を選択します。

  8. 実行リストで、先ほど開始した実行を選択し、[Steps] タブを選択します。このタブには、ワークフローアクションのステータスが表示されます。更新プロセスは完了までに 30 分以上かかる場合があります。

ワークフローが終了したら、更新した AMI からテストインスタンスを起動して、変更を確認します。

注記

ワークフローのいずれかのステップが失敗した場合は、失敗に関する情報が [Automation Executions] ページに表示されます。ワークフローは、すべてのタスクを正常に完了すると、一時インスタンスを終了するように設計されています。失敗したステップがあると、システムはインスタンスを終了できない場合があります。失敗したステップがある場合は、一時インスタンスを手動で終了します。