Langkah 8: Periksa kesiapan cluster

Memeriksa kesiapan cluster hybrid

Sebelum menerapkan konfigurasi dan menginstal runtime hybrid, Anda harus memeriksa bahwa cluster Kubernetes Anda siap untuk penginstalan hybrid Apigee.

Untuk memeriksa kesiapan cluster, Anda akan membuat file YAML dengan definisi Tugas Kubernetes dan menerapkan file tersebut dengan perintah kubectl untuk memeriksa cluster. Anda kemudian memeriksa status Tugas pengujian Kubernetes dengan perintah kubectl get jobs.

  1. Pastikan kubectl ditetapkan 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. Sebagai Sebagai contoh, di GKE, nama konteks biasanya berupa gke_project-id_cluster-location_cluster-name, sebagai dalam:

    gke_my-project_us-central1_my-cluster

    Jika nama cluster nama dalam konteks tidak cocok, perintah berikut akan mendapatkan Kredensial gcloud untuk cluster dan setel konteks kubectl:

    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
  2. Dalam direktori file hybrid, buat direktori cluster-check:
    mkdir $HYBRID_FILES/cluster-check
  3. Di direktori $HYBRID_FILES/cluster-check, buat file bernama apigee-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.10.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
    
  4. Terapkan apigee-k8s-cluster-ready-check.yaml dengan hal berikut perintah kubectl. Tindakan ini akan menjalankan pengujian:
    kubectl apply -f $HYBRID_FILES/cluster-check/apigee-k8s-cluster-ready-check.yaml
  5. Periksa status tugas Kubernetes dengan perintah berikut:
    kubectl get jobs apigee-k8s-cluster-ready-check

    Jika cluster Anda sudah siap, output-nya akan terlihat seperti:

    NAME                            COMPLETIONS   DURATION   AGE
    apigee-k8s-cluster-ready-check  1/1           8s         1h23m

    Jika pengujian gagal dan cluster Anda 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 berikut untuk memecahkan masalah cluster.

  6. Jika pengujian tidak berhasil, periksa log dengan perintah berikut.
    1. Dapatkan nama pod untuk tugas pra-pemeriksaan cluster:
      kubectl get pods | grep apigee-k8s-cluster-ready-check
    2. Dapatkan log Kubernetes untuk pod:
      kubectl logs pod_name

      Dengan pod_name adalah nama pod apigee-k8s-cluster- ready-check.

  7. Hapus data sebelum melanjutkan ke langkah berikutnya. Hapus tugas Kubernetes dengan perintah berikut berikut:
    kubectl delete -f $HYBRID_FILES/cluster-check/apigee-k8s-cluster-ready-check.yaml

Anda kini telah memastikan bahwa cluster hybrid Apigee sudah siap. Selanjutnya, mari kita terapkan ke runtime hybrid, lalu menyelesaikan penginstalan Apigee Hybrid.

Pemecahan masalah

  1. Pemeriksaan DNS {i>Cassandra<i}: Jika Anda menemukan log {i>error<i} yang mirip dengan DNS resolution was successful but IP doesn't match POD IP, could not resolve hostname atau error determining hostname. Artinya, DNS cluster tidak dikonfigurasi dengan benar untuk penyiapan multi-region. Anda dapat mengabaikan kesalahan ini jika Anda tidak ingin menyiapkan multi-region.
  2. Pemeriksaan konektivitas Pesawat Kontrol: Jika Anda menemukan log error yang mirip dengan error creating TCP connection with host, Anda harus menyelesaikan konektivitas dari cluster ke apigee.googleapis.com dan jalankan ulang tugasnya.
1 2 3 4 5 6 7 8 (BERIKUTNYA) Langkah 9: Instal runtime hybrid 10 11