Terraform で Azure ネットワーク基盤を構築

Cloud Shell から Terraform でデジタル コミック サイト向けのネットワーク基盤(VNet + Subnet + Public IP + Standard Load Balancer)を構築します。

上級約 60 分Azure 実環境

ラボ概要

このラボでは、デジタル コミック サイトのインフラ エンジニアの想定で、アプリ サーバ クラスタが乗る前段のネットワーク基盤を Terraform で立ち上げます。事前に作成済みの Resource Group を Terraform 管理に取り込み、ネットワーク リソースを HCL で宣言してデプロイします。

学習目標:

  • Cloud Shell に File Share をマウントし、Terraform 作業ディレクトリを準備する
  • 既存の Resource Group を terraform import で State に取り込む
  • 4 つのファイル(providers.tf / networking.tf / lb.tf / output.tf)に役割を分離して HCL を記述する
  • VNet(vnet、10.0.0.0/16)+ Subnet(subnet、10.0.2.0/24)+ Public IP(publicIPForLB、Static)+ Standard Load Balancer(loadBalancer + バックエンド プール BackendAddressPool)をデプロイする
  • terraform fmt / validate / plan / apply のサイクルを通じて HCL の品質を保つ
  • 出力定義(outputs)で構築したリソースの主要属性を表示する
前提知識:
  • Terraform の providers / resources / variables / outputs の概念
  • Azure ネットワーク(VNet / Subnet / Public IP / LB)の理解
  • bash と Cloud Shell の基本コマンド
完了条件:
  • VNet vnet(10.0.0.0/16)が japaneast にデプロイされていること
  • Subnet subnet(10.0.2.0/24)が vnet 内に存在すること
  • Public IP publicIPForLB(Static、Standard SKU)が作成されていること
  • Standard Load Balancer loadBalancer がフロントエンド publicIPAddress + バックエンド プール BackendAddressPool で構成されていること
  • terraform output で 5 つの値(resource_group_name / vnet_address_space / subnet_prefixes / public_ip_address / location)が表示されること

ラボの構成

  1. 1Cloud Shell を準備して File Share をマウントする
  2. 2providers.tf を作成する(雛型はヒアドキュメントで)
  3. 3プレースホルダを実値に置換する
  4. 4Terraform を初期化して既存 RG をインポートする
  5. 5networking.tf を作成する
  6. 6lb.tf を作成する
  7. 7output.tf を作成する
  8. 8Terraform で構文チェックして適用する
  9. 9リソースが Azure 側に作成されたか確認する
  10. 10State 一覧を確認する
  11. 11結果を考察する

詳細な手順は、ラボ開始後に画面内のガイドとして表示されます。

手順のプレビュー(最初のステップ)

1. Cloud Shell を準備して File Share をマウントする

  • Azure Portal にサインインする
  • Cloud Shell(Bash)を起動する
  • ストレージ ダイアログでは ストレージ アカウントのマウント を選び、事前構築の Storage Account に File Share terraform を新規作成してマウントする
  • マウント後、~/clouddrive 配下に terraform-network-lab 作業ディレクトリを作成して移動する
  • Terraform のバージョンを確認する(terraform --version)
> 注: Cloud Shell には Terraform がプリインストール済み。
残り 10 セクションの手順は、ラボを開始すると画面内に表示されます

構成図

構成図

参考リソース

このラボが対応する試験の模擬問題集

本番形式の問題で理解度を確認できます。各試験とも先頭 15 問は無料です。

AZ-104Azure Administrator練習テスト 2 回・全 160 問AZ-305Azure Solutions Architect練習テスト 2 回・全 160 問AZ-400Azure DevOps Engineer練習テスト 2 回・全 160 問