[アップデート] AWS Systems Manager OpsCenter で OpsItems が削除出来るようになりました

2023.10.28

いわさです。

AWS Systems Manager には OpsCenter という機能があります。
OpsCenter では、運用上の作業項目を指す「OpsItems」を一元管理し、AWS Config、AWS CloudTrail、Amazon EventBridge や Automation Runbook などと統合することで効率的な運用を実現するためのサービスです。

OpsCenter で使われる OpsItems ですが、実はこれまで削除するということが出来ませんでした。
しかし先日のアップデートで、この Systems Manager OpsCenter で OpsItems を削除するための API が追加されました。

削除出来なかったものが削除出来るようになったわけですが、何が嬉しいのでしょうか。
この記事では、AWS Systems Manager OpsCenter の挙動と制限事項を確認しながら、新しい機能を使ってみました。

削除出来なかったことで困ること

ノイズになる

OpsItems はこれまで削除することが出来ませんでした。
またOpsItems のステータスには「未解決」「進行中」「解決済み」がありますが、「対応しない」というステータスはありませんでした。

そのため、対応しない場合は、確認のために手動で作成した OpsItem は「未解決」のまま、あるいは「解決済み」とする必要があり、結果として表示上のノイズになってしまうことがありました。

あるいは、動作確認のために一時的に作成した OpsItem も、これまでは削除することが出来ずに残り続けていました。

アイテム数のクォータがある

また OpsCenter の OpsItems ですが実はアカウントごとにリージョンあたりの上限数が設定されています。

上記公式ドキュメントに記載されているように、このクォータには進行中や解決済みも含まれます。

上記ページに記載のあるように、この最大数の項目数は解決済みも含まれます。
上限緩和申請は可能なのと、上限もかなり大きい数字ではあるのですが、不要な項目であれば極力削除しておきたいところです。

API でのみ OpsItem を削除できる

今回のアップデートで、DeleteOpsItemを使って、OpsItem を削除することが出来ます。
AWS CLI の場合は v1.29.68 以上から使用可能です。

本日時点ではマネジメントコンソールからは使用できません。
また、削除単位は 1 件づつとなります。

おそらく使い方としては定期的に自動クリーンアップさせるなど、プログラムからの利用が想定されていそうです。

削除してみる

次の OpsCenter 環境では、3 件の OpsItem が存在しています。

OpsItems タブでは OpsItem の一覧が表示されるのですが、フィルター条件を変更することで解決済みの OpsItem を表示することができます。また解決済みの OpsItem を進行中などにステータスを戻すことも可能です。

解決済みも表示してみると、実際には 4 件のアイテムが存在しています。

上記一覧画面で書く OpsItem にoiから始まる ID が採番されていることが確認出来ると思います。
削除コマンドを実行する際に削除対象 OpsItem の ID を指定するだけで良いです。

% aws-v1 ssm delete-ops-item --ops-item-id oi-52ccd5e2c71a

削除後、マネジメントコンソールで完全に表示されなくなったことを確認しました。
なお、削除にあたって削除前の OpsItem のステータスは関係ありません。どのステータス状態でも削除することが出来ました。

一点注意点がありまして、削除した項目は復元することができません。
削除の判断は慎重に行いましょう。

さいごに

本日は AWS Systems Manager OpsCenter で OpsItems が削除出来るようになったので試してみました。

私などは検証用途で使うので不要なデータが多く削除出来るのはありがたいですね。
運用環境でもリリース前のデータが残っているなどノイズになっている不要な OpsItem があれば、今回の機能を使って削除を検討してみては如何でしょうか。