Google Distributed Cloud (GDC) dengan air gap mendukung cluster standar, cluster Kubernetes layanan mandiri satu project yang dikelola oleh grup operator aplikasi yang menawarkan fleksibilitas lebih besar untuk workload kustom. Halaman ini membahas cara menyiapkan Cloud NAT untuk cluster standar, dan menjelaskan beberapa batasan dan keterbatasan pada konfigurasi NAT untuk jenis cluster ini.
Sebelum memulai
Sebelum menyiapkan gateway, Anda harus mendapatkan izin Identity and Access Management (IAM) yang sesuai, memastikan project Anda memiliki kebijakan jaringan yang sesuai, dan mengaktifkan traffic keluar.
Lihat Sebelum memulai Cloud NAT untuk mengetahui detailnya.
Gateway Cloud NAT menggunakan subnet leaf eksternal sebagai input. Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi subnet eksternal untuk Cloud NAT, lihat
Membuat subnet eksternal untuk Cloud NAT.
Ringkasan

Gateway Cloud NAT dapat dikonfigurasi untuk menangani traffic keluar untuk workload yang berjalan di cluster standar dengan dua cara:
- Gateway cakupan project: Gateway yang berlaku untuk semua traffic workload di cluster dalam project, yang mencakup semua cluster bersama dan standar. Ini adalah konfigurasi yang dijelaskan di Membuat gateway Cloud NAT.
- Gateway cakupan cluster: Gateway yang hanya berlaku untuk workload dalam satu cluster standar yang ditentukan. Ini adalah jenis gateway yang ditunjukkan di halaman ini.
Kedua metode ini khusus untuk workload, dan tidak
berlaku untuk node yang membentuk cluster standar. Untuk mengaktifkan
Cloud NAT untuk
node yang membentuk cluster standar, tambahkan label
cluster.gdc.goog/enable-node-egress-to-outside-the-org: "true" ke
objek cluster standar.
Membuat gateway Cloud NAT
Proses pembuatan gateway untuk cluster standar tetap sama dengan pembuatan gateway Cloud NAT cakupan project.
Dalam hal ini, kita akan berfokus pada kemampuan pemfilteran cluster untuk Cloud NAT cluster standar dan membuat penyiapan yang mirip dengan skenario pertama, tetapi menentukan nama cluster standar user-vc-1 tempat endpoint yang akan merutekan traffic melalui gateway berada. Hasilnya, gateway ini akan dicakup ke cluster tertentu ini.
apiVersion: networking.gdc.goog/v1
kind: CloudNATGateway
metadata:
namespace: project-1
name: gateway-1
spec:
workloadSelector: # Immutable
labelSelector:
workloads:
matchLabels:
app: aa
clusters:
matchLabels:
kubernetes.io/metadata.name: user-vc-1
subnetRefs: # Mutable
- subnet-1
- subnet-2
Konfigurasi ini akan memilih semua workload dengan label app: aa di semua namespace dalam cluster standar user-vc-1.
Memeriksa status gateway
Periksa status gateway dengan menjalankan perintah kubectl berikut.
export MGMT_KUBECONFIG=<path_to_management_kubeconfig>
kubectl get cloudnatgateways gateway-1 -n project-1 --kubeconfig "${MGMT_KUBECONFIG:?}"
Jika dikonfigurasi dengan benar, kolom kondisi status gateway Cloud NAT akan menampilkan kondisi jenis Ready yang ditetapkan ke true dan subnet yang ditandai sebagai OK, seperti yang ditunjukkan dalam contoh output berikut:
apiVersion: networking.gdc.goog/v1
kind: CloudNATGateway
metadata:
namespace: project-1
name: gateway-1
spec:
workloadSelector: # Immutable
labelSelector:
workloads:
matchLabels:
app: aa
clusters:
matchLabels:
kubernetes.io/metadata.name: user-vc-1
subnetRefs: # Mutable
- subnet-1
- subnet-2
status:
conditions:
- lastTransitionTime: "2025-08-20T21:31:36Z"
message: ""
observedGeneration: 1
reason: Ready
status: "True"
type: Ready
- lastTransitionTime: "2025-08-20T21:31:36Z"
message: ""
observedGeneration: 1
reason: Ready
status: "True"
type: SubnetsReady
- lastTransitionTime: "2025-08-20T21:31:36Z"
message: ""
observedGeneration: 1
reason: Ready
status: "True"
type: PerimeterConfigurationReady
- lastTransitionTime: "2025-08-20T21:31:36Z"
message: ""
observedGeneration: 1
reason: Ready
status: "True"
type: EgressRoutesReady
subnets:
- name: subnet-1
status: OK
- name: subnet-2
status: OK
Menguji traffic
Uji traffic dengan mengeluarkan perintah curl dari salah satu pod atau VM yang ditetapkan ke gateway di cluster standar ke endpoint eksternal. Endpoint penerima akan melihat paket dari salah satu IP keluar yang terkait dengan gateway. Endpoint di cluster bersama dengan label yang sama TIDAK DAPAT mengirim traffic keluar menggunakan gateway ini.
Batasan pada konfigurasi gateway khusus cluster
Pencocok label workload (workloadSelector.labelSelector.workloads.matchLabels) dari gateway cakupan cluster TIDAK BOLEH TUMPANG TINDIS dengan pencocok label workload dari gateway cakupan project lainnya. Seperti yang dibahas dalam Batasan pada konfigurasi Cloud NAT, workloadSelector.labelSelector.workloads.matchLabels tidak boleh tumpang tindih antara
gateway di project dan zona yang sama.
Batasan lain yang tercantum dalam Batasan pada konfigurasi Cloud NAT juga berlaku untuk konfigurasi gateway cakupan cluster .