Menambahkan beberapa organisasi hybrid ke cluster

Topik ini menjelaskan cara menambahkan organisasi (org) Apigee Hybrid ke Organisasi yang sudah ada Kubernetes. Dalam konfigurasi multi-org per cluster ini, kedua organisasi menggunakan dan berbagi Cassandra yang sama cincin. Setiap organisasi dapat memiliki beberapa lingkungan dan grup lingkungan yang dikonfigurasi.

Batasan

Konfigurasi multi-org per cluster didukung dengan batasan berikut. Hingga saat ini dikurangi, kami tidak menyarankan Anda menggunakan konfigurasi ini.

  • Metrik pod hanya dikirim ke project Google Cloud pertama yang dikonfigurasi. Ini keterbatasannya paling jelas di alat Cloud Monitoring. Hal ini hanya memengaruhi metrik cluster; Analisis API tidak terpengaruh. Metrik untuk organisasi Apigee lain tidak akan dikirim ke project Google Cloud yang sesuai.
  • Semua logging dari pod dikirim ke project Google Cloud pertama yang dikonfigurasi. Ini keterbatasannya paling jelas di alat Cloud Logging. Log untuk organisasi Apigee lain tidak akan dikirim ke project Google Cloud yang sesuai. Log masih direkam di level pod dan dapat dapat diambil dengan perintah kubectl. Namun, klien tersebut tidak dikirim ke project melalui Cloud Logging.
  • Anda tidak dapat menghapus data organisasi dalam database Cassandra hanya untuk satu organisasi. Hal ini berarti bahwa Anda tidak dapat menghapus organisasi secara selektif. Setiap modifikasi pada konfigurasi {i>database<i} akan memengaruhi semua organisasi yang di-deploy ke cluster tersebut.
  • Prosedur upgrade hybrid mengupgrade seluruh cluster sekaligus.
  • Pencadangan dan pemulihan dilakukan sebagai cluster, dan tidak dapat dilakukan untuk organisasi tertentu.
  • Fitur Pemantauan API Apigee (Linimasa, Terbaru, Investigasi) hanya berfungsi untuk aplikasi pertama organisasi yang telah dikonfigurasi dan di-deploy. Setelan ini tidak akan berfungsi untuk organisasi lain dalam multi-org .

Opsi multi-organisasi

Bagian ini menjelaskan bagaimana Dukungan Apigee menangani rekomendasi dan cluster multi-org yang sudah ada untuk deployment selanjutnya:

  • Jika Anda sudah memiliki cluster Kubernetes multi-org yang di-deploy dalam lingkungan non-produksi dan produksi konteks tambahan, Dukungan Apigee akan terus mendukung mereka. Namun, perhatikan batasan teknis yang diuraikan di bagian berikutnya. Sebaiknya Anda mengubah deployment produksi mendatang untuk menggunakan satu organisasi Apigee per cluster.
  • Jika Anda sudah memiliki cluster multi-org dalam konteks non-produksi, Dukungan Apigee akan terus mendukung mereka. Sebaiknya migrasikan cluster produksi ke dengan menggunakan satu org Apigee per cluster.

Prasyarat

Sebelum melanjutkan, perhatikan hal-hal berikut:

  • Anda harus memiliki organisasi hybrid yang sudah ada dengan satu atau beberapa lingkungan yang diinstal dan dikonfigurasi di cluster Kubernetes yang sudah ada. Lihat petunjuk pemasangan hybrid.
  • Saat menggabungkan beberapa organisasi dalam satu cluster, sistem hibrida semua versi harus cocok. Sebelum menambahkan organisasi kedua ke cluster, upgrade organisasi yang ada instalasi hybrid, jika perlu. Lihat Mengupgrade Apigee Hybrid.

Membuat organisasi untuk ditambahkan ke cluster yang ada

Untuk membuat organisasi tambahan, ikuti langkah-langkah di Bagian 1: Penyiapan project dan organisasi.

Konfigurasi organisasi baru

