[アップデート] SSM パラメータストアのバージョン管理に役立つラベルが、”削除”できるようになりました

そもそもパラメータラベルの存在知りませんでしたが、なるほど便利かも
2021.04.07

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

ちゃだいん(@chazuke4649)です。

SSM パラメータストアのバージョン管理に役立つ ラベル が、"削除" できるようになりました!

AWS Systems Manager Parameter Store now supports removal of parameter labels

何が嬉しい?

端的にいうと今までパラメータストアのラベルは一度作成すると別のバージョンに移動はできるが、削除はできませんでした。 それが今回のアップデートでラベルの削除が可能になりました。

それにより不要になったラベルの削除・整理や、新しいラベルによるパラメータのグルーピングがやりやすくなった、ラベルをもっと活用しやすくなったという感じです。

AWS Systems Manager パラメータストア - AWS Systems Manager

そもそもパラメータラベルの使い方について

この公式ブログがわかりやすいです。

パラメータラベルとは

パラメータが更新されると、新しいバージョンが作成され、またユニークなバージョン番号が割り振られます。パラメータバージョンを特定するために人が読み取れるような任意のエイリアスとしてラベルをアタッチすることができ、ラベルを使って過去のバージョンの値を取得することができます。ラベルはユニークである必要があり、1 つのパラメータバージョンにしか関連づけることができません。同じラベルを 2 つ以上のパラメータバージョンにアタッチすることができないということです。
※上記公式ブログより引用

何が便利か

「設定更新のためにパラメータラベルを活用する」 例えば、 API キーやデータベースの接続文字列のようなアプリケーションの設定パラメータのセットをベータおよび本番環境にわたって管理しているシナリオを考えます。これらのパラメータは頻繁に更新され、アプリケーションからは特定のバージョンのパラメータを利用したいとします。本番環境において、あなたはデータベースの接続文字列はバージョン 4 を、API キーはバージョン 6 を必要としました。ベータ環境においては、あなたはデータベースの接続文字列はバージョン 1 を、API キーはバージョン 3 を必要としました。ラベルを使うことで、階層をまたいだパラメータバージョンのセットのスナップショットを作成することができます。 ※上記公式ブログより引用

やってみる

コンソールから実際に確認してみます。

まずはSSMコンソールから適当なパラメータを作成し、更新することで、複数のバージョンがある状態にします。

下図の通り、パラメータのVersion1に対してdevなどのラベルをアタッチします。

同様にVersion2にはstgラベルをアタッチしました。

では、Version2のstgラベルを削除してみます。

[Manage labels]ボタンから飛んで、対象のラベルを削除しようとします。すると下図の通り、誤削除防止の確認画面が表示されました。Confirmと入力し実行します。

削除が完了され、一覧画面でstgが消えていることが確認できました。

確認は以上です。

終わりに

パラメータストアのパラメータはバージョン管理せず、別パラメータを新たに作成するイメージしかありませんでしたが、任意のラベルで指定のバージョンを使用できるんですね。事例のように複数パラメータのそれぞれ異なるバージョンを1つのラベルでグルーピングできるのは、ハマれば超便利そうです。

それではこの辺で。ちゃだいん(@chazuke4649)でした。