技術検証：AWS上のWindowsサーバーに対して、PowerShellを使ってDatadog Agentを導入してみた

## はじめに
Datadogは、インフラやアプリケーションの監視を一元管理できるプラットフォームで、AWSやGCP、Azureとも簡単に統合できます。

:::note warn
**今回はDatadogのアカウントを作成し、EC2インスタンスにDatadog Agentをインストールする内容をまとめていきます。**
:::

システムの状態をリアルタイムで把握したい、インシデント対応をスムーズにしたいと考えている場合は、***無料トライアルで試してみるのもおすすめです。***

## 書こうと思ったきっかけ
受講しているITスクールのチーム開発において、今回は運用監視をDatadogで一元管理することにしました。

![Screenshot 2025-01-25 at 1.44.57.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662571/c06d3316-95b7-4b5d-61e1-67827deee5e2.png)

一部AWSのCloudWatchやLambdaといったサーバーレスアーキテクチャを構築していますが、基本的なリソース監視やログ監視はDatadogを活用する方針です。

**その中で、今回トライアル期間を活用して実装を進めてみようと思い、改めてDatadogについてキャッチアップしていきます。**

## Datadogとは？
Datadog は、**クラウドやオンプレミス環境の 監視・分析 を行うための SaaS型オブザーバビリティプラットフォーム** です。

![Screenshot 2025-01-30 at 16.24.39.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662571/baef2fa2-d514-c1e6-1c87-77008f6818c2.png)
引用画像：https://www.datadoghq.com/ja/blog/network-performance-monitoring/

サーバー・コンテナ・アプリケーション・ネットワーク・セキュリティ など、システム全体のパフォーマンスを リアルタイムに可視化・監視 できます。

**Datadogに関する基本的な内容については、過去の記事でまとめていますので、そちらも参考にしてみてください。**

https://qiita.com/free-honda/items/b2b106918c78c516382c

## 実際にやってみた

### Datadogのアカウント作成
まずは、Datadogのアカウントを作成します。

https://www.datadoghq.com/ja/free-datadog-trial/?utm_source=google&utm_medium=paid-search&utm_campaign=dg-brand-apac-ja-brand&utm_keyword=%2Bdatadog&utm_matchtype=b&igaag=84283271981&igaat=&igacm=8700484236&igacr=703510113077&igakw=%2Bdatadog&igamt=b&igant=g&utm_campaignid=8700484236&utm_adgroupid=84283271981&gad_source=1&gclid=Cj0KCQiA4-y8BhC3ARIsAHmjC_FzVKAJOGAC5onP6-fu42QzvM9fq_21JdSRMW7nWMKXyrZ1aw7w4G4aAjUuEALw_wcB

私の場合は個人利用になるため、まずは無料トライアルの2週間を試してみることにしました。

![Screenshot 2025-01-31 at 4.24.51.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662571/92488a23-5c9e-1172-3a76-1891a2069d50.png)

メールアドレス、会社名、パスワードを入力してアカウントを作成後、登録したメールに確認リンクが届くので、クリックして認証しました。

:::note warn
**ポイント**

- 無料トライアル期間でも、ほぼ全機能を試せる
- 監視対象の追加は、AWSとの連携、Datadog Agentのインストール、APIキーの設定 など複数の方法がある
:::

### Datadog Agentを対象のサーバーにインストール
次に、Datadog AgentをEC2インスタンスに導入します。

Datadog Agentは、CPU使用率、メモリ使用率、ディスク使用量、ネットワークトラフィックなどを収集する重要なコンポーネントです。

![Screenshot 2025-01-31 at 4.28.40.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662571/9fa7b176-bf8e-f207-9098-70d237da2d7d.png)

Datadogの管理コンソールで、インテグレーション連携の項目からAgentを選択すると、上記のような画面に遷移します。

![Screenshot 2025-01-31 at 4.29.52.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662571/68614532-3737-7272-006a-a0bf31ad7214.png)

**コマンドの詳細**

```cmd
Start-Process -Wait msiexec -ArgumentList '/qn /i "https://s3.amazonaws.com/ddagent-windows-stable/datadog-agent-7-latest.amd64.msi" APIKEY="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" SITE="ap1.datadoghq.com"'
```

簡単に表形式でまとめると、実行している内容は以下のとおりです。

| コマンド部分 | 説明 |
|-------------|------|
| `Start-Process -Wait msiexec` | Windowsのインストーラー (`msiexec`) を PowerShell で実行 |
| `-ArgumentList` | `msiexec` に渡すオプションを指定 |
| `/qn` | サイレントインストール（GUIなしで自動実行） |
| `/i "URL"` | インストール用の MSI ファイルを指定（Datadog Agent の最新バージョン） |
| `APIKEY="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"` | Datadog の APIキー（各環境に合わせて変更） |
| `SITE="ap1.datadoghq.com"` | Datadog のデータセンターリージョン（`ap1` はアジアパシフィック） |

#### Windowsサーバーに導入
ここでは、AWS上のWindowsサーバーにリモートデスクトップ接続をして、Datadogエージェントの導入を実施します。

![Screenshot 2025-01-31 at 4.38.24.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662571/7072e1c8-bf98-f991-67a2-7c66e9e037b1.png)

※Windowsサーバーの場合、導入までに若干時間がかかるため、しばらく待つ必要があります。

### 監視対象の確認
実際にWindowsサーバー側にDatadogエージェントのマネージャーがインストールされていることを確認しました。

![Screenshot 2025-01-31 at 4.42.16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662571/a926f814-b0f0-9c62-ba4b-dce009bc0743.png)

Windowsサーバー側でDatadogエージェントマネージャーをクリックすると、以下のようにエージェントの管理画面が表示されることを確認できました。

![Screenshot 2025-01-31 at 4.46.59.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662571/045bb3d8-d28a-8542-51da-327f6b7e8233.png)

最後に、Datadogの管理コンソール上から対象のWindowsサーバーが確認できたら、導入は完了です。

![Screenshot 2025-01-31 at 4.50.40.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662571/d02661e3-45f4-ffb0-7918-86e9e90490bf.png)

**（ここに表示されるまでには、導入後、若干時間がかかります。）**

## まとめ
ここまで読んでいただきありがとうございました。

:::note info
***私自身、初めて個人でトライアル期間を使ってサーバーにDatadogエージェントを導入したので、新鮮な体験でした。***
:::

次回は、実際に監視定義を作成していこうと思いますので、興味のある方はぜひ引き続きご覧ください！