Amazon Web Services(AWS)がクラウドのアーキテクチャ図を自動生成するソリューション実装「AWS Perspective」を公開しました。AWS Perspectiveを利用することによって、アーキテクチャ図の状態を常に最新に保ち、開発チーム内のシステム状況の共有を円滑に行うことができます。

AWS Perspective | Implementations | AWS Solutions

https://aws.amazon.com/jp/solutions/implementations/aws-perspective/

AWS Perspectiveのページにある「Launch in the AWS Console」をクリックし、AWS Perspectiveの構築を始めます。



AWS PerspectiveはCloudFormationのテンプレートが提供されており、簡単に構築することができます。テンプレートの指定画面は特に変更せず「次へ」をクリック。



スタックの詳細設定画面ではいくつかパラメータを設定する必要がありますが、初めてAWS Perspectiveを利用する場合は基本的にすべて初期値で問題ありません。



「AdminUserEmailAddress」には、管理者のメールアドレスを入力。



「AlreadyHaveConfigSetup」では、AWS Configを既に利用している場合に「Yes」を選択します。AWS Configを利用していない場合は初期値の「No」でOK。



AWS Perspectiveを利用するにはIAMロールの「AWSServiceRoleForAmazonElasticsearchService」が必要。ここも基本的には初期値の「Yes」で問題ありません。



データベースとして利用するNeptuneのゾーンやインスタンスタイプ設定、匿名の利用状況を送信するかどうかを設定したら「次へ」をクリック。



スタックオプションは特に変更せず「次へ」をクリック。



最後にこれまでの設定のレビュー画面が表示されるので、各項目を適切に設定できているかどうかを確認します。



確認できたらチェックボックスにチェックを入れ「スタックの作成」をクリック。



スタックの作成が始まりました。作成には約40分かかります。



スタックの作成が完了するとAWS Perspectiveを利用するためのURLが生成されます。URLは「aws-perspective---CloudFrontDistribution-XXXXX」というスタック の出力に表示されています。



URLにアクセスすると、AWS Perspectiveのログイン画面が表示されます。AdminUserEmailAddressに入力したメールアドレスに届いてるユーザー名とパスワードを入力して「SIGN IN」をクリック。



新しいパスワードを入力して「SUBMIT」をクリックします。



アカウント復旧に必要な認証を行うため、「Email」を選択して「VERIFY」をクリック。



AdminUserEmailAddressに届いた認証コードを入力して「SUBMIT」をクリック。



リソースのインポートを行う画面が表示されます。アカウントIDと収集するリソースのリージョンを設定して「Import」をクリックすると……



リソースがインポートされ、図を描画する画面が表示されました。



あとはアーキテクチャ図を作成したいリソースを選択すればOK。例えばAWS Perspective自体のアーキテクチャ図を生成する場合は「CloudFormation」の「Stack」から「aws-perspective」をクリックすると……



アーキテクチャ図が生成されました。



「Preferences」の「Filters」では、アーキテクチャ図を生成する際のリソースをフィルタすることが可能。



リソースの種類やアカウント、リージョンごとにフィルタを行うことができます。



生成したアーキテクチャ図は、記事作成時点では「CSV」「JSON」「PNG」「Draw.io」の4形式で出力可能。



「Configuration」の「Accounts & Regions」では、リソースを収集する対象のアカウントやリージョンの確認および変更を行うことができます。



AWS Perspectiveがリソースをスキャンしているアカウントやリージョンを確認したり……



新しいアカウントやリージョンを追加したりすることが可能。



なお、AWS Perspectiveの利用を停止したい場合は、CloudFormationの一覧から「aws-perspective」と「aws-perspective--」を削除することでAWS Perspectiveを削除することができます。