Anda sedang melihat dokumentasi Apigee dan Apigee Hybrid.
Tidak ada dokumentasi
Apigee Edge yang setara untuk topik ini.
Gejala
Masalah konektivitas jaringan antara Apigee dan layanan target hilir yang terhubung melalui Private Service Connect (PSC).
Pesan error
Masalah koneksi jaringan atau waktu tunggu TCP antara Apigee dan layanan
target akan muncul sebagai respons error 503 dan akan menampilkan
error yang mirip dengan di bawah jika Anda membuat sesi debug.
{"fault":{"faultstring":"The Service is temporarily unavailable","detail":{"errorcode":"messaging.adaptors.http.flow.ServiceUnavailable","reason":"TARGET_CONNECT_TIMEOUT"}}}Kemungkinan Penyebab
| Penyebab | Deskripsi |
| Region yang berbeda antara lampiran layanan dan instance Apigee | Region instance Apigee dan region Lampiran layanan berbeda. |
| Aturan firewall ingress tidak ada untuk subnet PSC dalam project target | Di project target, pastikan aturan firewall masuk ada untuk mengizinkan alamat IP dan port rentang subnet PSC. |
| Konfigurasi lampiran layanan yang salah di project target | Verifikasi Service attachment di project target. |
| Status lampiran endpoint yang salah di Apigee | Verifikasi Endpoint attachment di Apigee. |
| Ketidakcocokan port yang dikonfigurasi di TargetEndpoint dan ILB | Pastikan TargetEndpoint di proxy API menggunakan port yang sama yang diekspos oleh load balancer internal (ILB) di project target. |
Penyebab: Region yang berbeda antara Lampiran layanan dan instance Apigee
Diagnosis
-
Periksa region instance Apigee menggunakan salah satu metode berikut:

