
👨💻簡介
這篇文章將會說明如何快速在 Google Cloud Platform 上使用 Terraform 建立外部與內部的全球 IP 。
前提條件
- Google Cloud Platform (GCP) 帳號: 確保有一個有效的 GCP 帳號。
- 安裝Terraform: 還沒安裝可以參考 Terraform 安裝指南 。
- 基礎 Terraform 知識: 瞭解基本的 Terraform 命令和概念,如果需要,可參考 Terraform 入門指南。
🎯setup
1:建立 provider.tf
定義GCP Provider 和所需的 Terraform 版本。terraform {
required_providers {
google = {
source = "hashicorp/google"
version = "5.7.0"
}
}
}
provider "google" {
project = "project-id"
region = "asia-east1"
}
2:建立 main.tf
在此檔案中定義全球 IP 地址資源。- External IP
resource "google_compute_global_address" "default" {
name = "global-external-ip"
address_type = "EXTERNAL"
ip_version = "IPV4"
labels = {
"dept" = "devops",
"env" = "dev",
"type" = "internal"
}
}
- Internal IP
resource "google_compute_global_address" "default" {
name = "global-internal-ip"
address_type = "INTERNAL"
network = "default"
ip_version = "IPV4"
purpose = "PRIVATE_SERVICE_CONNECT"
address = "100.100.100.105"
labels = {
"dept" = "devops",
"env" = "dev",
"type" = "external"
}
}
參數介紹
- name:ip name
- address_type:建立的網路類型,分為內網 (Internal) 以及外網 (External)
- network:使用的虛擬私有網路
- ip_version:IP 版本,指定 IP 地址使用的協議版本,如 IPv4 或 IPv6。
- purpose:對於內部 IP,此參數定義了 IP 地址的使用目的,例如
PRIVATE_SERVICE_CONNECT
表示用於私有服務連接。 - address:指定內網 IP。
- labels:使用的 label,有助於資源分類和管理。
3:初始化 Terraform
terraform init
4:執行 Dry Run
terraform plan
5:部署
terraform apply
資源刪除
部署完成後,如果需要清理資源,可執行:
terraform destroy