Menggunakan repositori image pribadi dengan apigeectl

Jika Anda menggunakan diagram Helm untuk mengelola Apigee Hybrid, lihat Menggunakan repositori image pribadi dengan diagram Helm.

Dokumen ini menjelaskan cara mengonfigurasi Apigee Hybrid untuk menggunakan image dari repositori image container pribadi.

Ringkasan

Semua image runtime Apigee Hybrid dihosting di Google Cloud Container Registry (GCR). Jika karena alasan tertentu Anda ingin menggunakan repositori container image pribadi, Anda dapat mendownload image dari GCR, mengirimkannya ke repositori pribadi, dan mengganti lokasi image default dalam file overrides.yaml.

Langkah konfigurasi

Ikuti langkah-langkah berikut untuk menggunakan repositori container image pribadi untuk image hybrid Apigee. Untuk melakukan langkah-langkah ini dan berhasil menggunakan image di repositori pribadi, Anda harus memahami prosedur penginstalan hybrid Apigee. Dalam skenario umum, Anda akan berencana mengonfigurasi repositori pribadi sebagai bagian dari penginstalan hybrid baru.

  1. Kirim image hybrid Apigee dari GCR ke repositori pribadi Anda. Sebaiknya gunakan utilitas apigee-push-pull untuk menyelesaikan langkah ini.

    Jika Anda memilih untuk melakukan langkah ini secara manual, Anda harus menginstal Docker dan menggunakan perintah docker pull sebagai berikut. Pastikan untuk menambahkan tag yang benar ke setiap nama gambar. Misalnya, tag untuk apigee-synchronizer adalah 1.11.2, seperti yang ditunjukkan di bawah.

    1. Dapatkan daftar terbaru semua image di project saat ini dengan opsi --list dari utilitas apigee-pull-push.sh di direktori apigeectl/tools/:
      apigee-pull-push.sh --list
    2. Output Anda akan terlihat seperti ini:

      apigee:
              gcr.io/apigee-release/hybrid/apigee-mart-server:1.11.2
              gcr.io/apigee-release/hybrid/apigee-synchronizer:1.11.2
              gcr.io/apigee-release/hybrid/apigee-runtime:1.11.2
              gcr.io/apigee-release/hybrid/apigee-hybrid-cassandra-client:1.11.2
              gcr.io/apigee-release/hybrid/apigee-hybrid-cassandra:1.11.2
              gcr.io/apigee-release/hybrid/apigee-cassandra-backup-utility:1.11.2
              gcr.io/apigee-release/hybrid/apigee-udca:1.11.2
              gcr.io/apigee-release/hybrid/apigee-connect-agent:1.11.2
              gcr.io/apigee-release/hybrid/apigee-watcher:1.11.2
              gcr.io/apigee-release/hybrid/apigee-operators:1.11.2
              gcr.io/apigee-release/hybrid/apigee-installer:1.11.2
              gcr.io/apigee-release/hybrid/apigee-redis:1.11.2
              gcr.io/apigee-release/hybrid/apigee-diagnostics-collector:1.11.2
              gcr.io/apigee-release/hybrid/apigee-diagnostics-runner:1.11.2
              gcr.io/apigee-release/hybrid/apigee-mint-task-scheduler:1.11.2
      third party:
              gcr.io/apigee-release/hybrid/apigee-stackdriver-logging-agent:1.10.5
              gcr.io/apigee-release/hybrid/apigee-prom-prometheus:v2.52.0
              gcr.io/apigee-release/hybrid/apigee-stackdriver-prometheus-sidecar:0.9.0
              gcr.io/apigee-release/hybrid/apigee-kube-rbac-proxy:v0.18.0
              gcr.io/apigee-release/hybrid/apigee-envoy:v1.27.0
              gcr.io/apigee-release/hybrid/apigee-prometheus-adapter:v0.12.0
              gcr.io/apigee-release/hybrid/apigee-asm-ingress:1.18.7-asm.26-distroless
              gcr.io/apigee-release/hybrid/apigee-asm-istiod:1.18.7-asm.26-distroless
              gcr.io/apigee-release/hybrid/apigee-fluent-bit:3.0.3
      
    3. Tarik gambar yang diperlukan untuk namespace apigee-system dan apigee dengan perintah docker pull. Contoh:
      docker pull gcr.io/apigee-release/hybrid/apigee-installer:1.11.2

      Daftar berikut menunjukkan gambar yang diperlukan untuk setiap namespace:

      Namespace apigee-system

      • apigee-installer
      • apigee-kube-rbac-proxy
      • apigee-operators

      Namespace apigee Anda

      • apigee-asm-ingress
      • apigee-asm-istiod
      • apigee-cassandra-backup-utility
      • apigee-connect-agent
      • apigee-diagnostics-collector
      • apigee-diagnostics-runner
      • apigee-envoy
      • apigee-fluent-bit
      • apigee-hybrid-cassandra-client
      • apigee-hybrid-cassandra
      • apigee-mart-server
      • apigee-prom-prometheus
      • apigee-prometheus-adapter
      • apigee-redis
      • apigee-runtime
      • apigee-stackdriver-logging-agent
      • apigee-stackdriver-prometheus-sidecar
      • apigee-synchronizer
      • apigee-udca
      • apigee-watcher
    4. Setelah Anda menarik dan memberi tag pada image, kirimkan ke repositori pribadi Anda. Lihat docker push.
  2. Buat Secret Kubernetes di namespace apigee dan apigee-system.

    Jika namespace ini tidak ada di cluster Anda, Anda harus membuatnya sebelum melakukan langkah ini.

    Untuk mengetahui langkah-langkah membuat Secret, lihat Membuat Secret dengan memberikan kredensial di command line. Misalnya, untuk membuat secret di namespace apigee-system:

    kubectl create secret docker-registry SECRET_NAME -n apigee-system \
      --docker-server=YOUR_REGISTRY_SERVER \
      --docker-username=YOUR_DOCKER_USERNAME \
      --docker-email=YOUR_DOCKER_EMAIL \
      --docker-password="YOUR_DOCKER_PASSWORD)"

    Untuk membuat Secret di namespace apigee:

    kubectl create secret docker-registry SECRET_NAME -n apigee \
      --docker-server=YOUR_REGISTRY_SERVER \
      --docker-username=YOUR_DOCKER_USERNAME \
      --docker-email=YOUR_DOCKER_EMAIL \
      --docker-password="YOUR_DOCKER_PASSWORD)"
  3. Tambahkan Secret ke file overrides.yaml Anda. Pembuatan file penggantian dijelaskan dalam langkah-langkah penginstalan hybrid. Lihat Mengonfigurasi cluster untuk mengetahui detailnya.
    imagePullSecrets:
      - name: SECRET_NAME
  4. Perbarui file overrides.yaml Anda dengan URL gambar untuk gambar yang disimpan di repositori pribadi Anda. Setiap komponen yang disimpan di repositori memiliki elemen image:url. Gunakan elemen ini untuk menentukan URL setiap gambar komponen. Contoh:
    mart:
      serviceAccountPath: /installdir/hybrid-files/service-accounts/hybrid-apigee-non-prod.json
      image:
        url: my-docker.pkg.dev/hybrid-1/registry-name/apigee-mart-server

    Ikuti pola ini untuk memperbarui setiap komponen hybrid tingkat teratas dalam file overrides.yaml dengan URL gambar repositori pribadi. File penggantian contoh lengkap disediakan dengan penginstalan hibrida Anda di direktori $APIGEECTL_HOME/examples/private-overrides.yaml.

Anda kini dapat menyelesaikan penginstalan hibrida baru menggunakan image pribadi, atau mengupdate penginstalan yang ada. Lihat langkah-langkah penginstalan Apigee Hybrid untuk mengetahui informasi selengkapnya.

Menginstal cert-manager dari repositori pribadi

Untuk menginstal cert-manager dari repositori pribadi Anda, lihat Menginstal dengan Helm. Anda harus menginstal versi cert-manager yang sama seperti yang ditentukan dalam petunjuk penginstalan Apigee Hybrid untuk memastikan kompatibilitas.