Langkah 7: Mengonfigurasi runtime hybrid

Menentukan penggantian konfigurasi

Penginstal hybrid Apigee menggunakan default untuk banyak setelan; namun, ada beberapa setelan yang tidak memiliki default. Anda harus memberikan nilai untuk setelan ini, seperti yang akan dijelaskan selanjutnya.

  1. Pastikan Anda berada di direktori hybrid-base-directory/hybrid-files/overrides/.
    cd hybrid-base-directory/hybrid-files/overrides
  2. Buat file baru bernama overrides.yaml di editor teks favorit Anda. Contoh:
    vi overrides.yaml

    overrides.yaml menyediakan konfigurasi untuk penginstalan hybrid Apigee unik Anda. File penggantian dalam langkah ini menyediakan konfigurasi dasar untuk penginstalan runtime hybrid jejak kecil, yang cocok untuk penginstalan pertama Anda.

  3. Di overrides.yaml, tambahkan nilai properti yang diperlukan, yang ditunjukkan di bawah. Deskripsi mendetail setiap properti juga diberikan di bawah:

    Untuk penginstalan di lingkungan produksi, lihat persyaratan penyimpanan untuk database Cassandra dalam Mengonfigurasi Cassandra untuk produksi.

    Sintaksis

    Pastikan file overrides.yaml memiliki struktur dan sintaksis berikut. Nilai di red, bold italics adalah nilai properti yang harus Anda berikan. Peristiwa tersebut dijelaskan dalam tabel di bawah ini.

    Terdapat perbedaan antara berbagai platform untuk region project Google Cloud dan region cluster Kubernetes. Pilih platform tempat Anda menginstal Apigee Hybrid.

    gcp:
      region: analytics-region
      projectID: gcp-project-id
    
    k8sCluster:
      name: cluster-name
      region: cluster-location # Must be the closest Google Cloud region to your cluster.
    org: org-name
    
    instanceID: "unique-instance-identifier"  # See the property description table below information about this parameter.
      
    cassandra:
      hostNetwork: false
        # Set to false for single region installations and multi-region installations
        # with connectivity between pods in different clusters, for example GKE installations.
        # Set to true  for multi-region installations with no communication between
        # pods in different clusters, for example GKE On-prem, GKE on AWS, Anthos on bare metal,
        # AKS, EKS, and OpenShift installations.
        # See Multi-region deployment: Prerequisites
      storage:
        capacity: 500Gi
      resources:
        requests:
          cpu: 7
          memory: 15Gi
      maxHeapSize: 8192M
      heapNewSize: 1200M
        # Minimum storage requirements for a production environment.
        # See Configure Cassandra for production.
    
    virtualhosts:
      - name: environment-group-name
        sslCertPath: ./certs/cert-name.pem
        sslKeyPath: ./certs/key-name.key
    
    envs:
      - name: environment-name
        serviceAccountPaths:
          synchronizer: ./service-accounts/synchronizer-service-account-name.json
            # for non-production environments, gcp-project-id-apigee-non-prod.json
            # for production environments, gcp-project-id-apigee-synchronizer.json
          udca: ./service-accounts/udca-service-account-name.json
            # for non-production environments, gcp-project-id-apigee-non-prod.json
            # for production environments, gcp-project-id-apigee-udca.json
          runtime: ./service-accounts/runtime-service-account-name.json
            # for non-production environments, gcp-project-id-apigee-non-prod.json
            # for production environments, gcp-project-id-apigee-runtime.json
    
    mart:
      serviceAccountPath: ./service-accounts/mart-service-account-name.json
            # for non-production environments, gcp-project-id-apigee-non-prod.json
            # for production environments, gcp-project-id-apigee-mart.json
    
    connectAgent:
      serviceAccountPath: ./service-accounts/mart-service-account-name.json
            # for non-production environments, gcp-project-id-apigee-non-prod.json
            # for production environments, gcp-project-id-apigee-mart.json
            # Use the same service account for mart and connectAgent
    
    metrics:
      serviceAccountPath: ./service-accounts/metrics-service-account-name.json
            # for non-production environments, gcp-project-id-apigee-non-prod.json
            # for production environments, gcp-project-id-apigee-metrics.json
    
    udca:
      serviceAccountPath: ./service-accounts/udca-service-account-name.json
            # for non-production environments, gcp-project-id-apigee-non-prod.json
            # for production environments, gcp-project-id-apigee-udca.json
    
    watcher:
      serviceAccountPath: ./service-accounts/watcher-service-account-name.json
            # for non-production environments, gcp-project-id-apigee-non-prod.json
            # for production environments, gcp-project-id-apigee-watcher.json
    
    logger:
      enabled: false
            # Set to false to disable logger for GKE installations.
            # Set to true for all platforms other than GKE.
            # See apigee-logger in Service accounts and roles used by hybrid components.
      serviceAccountPath: ./service-accounts/logger-service-account-name.json
            # for non-production environments, gcp-project-id-apigee-non-prod.json
            # for production environments, gcp-project-id-apigee-logger.json
    
    

    Contoh

    Contoh berikut menunjukkan file penggantian yang telah selesai dengan contoh nilai properti yang ditambahkan:

    gcp:
      region: us-central1
      projectID: hybrid-example
    
    k8sCluster:
      name: apigee-hybrid
      region: us-central1
    
    org: hybrid-example
    
    instanceID: "my_hybrid_example"
      
    cassandra:
      hostNetwork: false
    
    virtualhosts:
      - name: example-env-group
        sslCertPath: ./certs/keystore.pem
        sslKeyPath: ./certs/keystore.key
    
    envs:
      - name: test
        serviceAccountPaths:
          synchronizer: ./service-accounts/hybrid-project-apigee-non-prod.json
            # for production environments, hybrid-project-apigee-synchronizer.json
          udca: ./service-accounts/hybrid-project-apigee-non-prod.json
            # for production environments, hybrid-project-apigee-udca.json
          runtime: ./service-accounts/hybrid-project-apigee-non-prod.json
            # for production environments, hybrid-project-apigee-runtime.json
    
    mart:
      serviceAccountPath: ./service-accounts/hybrid-project-apigee-non-prod.json
        # for production environments, hybrid-project-apigee-mart.json
    
    connectAgent:
      serviceAccountPath: ./service-accounts/hybrid-project-apigee-non-prod.json
        # for production environments, example-hybrid-apigee-mart.json
    
    metrics:
      serviceAccountPath: ./service-accounts/hybrid-project-apigee-non-prod.json
        # for production environments, hybrid-project-apigee-metrics.json
    
    udca:
      serviceAccountPath: ./service-accounts/hybrid-project-apigee-non-prod.json
        # for production environments, hybrid-project-apigee-udca.json
    
    watcher:
      serviceAccountPath: ./service-accounts/hybrid-project-apigee-non-prod.json
        # for production environments, hybrid-project-apigee-watcher.json
    
    logger:
      enabled: false # Set to "false" for GKE. Set to "true" for all other kubernetes platforms.
      serviceAccountPath: ./service-accounts/hybrid-project-apigee-non-prod.json
        # for production environments, logger-service-account-name.json
    
    
  4. Setelah selesai, simpan {i>file<i}.

