share facebook facebook twitter menu hatena pocket slack

2018.04.24 TUE

DatadogでFargateをモニタリング

佐々木真也

WRITTEN BY 佐々木真也

DatadogでFargateのモニタリングができるようになりました。

これまで、Fargateにdatadogのエージェント入れようとしても、ホストがマウントできないので、どうやってやるんだ?って感じでしたが、先日発表されたFargateの1.1でタスクメタデータのエンドポイントがサポートされたおかげでちゃんとできるようになったようです。
https://aws.amazon.com/jp/about-aws/whats-new/2018/03/aws-fargate-platform-version-1-1/

やりかたなどはこちらに。

https://www.datadoghq.com/blog/monitor-aws-fargate/

ここではTaskDininition書いてrun-taskする方法で書かれてますが、ecs-cliでサービスとして起動させてみました。
とりあえずいつもテストで使ってるWordpressのやつで。

docker-compose.yml

version: '2'
services:
  wordpress:
    image: wordpress
    ports:
      - "80:80"
    environment:
      WORDPRESS_DB_HOST: 127.0.0.1
      WORDPRESS_DB_PASSWORD: password
  mysql:
    image: mysql
    environment:
      MYSQL_ROOT_PASSWORD: password
  datadog:
    image: datadog/agent:latest
    environment:
      DD_API_KEY: {$DD_API_KEY}
      ECS_FARGATE: "true"

基本的にはタスク定義の中でDatadogエージェントをサイドカーで動かして、ECS_FARGATE: true だけで動くみたいです。 簡単です。

これを起動させると、

$ ecs-cli compose service up --launch-type FARGATE

こんな感じでとれました。

↑のサイトではRedisのコンテナを動かして、dockerLabelsのオプションをつけて、AutodiscoveryによるRedisのモニタリングをしています。
AutoDiscoveryは対応しているソフトウェアならちょこっと追加するだけで、ステータスがとれるみたいですね。
https://docs.datadoghq.com/agent/autodiscovery/
ecs-cliでは今のところ dockerLabels は対応していないっぽいので、この機能使うのであれば、TaskDininitionからつくる必要があると思います。

Fargateの懸念点が一つ改善されました。

元記事はこちら

DatadogでFargateをモニタリング

佐々木真也

佐々木真也

2016年cloudpack join。 前職では構築・設計・PMを担当。 その経験を生かし、案件対応だけでなく検証環境の構築も行います。

cloudpack

cloudpackは、Amazon EC2やAmazon S3をはじめとするAWSの各種プロダクトを利用する際の、導入・設計から運用保守を含んだフルマネージドのサービスを提供し、バックアップや24時間365日の監視/障害対応、技術的な問い合わせに対するサポートなどを行っております。
AWS上のインフラ構築およびAWSを活用したシステム開発など、案件のご相談はcloudpack.jpよりご連絡ください。