Halaman ini memberikan petunjuk untuk mengonfigurasi kebijakan jaringan tingkat workload di Google Distributed Cloud (GDC) dengan air gap.
Kebijakan jaringan tingkat workload menawarkan kontrol terperinci atas komunikasi antara workload individual dalam suatu project. Perincian ini memungkinkan kontrol akses jaringan yang lebih ketat, sehingga meningkatkan keamanan dan penggunaan resource.
Kebijakan jaringan tingkat beban kerja dapat menerapkan PNP di satu zona. Label tertentu dapat ditambahkan ke workload dalam satu zona, sehingga Anda dapat mengontrol komunikasi antara workload individual dalam satu project atau di project yang berbeda untuk zona tersebut. Untuk mengetahui informasi selengkapnya, lihat Kebijakan jaringan tingkat workload satu zona.
Membuat kebijakan traffic intra-project tingkat workload
Anda dapat membuat kebijakan traffic intra-project tingkat beban kerja untuk mengaktifkan atau menonaktifkan akses jaringan untuk traffic antar-beban kerja dalam project.
Kebijakan jaringan traffic intra-project tingkat workload ingress
Saat membuat project, Anda secara implisit membuat resource dasar ProjectNetworkPolicy
default yang memungkinkan komunikasi dalam project di antara semua beban kerja. Kebijakan ini
mengizinkan traffic masuk dari workload lain dalam project yang sama.
Untuk membuat kebijakan traffic intra-project tingkat beban kerja, kebijakan dasar default harus dihapus terlebih dahulu. Jika tidak, perilaku yang tidak terduga dapat terjadi.
Untuk menghapus kebijakan dasar default, jalankan perintah berikut:
kubectl --kubeconfig GLOBAL_API_SERVER delete pnp base-policy-allow-intra-project-traffic -n PROJECT
Untuk membuat kebijakan jaringan traffic intra-project tingkat workload ingress, buat dan terapkan resource kustom berikut:
kubectl --kubeconfig GLOBAL_API_SERVER apply -f - <<EOF apiVersion: networking.global.gdc.goog/v1 kind: ProjectNetworkPolicy metadata: namespace: PROJECT name: allow-intra-project-inbound-traffic-from-target-to-subject spec: policyType: Ingress subject: subjectType: UserWorkload workloadSelector: matchLabels: SUBJECT_LABEL_KEY: SUBJECT_LABEL_VALUE ingress: - from: - projectSelector: projects: matchNames: - PROJECT workloads: matchLabels: TARGET_LABEL_KEY: TARGET_LABEL_VALUE EOF
Ganti kode berikut:
GLOBAL_API_SERVER
: jalur kubeconfig server API global. Untuk mengetahui informasi selengkapnya, lihat Server API global dan zonal. Jika Anda belum membuat file kubeconfig untuk server API, lihat Login untuk mengetahui detailnya.PROJECT
: nama project tempat Anda ingin mengizinkan traffic masuk intra-project tingkat workload.SUBJECT_LABEL_KEY
: kunci label yang digunakan untuk memilih beban kerja sumber. Misalnya,app
,tier
, ataurole
.SUBJECT_LABEL_VALUE
: nilai yang terkait denganSUBJECT_LABEL_KEY
. Objek ini menentukan workload mana yang menjadi sumber traffic yang diizinkan. Misalnya, jikaSUBJECT_LABEL_KEY
adalahapp
, danSUBJECT_LABEL_VALUE
adalahbackend
, maka workload dengan labelapp: backend
adalah sumber traffic.TARGET_LABEL_KEY
: kunci label yang digunakan untuk memilih beban kerja tujuan.TARGET_LABEL_VALUE
: nilai yang terkait denganTARGET_LABEL_KEY
. Tindakan ini menentukan workload mana yang menjadi tujuan traffic yang diizinkan.
Membuat kebijakan traffic lintas project tingkat workload
Anda dapat membuat kebijakan traffic lintas project tingkat beban kerja untuk mengaktifkan atau menonaktifkan akses jaringan untuk traffic antar-beban kerja di project yang berbeda.
Kebijakan jaringan traffic lintas project tingkat workload keluar
Untuk membuat kebijakan jaringan traffic lintas project tingkat beban kerja egress, buat dan terapkan resource kustom berikut:
kubectl --kubeconfig GLOBAL_API_SERVER apply -f - <<EOF apiVersion: networking.global.gdc.goog/v1 kind: ProjectNetworkPolicy metadata: namespace: PROJECT_1 name: allow-cross-project-outbound-traffic-to-subject-from-target spec: policyType: Egress subject: subjectType: UserWorkload workloadSelector: matchLabels: SUBJECT_LABEL_KEY: SUBJECT_LABEL_VALUE egress: - to: - projectSelector: projects: matchNames: - PROJECT_2 workloads: matchLabels: TARGET_LABEL_KEY: TARGET_LABEL_VALUE EOF
Ganti kode berikut:
GLOBAL_API_SERVER
: jalur kubeconfig server API global. Untuk mengetahui informasi selengkapnya, lihat Server API global dan zonal. Jika Anda belum membuat file kubeconfig untuk server API, lihat Login untuk mengetahui detailnya.PROJECT_1
: nama project tempat Anda ingin mengizinkan traffic keluar lintas project tingkat beban kerja.PROJECT_2
: nama project tempat Anda ingin mengirim traffic keluar lintas project tingkat beban kerja.SUBJECT_LABEL_KEY
: kunci label yang digunakan untuk memilih beban kerja sumber. Misalnya,app
,tier
, ataurole
.SUBJECT_LABEL_VALUE
: nilai yang terkait denganSUBJECT_LABEL_KEY
. Objek ini menentukan workload mana yang menjadi sumber traffic yang diizinkan. Misalnya, jikaSUBJECT_LABEL_KEY
adalahapp
, danSUBJECT_LABEL_VALUE
adalahbackend
, maka workload dengan labelapp: backend
adalah sumber traffic.TARGET_LABEL_KEY
: kunci label yang digunakan untuk memilih beban kerja tujuan.TARGET_LABEL_VALUE
: nilai yang terkait denganTARGET_LABEL_KEY
. Tindakan ini menentukan workload mana yang menjadi tujuan traffic yang diizinkan.
Membuat kebijakan traffic intra-project tingkat workload satu zona
Anda dapat membuat kebijakan traffic intra-project level beban kerja zona tunggal untuk mengaktifkan atau menonaktifkan akses jaringan untuk traffic antar-beban kerja dalam project di zona tertentu.
Kebijakan jaringan traffic intra-project tingkat workload masuk zona tunggal
Saat membuat project, Anda secara implisit membuat resource dasar ProjectNetworkPolicy
default yang memungkinkan komunikasi dalam project di antara semua beban kerja. Kebijakan ini
mengizinkan traffic masuk dari workload lain dalam project yang sama.
Untuk membuat kebijakan jaringan traffic intra-project tingkat beban kerja ingress zona tunggal, kebijakan dasar default harus dihapus terlebih dahulu. Jika tidak, perilaku yang tidak terduga dapat terjadi.
Untuk menghapus kebijakan dasar default, jalankan perintah berikut:
kubectl --kubeconfig GLOBAL_API_SERVER delete pnp base-policy-allow-intra-project-traffic -n PROJECT
Untuk membuat kebijakan jaringan traffic intra-project tingkat beban kerja ingress zona tunggal, buat dan terapkan resource kustom berikut:
kubectl --kubeconfig GLOBAL_API_SERVER apply -f - <<EOF apiVersion: networking.global.gdc.goog/v1 kind: ProjectNetworkPolicy metadata: namespace: PROJECT name: allow-single-zone-intra-project-inbound-traffic-from-target-to-subject spec: policyType: Ingress subject: subjectType: UserWorkload workloadSelector: matchLabels: SUBJECT_LABEL_KEY: SUBJECT_LABEL_VALUE ZONE_SUBJECT_LABEL_KEY: ZONE_SUBJECT_LABEL_VALUE ingress: - from: - projectSelector: projects: matchNames: - PROJECT workloads: matchLabels: TARGET_LABEL_KEY: TARGET_LABEL_VALUE ZONE_TARGET_LABEL_KEY: ZONE_TARGET_LABEL_VALUE EOF
Ganti kode berikut:
GLOBAL_API_SERVER
: jalur kubeconfig server API global. Untuk mengetahui informasi selengkapnya, lihat Server API global dan zonal. Jika Anda belum membuat file kubeconfig untuk server API, lihat Login untuk mengetahui detailnya.PROJECT
: nama project tempat Anda ingin mengizinkan traffic masuk intra-project tingkat beban kerja zona tunggal.SUBJECT_LABEL_KEY
: kunci label yang digunakan untuk memilih beban kerja sumber. Misalnya,app
,tier
, ataurole
.SUBJECT_LABEL_VALUE
: nilai yang terkait denganSUBJECT_LABEL_KEY
. Objek ini menentukan workload mana yang menjadi sumber traffic yang diizinkan. Misalnya, jikaSUBJECT_LABEL_KEY
adalahapp
, danSUBJECT_LABEL_VALUE
adalahbackend
, maka workload dengan labelapp: backend
adalah sumber traffic.TARGET_LABEL_KEY
: kunci label yang digunakan untuk memilih beban kerja tujuan.TARGET_LABEL_VALUE
: nilai yang terkait denganTARGET_LABEL_KEY
. Tindakan ini menentukan workload mana yang menjadi tujuan traffic yang diizinkan.ZONE_SUBJECT_LABEL_KEY
: kunci label yang digunakan untuk memilih zona sumber. Misalnya,zone
, atauregion
.ZONE_SUBJECT_LABEL_VALUE
: nilai yang terkait denganZONE_SUBJECT_LABEL_KEY
. Menentukan zona mana yang menjadi sumber traffic yang diizinkan. Misalnya, jikaZONE_SUBJECT_LABEL_KEY
adalahzone
, danZONE_SUBJECT_LABEL_VALUE
adalahus-central1-a
, maka workload dengan labelzone: us-central1-a
adalah sumber traffic.ZONE_TARGET_LABEL_KEY
: kunci label yang digunakan untuk memilih zona tujuan.ZONE_TARGET_LABEL_VALUE
: nilai yang terkait denganZONE_TARGET_LABEL_KEY
. Tindakan ini menentukan zona mana yang menjadi tujuan traffic yang diizinkan.
Membuat kebijakan traffic lintas project tingkat workload zona tunggal
Anda dapat membuat kebijakan traffic lintas project tingkat beban kerja zona tunggal untuk mengaktifkan atau menonaktifkan akses jaringan untuk traffic antar-beban kerja dalam project yang berbeda di zona tertentu.
Kebijakan jaringan traffic lintas project tingkat workload keluar zona tunggal
Untuk membuat kebijakan jaringan traffic intra-project tingkat beban kerja egress zona tunggal, buat dan terapkan resource kustom berikut:
kubectl --kubeconfig GLOBAL_API_SERVER apply -f - <<EOF apiVersion: networking.global.gdc.goog/v1 kind: ProjectNetworkPolicy metadata: namespace: PROJECT_1 name: allow-single-zone-cross-project-outbound-traffic-to-subject-from-target spec: policyType: Egress subject: subjectType: UserWorkload workloadSelector: matchLabels: SUBJECT_LABEL_KEY: SUBJECT_LABEL_VALUE ZONE_SUBJECT_LABEL_KEY: ZONE_SUBJECT_LABEL_VALUE egress: - to: - projectSelector: projects: matchNames: - PROJECT_2 workloads: matchLabels: TARGET_LABEL_KEY: TARGET_LABEL_VALUE ZONE_TARGET_LABEL_KEY: ZONE_TARGET_LABEL_VALUE EOF
Ganti kode berikut:
GLOBAL_API_SERVER
: jalur kubeconfig server API global. Untuk mengetahui informasi selengkapnya, lihat Server API global dan zonal. Jika Anda belum membuat file kubeconfig untuk server API, lihat Login untuk mengetahui detailnya.PROJECT_1
: nama project tempat Anda ingin mengizinkan traffic keluar lintas project tingkat beban kerja zona tunggal.PROJECT_2
: nama project tempat Anda ingin mengirim traffic keluar lintas project tingkat beban kerja zona tunggal.SUBJECT_LABEL_KEY
: kunci label yang digunakan untuk memilih beban kerja sumber. Misalnya,app
,tier
, ataurole
.SUBJECT_LABEL_VALUE
: nilai yang terkait denganSUBJECT_LABEL_KEY
. Objek ini menentukan workload mana yang menjadi sumber traffic yang diizinkan. Misalnya, jikaSUBJECT_LABEL_KEY
adalahapp
, danSUBJECT_LABEL_VALUE
adalahbackend
, maka workload dengan labelapp: backend
adalah sumber traffic.TARGET_LABEL_KEY
: kunci label yang digunakan untuk memilih beban kerja tujuan.TARGET_LABEL_VALUE
: nilai yang terkait denganTARGET_LABEL_KEY
. Tindakan ini menentukan workload mana yang menjadi tujuan traffic yang diizinkan.ZONE_SUBJECT_LABEL_KEY
: kunci label yang digunakan untuk memilih zona sumber. Misalnya,zone
, atauregion
.ZONE_SUBJECT_LABEL_VALUE
: nilai yang terkait denganZONE_SUBJECT_LABEL_KEY
. Menentukan zona mana yang menjadi sumber traffic yang diizinkan. Misalnya, jikaZONE_SUBJECT_LABEL_KEY
adalahzone
, danZONE_SUBJECT_LABEL_VALUE
adalahus-central1-a
, maka workload dengan labelzone: us-central1-a
adalah sumber traffic.ZONE_TARGET_LABEL_KEY
: kunci label yang digunakan untuk memilih zona tujuan.ZONE_TARGET_LABEL_VALUE
: nilai yang terkait denganZONE_TARGET_LABEL_KEY
. Tindakan ini menentukan zona mana yang menjadi tujuan traffic yang diizinkan.