- Menggunakan UI Apigee klasik:
- Login ke UI Apigee.
- Klik Admin > Instances.
- Klik instance.
- Periksa Lokasi hosting runtime di panel Detail instance.
- Menggunakan UI Apigee di konsol Google Cloud :
-
Di konsol Google Cloud , buka halaman Apigee Instances.
- Klik instance.
- Periksa Lokasi hosting runtime di panel Detail instance.
-
- Menggunakan
panggilan API:
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" "https://apigee.googleapis.com/v1/organizations/ORG_NAME/instances"
Dengan ORG_NAME adalah nama organisasi. Contoh,
example-apigee-support.Sesuatu yang mirip dengan berikut ini akan ditampilkan. Lokasi hosting runtime adalah nilai yang ditampilkan untuk
locationdi bawah. Misalnya,asia-northeast1."instances": [ { "name": "asia-northeast1", "location": "asia-northeast1", "host": "10.117.0.2", "port": "443", "createdAt": "1628150049760", "lastModifiedAt": "1682139265367", "diskEncryptionKeyName": "projects/apigee-x-support-apac-05/locations/asia-northeast1/keyRings/phanim-disk-key-1/cryptoKeys/phanim-disk-key-ring-1", "state": "ACTIVE", "peeringCidrRange": "SLASH_20", "runtimeVersion": "1-9-0-apigee-25", "consumerAcceptList": [ "example-apigee-support", "example-neg-project" ], "serviceAttachment": "projects/xb363132eb41cb643p-tp/regions/asia-northeast1/serviceAttachments/apigee-asia-northeast1-yp9o" }
- Menggunakan UI Apigee klasik:
-
Periksa region Endpoint attachment menggunakan
panggilan API:
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" "https://apigee.googleapis.com/v1/organizations/ORG_NAME/endpointAttachments/ENDPOINT_ATTACHMENT_NAME"
Dengan:
- ORG_NAME adalah nama organisasi.
Contoh,
example-apigee-support. - ENDPOINT_ATTACHMENT_NAME adalah nama lampiran
endpoint. Contoh,
example-ea.
Sesuatu yang mirip dengan berikut ini akan ditampilkan. Endpoint attachment region adalah nilai yang ditampilkan untuk
locationdi bawah. Misalnya,asia-northeast1.{ "name": "organizations/example-apigee-support/endpointAttachments/example-ea", "location": "asia-northeast1", "host": "7.0.4.2", "state": "ACTIVE", "connectionState": "ACCEPTED", "serviceAttachment": "projects/target-project/regions/asia-northeast1/serviceAttachments/gkebackend" }
- ORG_NAME adalah nama organisasi.
Contoh,
-
Periksa region Service attachment menggunakan Konsol Cloud:
-
Di konsol Google Cloud , buka halaman Private Service Connect .
- Periksa kolom Wilayah untuk mengetahui lokasi.

-
Resolusi
Pastikan region instance Apigee, Endpoint attachment, dan
Service attachment sama. Misalnya,
asia-northeast1.
Seperti yang dijelaskan dalam
Batasan,
akses global tidak didukung. Artinya, lampiran layanan dan lampiran endpoint harus berada di region yang sama. Misalnya, jika instance Apigee Anda berada di region us-west1, Anda tidak dapat menghubungkan layanan yang berada di us-east2 atau region lain ke instance tersebut.
Jika regionnya berbeda, Anda akan melihat masalah konektivitas antara Apigee dan layanan target.
Penyebab: Aturan firewall ingress untuk subnet PSC di project target tidak ada
Diagnosis
Periksa aturan firewall di project target yang mengizinkan alamat IP dari rentang subnet PSC terhubung ke layanan target:
-
Di konsol Google Cloud , buka halaman Firewall.
-
Di panel VPC firewall rules, pastikan ada aturan seperti contoh berikut:
- Direction: Ingress
- Action on match: Allow
- Filter Sumber: Rentang IPv4/IPv6
- Rentang IP: Rentang alamat IP Subnet PSC
(
ipCidrRange) yang bisa Anda dapatkan dengan perintah gcloud berikut untuk mendeskripsikan subnet PSC:gcloud compute networks subnets describe PSC_SUBNET_NAME --region=REGION
Dengan:
-
PSC_SUBNET_NAME adalah nama subnet PCS.
Contoh,
pscsub. -
REGION adalah lokasi. Misalnya,
asia-northeast1.
Sesuatu yang mirip dengan berikut akan ditampilkan:
creationTimestamp: '2023-04-19T03:33:29.371-07:00' fingerprint: 1JPKY66teTg= gatewayAddress: 10.10.0.1 id: '5645967773396008342' ipCidrRange: 10.10.0.0/24 kind: compute#subnetwork name: pscsub network: https://www.googleapis.com/compute/v1/projects/target-project/global/networks/default privateIpGoogleAccess: false privateIpv6GoogleAccess: DISABLE_GOOGLE_ACCESS purpose: PRIVATE_SERVICE_CONNECT ....
-
PSC_SUBNET_NAME adalah nama subnet PCS.
Contoh,
- Protocols and ports: Protokol dan port ini harus dicantumkan sesuai dengan konfigurasi layanan target Anda.
Contoh:
Resolusi
Jika aturan firewall tidak ada, buat subnet PSC seperti yang dijelaskan di Membuat lampiran layanan, langkah 2.
Penyebab: Konfigurasi lampiran layanan yang salah di project target
Diagnosis
Periksa region Service attachment menggunakan salah satu metode berikut:
- Menggunakan Konsol Cloud:
-
Di konsol Google Cloud , buka halaman Private Service Connect .
- Klik Published services.
- Klik layanan.
- Periksa baris Region untuk lokasi.

-
- Menggunakan
gcloud command:gcloud compute service-attachments describe SERVICE_ATTACHMENT --region=REGION
Dengan:
-
SERVICE_ATTACHMENT adalah nama lampiran layanan.
Contoh,
gkebackend. -
REGION adalah lokasi. Misalnya,
asia-northeast1.
Sesuatu yang mirip dengan berikut akan ditampilkan:
connectedEndpoints: - endpoint: https://www.googleapis.com/compute/v1/projects/xb363132eb41cb643p-tp/regions/asia-northeast1/forwardingRules/example-ea pscConnectionId: '6816512648152066' status: ACCEPTED connectionPreference: ACCEPT_AUTOMATIC creationTimestamp: '2023-04-19T05:09:09.941-07:00' description: '' enableProxyProtocol: false fingerprint: 0BZDAZ3zDCs= id: '4503680255626733322' kind: compute#serviceAttachment name: gkebackend natSubnets: - https://www.googleapis.com/compute/v1/projects/target-project/regions/asia-northeast1/subnetworks/pscsub pscServiceAttachmentId: high: '21570167574103266' low: '4503680255626733322' region: https://www.googleapis.com/compute/v1/projects/target-project/regions/asia-northeast1 selfLink: https://www.googleapis.com/compute/v1/projects/target-project/regions/asia-northeast1/serviceAttachments/gkebackend targetService: https://www.googleapis.com/compute/v1/projects/target-project/regions/asia-northeast1/forwardingRules/k8s2-tcp-b65prv8v-default-ilb-svc-tv2s6klz
-
SERVICE_ATTACHMENT adalah nama lampiran layanan.
Contoh,
Resolusi
-
Pastikan nilai
connectedEndpoints.endpointmerujuk ke project tenant Apigee dan pastikan statusnya adalahACCEPTED. Anda dapat menemukan project tenant menggunakan Apigee Organizations API:curl -H "Authorization: Bearer $(gcloud auth print-access-token)" "https://apigee.googleapis.com/v1/organizations/ORG_NAME"
Dengan ORG_NAME adalah nama organisasi. Sebagai contoh,
example-apigee-support.Sesuatu yang mirip dengan berikut ini akan ditampilkan. ID ada di kolom bernama
apigeeProjectId. Sebagai contoh,xb363132eb41cb643p-tp.{ "name": "example-apigee-support", "createdAt": "1628148440954", "lastModifiedAt": "1650563608527", "environments": [ "dev" ], "properties": { "property": [ { "name": "features.mart.connect.enabled", "value": "true" }, { "name": "features.hybrid.enabled", "value": "true" } ] }, "analyticsRegion": "asia-northeast1", "authorizedNetwork": "default", "runtimeType": "CLOUD", "subscriptionType": "PAID", "caCertificate": "CERTIFICATE_NUMBER", "runtimeDatabaseEncryptionKeyName": "projects/example-apigee-support/locations/asia-northeast1/keyRings/phanim-key-ring-1/cryptoKeys/phanim-app-key-1", "projectId": "example-apigee-support", "state": "ACTIVE", "billingType": "SUBSCRIPTION", "addonsConfig": { "advancedApiOpsConfig": {}, "integrationConfig": {}, "monetizationConfig": {} }, "apigeeProjectId": "xb363132eb41cb643p-tp" } -
Pastikan Lampiran layanan memiliki konektivitas dengan
Lampiran endpoint seperti yang dijelaskan dalam
Pola jaringan ke selatan, Memeriksa dan mengelola konektivitas lampiran.
Di UI dari langkah 1 , pastikan
bahwa:
-
Baris Subnets merujuk ke subnet PSC. Misalnya,
pscsub. - Baris Target mereferensikan load balancer internal yang benar untuk backend target.
-
Baris Subnets merujuk ke subnet PSC. Misalnya,
Penyebab: Status lampiran endpoint yang salah di Apigee
Diagnosis
Lihat lampiran endpoint di Apigee menggunakan panggilan API:
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" "https://apigee.googleapis.com/v1/organizations/ORG_NAME/endpointAttachments/ENDPOINT_ATTACHMENT_NAME"
Dengan:
-
ORG_NAME adalah nama organisasi. Sebagai contoh,
example-apigee-support. -
ENDPOINT_ATTACHMENT_NAME adalah nama lampiran
endpoint. Contoh,
example-ea.
Sesuatu yang mirip dengan berikut akan ditampilkan:
{ "name": "organizations/example-apigee-support/endpointAttachments/example-ea", "location": "asia-northeast1", "host": "7.0.4.2", "state": "ACTIVE", "connectionState": "ACCEPTED", "serviceAttachment": "projects/target-project/regions/asia-northeast1/serviceAttachments/gkebackend" }
Resolusi
Pastikan hal berikut:
stateACTIVEconnectionStateACCEPTED-
serviceAttachmentmerujuk pada project target yang benar dan nama lampiran layanan
Penyebab: Ketidakcocokan port yang dikonfigurasi di TargetEndpoint dan ILB
Diagnosis
- Di project target, temukan port yang diekspos oleh aturan penerusan menggunakan Konsol Cloud:
-
Di konsol Google Cloud , buka halaman Private Service Connect .
- Klik Published services.
- Klik layanan. Seperti yang ditunjukkan dalam contoh berikut, port 80 diekspos.
-
Resolusi
Pastikan port 80 yang sama adalah port di TargetEndpoint
proxy API.
Untuk memeriksanya, buka Proxy API dan verifikasi URL TargetEndpoint:
- Menggunakan UI Apigee klasik:
- Login ke UI Apigee.
- Klik Develop > API Proxies
- Klik proxy.
- Klik Develop.
- Periksa panel XML untuk hal-hal berikut:
<HTTPTargetConnection> <URL>http://7.0.4.2:80</URL> </HTTPTargetConnection>
- Menggunakan UI Apigee di Google Cloud console:
-
Di konsol Google Cloud , buka halaman Apigee.
- Di area Proxy development, klik API proxies.
- Klik proxy.
- Klik Develop.
- Periksa panel XML untuk hal-hal berikut:
<HTTPTargetConnection> <URL>http://7.0.4.2:80</URL> </HTTPTargetConnection>
-
Harus mengumpulkan informasi diagnostik
Jika masalah berlanjut bahkan setelah mengikuti petunjuk di atas, kumpulkan informasi diagnostik berikut, lalu hubungi Layanan Pelanggan Google Cloud:
- Organisasi Apigee
- Lingkungan dan proxy API yang mengalami masalah
- Sesi debug yang didownload (ini akan memberikan semua info di atas)
- Lampiran endpoint yang digunakan
- Project target dan lampiran layanan