Pada langkah berikut, Anda akan membuat file pengganti baru dan mengonfigurasinya untuk organisasi baru. File overrides.yaml hanya dapat mendukung informasi milik satu organisasi. Oleh karena itu, Anda harus membuat file overrides.yaml baru dan menerapkannya ke cluster Kubernetes yang ada.

  1. Buat akun layanan untuk digunakan dengan organisasi baru. Lihat Membuat akun layanan.
  2. Catat file sertifikat TLS (.key dan .pem) di Direktori certs. Jika perlu membuatnya lagi, Anda dapat mengikuti petunjuk di Buat sertifikat TLS.
  3. Salin overrides.yaml yang ada ke file baru untuk digunakan sebagai titik awal untuk mengonfigurasi organisasi baru. Sebagai contoh: new-overrides.yaml.
  4. Edit file penggantian baru dengan konfigurasi berikut:
    org: "new-org-name"
    instanceID: "instance-id"   ## Must match the instanceID of your existing org.
    
    k8sCluster:
      name: "existing-cluster-name"
      region: "existing-cluster-analytics-region"
    
    gcp:
      projectID: "new-project-id"
      name: "new-project-id"
      region: "new-project-default-location"
    
    namespace: namespace ## must be the same for both new and existing orgs
    
    virtualhosts:
      - name: new-environment-group-name
        sslCertPath: ./certs/cert-file-name # .crt or .pem
        sslKeyPath: ./certs/key-file-name # .key
    
    envs:
      - name: new-environment-name
        serviceAccountPaths:
          runtime: ./new-service-accounts-directory/new-project-id-apigee-runtime.json
          synchronizer: ./new-service-accounts-directory/new-project-id-apigee-synchronizer.json
          udca: ./new-service-accounts-directory/new-project-id-apigee-udca.json
    
    connectAgent:
      serviceAccountPath: ./new-service-accounts-directory/new-project-id-apigee-mart.json
    
    mart:
      serviceAccountPath: ./new-service-accounts-directory/new-project-id-apigee-mart.json
    
    metrics:
      serviceAccountPath: ./new-service-accounts-directory/new-project-id-apigee-metrics.json
    
    watcher:
      serviceAccountPath: ./new-service-accounts-directory/new-project-id-apigee-watcher.json
    

    Tabel berikut menjelaskan setiap nilai properti yang harus Anda berikan di mengganti file. Untuk informasi selengkapnya, lihat Referensi properti konfigurasi.

    Variabel Deskripsi
    new-org-name Nama organisasi baru Anda.
    instance-id Semua organisasi di dalam cluster ini harus memiliki ID instance yang sama. Oleh karena itu, ini harus cocok dengan instanceID entri dalam file pengganti untuk organisasi asli Anda.
    existing-cluster-name Nama cluster tempat Anda menambahkan organisasi ini. Ini harus cocok dengan entri k8sCluster.name di file pengganti untuk file asli Anda .
    existing-cluster-analytics-region Region tempat gugus asli berada disediakan. ID ini harus cocok dengan entri k8sCluster.region di file pengganti untuk cluster asli.
    new-project-id Project ID untuk project baru Anda. Project ID dan organisasi sama.
    new-project-default-location Region analisis yang Anda tentukan saat membuat organisasi baru. Region tidak harus sama dengan region untuk organisasi yang sudah ada.
    namespace Semua organisasi dalam cluster harus memiliki namespace yang sama. Pastikan untuk menggunakan namespace yang sama dengan yang digunakan untuk organisasi asli. Perhatikan bahwa namespace default adalah apigee.
    new-environment-group-name Grup lingkungan baru yang Anda buat untuk org.
    cert-file-name dan
    key-file-name
    Sertifikat TLS dan file kunci untuk cluster yang Anda periksa atau buat pada langkah 1 di bagian.
    new-environment-name Nama lingkungan yang Anda buat untuk org.
    new-service-accounts-directory Direktori tempat file kunci akun layanan yang Anda buat untuk organisasi baru berada.

Terapkan konfigurasi:

Terapkan konfigurasi org baru ke cluster Anda:

  1. Lakukan instalasi uji coba untuk memeriksa apakah ada masalah:
    apigeectl apply -f overrides/new-overrides.yaml --org --dry-run=client
  2. Jika tidak ada masalah, terapkan komponen tingkat organisasi. Langkah ini menginstal aplikasi Cassandra pekerjaan (pengguna dan skema), layanan Apigee Connect, Apigee Watcher, dan MART:
    apigeectl apply -f overrides/new-overrides.yaml --org
  3. Instal lingkungan. Langkah ini akan menginstal komponen apigee-runtime, pengautentikasi, dan UDCA, per lingkungan:
    apigeectl apply -f overrides/new-overrides.yaml --env ${ENV_NAME} --dry-run=client
    apigeectl apply -f overrides/new-overrides.yaml --env ${ENV_NAME}
  4. Terapkan perubahan load balancer. Langkah ini mengonfigurasi traffic masuk untuk mendengarkan host virtual untuk organisasi kedua:
    apigeectl apply -f overrides/new-overrides.yaml --settings virtualhosts --dry-run=client
    apigeectl apply -f overrides/new-overrides.yaml --settings virtualhosts
  5. Aktifkan akses sinkronisasi untuk organisasi baru Anda dengan mengikuti langkah-langkah dalam Aktifkan Akses sinkronisasi.