Halaman ini berlaku untuk Apigee dan Apigee Hybrid.
Lihat dokumentasi
Apigee Edge.
Halaman ini menjelaskan cara membuat APIMExtensionPolicy
untuk membuat ekstensi traffic yang diperlukan
di Gateway Google Kubernetes Engine (GKE) yang berjalan di cluster Anda.
Sebelum memulai
Sebelum Anda memulai tugas ini, selesaikan langkah-langkah berikut:
- Pastikan cluster GKE Anda telah dikonfigurasi dengan Workload Identity. Lihat Membuat workload identity untuk mengetahui langkah-langkah yang diperlukan.
- Pastikan cluster Anda telah dikonfigurasi dan berfungsi dengan GKE Gateway. Lihat Men-deploy gateway untuk mengetahui detail selengkapnya.
- Instal Apigee Operator untuk Kubernetes. Lihat Menginstal Apigee Operator untuk Kubernetes untuk mengetahui petunjuk penginstalan.
Peran yang diperlukan
Jika Anda menetapkan peran yang diperlukan ke akun layanan seperti yang dijelaskan dalam Menginstal Apigee Operator untuk Kubernetes, tidak ada peran atau izin IAM tambahan yang diperlukan untuk menyelesaikan tugas ini.
Anda dapat memilih untuk mengizinkan tindakan pada resource di cluster Google Kubernetes Engine menggunakan mekanisme role-based access control (RBAC) bawaan di Kubernetes. Untuk mengetahui informasi selengkapnya, lihat Memberikan otorisasi pada tindakan dalam cluster menggunakan role-based access control.
Buat APIMExtensionPolicy
Pada langkah ini, buat APIMExtensionPolicy
dan terapkan ke GKE Gateway yang berjalan di cluster Anda.
Kebijakan ini mengatur semua traffic yang melalui Gateway dan HTTPRoutes
terkait, yang beroperasi serupa dengan flowhook di tingkat lingkungan di Apigee saat ini.
Buat kebijakan Ekstensi APIM:
- Buat file baru bernama
global-ext-lb1-apim-policy.yaml
dalam namespaceapim
. - Salin konten berikut ke dalam file baru:
# global-ext-lb1-apim-policy.yaml apiVersion: apim.googleapis.com/v1 kind: APIMExtensionPolicy metadata: name: global-ext-lb1-apim-policy namespace: apim spec: apigeeEnv: ENV_NAME # optional location: global failOpen: false timeout: 1000ms defaultSecurityEnabled: true targetRef: # identifies the Gateway where the extension should be applied name: global-ext-lb1 kind: Gateway namespace: default
Dengan ENV_NAME adalah nama lingkungan Apigee yang dibuat di langkah penginstalan Membuat lingkungan Apigee.
Anda dapat melihat semua lingkungan yang tersedia di halaman Apigee Environments di konsol Google Cloud :
- Terapkan kebijakan:
kubectl -n apim apply -f global-ext-lb1-apim-policy.yaml
Setelah kebijakan diterapkan, Apigee Operator untuk Kubernetes akan membuat resource jaringan di latar belakang.
- Periksa status kebijakan Ekstensi APIM menggunakan perintah berikut:
kubectl -n apim get APIMExtensionPolicy
Output-nya akan terlihat seperti berikut, dengan
State
RUNNING
:NAME STATE ERRORMESSAGE global-ext-lb1-apim-policy RUNNING
- Gunakan perintah berikut untuk mengirim permintaan ke Gateway:
curl http://GATEWAY_IP_ADDRESS/get -H "Host: HOST_NAME"
Dengan:
GATEWAY_IP_ADDRESS
adalah alamat IP Gateway. Anda dapat mengambil alamat IP Gateway menggunakan perintah berikut, denganGATEWAY_NAME
adalah nama Gateway:kubectl get gateways.gateway.networking.k8s.io GATEWAY_NAME -o=jsonpath="{.status.addresses[0].value}"
HOST_NAME
adalah nama host yang ditentukan dalamHTTPRoute
Gateway.
- Permintaan akan gagal karena keamanan default diaktifkan dengan menyetel
defaultSecurityEnabled: true
di resource kebijakan Ekstensi API. Anda akan melihat respons seperti berikut:{"fault":{"faultstring":"Raising fault. Fault name : RF-insufficient-request-raise-fault","detail":{"errorcode":"steps.raisefault.RaiseFault"}}}
Hal ini menunjukkan bahwa kebijakan ekstensi Apigee aktif dan penegakan kunci API serta verifikasi token akses aktif.
Langkah berikutnya
- Pelajari cara Menambahkan kebijakan ke GKE Gateway.
- Pelajari cara Meng-uninstal Apigee Operator untuk Kubernetes.