Infrastructure as Code (IaC)は、エンジニアがTerraformやCloudFormationといった宣言的なスクリプトを用いて、サーバーレスまたはコンテナ化されたリソースを定義する、重要な設計段階です。この手法は、手動による設定ミスを排除し、開発環境と本番環境の一貫性を確保し、自動的なスケーリングを可能にします。インフラストラクチャのロジックをコードリポジトリに紐付けることで、チームは監査可能性、バージョン管理との統合、そして最新のエンタープライズソフトウェアデリバリーパイプラインに不可欠な、迅速かつ再現可能なデプロイメントを実現できます。
設計段階では、変更不可能なインフラストラクチャ定義が確立され、手動でのCLIコマンドを置き換えることで、すべての環境が同一に構築されることを保証します。
エンジニアは、ステート管理を活用することで、リソース間の依存関係を追跡し、意図されたクラウド構成と実際の構成との乖離を防ぎます。
自動検証ゲートは、コードがデプロイメントパイプラインの実行段階に到達する前に、構文とポリシーへの準拠を確認します。
リソースの仕様を定義します。これには、種類、属性、および依存関係を含み、宣言的なファイル形式で記述します。
プロバイダーを初期化し、現在のインフラストラクチャの構成を追跡するための状態ファイルを管理します。
計画された運用を実行し、変更をシミュレーションするとともに、組織のコンプライアンスポリシーとの整合性を検証します。
対象のクラウド環境にリソース定義を自動的に適用するための実行を承認してください。
リソースの作成状況と、バックエンドストレージシステムとの状態ファイル同期を、視覚的に確認します。
設計レビュー段階において、IaCスクリプトの構文とポリシー準拠を検証するために、自動実行を行います。
TerraformまたはCloudFormationのモジュールをバージョン管理し、監査ログの記録と共同編集を可能にするストレージ。