Active Assist に変更リスクに関する推奨事項が登場: 構成ミスを防止するための新たな方法
Google Cloud Japan Team
本番環境でのインシデントやサービス停止、データ喪失の原因となりうる一般的な構成ミスを回避する
※この投稿は米国時間 2023 年 10 月 11 日に、Google Cloud blog に投稿されたものの抄訳です。
要約: Active Assist で、クラウド インフラストラクチャの構成ミスのリスクを低減できるようになりました。重要なリソースに対してよく行われる「リスクを伴う変更」にインテリジェントにフラグを立て、問題を防止および緩和するための推奨事項を提示します。まず保護対象となるのは、プロジェクトやサービス アカウントのリスクの高い削除と、IAM ポリシーへの変更です。この機能は、すべてのユーザーが Recommender API と gcloud を通じてすぐに利用可能です。今後数週間のうちに、Cloud コンソールでも徐々にロールアウトされます。詳しくはこのブログ投稿とドキュメントでご確認ください。
クラウド インフラストラクチャの構成ミスは、ヒューマン エラー(重要なリソースを誤って削除するなど)や、ワークロードの意図しない変化(ワークロードが急速に増加してリソースの上限を超えるなど)によって起こる可能性があります。最近の研究では、本番環境でのインシデントの 70% 近くがヒューマン エラーによって発生しており、企業は収益と生産性の喪失という形で莫大なコストを支払っていることがわかっています。しかし、これは問題の一角にすぎません。すべての構成ミスがサービス停止につながるわけではないとしても、多くはシステム復旧に必要なサイクルの無駄を招きます。そのときはまったく認識されなかったミスが、後になって、根本原因が見つかりにくいパフォーマンスの問題や信頼性の課題となって現れることもあります。


繰り返し起きやすい一般的な構成ミスとその影響の例
(背景画像の参照元)
構成ミスに対する既存の防止策や緩和策では、複雑な構成や、柔軟性に欠けるガードレールのメンテナンスが必要になることが多く、効果的な使用が難しい場合があります。それによって、構成ミスが見逃されたり検出が遅れたりすることも考えられます。もうひとつの問題として、ノイズが多く、些細な変更でも警告が多数発生してオペレーターが翻弄されてしまうことがあります。
このたび Google は、スマート化と自動化によってガードレールの新たな境地を拓く Active Assist の推奨事項の新たなカテゴリ、変更リスクの推奨事項を発表いたします。従来のソリューションと異なり、Active Assist は構成とメンテナンスが不要で、シンプルな方法で一般的な構成ミスを防止および検出することが可能です。これにより、リスクの低減、運用面でのレジリエンス向上、時間と費用の節約に貢献します。
Active Assist による構成ミスの防止
Active Assist は、組織内のクラウド リソース全体の使用状況を分析し、チェンジ マネジメントの観点からビジネスの運営に最も重要なものを ML を活用して自動的に識別します。これらのリソースは通常、組織内の他のリソースと比べて利用率が高く依存関係が多いため、構成ミスが発生した場合にシステム内に障害が生じるリスクが高くなります。
Active Assist は、ユーザーの環境内で最も重要なリソースを識別すると、そのリソースに対するリスクの高い変更を防止するための推奨事項を生成します。たとえば、重要なプロジェクトを削除してしまうリスクについて、影響を受けるリソース範囲という観点も含めて警告することができます。


Active Assist によるリスクの高い変更の検出と防止
初期リリースには、次のような構成変更に関連するリスクを評価する機能が含まれています。


今回の初期リリースの一環としてサポートされる、変更リスクに関する推奨事項
それぞれのガードレール(保護機能)について簡単に説明しましょう。
- リスクの高いプロジェクトの削除を防止
プロジェクトは Google Cloud 内のリソースの整理に使われる基本的なコンテナであるため、チェンジ マネジメントの観点から非常に重要です。隠れた依存関係が複数のプロジェクトにまたがっている可能性があるなど、クラウドのワークロードは複雑で多岐に及ぶため、重要なプロジェクトが誤って削除されてしまうことがよくあります。重要なプロジェクトを削除してしまうと復旧が非常に困難な場合があり、Cloud Storage 内のオブジェクトなど、簡単に復元できないリソースに影響するケースではなおさらです。Active Assist は、使用状況に基づいて重要なプロジェクトを識別し、そのプロジェクトを削除した場合の潜在的な影響について警告してくれます。


