Panduan memulai

Topik ini menunjukkan cara membuat workload di GKE di AWS dan mengeksposnya secara internal ke cluster Anda.

Sebelum memulai

Sebelum mulai menggunakan GKE di AWS, pastikan Anda telah melakukan tugas-tugas berikut:

  • Instal layanan pengelolaan.
  • Buat cluster pengguna.
  • Dari direktori anthos-aws Anda, gunakan anthos-gke untuk mengalihkan konteks ke cluster pengguna Anda.
    cd anthos-aws
    env HTTPS_PROXY=http://localhost:8118 \
      anthos-gke aws clusters get-credentials CLUSTER_NAME
    Ganti CLUSTER_NAME dengan nama cluster pengguna Anda.

Anda dapat melakukan langkah-langkah ini dengan kubectl, atau dengan Konsol Google Cloud jika telah Diautentikasi dengan Connect. Jika Anda menggunakan konsol Google Cloud, langsung ke bagian Meluncurkan Deployment NGINX.

Agar terhubung ke GKE pada resource AWS, lakukan langkah-langkah berikut. Pilih jika Anda sudah memiliki AWS VPC (atau koneksi langsung ke VPC Anda) atau membuat VPC khusus saat membuat layanan pengelolaan.

VPC yang Sudah Ada

Jika Anda memiliki koneksi langsung atau VPN ke VPC yang ada, hapus baris env HTTP_PROXY=http://localhost:8118 dari perintah dalam topik ini.

VPC Khusus

Saat Anda membuat layanan pengelolaan di VPC khusus, GKE di AWS menyertakan host bastion di subnet publik.

Untuk terhubung ke layanan pengelolaan Anda, lakukan langkah-langkah berikut:

  1. Ubah ke direktori dengan GKE pada konfigurasi AWS. Anda membuat direktori ini saat Menginstal layanan pengelolaan.

    cd anthos-aws

  2. Untuk membuka tunnel, jalankan skrip bastion-tunnel.sh. Terowongan akan diteruskan ke localhost:8118.

    Untuk membuka tunnel ke bastion host, jalankan perintah berikut:

    ./bastion-tunnel.sh -N
    

    Pesan dari tunnel SSH akan muncul di jendela ini. Jika Anda sudah siap menutup koneksi, hentikan proses ini menggunakan Control+C atau tutup jendela.

  3. Buka terminal baru dan ubah ke direktori anthos-aws Anda.

    cd anthos-aws
  4. Pastikan Anda dapat terhubung ke cluster dengan kubectl.

    env HTTPS_PROXY=http://localhost:8118 \
    kubectl cluster-info
    

    Output-nya mencakup URL untuk server API layanan pengelolaan.

Meluncurkan Deployment NGINX

Di bagian ini, Anda akan membuat Deployment dari server web NGINX bernama nginx-1.

kubectl

  1. Gunakan kubectl create untuk membuat Deployment.

    env HTTPS_PROXY=http://localhost:8118 \
    kubectl create deployment --image nginx nginx-1
    
  2. Gunakan kubectl untuk mendapatkan status Deployment. Perhatikan NAME Pod.

    env HTTPS_PROXY=http://localhost:8118 \
    kubectl get deployment
    

Konsol

Untuk meluncurkan Deployment NGINX dengan Konsol Google Cloud, lakukan langkah-langkah berikut:

  1. Buka menu GKE Workloads di Konsol Google Cloud.

    Buka menu Workloads

  2. Klik Deploy.

  3. Di bagian Edit container, pilih Existing container image untuk memilih image container yang tersedia dari Container Registry. Isi Image path dengan image container yang ingin Anda gunakan beserta versinya. Untuk panduan memulai ini, gunakan nginx:latest.

  4. Klik Selesai, lalu klik Lanjutkan. Layar Konfigurasi akan muncul.

  5. Anda dapat mengubah Application name dan Namespace Kubernetes. Untuk panduan memulai ini, Anda dapat menggunakan nama aplikasi nginx-1 dan namespace default

  6. Dari menu drop-down Cluster, pilih cluster pengguna. Secara default, cluster pengguna pertama Anda diberi nama cluster-0.

  7. Klik Deploy. GKE di AWS meluncurkan Deployment NGINX Anda. Layar Detail deployment akan muncul.

