1
1

AWSシステムマネージャーを使用してEC2へのDatadog agentのインストールを自動化する

Posted at

AWSシステムマネージャーのAutomationドキュメントを使用すると、既存の複数のEC2インスタンスにDatadog agentを効率的にインストールできます。

利点

  • 複数のインスタンスに同時にインストールできる
  • プロセスが自動化されるため、人的エラーのリスクが低減される
  • インストールプロセスの一貫性が保たれる
  • 大規模な環境での展開が容易になる

前提条件

  1. AWSアカウントにアクセス可能であること
  2. 対象のEC2インスタンスにSSMエージェントがインストールされていること
  3. EC2インスタンスに適切なIAMロールが割り当てられていること(AmazonSSMManagedInstanceCore ポリシーを含む)
  4. DatadogのAPI keyを用意していること

手順

SSMオートメーションドキュメントの作成

  1. AWSマネジメントコンソールで「Systems Manager」に移動します。

  2. 左側のメニューから「ドキュメント」を選択し、「ドキュメントの作成」の中の「オートメーション」をクリックします。

  3. 「コード」をクリックし以下のYAMLコードを使用して新しいオートメーションドキュメントを作成します:

---
schemaVersion: '0.3'
description: 'Install Datadog Agent on EC2 instances'
assumeRole: '{{AutomationAssumeRole}}'
parameters:
  InstanceIds:
    type: StringList
    description: 'EC2 Instance IDs'
  DatadogApiKey:
    type: String
    description: 'Datadog API Key'
  AutomationAssumeRole:
    type: String
    description: '(Optional) The ARN of the role that allows Automation to perform the actions on your behalf.'
    default: ''
mainSteps:
  - name: InstallDatadogAgent
    action: 'aws:runCommand'
    inputs:
      DocumentName: AWS-RunShellScript
      InstanceIds: '{{InstanceIds}}'
      Parameters:
        commands:
          - |
            DD_API_KEY={{DatadogApiKey}} bash -c "$(curl -L https://s3.amazonaws.com/dd-agent/scripts/install_script.sh)"

ドキュメントに名前を付けて(例:「datadog_agent_install」)保存します。

オートメーションの実行

Systems Managerダッシュボードで「オートメーション」を選択し、「Owned by me」の中に先ほど作成したRunbookを指定し「オートメーションの実行」をクリックします。

以下のパラメータを入力します:

  • InstanceIds: Datadog agentをインストールしたいEC2インスタンスIDのリスト
    ※Show interactive instance pickerをONにするとEC2が出てくるのでそれを選択してもOK
  • DatadogApiKey: DatadogのAPI key

「実行」をクリックしてオートメーションを開始します。

結果の確認

オートメーションの実行状況を確認します。
完了後、対象のEC2インスタンスにSSH接続し、Datadog agentが正常にインストールされたことを確認します:

sudo systemctl status datadog-agent

注意点

  • SSMエージェントが正しくinstallされている必要がある
  • 適切なIAMが設定されている必要がある
  • datadog API keyは機密情報なので取り扱い注意
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1