Halaman ini berlaku untuk Apigee, tetapi tidak untuk Apigee Hybrid.
Lihat dokumentasi Apigee Edge.
Dokumen ini menjelaskan cara mengonfigurasi Apigee untuk mengonfigurasi health check aktif jika Anda ingin menggunakan Private Service Connect (PSC) untuk pemilihan rute jaringan northbound (traffic dari klien ke Apigee). Health check aktif berguna untuk mencegah hilangnya traffic jaringan jika terjadi kegagalan regional.
Ringkasan
Jika Anda berencana menggunakan PSC untuk pemilihan rute jaringan arah utara Apigee, ikuti petunjuk dalam dokumen ini untuk mengonfigurasi health check aktif. Saat ini, PSC tidak mendukung pemantauan health check aktif. Untuk mengatasi batasan PSC ini, Anda dapat mengubah konfigurasi penginstalan Apigee untuk menggunakan grup instance terkelola (MIG), yang menyediakan kemampuan health check aktif.
Anda dapat menggunakan deteksi outlier untuk pemantauan kondisi. Namun, selama kegagalan regional, Anda mungkin kehilangan sejumlah traffic secara berkala karena deteksi outlier menggunakan traffic real-time sebagai indikator. Deteksi pencilan merutekan ulang sebagian traffic aktif secara berkala untuk memeriksa kondisi region yang gagal.
Gambar 1 menunjukkan arsitektur yang diusulkan. Endpoint layanan terhubung ke lampiran layanan di instance Apigee, dan MIG melakukan proxy traffic ke endpoint layanan. Anda mengaktifkan pemantauan health check di MIG.
Pendekatan health check berbasis MIG
Prasyarat
Anda dapat menerapkan teknik yang dijelaskan dalam dokumen ini ke penginstalan Apigee yang menggunakan peering VPC atau tidak menggunakan peering VPC. Namun, dalam kasus penginstalan peering VPC, teknik health check aktif yang dijelaskan di sini hanya berlaku jika Anda menggunakan PSC untuk konfigurasi pemilihan rute.
Sebelum melakukan langkah-langkah di bagian ini:
- Untuk penginstalan peering non-VPC:
- Selesaikan langkah-langkah penyediaan Apigee 1 hingga 6 untuk penginstalan berbasis langganan atau Bayar sesuai penggunaan. Saat ini, satu-satunya opsi adalah melakukan langkah-langkah ini menggunakan antarmuka command line.
- Lewati Langkah 7: Konfigurasi pemilihan rute, dan lakukan langkah-langkah berikut.
- Untuk penginstalan VPC peering yang menggunakan PSC untuk perutean:
- Selesaikan langkah-langkah penyediaan Apigee 1 hingga 7 untuk penginstalan berbasis langganan atau Bayar sesuai penggunaan. Saat ini, satu-satunya opsi adalah melakukan langkah-langkah ini menggunakan antarmuka command line.
- Lewati Langkah 8: Konfigurasi pemilihan rute, dan lakukan langkah-langkah berikut.
1. Mengonfigurasi endpoint layanan PSC untuk lampiran layanan Apigee
Pada langkah ini, Anda akan membuat Endpoint Layanan PSC yang mengarah ke lampiran layanan di instance Apigee:
- Dapatkan lampiran layanan dari instance Apigee yang Anda buat sebelumnya:
curl -i -X GET -H "Authorization: Bearer $AUTH" \ "https://apigee.googleapis.com/v1/organizations/$PROJECT_ID/instances"
Dalam contoh output berikut, nilai
serviceAttachment
ditampilkan dalam huruf tebal:{ "instances": [ { "name": "us-west1", "location": "us-west1", "host": "10.82.192.2", "port": "443", "createdAt": "1645731488019", "lastModifiedAt": "1646504754219", "diskEncryptionKeyName": "projects/my-project/locations/us-west1/keyRings/us-west1/cryptoKeys/dek", "state": "ACTIVE", "peeringCidrRange": "SLASH_22", "runtimeVersion": "1-7-0-20220228-190814", "ipRange": "10.82.192.0/22,10.82.196.0/28", "consumerAcceptList": [ "875609189304" ], "serviceAttachment": "projects/bfac74a67a320c43a12p-tp/regions/us-west1/serviceAttachments/apigee-us-west1-crw1" } ] }
- Buat Endpoint Layanan PSC yang mengarah ke lampiran layanan yang Anda dapatkan dari isi respons instance pada langkah sebelumnya, seperti yang dijelaskan dalam Membuat endpoint Private Service Connect.
2. Mengonfigurasi MIG yang mengarah ke endpoint layanan
Pada langkah ini, Anda akan membuat MIG yang melakukan proxy traffic ke endpoint layanan. Kemudian, Anda dapat mengaktifkan health check aktif di MIG.
2A. Mengaktifkan Akses Google Pribadi untuk subnet jaringan VPC Anda
Untuk mengaktifkan Akses Google Pribadi untuk subnet jaringan VPC Anda, ikuti langkah-langkah yang tercantum di Mengaktifkan Akses Google Pribadi.
2B. Menetapkan variabel lingkungan
Petunjuk di bagian ini menggunakan variabel lingkungan untuk merujuk ke string yang digunakan berulang kali. Sebaiknya tetapkan hal berikut sebelum melanjutkan:
MIG_NAME=YOUR_MIG_NAME # A name you provide for the MIGVPC_NAME=default # If you are using a shared VPC, use the shared VPC name
VPC_SUBNET=default # Private Google Access must be enabled for this subnet
REGION=RUNTIME_REGION # The same region as your Apigee runtime instance
SERVICE_ENDPOINT_IP=YOUR_SERVICE_ENDPOINT_IP. ## The endpoint IP of the service endpoint you just created
Anda akan menggunakan variabel ini beberapa kali selama proses lainnya. Jika Anda ingin mengonfigurasi beberapa region, buat variabel dengan nilai khusus untuk setiap region.
2C. Membuat grup instance terkelola
Pada langkah ini, Anda akan membuat dan mengonfigurasi grup instance terkelola (MIG).
- Buat template instance dengan menjalankan perintah berikut.
gcloud compute instance-templates create $MIG_NAME \ --project $PROJECT_ID \ --region $REGION \ --network $VPC_NAME \ --subnet $VPC_SUBNET \ --tags=https-server,apigee-mig-proxy,gke-apigee-proxy \ --machine-type e2-medium --image-family debian-12 \ --image-project debian-cloud --boot-disk-size 20GB \ --no-address \ --metadata ENDPOINT=$SERVICE_ENDPOINT_IP,startup-script-url=gs://apigee-5g-saas/apigee-envoy-proxy-release/latest/conf/startup-script.sh
Seperti yang dapat Anda lihat dari perintah ini, mesin adalah jenis
e2-medium
. Server tersebut menjalankan Debian 12 dan memiliki disk sebesar 20 GB. Skripstartup-script.sh
mengonfigurasi MIG untuk merutekan traffic masuk dari load balancer ke instance Apigee. - Buat grup instance terkelola dengan menjalankan perintah berikut:
gcloud compute instance-groups managed create $MIG_NAME \ --project $PROJECT_ID --base-instance-name apigee-mig \ --size 2 --template $MIG_NAME --region $REGION
- Konfigurasikan penskalaan otomatis untuk grup dengan menjalankan perintah berikut:
gcloud compute instance-groups managed set-autoscaling $MIG_NAME \ --project $PROJECT_ID --region $REGION --max-num-replicas 3 \ --target-cpu-utilization 0.75 --cool-down-period 90
- Tentukan port bernama dengan menjalankan perintah berikut:
gcloud compute instance-groups managed set-named-ports $MIG_NAME \ --project $PROJECT_ID --region $REGION --named-ports https:443
3. Mengonfigurasi load balancer dengan pemantauan health check
Pada langkah-langkah berikut, Anda akan mengonfigurasi load balancer dengan pemantauan health check.
3A. Membuat sertifikat dan kunci SSL untuk load balancer
Anda hanya perlu membuat kredensial sekali, baik saat menginstal di satu region maupun beberapa region. Pada langkah berikutnya, Anda akan mengaitkan kredensial ini dengan proxy HTTPS target load balancer.
Anda dapat membuat kredensial dengan:
- Sertifikat Anda sendiri dari certificate authority
- Sertifikat SSL yang dikelola Google
- Sertifikat yang ditandatangani sendiri (tidak direkomendasikan untuk produksi).
Untuk informasi selengkapnya tentang cara membuat dan menggunakan sertifikat SSL untuk load balancer Google Cloud, lihat sertifikat SSL dan ringkasan sertifikat SSL.
Pada contoh berikut, kita membuat sertifikat SSL yang dikelola Google:
- Buat variabel lingkungan berikut:
CERTIFICATE_NAME=YOUR_CERT_NAME
DOMAIN_HOSTNAME=YOUR_DOMAIN_HOSTNAME
Tetapkan
DOMAIN_HOSTNAME
ke nama host domain yang valid yang telah Anda daftarkan. Pada langkah berikutnya, Anda akan mendapatkan alamat IP load balancer dan memperbarui data A domain agar mengarah ke alamat tersebut. Misalnya, nama host domain mungkin terlihat seperti ini:foo.example.com
. - Jalankan perintah
gcloud compute ssl-certificates create:
gcloud compute ssl-certificates create $CERTIFICATE_NAME \ --domains=$DOMAIN_HOSTNAME \ --project $PROJECT_ID \ --global
Penyediaan sertifikat dapat memerlukan waktu hingga satu jam. Untuk memeriksa status penyediaan, jalankan perintah ini:
gcloud compute ssl-certificates describe $CERTIFICATE_NAME \ --global \ --format="get(name,managed.status, managed.Status)"
3B. Membuat health check
- Buat health check:
gcloud compute health-checks create https HEALTH_CHECK_NAME \ --project $PROJECT_ID --port 443 --global \ --request-path /healthz/ingress
Anda akan menggunakan health check ini untuk memastikan bahwa layanan backend berjalan. Untuk mengonfigurasi health check lanjutan terhadap proxy tertentu, lihat Melakukan health check.
- Buat layanan backend:
gcloud compute backend-services create PROXY_BACKEND_NAME \ --project $PROJECT_ID \ --protocol HTTPS \ --health-checks HEALTH_CHECK_NAME \ --port-name https \ --timeout 302s \ --connection-draining-timeout 300s \ --global
- Tambahkan MIG ke layanan backend Anda dengan perintah berikut:
gcloud compute backend-services add-backend PROXY_BACKEND_NAME \ --project $PROJECT_ID --instance-group $MIG_NAME \ --instance-group-region $REGION \ --balancing-mode UTILIZATION --max-utilization 0.8 --global
- Buat peta URL load balancing dengan perintah berikut:
gcloud compute url-maps create MIG_PROXY_MAP_NAME \ --project $PROJECT_ID --default-service PROXY_BACKEND_NAME
- Buat proxy HTTPS target load balancing dengan perintah berikut:
gcloud compute target-https-proxies create MIG_HTTPS_PROXY_NAME \ --project $PROJECT_ID --url-map MIG_PROXY_MAP_NAME \ --ssl-certificates $CERTIFICATE_NAME
3C. Mendapatkan alamat IP yang dicadangkan dan membuat aturan firewall
Anda harus menetapkan alamat IP ke load balancer, lalu membuat aturan yang memungkinkan load balancer mengakses MIG. Anda hanya perlu melakukan langkah ini sekali, baik saat menginstal di satu atau beberapa region.
- Cadangkan alamat IP untuk load balancer:
gcloud compute addresses create ADDRESSES_NAME \ --project $PROJECT_ID \ --ip-version=IPV4 \ --global
- Buat aturan penerusan global dengan perintah berikut:
gcloud compute forwarding-rules create FORWARDING_RULE_NAME \ --project $PROJECT_ID --address ADDRESSES_NAME --global \ --target-https-proxy MIG_HTTPS_PROXY_NAME --ports 443
- Dapatkan alamat IP yang direservasi dengan menjalankan perintah berikut:
gcloud compute addresses describe ADDRESSES_NAME \ --project $PROJECT_ID --format="get(address)" --global
- Langkah penting: Buka situs, host DNS, atau ISP tempat data DNS Anda dikelola, dan pastikan data DNS domain Anda di-resolve ke alamat IP load balancer Google Cloud. Alamat ini adalah nilai IP yang ditampilkan di langkah terakhir. Untuk mengetahui detail selengkapnya, lihat Memperbarui data A dan AAAA DNS agar mengarah ke alamat IP load balancer.
- Buat aturan firewall yang memungkinkan load balancer mengakses MIG menggunakan perintah berikut:
gcloud compute firewall-rules create FIREWALL_RULE_NAME \ --description "Allow incoming from GLB on TCP port 443 to Apigee Proxy" \ --project $PROJECT_ID --network $VPC_NAME --allow=tcp:443 \ --source-ranges=130.211.0.0/22,35.191.0.0/16 --target-tags=gke-apigee-proxy
Perhatikan bahwa rentang alamat IP
130.211.0.0/22
dan35.191.0.0/16
adalah rentang alamat IP sumber untuk Load Balancing Google. Aturan firewall ini memungkinkan Google Cloud Load Balancing untuk membuat permintaan health check ke MIG.
Penyediaan Apigee selesai. Buka Men-deploy proxy contoh.