Cloudcraft API によるクラウドアカウントのスナップショットの自動化
概要
Web アプリケーションからアクセスできる Cloudcraft の Auto Layout 機能は、AWS 環境の図を自動生成する強力なツールです。この機能により、ドキュメント作成プロセスが大幅に効率化され、新しいチームメンバーのオンボーディングが容易になります。
このガイドでは、一般的なコマンドラインユーティリティと Cloudcraft 開発者 API を使用してこの機能を利用するための詳しいアプローチを説明します。
AWS アカウントと Azure アカウントの追加とスキャン、および Cloudcraft の開発者 API の使用は、Pro 契約者のみが利用できます。詳しくは
Cloudcraft の料金ページをご覧ください。
前提条件
- 有効な Cloudcraft Pro サブスクリプション。
- 読み書き権限を持つ API キー。
- スキャンしたい AWS または Azure アカウントのアカウント ID。
- Unix ライクな環境 (Linux、macOS、Windows Subsystem for Linux) へのアクセス。
- コマンドライン操作に精通していること。
- API 利用に関する基本的な知識。
アカウントのスナップショットを取得する
まずは、Snapshot AWS account または Snapshot Azure account エンドポイントを使用して、AWS または Azure アカウントのスナップショットを作成します。このプロセスは、Cloudcraft UI の Scan Now ボタンの機能を反映し、スナップショットを JSON 形式で出力します。
ターミナルで以下のコマンドを実行します。
curl \
--url 'https://api.cloudcraft.co/PROVIDER/account/ACCOUNT_ID/REGION/json' \
--tlsv1.2 \
--proto '=https' \
--silent \
--header "Authorization: Bearer API_KEY"
PROVIDER
は例えば azure
や aws
などのクラウドプロバイダー、ACCOUNT_ID
は Cloudcraft の AWS または Azure アカウントの ID、REGION
は希望のスキャンリージョン、API_KEY
は Cloudcraft API キーに置き換えます。
コマンドを実行すると、AWS アカウントスナップショットの JSON 表現が表示されます。この出力を直接ファイルに保存するには、以下のコマンドを使用します。
curl \
--url 'https://api.cloudcraft.co/PROVIDER/account/ACCOUNT_ID/REGION/json' \
--tlsv1.2 \
--proto '=https' \
--silent \
--header "Authorization: Bearer API_KEY" > '/tmp/account-infra.json'
スナップショットは一時ディレクトリに account-infra.json
というファイル名で保存されます。
新しいブループリントを生成する
次に、Create blueprint API エンドポイントを使用して、Cloudcraft アカウントで新しいブループリントを作成します。保存されたスナップショットデータは、このリクエストのペイロードとして機能します。
ターミナルで以下のコマンドを実行します。
curl \
--request 'POST' \
--url 'https://api.cloudcraft.co/blueprint' \
--tlsv1.2 \
--proto '=https' \
--silent \
--header 'Content-Type: application/json' \
--header "Authorization: Bearer API_KEY" \
--data '@/tmp/account-infra.json'
API_KEY
は実際の Cloudcraft API キーに置き換えてください。
完了すると、クラウドインフラストラクチャーを反映した新しいブループリントが Cloudcraft アカウントに作成され、手動で Scan Now ボタンと Auto Layout ボタンを使用した場合の効果が再現されます。
ご不明な点やトラブルがございましたら、Cloudcraft のサポートチームまでご連絡ください。