Mengekspos pod Anda

Bagian ini menunjukkan cara melakukan salah satu tindakan berikut:

  • Ekspos Deployment secara internal di cluster dan pastikan Deployment tersedia dengan kubectl port-forward.

  • Ekspos Deployment Anda dari Google Cloud Console ke alamat yang diizinkan oleh grup keamanan kumpulan node Anda.

kubectl

  1. Ekspos port 80 Deployment ke cluster dengan kubectl expose.

    env HTTPS_PROXY=http://localhost:8118 \
    kubectl expose deployment nginx-1 --port=80
    

    Deployment kini dapat diakses dari dalam cluster.

  2. Teruskan port 80 pada Deployment ke port 8080 di komputer lokal Anda dengan kubectl port-forward.

    env HTTPS_PROXY=http://localhost:8118 \
    kubectl port-forward deployment/nginx-1 8080:80
    
  3. Hubungkan ke http://localhost:8080 dengan curl atau browser web Anda. Halaman web NGINX default akan muncul.

    curl http://localhost:8080
    

Konsol

  1. Buka menu GKE Workloads di Konsol Google Cloud.

    Buka menu Workloads

  2. Dari layar Detail deployment, klik Ekspos. Layar Ekspos deployment akan muncul.

  3. Di bagian Port mapping, biarkan port default (80), lalu klik Done.

  4. Untuk Jenis layanan, pilih Load balancer. Untuk informasi selengkapnya tentang opsi lainnya, lihat Layanan publikasi (ServiceTypes) di dokumentasi Kubernetes.

  5. Klik Expose. Layar Detail layanan akan muncul. GKE di AWS membuat Load Balancer Elastic Klasik untuk Layanan.

  6. Klik link untuk Endpoint Eksternal. Jika load balancer sudah siap, halaman web NGINX default akan muncul.

Melihat Deployment Anda di konsol Google Cloud

Jika cluster Anda terhubung ke Google Cloud Console, Anda dapat melihat Deployment Anda di halaman Workload GKE. Untuk melihat workload Anda, lakukan langkah-langkah berikut:

  1. Di browser Anda, buka halaman Workloads Google Kubernetes Engine.

    Kunjungi halaman Workload Google Kubernetes Engine

    Daftar Beban Kerja akan muncul.

  2. Klik nama beban kerja Anda, nginx-1. Layar Detail deployment akan muncul.

  3. Dari layar ini, Anda bisa mendapatkan detail tentang Deployment; melihat dan mengedit konfigurasi YAML; serta melakukan tindakan Kubernetes lainnya.

Untuk informasi selengkapnya tentang opsi yang tersedia di halaman ini, lihat Men-deploy aplikasi stateless dalam dokumentasi GKE.

Pembersihan

Untuk menghapus Deployment NGINX, gunakan kubectl delete atau konsol Google Cloud.

kubectl

env HTTPS_PROXY=http://localhost:8118 \
kubectl delete service nginx-1 &&\
kubectl delete deployment nginx-1

Konsol

  1. Buka menu halaman Services and Ingress di Konsol Google Cloud.

    Mengunjungi halaman Layanan dan Ingress

  2. Temukan Layanan NGINX Anda, lalu klik Nama layanan tersebut. Secara default, namanya adalah nginx-1-service. Layar Detail layanan akan muncul.

  3. Klik Hapus dan konfirmasi bahwa Anda ingin menghapus Layanan. GKE di AWS menghapus load balancer.

  4. Buka halaman Workload Google Kubernetes Engine.

    Kunjungi halaman Workload Google Kubernetes Engine

    Daftar Beban Kerja akan muncul.

  5. Klik nama beban kerja Anda, nginx-1. Layar Detail deployment akan muncul.

  6. Klik Delete dan konfirmasi bahwa Anda ingin menghapus Deployment. GKE di AWS menghapus Deployment.

Apa langkah selanjutnya?

Buat load balancer internal atau eksternal menggunakan salah satu Layanan berikut:

Anda dapat menggunakan jenis Workload Kubernetes lainnya dengan GKE di AWS. Lihat dokumentasi GKE untuk mengetahui informasi selengkapnya tentang Men-deploy workload.