Langkah 7: Konfigurasikan runtime campuran

Menentukan penggantian konfigurasi

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

  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. Misalnya:
    vi overrides.yaml

    overrides.yaml menyediakan konfigurasi untuk penginstalan Apigee hybrid unik Anda. File penggantian pada langkah ini memberikan konfigurasi dasar untuk penginstalan runtime hybrid dengan footprint kecil, yang cocok untuk penginstalan pertama Anda.

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

    Sintaks

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

    Ada 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"
      
    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
    
    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 file.

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 ke 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 mendorong 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: Membuat cluster.

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

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

String unik untuk mengidentifikasi instance ini. Nama ini dapat berupa kombinasi huruf dan angka dengan panjang maksimal 63 karakter.

Anda dapat membuat beberapa organisasi di cluster yang sama, tetapi instanceId harus sama untuk semua organisasi di cluster kubernetes yang sama.
environment-group-name Nama grup lingkungan tempat lingkungan Anda ditetapkan. Ini adalah grup yang Anda buat di Penyiapan project dan organisasi - Langkah 5: Membuat grup lingkungan. Ini adalah nilai yang ditetapkan ke variabel lingkungan ENV_GROUP.
cert-name
key-name
Masukkan nama file kunci dan sertifikat TLS yang ditandatangani sendiri yang Anda buat sebelumnya di Langkah 6: Membuat 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 di Penyiapan project dan organisasi - Langkah 5: Membuat grup lingkungan.
synchronizer-service-account-name Untuk lingkungan non-produksi, nama satu akun layanan, non-prod secara default. Untuk lingkungan produksi, nama file kunci akun layanan apigee-synchronizer yang Anda buat dengan alat create-service-account di Penyiapan runtime campuran - Langkah 6: Membuat akun layanan dan kredensial. Anda dapat melihat daftar file akun layanan di direktori service-accounts/. Misalnya:
ls ../service-accounts/
udca-service-account-name Untuk lingkungan non-produksi, nama satu akun layanan, 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 satu akun layanan, 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 satu akun layanan, 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 satu akun layanan, 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 satu akun layanan, 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 satu akun layanan, 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 satu akun layanan, 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 memberi tahu Kubernetes cara men-deploy komponen campuran ke cluster. Selanjutnya, Anda akan mengaktifkan akses sinkronisasi sehingga runtime dan platform pengelolaan Apigee dapat berkomunikasi.

1 2 3 4 5 6 7 (BERIKUTNYA) Langkah 8: Aktifkan akses Synchronizer 9