Mengonfigurasi traffic eksternal dengan Network Service Tiers

Halaman ini menunjukkan cara mengontrol cara traffic eksternal mencapai Layanan Anda di cluster Google Kubernetes Engine (GKE) menggunakan Tingkatan Layanan Jaringan. Tingkat Layanan Jaringan memungkinkan Anda mengoptimalkan traffic jaringan untuk performa (Paket Premium) atau penghematan biaya (Paket Standar).

Paket Premium mengirimkan traffic di jaringan backbone premium Google untuk kecepatan dan keandalan yang lebih tinggi. Sebaliknya, Paket Standar menggunakan jaringan penyedia layanan internet (ISP) reguler yang menawarkan solusi yang lebih hemat biaya.

Halaman ini ditujukan untuk arsitek Cloud dan spesialis Jaringan yang mendesain dan membangun arsitektur jaringan organisasi mereka. Untuk mempelajari lebih lanjut peran umum dan contoh tugas yang kami referensikan dalam konten Google Cloud , lihat Peran dan tugas pengguna GKE umum.

Cara kerja Network Service Tiers di GKE

Bagian ini menunjukkan cara mengelola Tingkatan Layanan Jaringan di GKE.

  • Menetapkan tingkat jaringan di tingkat project: Anda dapat menetapkan tingkat jaringan default untuk project Google Cloud agar menggunakan Tingkat Standar atau Tingkat Premium. Semua cluster baru dibuat dengan setelan network-default, yang mewarisi setelan tingkat project. Setelan ini tetap ada selama upgrade cluster. Node pool yang dibuat dalam cluster mewarisi tingkat jaringan dari konfigurasi tingkat project.

  • Menetapkan tingkat jaringan saat membuat cluster baru: Anda dapat mengonfigurasi tingkat jaringan saat membuat cluster baru, terlepas dari setelan tingkat di project Google Cloud Anda. Node pool baru menggunakan tingkat jaringan level cluster, dan konfigurasi ini tetap ada meskipun setelah Anda mengupgrade node pool.

  • Menetapkan tingkat jaringan saat mengupdate cluster: Anda dapat mengonfigurasi tingkat jaringan saat mengupdate cluster yang ada. Kumpulan node baru dan Layanan LoadBalancer baru mewarisi konfigurasi tingkat yang diperbarui, sementara kumpulan node dan Layanan yang ada terus menggunakan konfigurasi tingkat jaringan asli. Konfigurasi tingkat yang diperbarui akan tetap ada setelah Anda mengupgrade cluster.

  • Menetapkan tingkat jaringan saat memperbarui Layanan LoadBalancer: Layanan LoadBalancer mewarisi tingkat jaringan cluster. Namun, Anda dapat mengganti setelan ini dan mengupdate tingkat jaringan di manifes Layanan.

Network Service Tiers dan load balancing

Secara default, Load Balancer Jaringan passthrough eksternal menggunakan Paket Premium. Anda dapat memperbarui konfigurasi ini sehingga Layanan LoadBalancer menggunakan Tingkat Standar.

Jika menggunakan Load Balancer Aplikasi dengan Gateway, Anda tidak dapat mengonfigurasi Network Service Tiers. Network Service Tiers di Gateway dikontrol oleh resource GatewayClass. Untuk mengetahui informasi selengkapnya, lihat Alamat IP gateway.

Ingress GKE untuk Load Balancer Aplikasi eksternal tidak mendukung Paket Standar untuk perutean traffic.

Sebelum memulai

Sebelum memulai, pastikan Anda telah melakukan tugas berikut:

  • Aktifkan Google Kubernetes Engine API.
  • Aktifkan Google Kubernetes Engine API
  • Jika ingin menggunakan Google Cloud CLI untuk tugas ini, instal lalu lakukan inisialisasi gcloud CLI. Jika sebelumnya Anda telah menginstal gcloud CLI, dapatkan versi terbaru dengan menjalankan gcloud components update.

Pembatasan

