Ringkasan
Terraform adalah alat open source untuk mengonfigurasi lingkungan cloud seperti AWS dan menginstal software seperti Kubernetes di lingkungan tersebut. Anda dapat mengonfigurasi lingkungan AWS dan membuat cluster di dalamnya dengan Terraform atau dengan petunjuk penginstalan GKE di AWS.
Halaman ini menjelaskan cara menggunakan Terraform untuk mengonfigurasi lingkungan AWS dan menginstal cluster menggunakan konfigurasi contoh yang disimpan di GitHub. Halaman ini ditujukan bagi administrator dan Operator IT yang ingin menyiapkan, memantau, dan mengelola infrastruktur cloud, mengotomatiskan deployment, serta menggunakan template dan konfigurasi deklaratif. Untuk mempelajari lebih lanjut peran umum dan contoh tugas yang kami referensikan dalam konten, lihat Peran dan tugas pengguna umum GKE Enterprise. Google Cloud
Untuk menggunakan skrip ini, Anda harus memiliki pemahaman dasar tentang Terraform. Khususnya, Anda harus mengedit file konfigurasi Terraform untuk menambahkan informasi pengguna dan project Anda sendiri serta melakukan perubahan yang diperlukan pada konfigurasi cluster default.
Untuk mengonfigurasi lingkungan AWS dan membuat cluster tanpa menggunakan Terraform, lihat Ringkasan prasyarat AWS dan petunjuk untuk membuat cluster.
Fungsi skrip
Skrip ini mengonfigurasi Terraform untuk membuat VPC AWS dan men-deploy cluster di dalamnya. VPC yang dihasilkan memenuhi semua prasyarat GKE di AWS dan memiliki topologi jaringan yang sama dengan VPC yang dibuat oleh petunjuk pembuatan VPC manual Google.
Cluster yang dibuat oleh skrip yang ditetapkan memiliki karakteristik berikut:
- tiga node bidang kontrol (satu di setiap tiga zona ketersediaan yang dikonfigurasi). Node ini berjenis t3.large.
- Satu node pool dengan dua node berjenis t3.large.
Node pool ini di-deploy di region
us-east-1
AWS dan dapat melakukan penskalaan otomatis hingga lima node.
Cara mengubah VPC dan cluster default
Anda dapat mengubah karakteristik VPC dan cluster yang dibuat oleh skrip Terraform dengan mengedit file Terraform yang sesuai.
- Sesuaikan region dan zona ketersediaan dengan mengedit file
variables.tf
. - Ubah jenis instance AWS.
- Ubah karakteristik VPC, termasuk subnet, zona ketersediaan, dan load balancer, dengan mengedit file di subfolder
modules/vpc
.
Untuk mengetahui daftar region AWS yang dikontrol dari region Google Cloud tertentu dan versi Kubernetes terkaitnya, jalankan perintah berikut:
gcloud container aws get-server-config --location `GOOGLE_CLOUD_REGION`
Ganti GOOGLE_CLOUD_REGION
dengan nama
Google Cloud region yang Anda inginkan
GKE di AWS untuk mengontrol cluster Anda.
Prasyarat
Instal Google Cloud CLI dengan petunjuk penginstalan Google Cloud CLI. Jika Anda sudah menginstalnya, gunakan petunjuk ini untuk memastikan Anda menjalankan versi 412.0.0 atau yang lebih tinggi.
Instal AWS CLI dengan petunjuk penginstalan AWS CLI.
Buat kunci akses AWS Anda.
Konfigurasi lingkungan AWS lokal Anda dengan perintah berikut:
aws configure
Siapkan Terraform
Konfigurasi autentikasi Google Cloud CLI dengan menjalankan perintah berikut:
gcloud config set project GOOGLE_PROJECT_ID gcloud auth application-default login --no-launch-browser
Aktifkan layanan yang diperlukan di project Google Cloud Anda.
gcloud --project="GOOGLE_PROJECT_ID" services enable \ gkemulticloud.googleapis.com \ gkeconnect.googleapis.com \ connectgateway.googleapis.com \ cloudresourcemanager.googleapis.com \ anthos.googleapis.com \ logging.googleapis.com \ monitoring.googleapis.com \ opsconfigmonitoring.googleapis.com
Ganti
GOOGLE_PROJECT_ID
dengan project ID Google Anda.Buat salinan lokal repositori dan ubah ke folder
AWS
:git clone https://github.com/GoogleCloudPlatform/anthos-samples.git cd anthos-samples/anthos-multi-cloud/AWS
Men-deploy GKE di AWS
Edit baris berikut dalam file
terraform.tfvars
untuk mengganti nilai default:gcp_project_id = GOOGLE_PROJECT_ID admin_users = ["GCP_ACCOUNT_EMAIL"] cluster_version = GKE_VERSION
Ganti kode berikut:
GOOGLE_PROJECT_ID
: project ID Google Anda. Anda dapat menemukannya di sisi kiri halaman dasbor Google Cloud console.ACCOUNT_EMAILS
: daftar alamat email yang dipisahkan koma yang dapat login ke cluster setelah dibuat—misalnya"admin@example.com","operator@example.com"
. Setidaknya satu alamat harus memiliki akun. Google Cloud Untuk menambahkan penyedia identitas tambahan ke cluster Anda, lihat Mengelola identitas dengan GKE Identity Service.GKE_VERSION
: versi GKE yang didukung untuk region yang Anda pilih. Untuk menemukan versi yang didukung, lihat Pembuatan versi dan dukungan GKE di AWS.
Lakukan inisialisasi dan buat rencana Terraform:
terraform init
Terraform menginstal library yang diperlukan, seperti Google Cloud penyedia.
Terapkan rencana Terraform untuk membuat AWS Virtual Private Cloud dan cluster:
terraform apply
Ikuti petunjuk untuk mulai membuat cluster.
Penginstalan memerlukan waktu sekitar 12 menit. Setelah Terraform selesai membuat
AWS Virtual Private Cloud dan cluster, Terraform akan mencetak informasi tentang cluster dan membuat
file bernama var.sh
. Anda dapat menggunakan nilai dalam file ini jika membuat node pool tambahan.
Untuk memverifikasi bahwa cluster telah berhasil dibuat, tunggu hingga cluster muncul di halaman Kubernetes Engine di konsol Google Cloud project Google Cloud Anda.
Hubungkan ke cluster Anda
Untuk memverifikasi konektivitas ke cluster dan mengambil detailnya, jalankan perintah berikut:
gcloud container fleet memberships get-credentials CLUSTER_NAME
kubectl get nodes
Ganti CLUSTER_NAME
dengan nama cluster Anda. Anda dapat
menemukan nama cluster di file output Terraform var.sh
.
Output menyertakan daftar node di cluster Anda dan statusnya.
Menghapus cluster dan AWS Virtual Private Cloud
Sebelum menghapus cluster dan AWS Virtual Private Cloud, Anda harus menghapus semua hal berikut:
- Load balancer AWS aktif di AWS Virtual Private Cloud
- Node pool tambahan di cluster Anda yang tidak dibuat dengan Terraform
- Cluster tambahan di Virtual Private Cloud AWS yang tidak dibuat dengan Terraform
Untuk menghapus cluster dan AWS Virtual Private Cloud yang Anda buat dengan Terraform, jalankan perintah berikut:
terraform destroy
Terraform menguras workload dari node Anda, menghapus node pool dan cluster utama, serta menghapus Virtual Private Cloud AWS Anda.
Memberi otorisasi Cloud Logging dan Cloud Monitoring
Jika ingin mengaktifkan Cloud Logging dan Cloud Monitoring, Anda harus menambahkan kebijakan izinkan ke project Google Cloud setelah membuat cluster.
Tambahkan kebijakan izinkan dengan Google Cloud CLI:
gcloud projects add-iam-policy-binding PROJECT_ID \
--member="serviceAccount:PROJECT_ID.svc.id.goog[gke-system/gke-telemetry-agent]" \
--role=roles/gkemulticloud.telemetryWriter
Ganti PROJECT_ID
dengan project ID Anda.
Langkah berikutnya
- Untuk mempelajari logging peristiwa cluster terpusat Google, lihat Cloud Logging.
- Untuk membaca tentang alat Cloud Monitoring Google, lihat Cloud Monitoring.
- Untuk menginstal pengelolaan konfigurasi terpusat, lihat Mengonfigurasi cluster dengan Pengontrol Konfigurasi.
Untuk mengetahui informasi selengkapnya tentang skrip Terraform GKE di AWS, lihat