Prasyarat untuk integrasi Kubernetes

Anda sedang melihat dokumentasi Apigee Edge.
Buka dokumentasi Apigee X.
info

Topik ini menjelaskan langkah-langkah yang harus Anda selesaikan sebelum menginstal Edge Microgateway sebagai layanan di cluster Kubernetes.

Topik ini membahas:

  • Persyaratan minimum untuk cluster Kubernetes Anda.
  • Cara menginstal dan mengonfigurasi Edge Microgateway.
  • Cara menginstal konfigurasi dasar Edge Microgateway ke cluster Kubernetes Anda.

Persyaratan untuk cluster Kubernetes

Cluster Kubernetes Anda memerlukan:

  • Kubernetes versi 1.9 atau yang lebih baru.
  • Kubernetes CLI kubectl v1.9 atau yang lebih baru.
  • Sebuah cluster dengan minimal 3 node yang masing-masing memiliki 2 vCPU.

Contoh: Membuat cluster Kubernetes di Google Kubernetes Engine (GKE)

Menyiapkan mesin administrasi Kubernetes

Mesin administrasi Kubernetes adalah mesin lokal yang digunakan untuk menjalankan perintah pada cluster Kubernetes Anda. Mesin ini biasanya adalah mesin desktop yang memiliki akses ke VM Kubernetes Anda.

Anda harus menginstal utilitas berikut di mesin administrasi Kubernetes:

  • Instal antarmuka command line kubectl atau yang lebih baru.

  • (Khusus GKE) Instal gcloud jika Anda menjalankan Kubernetes di GKE.

Membuat cluster Kubernetes di GKE

  1. Login ke dasbor Google Kubernetes Engine (GKE) di Google Cloud Platform (GCP).
  2. Klik Buat Cluster.
  3. Pilih Cluster Standar.
  4. Masukkan nama untuk cluster Anda.
  5. Pilih Zona.
  6. Pilih Cluster Version 1.9.7-gke-*. Contohnya, 1.9.7-gke.6.
  7. Pilih ukuran 3 node.
  8. Pilih 2 vCPU dengan memori 7,5 GB.
  9. Klik Create.

    Screenshot berikut menunjukkan dasbor GKE yang diisi seperti yang dijelaskan pada langkah-langkah sebelumnya:

    Dasbor GKE

Mendapatkan kredensial cluster

  1. Setel nama project GKE Anda:

    gcloud config set project projectName
  2. Tetapkan zona project GKE Anda:

    gcloud config set compute/zone zoneName
  3. Dapatkan kredensial container gcloud:

    gcloud container clusters get-credentials cluster-name --zone zone --project project-name

    dalam hal ini:

    • cluster-name adalah nama cluster Kubernetes yang Anda buat.
    • zone adalah zona tempat cluster Anda berada.
    • project-name adalah nama project GCP Anda.

    Contoh:

    gcloud container clusters get-credentials edgemicrogateway-cluster --zone us-central1-a --project edgemicro-project
  4. Jalankan perintah berikut persis seperti yang ditunjukkan. Perintah tersebut memberikan izin admin cluster kepada pengguna saat ini. Izin admin diperlukan untuk membuat aturan RBAC yang diperlukan untuk layanan Edge Microgateway:

    kubectl create clusterrolebinding cluster-admin-binding --clusterrole=cluster-admin --user=$(gcloud config get-value core/account)
    

