使用 Terraform 驗證 Azure 中的中樞和輪輻網路
Terraform 可讓您定義、預覽和部署雲端基礎結構。 使用 Terraform 時,您可以使用 HCL 語法來建立設定檔。 HCL 語法可讓您指定雲端提供者 (例如 Azure) 和構成雲端基礎結構的元素。 建立設定檔之後,您可以建立執行計畫,讓您先預覽基礎結構變更,之後再部署。 驗證變更之後,您可以套用執行計畫來部署基礎結構。
在本文中,您會執行本系列上一篇文章中建立的 terraform 檔案。 結果是示範虛擬網路之間的連線驗證。
在本文中,您將學會如何:
- 在中樞輪輻拓撲中實作中樞 VNet
- 確認要部署的資源
- 在 Azure 中建立資源
- 確認不同網路之間的連線能力
1.設定您的環境
- Azure 訂用帳戶:如果您沒有 Azure 訂用帳戶,請在開始前建立免費帳戶。
設定 Terraform:如果您尚未這麼做,請使用下列其中一個選項來設定 Terraform:
2.確認您的設定
在範例目錄中,確認本文系列中建立的所有檔案都存在:
檔案名稱 | 建立檔案的文章 |
---|---|
main.tf | 在 Azure 中使用 Terraform 建立中樞和輪輻混合式網路拓撲 |
variables.tf | 在 Azure 中使用 Terraform 建立中樞和輪輻混合式網路拓撲 |
on-prem.tf | 在 Azure 中使用 Terraform 建立內部部署虛擬網路 |
hub-vnet.tf | 在 Azure 中使用 Terraform 建立中樞虛擬網路 |
hub-nva.tf | 在 Azure 中使用 Terraform 建立中樞虛擬網路設備 |
spoke1.tf | 在 Azure 中使用 Terraform 建立輪輻虛擬網路 |
spoke2.tf | 在 Azure 中使用 Terraform 建立輪輻虛擬網路 |
3. 初始化 Terraform
執行 terraform init 來初始化 Terraform 部署。 此命令會下載管理 Azure 資源所需的 Azure 提供者。
terraform init -upgrade
重點︰
-upgrade
參數會將必要的提供者外掛程式升級至符合設定版本條件約束的最新版本。
4.建立 Terraform 執行計劃
執行 terraform plan 以建立執行計畫。
terraform plan -out main.tfplan
重點︰
terraform plan
命令會建立執行計畫,但不會執行。 相反地,其會決定要在您指定的設定檔中建立設定所需的動作。 此模式可讓您在對實際資源進行任何變更之前,先確認執行方案是否符合您的預期。- 選用的
-out
參數可讓您指定計畫的輸出檔。 使用-out
參數可確保您所檢閱的方案就是所套用的方案。
5.套用 Terraform 執行計劃
執行 terraform apply 將執行計畫套用至您的雲端基礎結構。
terraform apply main.tfplan
重點︰
- 範例
terraform apply
命令會假設您先前已執行terraform plan -out main.tfplan
。 - 如果您為
-out
參數指定了不同的檔案名稱,請在呼叫terraform apply
時使用該檔案名稱。 - 若您未使用
-out
參數,請呼叫terraform apply
,不需要使用參數。
6.驗證結果
本節說明如何測試從模擬內部部署環境到中樞 VNet 的連線能力。
瀏覽至 Azure 入口網站。
在 Azure 入口網站 中,流覽至 onprem-vnet-rg 資源群組。
在 [ onprem-vnet-rg ] 索引卷標中,選取名為 onprem-vm 的 VM。
記下 [ 公用 IP 位址] 值。
返回命令行並執行
ssh
以連線到仿真的內部部署環境。ssh azureuser@<onprem_vm_ip_address>
重點︰
- 如果您從
azureuser
檔案中variables.tf
變更使用者名稱,請務必在ssh
命令中插入該值。 - 使用您在執行
terraform plan
時指定的密碼。
- 如果您從
線上到 onprem-vm 虛擬機之後,請執行
ping
命令以測試中樞 VNet 中 Jumpbox VM 的連線能力:ping 10.0.0.68
ping
執行 命令以測試每個輪輻中 Jumpbox VM 的連線能力:ping 10.1.0.68 ping 10.2.0.68
若要結束 onprem-vm 虛擬機上的 ssh 工作階段,請輸入
exit
並按 <Enter>。
7.清除資源
當您不再需要透過 Terraform 建立的資源時,請執行下列步驟:
執行 terraform plan 並指定
destroy
旗標。terraform plan -destroy -out main.destroy.tfplan
重點︰
terraform plan
命令會建立執行計畫,但不會執行。 相反地,其會決定要在您指定的設定檔中建立設定所需的動作。 此模式可讓您在對實際資源進行任何變更之前,先確認執行方案是否符合您的預期。- 選用的
-out
參數可讓您指定計畫的輸出檔。 使用-out
參數可確保您所檢閱的方案就是所套用的方案。
執行 terraform apply 以套用執行方案。
terraform apply main.destroy.tfplan
對 Azure 上的 Terraform 進行疑難排解
針對在 Azure 上使用 Terraform 時的常見問題進行疑難排解
下一步
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應