Menghapus lingkungan

Topik ini menjelaskan cara menghapus lingkungan. Untuk pengantar, lihat Tentang lingkungan dan grup lingkungan.

Tentang menghapus lingkungan

Untuk menghapus lingkungan dengan benar, Anda harus membuat beberapa perubahan konfigurasi dan menerapkannya ke cluster. Perubahan ini mencakup penghapusan definisi dan referensi lingkungan dari file penggantian, menghapus komponen synchronizer, runtime, dan udca, dan terakhir menerapkan kembali penggantian untuk memulihkan cluster tanpa menyertakan lingkungan yang ingin dihapus.

Alasan Anda tidak dapat hanya menghapus lingkungan dalam satu langkah adalah karena elemen lainnya, synchronizer, runtime, dan udca terhubung ke setiap lingkungan melalui konfigurasi internalnya. Anda dapat menghapus lingkungan dengan benar hanya dengan menghapus dan menerapkannya kembali.

Cara menghapus lingkungan

Asumsikan Anda memiliki dua lingkungan, test dan prod. Dalam file penggantian Anda, definisinya mungkin terlihat seperti ini:

...
virtualhosts:
  - name: default-test
    hostAliases: ["api-test.example.com"]
    sslCertPath: ./certs/fullchain-test.pem
    sslKeyPath: ./certs/privkey-test.pem
      env: test
  - name: default-prod
    hostAliases: ["api.example.com"]
    sslCertPath: ./certs/fullchain.pem
    sslKeyPath: ./certs/privkey.pem
      env: prod
...
envs:
  - name: test
    serviceAccountPaths:
      synchronizer: "your_keypath/synchronizer-manager-service-account.json
      udca: "your_keypath/analytic-agent-service-account.json
  - name: prod
    serviceAccountPaths:
      synchronizer: "your_keypath/synchronizer-manager-service-account.json
      udca: "your_keypath/analytic-agent-service-account.json
...

Untuk menghapus lingkungan prod, ikuti langkah-langkah berikut:

  1. Salin file penggantian asli Anda -- file yang berisi definisi lingkungan prod dan test -- ke file baru yang bernama, misalnya, prod-delete.yaml.
  2. Buka prod-delete.yaml.
  3. Hapus definisi lingkungan test dari envs dan virtualhosts, hanya menyisakan definisi prod. Contoh:
    ...
    virtualhosts:
      - name: default-prod
        hostAliases: ["api.example.com"]
        sslCertPath: ./certs/fullchain.pem
        sslKeyPath: ./certs/privkey.pem
          env: prod
    ...
    envs:
      - name: prod
        serviceAccountPaths:
          synchronizer: "your_keypath/synchronizer-manager-service-account.json
          udca: "your_keypath/analytic-agent-service-account.json
    ...
  4. Hapus semua hal lainnya dari prod-delete.yaml kecuali konfigurasi cassandra, jika ada:

    Setelah melakukan perubahan di atas, file penggantian Anda akan terlihat seperti ini:

    ...
    virtualhosts:
      - name: default-prod
        hostAliases: ["api.example.com"]
        sslCertPath: ./certs/fullchain.pem
        sslKeyPath: ./certs/privkey.pem
          env: prod
    
    envs:
      - name: prod
        serviceAccountPaths:
          synchronizer: "your_keypath/synchronizer-manager-service-account.json
          udca: "your_keypath/analytic-agent-service-account.json
    
    cassandra:
      replicaCount: 3
      resources:
        requests:
          cpu: 3500m
          memory: 7Gi
      storage:
        storageClass: pd-ssd
        capacity: 10Gi
  5. Jalankan perintah ini untuk menghapus komponen yang ditentukan:
    apigeectl delete -f prod-delete.yaml -c runtime, udca, synchronizer
  6. Buka file penggantian asli (file yang menyertakan definisi lingkungan pengujian dan produksi).
  7. Hapus definisi lingkungan prod dari elemen envs dan virtualhosts. Anda hanya ingin definisi lingkungan test ada dalam file.
  8. Terapkan file penggantian yang telah dimodifikasi ke cluster Anda. Perintah ini akan membuat ulang elemen yang dihapus dan, karena dihilangkan, tidak membuat ulang lingkungan prod.
    apigeectl apply -f original-overrides.yaml -c runtime, udca, synchronizer
  9. Simpan perubahan Anda.

  10. Anda belum selesai. Anda sekarang harus mengupdate lingkungan di UI hybrid.

  11. Buka browser dan buka UI campuran di UI Apigee.
  12. Hapus lingkungan menggunakan langkah-langkah yang dijelaskan Menghapus lingkungan yang ada di UI Hybrid.