Tabel berikut menjelaskan setiap nilai properti yang harus Anda berikan dalam file penggantian. Untuk mengetahui informasi selengkapnya, lihat Referensi properti konfigurasi.

Variabel Deskripsi
analytics-region Di GKE, Anda harus menetapkan nilai ini ke region yang sama dengan tempat cluster berjalan. Di semua platform lainnya, pilih region analisis terdekat dengan cluster Anda yang memiliki dukungan Analytics (lihat tabel di Bagian 1, Langkah 4: Membuat organisasi.

Ini adalah nilai yang Anda tetapkan ke variabel lingkungan ANALYTICS_REGION sebelumnya.

gcp-project-id Mengidentifikasi project Google Cloud tempat apigee-logger dan apigee-metrics mengirim datanya. Ini adalah nilai yang ditetapkan ke variabel lingkungan PROJECT_ID.
cluster-name Nama cluster Kubernetes Anda. Ini adalah nilai yang ditetapkan ke variabel lingkungan CLUSTER_NAME.
cluster-location Region tempat cluster berjalan. Ini adalah region tempat Anda membuat cluster di Langkah 1: Buat cluster.

Ini adalah nilai yang Anda tetapkan ke variabel lingkungan CLUSTER_LOCATION sebelumnya.

org-name ID organisasi hybrid Apigee Anda. Ini adalah nilai yang ditetapkan ke variabel lingkungan ORG_NAME.
unique-instance-identifier

String unik untuk mengidentifikasi instance hybrid Apigee ini per cluster. String dapat berupa kombinasi huruf dan angka dengan panjang maksimal 63 karakter.

  • Anda dapat membuat beberapa organisasi dalam satu cluster. Cukup pastikan untuk menggunakan nilai instanceID yang sama setiap kali Anda menambahkan organisasi baru ke cluster yang sama.
  • Jika Anda memiliki beberapa cluster (di region yang sama atau di beberapa region), setiap cluster memerlukan instanceID unik.

Jika perlu bantuan untuk membuat ID unik, Anda dapat menggunakan alat pembuatan string acak pilihan Anda, seperti random.org/strings.

environment-group-name Nama grup lingkungan yang ditetapkan untuk lingkungan Anda. Ini adalah grup yang Anda buat di Penyiapan project dan organisasi - Langkah 5: Buat grup lingkungan. Ini adalah nilai yang ditetapkan ke variabel lingkungan ENV_GROUP.
cert-name
key-name
Masukkan nama file sertifikat dan kunci TLS yang ditandatangani sendiri yang Anda buat sebelumnya di Langkah 6: Buat sertifikat TLS. File ini harus berada di direktori base_directory/hybrid-files/certs. Contoh:
sslCertPath: ./certs/keystore.pem
sslKeyPath: ./certs/keystore.key
environment-name Gunakan nama yang sama dengan yang Anda gunakan saat membuat lingkungan di UI, seperti yang dijelaskan dalam Penyiapan project dan organisasi - Langkah 5: Buat grup lingkungan.
synchronizer-service-account-name Untuk lingkungan non-produksi, nama akun layanan tunggal, non-prod secara default. Untuk lingkungan produksi, nama file kunci akun layanan apigee-synchronizer yang Anda buat dengan alat create-service-account pada Penyiapan runtime hybrid - Langkah 6: Buat akun layanan dan kredensial. Anda dapat melihat daftar file akun layanan di direktori service-accounts/. Contoh contoh:
ls ../service-accounts/
udca-service-account-name Untuk lingkungan non-produksi, nama akun layanan tunggal, non-prod secara default. Untuk lingkungan produksi, nama file kunci akun layanan apigee-udca yang Anda buat dengan alat create-service-account.
runtime-service-account-name Untuk lingkungan non-produksi, nama akun layanan tunggal, non-prod secara default. Untuk lingkungan produksi, nama file kunci akun layanan apigee-runtime yang Anda buat dengan alat create-service-account.
mart-service-account-name Untuk lingkungan non-produksi, nama akun layanan tunggal, non-prod secara default. Untuk lingkungan produksi, nama file kunci akun layanan apigee-mart yang Anda buat dengan alat create-service-account.
metrics-service-account-name Untuk lingkungan non-produksi, nama akun layanan tunggal, non-prod secara default. Untuk lingkungan produksi, nama file kunci akun layanan apigee-metrics yang Anda buat dengan alat create-service-account.
udca-service-account-name Untuk lingkungan non-produksi, nama akun layanan tunggal, non-prod secara default. Untuk lingkungan produksi, nama file kunci akun layanan apigee-udca yang Anda buat dengan alat create-service-account.
watcher-service-account-name Untuk lingkungan non-produksi, nama akun layanan tunggal, non-prod secara default. Untuk lingkungan produksi, nama file kunci akun layanan apigee-watcher yang Anda buat dengan alat create-service-account.
logger-service-account-name Untuk lingkungan non-produksi, nama akun layanan tunggal, non-prod secara default. Untuk lingkungan produksi, nama file kunci akun layanan apigee-logger yang Anda buat dengan alat create-service-account.

Ringkasan

File konfigurasi ini memberi tahu Kubernetes cara men-deploy komponen hybrid ke cluster. Selanjutnya, Anda akan mengaktifkan akses sinkronisasi sehingga runtime Apigee dan bidang pengelolaan dapat berkomunikasi.

1 2 3 4 5 6