Halaman ini menjelaskan langkah-langkah yang harus Anda selesaikan sebelum menginstal GKE di AWS.
Lingkungan
Untuk menginstal GKE di AWS, Anda memerlukan lingkungan tempat Anda dapat menginstal dan menjalankan berbagai alat. Langkah-langkah berikut mengasumsikan bahwa Anda menggunakan shell bash di Linux atau macOS. Jika Anda tidak memiliki akses ke lingkungan bash shell, Anda dapat menggunakan Cloud Shell.
Persyaratan AWS
Untuk menyelesaikan topik ini, Anda memerlukan akun AWS dengan akses command line dan dua kunci AWS Key Management Service (KMS) di region yang sama dengan cluster pengguna Anda.
Untuk mengetahui informasi selengkapnya tentang resource AWS lain yang diperlukan, lihat Persyaratan.
Mengonfigurasi AWS
Sebelum memulai
Sebelum Anda menyelesaikan bagian ini:
- Download dan instal
AWS CLI.
Konfirmasi penginstalan dengan menjalankan
aws --version
. Jika file yang dapat dieksekusi tidak ditemukan, tambahkan alataws
kePATH
Anda. - Konfigurasi kredensial AWS IAM dan region AWS Anda dengan
aws configure
.
Izin pengguna admin
GKE di AWS mengharuskan pembuat layanan pengelolaan memiliki izin tertentu. Sebelum Anda dapat membuat layanan pengelolaan atau cluster pengguna, buat atau dapatkan akses ke Kredensial IAM AWS yang memenuhi Persyaratan.
Membuat kunci KMS
GKE di AWS memerlukan dua kunci AWS KMS. Kunci KMS mengenkripsi:
- Data selama proses penginstalan dengan enkripsi amplop.
- Rahasia lapisan aplikasi di cluster pengguna Anda.
Ikuti langkah-langkah di bawah ini untuk membuat dua kunci AWS KMS.
Command Line
Buat kunci KMS di akun AWS Anda.
aws kms create-key
Output mencakup metadata kunci.
Pada output dari perintah sebelumnya, salin Amazon Resource Name (ARN) kunci dari kolom
Arn
. Misalnya, kunci di regionus-west-2
memiliki ARNarn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
.Buat alias untuk kunci dengan
aws kms create-alias
. Alias memungkinkan Anda mengelola kunci AWS KMS berdasarkan nama.aws kms create-alias \ --alias-name=alias/key-name \ --target-key-id=key-arn
Ulangi langkah sebelumnya untuk kunci lain.
Konsol
- Login ke konsol AWS.
- Buka KMS, lalu pilih Kunci yang dikelola pelanggan dari sidebar.
- Klik Buat Kunci.
- Biarkan opsi default dipilih.
- Setelah dibuat, pilih kunci dari daftar.
- Salin ARN kunci.
- Ulangi langkah sebelumnya untuk kunci lain.
PersyaratanGoogle Cloud
Batasan keamanan yang ditentukan oleh organisasi mungkin mencegah Anda menyelesaikan langkah-langkah berikut. Untuk mengetahui informasi pemecahan masalah, lihat Mengembangkan aplikasi di lingkungan yang terbatas Google Cloud .
Sebelum memulai
Pastikan Anda memiliki izin Project Owner di Akun Google untuk mengaktifkan API di project tempat Anda menghubungkan lingkungan GKE di AWS. Google Cloud Anda hanya menggunakan izin Pemilik untuk membuat akun layanan GKE di AWS pada bagian berikut.
Instal Google Cloud CLI.
GKE Enterprise API harus diaktifkan untuk project Google Cloud Anda. Dengan mengaktifkan API ini, Anda berhak menggunakan fitur GKE Enterprise lainnya dengan project Google Cloud Anda.
Buat akun layanan GKE di AWS
Di bagian ini, Anda akan membuat tiga akun layanan dan kunci IAM untuk GKE di AWS. Akun layanan ini dijelaskan dalam daftar berikut:
Nama | Peran | Deskripsi |
---|---|---|
management-sa
|
gkehub.admin | Izin untuk mengelola keanggotaan Hub |
hub-sa
|
gkehub.connect | Izin untuk menyiapkan Connect antara cluster pengguna dan Hub Anda. |
node-sa
|
storage.objectViewer | Izin untuk mengakses Container Registry. |
Command Line
Lakukan autentikasi dengan Google Cloud CLI.
gcloud auth login &&\ gcloud auth application-default login
Anda akan diminta dua kali untuk membuka
cloud.google.com
dan mengautentikasi dengan Akun Google Anda.Tetapkan project Google Cloud Anda sebagai variabel lingkungan dan tetapkan project-id default Anda dengan gcloud CLI.
export PROJECT_ID=project-id gcloud config set project $PROJECT_ID
Ganti nilai project-id dengan Google Cloud project Anda.
Aktifkan Google Cloud API.
gcloud services enable anthos.googleapis.com gcloud services enable cloudresourcemanager.googleapis.com gcloud services enable gkehub.googleapis.com gcloud services enable gkeconnect.googleapis.com gcloud services enable logging.googleapis.com gcloud services enable monitoring.googleapis.com gcloud services enable serviceusage.googleapis.com gcloud services enable stackdriver.googleapis.com gcloud services enable storage-api.googleapis.com gcloud services enable storage-component.googleapis.com
Buat akun layanan dengan
gcloud
dengan menjalankan perintah berikut.gcloud iam service-accounts create management-sa gcloud iam service-accounts create hub-sa gcloud iam service-accounts create node-sa
Download kunci untuk setiap akun layanan dengan
gcloud
dengan menjalankan perintah berikut.gcloud iam service-accounts keys create management-key.json \ --iam-account management-sa@$PROJECT_ID.iam.gserviceaccount.com gcloud iam service-accounts keys create hub-key.json \ --iam-account hub-sa@$PROJECT_ID.iam.gserviceaccount.com gcloud iam service-accounts keys create node-key.json \ --iam-account node-sa@$PROJECT_ID.iam.gserviceaccount.com
Memberikan peran ke akun layanan pengelolaan.
gcloud projects add-iam-policy-binding \ $PROJECT_ID \ --member serviceAccount:management-sa@$PROJECT_ID.iam.gserviceaccount.com \ --role roles/gkehub.admin
Berikan peran ke akun layanan hub.
gcloud projects add-iam-policy-binding \ $PROJECT_ID \ --member serviceAccount:hub-sa@$PROJECT_ID.iam.gserviceaccount.com \ --role roles/gkehub.connect
Berikan peran ke akun layanan node.
gcloud projects add-iam-policy-binding \ $PROJECT_ID \ --member serviceAccount:node-sa@$PROJECT_ID.iam.gserviceaccount.com \ --role roles/storage.objectViewer
Konsol
- Buka halaman Library API konsolGoogle Cloud .
- Pilih project pilihan Anda dari dropdown di bagian atas layar.
Temukan dan aktifkan API berikut.
- Anthos
- Cloud Resource Manager
- Cloud Storage
- Cloud Logging
- Google Cloud Storage JSON API
- GKE Hub
- GKE Connect API
- Service Usage
- Stackdriver
- Stackdriver Monitoring
Buka halaman Service Accounts.
Selanjutnya, buat akun layanan dan tetapkan peran untuk akun layanan
management-sa
.- Klik Create service account.
- Beri nama account management-sa, lalu klik Create. Layar Grant this service account access to project akan muncul.
- Tambahkan peran Admin GKE HUB.
- Klik Lanjutkan. Layar Beri pengguna akses ke akun layanan ini akan muncul.
- Klik Selesai. Layar Service accounts for project akan muncul.
- Temukan baris yang berisi Email akun layanan Anda,
management-sa@project_id.iam.gserviceaccount.com
. - Klik menu tindakan more_vert untuk akun layanan, lalu pilih Kelola kunci.
- Klik menu drop-down Tambahkan kunci.
- Klik Create new key.
- Pilih JSON sebagai jenis kunci Anda, lalu klik Create. Browser Anda akan mendownload kunci akun layanan.
- Ganti nama file
management-key.json
.
Selanjutnya, buat akun layanan dan tetapkan peran untuk akun layanan
hub-sa
.- Klik Create service account.
- Beri nama hub akun hub-sa, lalu klik Buat. Layar Grant this service account access to project akan muncul.
- Tambahkan peran GKE Hub Connection Agent.
- Klik Lanjutkan. Layar Beri pengguna akses ke akun layanan ini akan muncul.
- Klik Selesai. Layar Service accounts for project akan muncul.
- Temukan baris yang berisi Email akun layanan Anda,
hub-sa@project_id.iam.gserviceaccount.com
. - Klik menu tindakan more_vert untuk akun layanan, lalu pilih Kelola kunci.
- Klik menu drop-down Tambahkan kunci.
- Klik Create new key.
- Pilih JSON sebagai jenis kunci Anda, lalu klik Create. Browser Anda akan mendownload kunci akun layanan.
- Ganti nama file
hub-key.json
.
Selanjutnya, buat akun layanan dan tetapkan peran untuk akun layanan
node-sa
.- Klik Create service account.
- Beri nama node-sa akun, lalu klik Buat. Layar Grant this service account access to project akan muncul.
- Tambahkan peran Storage Object Viewer.
- Klik Selesai. Layar Service accounts for project akan muncul.
- Temukan baris yang berisi Email akun layanan Anda,
node-sa@project_id.iam.gserviceaccount.com
. - Klik menu tindakan more_vert untuk akun layanan, lalu pilih Kelola kunci.
- Klik menu drop-down Tambahkan kunci.
- Klik Create new key.
- Pilih JSON sebagai jenis kunci Anda, lalu klik Create. Browser Anda akan mendownload kunci akun layanan.
- Ganti nama file
node-key.json
.
Alat command line anthos-gke
anthos-gke
adalah alat command line untuk GKE di AWS. Anda menggunakan
anthos-gke
untuk membuat konfigurasi dan
Menginstal layanan pengelolaan. Versi terbaru
anthos-gke
adalah aws-1.14.1-gke.0.
Alat command line anthos-gke
hanya mendukung Linux dan macOS.
Download biner dari Cloud Storage.
Linux
gcloud storage cp gs://gke-multi-cloud-release/aws/aws-1.14.1-gke.0/bin/linux/amd64/anthos-gke .
macOS
gcloud storage cp gs://gke-multi-cloud-release/aws/aws-1.14.1-gke.0/bin/darwin/amd64/anthos-gke .
Perbarui izin
anthos-gke
dan salin ke/usr/local/bin
.chmod 755 anthos-gke sudo mv anthos-gke /usr/local/bin
Pastikan versinya adalah
aws-1.14.1-gke.0
anthos-gke version
Izin untuk alat command line anthos-gke
Untuk menggunakan alat command line anthos-gke
, pengguna yang menjalankan perintah harus memiliki peran ServiceUsageViewer dan StorageAdmin. Untuk menambahkan peran ke akun utama IAM Anda, jalankan perintah berikut:
gcloud projects add-iam-policy-binding PROJECT_NAME \
--member user:USER_NAME \
--role roles/serviceusage.serviceUsageViewer
gcloud projects add-iam-policy-binding PROJECT_NAME \
--member user:USER_NAME \
--role roles/storage.admin
Ganti kode berikut:
PROJECT_NAME
: project Google Cloud AndaUSER_NAME
: nama pengguna yang menjalankan alat command lineanthos-gke
. Jika Anda menggunakan akun layanan, gunakanserviceAccount:SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com
Terraform
Alat anthos-gke
menghasilkan file konfigurasi Terraform dan memanggil alat command line terraform
.
GKE on AWS memerlukan versi Terraform yang lebih tinggi dari v0.14.3. Anda dapat memeriksa versi Terraform dengan perintah berikut:
terraform version
Jika Anda tidak memiliki v0.14.3 atau yang lebih tinggi, Download dan instal Terraform sebelum membuat layanan pengelolaan.
Mengupgrade Terraform
Untuk mengupgrade Terraform setelah menginstal GKE di AWS, Anda harus mengupgrade biner Terraform melalui setiap versi minor secara berurutan.
Misalnya, jika Anda ingin mengupgrade Terraform dari v0.12.x ke v0.14.x, Anda harus
menginstal v0.13.x untuk sementara. Setelah menginstal v0.13.x, jalankan anthos-gke aws
management init
dan anthos-gke aws management apply
. GKE di AWS
mengupdate konfigurasi Anda. Kemudian, Anda dapat mengupgrade ke v0.14.x.
Kubernetes
GKE on AWS memerlukan kubectl
versi 1.17 atau yang lebih tinggi. Anda dapat memeriksa versi kubectl
dengan menjalankan:
kubectl version --client -o yaml | grep gitVersion
Jika Anda belum memiliki 1.17 atau yang lebih baru,
instal kubectl
versi yang lebih baru.
Langkah berikutnya
- Instal layanan pengelolaan di VPC khusus dengan bastion host.
- Mengintegrasikan infrastruktur yang ada di VPC yang ada.