Anda sedang melihat dokumentasi Apigee dan Apigee hybrid.
Tidak ada padanan
Dokumentasi Apigee Edge untuk topik ini.
Gejala
ApigeeIssue
dengan Reason
AIS_INGRESS_MTLS_CA_CERT_INVALID
ditampilkan saat menampilkan resource dalam namespace apigee
.
Pesan error
Setelah menjalankan kubectl -n apigee get apigeeissues
, akan muncul pesan error seperti berikut
ditampilkan:
NAME SEVERITY REASON DOCUMENTATION AGE ca-cert-invalid-my-org-my-virtualhost ERROR AIS_INGRESS_MTLS_CA_CERT_INVALID https://cloud.google.com/apigee/docs/hybrid/troubleshooting/AIS_INGRESS_MTLS_CA_CERT_INVALID 5h18m
Kemungkinan penyebab
Penyebab | Deskripsi |
---|---|
Sertifikat CA mTLS masuk tidak dienkode ke PEM | Sertifikat CA mTLS masuk yang dikonfigurasi tidak dienkode ke PEM. |
Format sertifikat CA mTLS masuk salah | Format sertifikat CA mTLS masuk yang dikonfigurasi salah. |
Penyebab: Sertifikat CA mTLS masuk tidak dienkode dengan PEM
Sertifikat CA mTLS masuk yang disimpan dalam rahasia Kubernetes yang direferensikan oleh
ApigeeRouteConfig
tidak memiliki blok teks encoding PEM (atau salah formatnya).
Diagnosis
Jalankan perintah berikut:
kubectl -n apigee describe apigeeissue ISSUE_NAME
Dengan ISSUE_NAME adalah nama masalahnya. Contoh,
ca-cert-invalid-my-org-my-virtualhost
.
Output-nya akan terlihat seperti berikut:
Name: ca-cert-invalid-my-org-my-virtualhost Namespace: apigee Labels: ais-reason=AIS_INGRESS_MTLS_CA_CERT_INVALID Annotations: <none> API Version: apigee.cloud.google.com/v1alpha1 Kind: ApigeeIssue Metadata: Creation Timestamp: 2023-06-12T17:03:43Z Generation: 1 Owner References: API Version: apigee.cloud.google.com/v1alpha2 Kind: ApigeeOrganization Name: my-org UID: 7e83a52c-ce00-4bed-98be-55835ada1817 Resource Version: 3281563 UID: adc775c2-376d-4bf9-9860-500b2b2b8273 Spec: Details: CA certificate in secret "my-org-my-virtualhost" for ApigeeRouteConfig "my-org-my-virtualhost" is not PEM encoded Documentation: https://cloud.google.com/apigee/docs/hybrid/troubleshooting/AIS_INGRESS_MTLS_CA_CERT_INVALID Reason: AIS_INGRESS_MTLS_CA_CERT_INVALID Severity: ERROR Events: <none>
Spec: Details: CA certificate in secret "my-org-my-virtualhost" for ApigeeRouteConfig "my-org-my-virtualhost" is not PEM encoded
Isi Spec.Details
menjelaskan nama
ApigeeRouteConfig
yang mengacu pada rahasia Kubernetes yang berisi mTLS masuk
Sertifikat CA yang tidak dienkode PEM.
Resolusi
-
Gunakan
kubectl describe
untuk menampilkan namaApigeeRouteConfig
yang memiliki sertifikat CA mTLS masuk yang tidak dienkode dengan PEM:kubectl -n apigee describe apigeeissue ISSUE_NAME
Dengan ISSUE_NAME adalah nama masalahnya. Misalnya,
ca-cert-invalid-my-org-my-virtualhost
.Dalam contoh ini,
ApigeeRouteConfig
my-org-my-virtualhost
adalah merujuk kemy-org-my-virtualhost
rahasia. -
Tentukan nama
virtualhost
dariApigeeRouteConfig
.Format nama
ApigeeRouteConfig
:<Apigee organization>-<virtualhost name>
.Dalam contoh ini,
my-org
adalah organisasi Apigee dan nama virtualhostnyamy-virtualhost
. -
Temukan virtualhost yang sesuai di
overrides.yaml
.virtualhosts: ... - name: my-virtualhost selector: app: apigee-ingressgateway caCertPath: ./certs/ca.pem sslCertPath: ./certs/vhost.pem sslKeyPath: ./certs/vhost.key ...
-
Validasi konten file yang disediakan melalui jalur yang dideklarasikan di
caCertPath
. Pastikan konten berisi blok sertifikat awal dan akhir yang diperlukan. Contoh:-----BEGIN CERTIFICATE----- MIIDYTCCAkmgAwIBAgIUSXeU0pQYRFzYlqZpKhNNJdBLFBIwDQYJKoZIhvcNAQEL ... <contents omitted> ... eWJyaWQuZTJlLmFwaWdlZWtzLm5ldDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC MMM= -----END CERTIFICATE-----
-
Setelah konten dan format file diperbaiki, terapkan perubahan ke virtualhost:
helm upgrade ENV_GROUP_NAME apigee-virtualhost/ \ --namespace apigee \ --set envgroup=ENV_GROUP_NAME \ -f overrides.yaml
Penyebab: Format sertifikat CA mTLS masuk salah
Sertifikat CA mTLS masuk yang disimpan dalam rahasia Kubernetes yang direferensikan oleh
Format ApigeeRouteConfig
salah.
Diagnosis
Jalankan perintah berikut:
kubectl -n apigee describe apigeeissue ISSUE_NAME
Dengan ISSUE_NAME adalah nama masalahnya. Contoh,
ca-cert-invalid-my-org-my-virtualhost
.
Output-nya akan terlihat seperti berikut:
Name: ca-cert-invalid-my-org-my-virtualhost Namespace: apigee Labels: ais-reason=AIS_INGRESS_MTLS_CA_CERT_INVALID Annotations: <none> API Version: apigee.cloud.google.com/v1alpha1 Kind: ApigeeIssue Metadata: Creation Timestamp: 2023-06-12T17:03:43Z Generation: 1 Owner References: API Version: apigee.cloud.google.com/v1alpha2 Kind: ApigeeOrganization Name: my-org UID: 7e83a52c-ce00-4bed-98be-55835ada1817 Resource Version: 3281563 UID: adc775c2-376d-4bf9-9860-500b2b2b8273 Spec: Details: CA certificate in secret "my-org-my-virtualhost" for ApigeeRouteConfig "my-org-my-virtualhost" is invalid Documentation: https://cloud.google.com/apigee/docs/hybrid/troubleshooting/AIS_INGRESS_MTLS_CA_CERT_INVALID Reason: AIS_INGRESS_MTLS_CA_CERT_INVALID Severity: ERROR Events: <none>
Spec: Details: CA certificate in secret "my-org-my-virtualhost" for ApigeeRouteConfig "my-org-my-virtualhost" is invalid
Isi Spec.Details
menjelaskan nama
ApigeeRouteConfig
yang mengacu pada rahasia Kubernetes yang berisi mTLS masuk
Sertifikat CA yang salah format dan gagal diurai.
Resolusi
-
Gunakan
kubectl describe
untuk menampilkan namaApigeeRouteConfig
yang memiliki sertifikat CA mTLS masuk dengan format yang salah:kubectl -n apigee describe apigeeissue ISSUE_NAME
Dengan ISSUE_NAME adalah nama masalahnya. Misalnya,
ca-cert-invalid-my-org-my-virtualhost
.Dalam contoh ini,
ApigeeRouteConfig
my-org-my-virtualhost
adalah merujuk kemy-org-my-virtualhost
rahasia. -
Tentukan nama
virtualhost
dariApigeeRouteConfig
.Format nama
ApigeeRouteConfig
:<Apigee organization>-<virtualhost name>
.Dalam contoh ini,
my-org
adalah organisasi Apigee dan nama virtualhostnyamy-virtualhost
. -
Temukan virtualhost yang sesuai di
overrides.yaml
.virtualhosts: ... - name: my-virtualhost selector: app: apigee-ingressgateway caCertPath: ./certs/ca.pem sslCertPath: ./certs/vhost.pem sslKeyPath: ./certs/vhost.key ...
-
Validasi konten file yang disediakan melalui jalur yang dideklarasikan di
caCertPath
. Pastikan konten berisi seluruh sertifikat. Contoh:-----BEGIN CERTIFICATE----- MIIDYTCCAkmgAwIBAgIUSXeU0pQYRFzYlqZpKhNNJdBLFBIwDQYJKoZIhvcNAQEL BQAwQDE+MDwGA1UEAww1bWF4bWlsbGlvbi1oeWJyaWQtc3RhZ2luZy1kZXYuaHli ... <contents omitted> ... 0TPPaik8U9dtFXMGT1DJkjPRPO0Jw5rlU8DKlNA/Kkv52aKJZNwB/cwmvoa/BFji PIPa9wY= -----END CERTIFICATE-----
-
Setelah konten dan format file diperbaiki, terapkan perubahan ke virtualhost:
helm upgrade ENV_GROUP_NAME apigee-virtualhost/ \ --namespace apigee \ --set envgroup=ENV_GROUP_NAME \ -f overrides.yaml
Harus mengumpulkan informasi diagnostik
Jika masalah berlanjut bahkan setelah mengikuti instruksi di atas, kumpulkan informasi diagnostik berikut, lalu hubungi Google Cloud Customer Care:
- ID Project Google Cloud.
- Nama organisasi hybrid Apigee.
- Kolom
Spec.Details
dariApigeeIssue
. -
(opsional) File yang dirujuk oleh
caCertPath
untuk virtualhost yang terpengaruh.