Berlaku batasan berikut:

  • Anda dapat mengonfigurasi setelan tingkat jaringan hanya di tingkat project atau tingkat cluster. Anda tidak dapat mengonfigurasi tingkat jaringan node pool secara langsung.
  • Paket Standar tidak didukung untuk alamat IPv4 atau IPv6 stack ganda eksternal global. Untuk mengetahui informasi selengkapnya tentang jenis alamat IP, lihat Alamat IP.

Membuat cluster dengan Network Service Tiers

Untuk membuat cluster dan menentukan tingkat jaringan, jalankan perintah berikut:

 gcloud container clusters create CLUSTER_NAME \
     --network-tier=NETWORK_TIER \
     ...

Ganti nilai berikut:

  • CLUSTER_NAME: nama cluster Anda.
  • NETWORK_TIER: setelan tingkat jaringan. Gunakan network-default untuk setelan tingkat yang sama dengan yang ada di project Google Cloud Anda, Standard untuk Paket Standar atau Premium untuk Paket Premium.

Memigrasikan cluster yang ada ke tingkat yang berbeda

Memperbarui tingkat jaringan cluster tidak akan memengaruhi tingkat jaringan resource yang ada. Resource yang ada akan terus menggunakan alamat IP yang terkait dengan tingkat jaringan lama. Untuk menghindari gangguan layanan, ikuti langkah-langkah berikut saat Anda memigrasikan cluster ke tingkat jaringan baru:

  1. Perbarui cluster: untuk memperbarui cluster yang ada dengan tingkat jaringan, jalankan perintah berikut:

    gcloud container clusters update CLUSTER_NAME \
        --network-tier=NETWORK_TIER \
        ...
    

    Ganti nilai berikut:

    • CLUSTER_NAME: nama cluster Anda.
    • NETWORK_TIER: setelan tingkat jaringan. Gunakan network-default untuk setelan tingkat yang sama dengan yang ada di project Google Cloud Anda, Standard untuk Paket Standar atau Premium untuk Paket Premium.
  2. Buat node pool dan Layanan baru: agar klien eksternal dapat menggunakan alamat IP baru yang terkait dengan tingkat jaringan baru, Anda harus membuat node pool baru dan Layanan LoadBalancer baru. Node pool baru dan Layanan LoadBalancer baru mewarisi konfigurasi tingkat yang diperbarui, sementara node pool dan Layanan yang ada akan terus menggunakan konfigurasi tingkat jaringan asli.

  3. Perbarui data DNS: ubah data DNS Anda agar mengarah ke alamat IP baru dari Layanan LoadBalancer yang baru.

  4. Tunggu hingga DNS dipropagasi: tunggu hingga Time to Live (TTL) DNS berakhir untuk memastikan klien diarahkan ke layanan baru dan untuk menghindari penyajian data yang sudah tidak berlaku.

Memperbarui load balancer eksternal dengan Network Service Tiers

Untuk Load Balancer Jaringan passthrough eksternal, GKE secara default menggunakan tingkat jaringan yang dikonfigurasi di cluster untuk aturan penerusan eksternal dan alamat IP. Jika tingkat jaringan cluster ditetapkan ke network-default, load balancer akan menggunakan Paket Premium. Anda dapat mengganti setelan ini dengan mengonfigurasi anotasi cloud.google.com/network-tier di manifes Service. Contoh:

    ```yaml
    apiVersion: v1
    kind: Service
    metadata:
      name: store-v1-lb-svc
      annotations:
        cloud.google.com/l4-rbs: "enabled"
        cloud.google.com/network-tier: Standard
    spec:
      type: LoadBalancer
      selector:
        app: store
      ports:
      - name: tcp-port
        protocol: TCP
        port: 8080
        targetPort: 8080
    ```

Untuk mengetahui informasi selengkapnya tentang parameter yang digunakan untuk Layanan LoadBalancer, lihat Parameter layanan.

Alamat IP statis: saat Anda membuat Layanan dengan alamat IP statis, tingkat jaringan alamat IP statis harus cocok dengan tingkat jaringan Layanan LoadBalancer. Jika ada ketidakcocokan, Anda akan melihat pesan error berikut saat menjalankan perintah kubectl describe service:

Error syncing load balancer: failed to ensure load balancer: requested ip "standard-service" is neither static nor assigned to the LB

Langkah berikutnya