Cloud Mapの主要機能であるサービスのカスタム属性編集がコンソールでできるようになりました!

Cloud Mapの超久々のアップデートです!地味ですが!
2020.02.01

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

みなさん、Cloud Map、使ってますか?

re:Invent 2018において颯爽と登場したサービスで、クラウド上のありとあらゆるリソースに対して任意の名前をつけることで、より柔軟に各サービスの接続を管理できる渋い機能なのですが、そのCloudMapに久しぶりにアップデートがやってきました!

AWS Cloud Map が AWS コンソールでのカスタムサービスのインスタンスの属性の編集をサポート

機能拡充というよりは、今までAPIのみで提供されていた機能がWebコンソールでもできるようになったよ!ということなのですが、進化は進化。これを機会にCloud Mapの奥深い世界に踏み込んでくれる人が増えると、隠れCloud Mapファンのハマコーが喜びます。

喜びます。

喜ぶだけ…!?

  ( ゚д゚) ガタッ
  /   ヾ
__L| / ̄ ̄ ̄/_
  \/   /

Cloud Mapとは?

クラウドリソースの検出を柔軟にできるようにするサービスです。クラウドで利用する各サービスへの接続情報(AWSのリソースARN、HTTPアクセスするエンドポイントURIなど)を、一括管理しできるサービスです。

概念図は、公式のこちらがわかりやすい。AWSのいろんなリソースに、任意の名前でアクセスする雰囲気がわかりますでしょうか。

引用元:https://aws.amazon.com/jp/blogs/news/new-application-integration-with-aws-cloud-map-for-service-discovery/

参考資料

AWS公式のサービスページ。

AWS Cloud Map(マイクロサービス向けのアプリケーションリソースレジストリ)| AWS

公式開発者向けドキュメント。

What Is AWS Cloud Map? - AWS Cloud Map

自分が書いた、概説記事。コンセプトと具体的な機能について記載しているので、よければこちらもご参考に。

詳細解説「AWS Cloud Map」とは #reinvent | Developers.IO

今回のアップデートの何が嬉しいのか?

「AWS コンソールでカスタムサービスのインスタンスの属性の編集ができるようになった」です。Cloud Mapは実際にサービスに紐づくインスタンスを検出するときに、discover-instancesAPIを使います。

$ aws servicediscovery discover-instances --namespace-name hamako9999.com --service-name payments --query-parameters ver=1.0,env=stg

このとき、--query-parametersで指定した属性が紐づくリソースが返ってくるので、この属性を予め各種リソースにつけておくことで、その属性に紐づくリソース一式を簡単に取得できるわけです。

この属性の編集(追加、変更、削除)が、Webコンソールでできるようになった!というわけです。

Webコンソール上での変更点

[Register service instance]画面の一番下で、カスタム属性が編集できるようになっています。

今までは、ここをコンソールで設定する方法がなく、インスタンス登録時に属性を設定する場合は、別途CLIやSDKなどを使ってのAPI利用しか方法がありませんでした。

Cloud Map、みんなどんどん使おうぜ!

アップデートの内容自体は、非常に地味でしたね。ただ、リソースへの属性の付与はCloud Mapのキモの機能ということがおわかりいただけましたでしょうか。それがWebコンソールで編集できるのは、管理上の手間を減らす効果があります。

実は、CloudMapのDocument Historyをみると、履歴がありません。

ドキュメント履歴がない→APIに変更がない→機能拡張がないということで、自分としては非常に寂しく思っているのですが、使い方次第では非常に応用範囲が広いサービスなので、今回のアップデートをきっかけに、Cloud Mapの活用方法について思いを馳せてみるのはどうでしょうか。

それでは、今日はこのへんで。濱田(@hamako9999)でした。