Google Cloud コンソールに表示されたプロジェクト削除の警告の例
この警告から、[View risk assessment](リスク評価の表示)ボタンをクリックして、特定のプロジェクトの削除に関連するリスクを調べることができます。


このプロジェクト削除が安全でない理由を説明するリスク評価の例
2.リスクの高いサービス アカウントの削除を防止
重要なサービス アカウントの偶発的な削除もダウンタイムにつながるよくある構成ミスであり、復元やロールバックが困難であるというフィードバックを多くの先行ユーザーの皆様からいただきました。使用中のサービス アカウントの場合は、他のリソースに及ぶ可能性のある影響について Active Assist が警告を出し、まずそのサービス アカウントを無効にすることを推奨します。他の変更リスクの推奨事項と同様、関連するリスクの評価を確認することで、使用状況の詳細や依存関係を把握できます。


コンソールに表示されたサービス アカウントの削除に関する警告の例
3. IAM ポリシーに対するリスクの高い変更を防止
Identity and Access Management(IAM)ポリシーは、誰が、どのリソースに、どのような操作を実行できるかを定義するものです。一見シンプルな構造のようですが、大規模な運用では管理が極端に複雑になることがあるため、これも構成ミスのよくある原因となります。特に、ユーザーやサービス アカウントから必須の権限が取り消されたり、必須のロールからユーザーやサービス アカウントが削除されたりした場合に構成ミスが起こりやすくなります。そのため、復旧のための時間と労力が無駄に消費されたり、ユーザーやサービス アカウントが必要なリソースへのアクセスを拒否されて、ダウンタイムにつながったりする場合があります。使用中のロールの場合、Active Assist は権限の削除による潜在的な影響について警告を出し、その代わりとなるより権限の低いロールを提案します。


コンソールに表示されたロール変更の警告の例
コンソールに自動的に表示される警告を確認する以外に、gcloud
コマンドに --recommend=yes
フラグを付けて実行することでも、サポート対象の変更に関連するリスクをチェックできます。たとえば、「staging_v8」というプロジェクトの削除が安全でない場合に、次のコマンドを実行するとコマンドが中止されます。
カスタムのスクリプトまたは自動化ワークフローの一環として、Recommender API に直接クエリを実行することもできます。たとえば、「staging_8」というプロジェクトの削除にリスクがあるかどうかを次の呼び出しでチェックして、その変更に関連する詳細なリスク評価を取得できます。
変更リスクに関する推奨事項を今すぐ使ってみる
Active Assist は、重要なリソースを誤って削除する、誤った IAM ポリシーの変更を行うなどのヒューマン エラーによって引き起こされる、クラウドでよくある構成ミスのリスクを低減します。そのために、Active Assist は最も重要なリソースに対する危険性の高い変更にインテリジェントにフラグを立て、問題が発生する前に防止するための推奨事項を提示します。
Active Assist の使用を開始する際は、ドキュメントをお読みになり、変更リスクに関する推奨事項を使って送信前のガードレールを実装する方法の詳細をご確認ください。ワークロードが原因で発生しやすい構成ミスのひとつである割り当て不足の問題に対処するための Active Assist の機能についてもご確認いただけます。
Active Assist のスマート ガードレールによって、お客様の環境の構成ミスの発生頻度と影響が低減されることを願っています。新しい保護機能のご提案など、フィードバックをお待ちしております。担当の Google Cloud アカウント チームにお気軽にお問い合わせいただき、打ち合わせを設定していただければ幸いです。active-assist-feedback@google.com に直接メールをお送りいただくこともできます。
ー プロダクト マネージャー Dima Melnyk
ー ソフトウェア エンジニア Xiang Wang