Menginstal Edge Microgateway untuk Kubernetes

  1. Download Edge Microgateway untuk Kubernetes. Jika menggunakan komputer MacOS atau Linux, Anda dapat mendownload versi terbaru atau versi tertentu dengan menentukan nama versi.

    Untuk mendapatkan versi terbaru:

    curl -L https://raw.githubusercontent.com/apigee-internal/microgateway/master/kubernetes/release/downloadEdgeMicrok8s.sh | sh -

    Untuk mendapatkan versi tertentu berdasarkan nomor versi. Perhatikan bahwa nomor versi harus diawali dengan huruf "v". Misalnya: v3.0.2

    curl -L https://raw.githubusercontent.com/apigee-internal/microgateway/master/kubernetes/release/downloadEdgeMicrok8s.sh | sh -s  version

    Contoh:

    curl -L https://raw.githubusercontent.com/apigee-internal/microgateway/master/kubernetes/release/downloadEdgeMicrok8s.sh | sh -s v3.0.2
  2. Ubah direktori ke direktori penginstalan microgateway_Version_OS_ARCH. Contoh:

    cd microgateway_2.5.26_Darwin_x86_64
  3. Periksa direktori penginstalan:

    • /install/kubernetes - Konfigurasi file .yaml untuk deployment ke Kubernetes.
    • /samples - Aplikasi contoh untuk menguji penginstalan Anda.
    • /bin - edgemicroctl yang dapat dieksekusi. Perintah edgemicroctl memasukkan Edge Microgateway ke dalam Kubernetes
  4. Tambahkan klien edgemicroctl ke PATH Anda. Misalnya, jalankan perintah berikut di sistem MacOS atau Linux:

    export PATH=$PWD/bin:$PATH
  5. Terapkan penyiapan Edge Microgateway dasar ke cluster Kubernetes. Perintah berikut membuat namespace dan peran cluster edgemicro-system.

    kubectl apply -f install/kubernetes/edgemicro.yaml
  6. Instal pengontrol Ingress NGINX ke dalam cluster. Pastikan tidak ada pengontrol Nginix lain yang berjalan. Anda dapat memeriksanya dengan menjalankan kubectl get pods.

    kubectl apply -f install/kubernetes/edgemicro-nginx-gke.yaml

Memverifikasi penginstalan

  1. Untuk memeriksa apakah pengontrol Ingress telah dimulai, jalankan perintah berikut:

    kubectl get pods --all-namespaces -l app=edgemicro-ingress --watch

    Seperti yang ditunjukkan oleh contoh output berikut, perlu waktu satu atau dua menit agar proses dimulai. Anda akan melihat beberapa siklus Error dan Mulai Ulang sebelum STATUS berubah menjadi Running.

    NAMESPACE          NAME                                            READY     STATUS             RESTARTS   AGE
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   0/1       CrashLoopBackOff   1          33s
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   0/1       Error              2          33s
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   0/1       CrashLoopBackOff   2          40s
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   0/1       Running            3          1m
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   1/1       Running            3          1m
    
  2. Setelah Ingress berjalan, Anda dapat membatalkan perintah di atas dengan mengetik Ctrl+C.

  3. Jalankan perintah ini untuk memeriksa apakah layanan Kubernetes telah di-deploy. Anda akan melihat output yang mirip dengan contoh output yang ditunjukkan di bawah ini:

    kubectl get svc -n edgemicro-system
    

    Contoh output:

    NAME                        TYPE           CLUSTER-IP     EXTERNAL-IP    PORT(S)                     AGE
    default-http-backend        ClusterIP      10.19.255.106  <none>         80/TCP                       2h
    edgemicro-ingress           LoadBalancer   10.19.247.156  35.224.24.13   80:30176/TCP,443:32325/TCP   2h
    
  4. Pastikan semua pod berjalan:

    kubectl get pods -n edgemicro-system
    

    Contoh output:

    NAME                                            READY     STATUS    RESTARTS   AGE
    default-http-backend-55c6c69b88-2lvtw           1/1       Running   0          4m
    edgemicro-ingress-controller-64444469bf-wjhrn   1/1       Running   3          4m
    

Instal Edge Microgateway

  1. Anda harus menginstal Edge Microgateway 2.5.26 atau versi yang lebih baru. Anda dapat memeriksanya dengan memasukkan:

    edgemicro --version
  2. Jika Anda belum menginstal Edge Microgateway 2.5.26 atau yang lebih baru, jalankan skrip penginstalan:

    npm install edgemicro -g
  3. Jika Anda baru saja menginstal Edge Microgateway untuk pertama kalinya atau mengupgradenya, jalankan perintah ini:

    edgemicro init

    Jika memerlukan bantuan tambahan, lihat Menginstal Edge Microgateway.

Langkah berikutnya

Sekarang Anda siap men-deploy Edge Microgateway ke Kubernetes.