Prasyarat
Sebelum menyiapkan gateway, Anda harus mendapatkan izin Identity and Access Management (IAM) yang sesuai, memastikan project Anda memiliki kebijakan jaringan yang sesuai, dan mengaktifkan keluar.
Lihat Sebelum Anda memulai dengan 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.
Membuat dan mengelola gateway Cloud NAT dengan waktu tunggu koneksi
Dokumen ini menjelaskan cara membuat dan mengelola gateway Cloud NAT dengan waktu tunggu koneksi. Kasus penggunaan ini membuat penyiapan yang mirip dengan skenario pertama, tetapi menentukan waktu tunggu untuk koneksi yang dibuat melalui gateway Cloud NAT.
Diagram berikut menunjukkan contoh penyiapan gateway dengan beberapa IP keluar:

Secara default, koneksi keluar yang dibuat melalui gateway Cloud NAT memiliki waktu tunggu berikut. Anda dapat mengonfigurasinya secara manual jika diperlukan.
| Waktu tunggu | Default (detik) |
| Koneksi non-TCP | 60 |
| Koneksi TCP yang tidak ada aktivitas | 8000 |
| Penghapusan koneksi TCP | 10 |
| Pembentukan koneksi TCP | 60 |
Membuat gateway Cloud NAT dengan waktu tunggu
Contoh ini menentukan satu gateway Cloud NAT dengan waktu tunggu koneksi.
Seperti dalam contoh sebelumnya, konfigurasi ini menetapkan IP keluar dari subnet-1
dan subnet-2 ke traffic keluar dari endpoint dengan label app:aa.
Selain itu, konfigurasi ini menggantikan waktu tunggu default dengan nilai kustom.
apiVersion: networking.gdc.goog/v1
kind: CloudNATGateway
metadata:
namespace: project-1
name: gateway-1
spec:
workloadSelector: # Immutable
labelSelector:
workloads:
matchLabels:
app: aa
subnetRefs: # Mutable
- subnet-1
- subnet-2
connectionOptions: # Mutable
nonTCPTimeoutSeconds: 10 # All non-TCP connections. 60 by default
tcpTimeoutSeconds: 900 # Established TCP connections. 8000 by default
tcpTeardownTimeoutSeconds: 10 # TCP connection teardown. 10 by default
tcpEstablishmentTimeoutSeconds: 10 # TCP connection establishment. 60 by default
Status gateway dapat diperiksa menggunakan 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 pada 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
subnetRefs: # Mutable
- subnet-1
- subnet-2
connectionOptions: # Mutable
nonTCPTimeoutSeconds: 10
tcpTimeoutSeconds: 900
tcpTeardownTimeoutSeconds: 10
tcpEstablishmentTimeoutSeconds: 10
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
Untuk memverifikasi bahwa konfigurasi baru sudah berlaku, Anda dapat Memeriksa status gateway.