Memeriksa kesiapan cluster hybrid
Sebelum menerapkan konfigurasi dan menginstal diagram helm hybrid, Anda harus memastikan bahwa cluster Kubernetes Anda siap untuk penginstalan Apigee Hybrid.
Untuk memeriksa kesiapan cluster, Anda akan membuat file YAML dengan definisi Tugas Kubernetes dan menerapkan file tersebut dengan perintah kubectl
untuk memeriksa cluster.
Selanjutnya, periksa status tugas pengujian Kubernetes dengan perintah kubectl get jobs
.
- Pastikan
kubectl
disetel ke konteks yang benar menggunakan perintah berikut. Konteks saat ini harus ditetapkan ke cluster tempat Anda men-deploy Apigee Hybrid.kubectl config current-context
Hasilnya harus menyertakan nama cluster tempat Anda men-deploy Apigee Hybrid. Misalnya, di GKE, nama konteks biasanya dalam bentuk
gke_project-id_cluster-location_cluster-name
, seperti dalam:gke_my-project_us-central1_my-cluster
Jika nama cluster nama dalam konteks tidak cocok, perintah berikut akan mendapatkan kredensial
gcloud
cluster dan menetapkan kontekskubectl
:Cluster regional
gcloud container clusters get-credentials $CLUSTER_NAME \ --region $CLUSTER_LOCATION \ --project $PROJECT_ID
Cluster zona
gcloud container clusters get-credentials $CLUSTER_NAME \ --zone $CLUSTER_LOCATION \ --project $PROJECT_ID
- Di direktori helm-charts, buat direktori
cluster-check
:mkdir $APIGEE_HELM_CHARTS_HOME/cluster-check
- Dalam direktori
$APIGEE_HELM_CHARTS_HOME/cluster-check
, buat file bernamaapigee-k8s-cluster-ready-check.yaml
dengan konten berikut:apiVersion: v1 kind: ServiceAccount metadata: name: apigee-k8s-cluster-ready-check --- apiVersion: batch/v1 kind: Job metadata: name: apigee-k8s-cluster-ready-check spec: template: spec: hostNetwork: true serviceAccountName: apigee-k8s-cluster-ready-check containers: - name: manager image: gcr.io/apigee-release/hybrid/apigee-operators:1.12.0 command: - /manager args: - --k8s-cluster-ready-check env: - name: POD_IP valueFrom: fieldRef: fieldPath: status.podIP securityContext: runAsGroup: 998 runAsNonRoot: true runAsUser: 999 restartPolicy: Never backoffLimit: 1
- Terapkan
apigee-k8s-cluster-ready-check.yaml
dengan perintahkubectl
berikut. Tindakan ini akan menjalankan pengujian:kubectl apply -f $APIGEE_HELM_CHARTS_HOME/cluster-check/apigee-k8s-cluster-ready-check.yaml
- Periksa status tugas Kubernetes dengan perintah berikut:
kubectl get jobs apigee-k8s-cluster-ready-check
Jika cluster sudah siap, output-nya akan terlihat seperti ini:
NAME COMPLETIONS DURATION AGE apigee-k8s-cluster-ready-check 1/1 8s 1h23m
Jika pengujian gagal dan cluster belum siap, output-nya akan terlihat seperti ini:
NAME COMPLETIONS DURATION AGE apigee-k8s-cluster-ready-check 0/1 44s 44s
Cari jumlah penyelesaian:
- 1/1 Berhasil, cluster Anda siap untuk penginstalan hybrid Apigee.
- 0/1 Pengujian gagal. Cluster belum siap. Lanjutkan ke langkah-langkah berikut untuk memecahkan masalah cluster.
- Jika pengujian tidak berhasil, periksa log dengan perintah berikut.
- Dapatkan nama pod untuk tugas pra-pemeriksaan cluster:
kubectl get pods | grep apigee-k8s-cluster-ready-check
- Dapatkan log Kubernetes untuk pod:
kubectl logs pod_name
Dengan pod_name sebagai nama pod apigee-k8s-cluster-siap-check.
- Dapatkan nama pod untuk tugas pra-pemeriksaan cluster:
- Lakukan pembersihan sebelum melanjutkan ke langkah berikutnya. Hapus tugas Kubernetes dengan perintah berikut:
kubectl delete -f $APIGEE_HELM_CHARTS_HOME/cluster-check/apigee-k8s-cluster-ready-check.yaml
Sekarang Anda telah memastikan cluster hybrid Apigee sudah siap. Selanjutnya, mari kita instal diagram untuk menerapkan konfigurasi Anda ke runtime hybrid.
Pemecahan masalah
- Pemeriksaan DNS Cassandra: Jika Anda menemukan log error yang mirip dengan
DNS resolution was successful but IP doesn't match POD IP
,could not resolve hostname
, atauerror determining hostname
, berarti DNS cluster Anda tidak dikonfigurasi dengan benar untuk penyiapan multi-region. Anda dapat mengabaikan error ini jika tidak ingin menyiapkan multi-region. - Mengontrol pemeriksaan konektivitas Plane: Jika menemukan log error yang mirip dengan
error creating TCP connection with host
, Anda harus menyelesaikan konektivitas dari cluster ke apigee.googleapis.com dan menjalankan ulang tugas.