CloudWatch が VPC Endpoint に対応!プライベートサブネットからカスタムメトリクスが PUTできます

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは、菊池です。

本日ご紹介する新機能はこちらです。

PrivateLinkを使ったVPC Endpoint(Interface Endpoint)に、新しくCloudWatchが対応しました。VPC Endpoint(Interface Endpoint)については以下を参照ください。

PrivateLinkがリリースし新たにEC2, Systems Manager, ELB, Kinesis, Service CatalogがVPCエンドポイントに対応しました

このアップデートにより、インターネットへの接続経路を持たないプライベートサブネットからでも、カスタムメトリクスの送信が可能になります!

やってみた

早速、VPC Endpointを作成してみます。AWSサービスのエンドポイントの対象として、com.amazonaws.ap-northeast-1.monitoringが追加されています。

作成できました。これで、CloudWatchのエンドポイントである、monitoring.ap-northeast-1.amazonaws.comに対し、プライベート接続が可能になります。

VPC Endpointを作成したVPC内にEC2を起動して、エンドポイントの名前解決してみます。

$ dig monitoring.ap-northeast-1.amazonaws.com

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.56.amzn1 <<>> monitoring.ap-northeast-1.amazonaws.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 58065
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;monitoring.ap-northeast-1.amazonaws.com. IN A

;; ANSWER SECTION:
monitoring.ap-northeast-1.amazonaws.com. 60 IN A 172.31.15.209
monitoring.ap-northeast-1.amazonaws.com. 60 IN A 172.31.30.124
monitoring.ap-northeast-1.amazonaws.com. 60 IN A 172.31.45.144

;; Query time: 2 msec
;; SERVER: 172.31.0.2#53(172.31.0.2)
;; WHEN: Fri Jun 29 01:57:27 2018
;; MSG SIZE  rcvd: 105

プライベートIPが返却されています。もちろん、このプライベートな宛先に対してメトリクスのputが可能です。

$ aws cloudwatch put-metric-data --namespace "Usage Metrics" --metric-data file://metric.json --region ap-northeast-1

まとめ

VPC Endpointに対応してほしいサービスとして、かなり上位に挙がっていたであろう、CloudWatchが今回サポートされました。すでに、CloudWatch Logsも対応していますので、プライベートサブネットで起動するEC2をかなり扱いやすくなりますね。

今後も、新しいサービスのVPC Endpoint対応に期待しましょう!