Menonaktifkan pusat data

Terkadang, Anda mungkin perlu menonaktifkan pusat data. Misalnya, jika Anda mengupgrade sistem operasi, Anda perlu untuk menginstal sistem operasi baru di pusat data baru, dan menonaktifkan pusat data lama. Bagian berikut menampilkan contoh penonaktifan pusat data, di mana ada dua pusat data, dc-1 dan dc-2, pada 12 node penginstalan dalam cluster:

  • dc-1 adalah pusat data yang akan dinonaktifkan.
  • dc-2 adalah pusat data kedua, yang digunakan dalam prosedur penghentian.

Jika Anda mengupgrade sistem operasi Anda, dc-2 dapat menjadi pusat data tempat Anda menginstal versi baru dari sistem operasi (OS). Namun, menginstal OS baru tidak diperlukan untuk menonaktifkan sebuah pusat data.

Pertimbangan sebelum menonaktifkan pusat data

Perhatikan hal-hal berikut saat Anda menonaktifkan pusat data:

  • Memblokir semua runtime dan traffic pengelolaan ke pusat data yang sedang dinonaktifkan dan mengalihkan mereka ke pusat data lainnya.
  • Setelah menonaktifkan pusat data, kapasitas di cluster Apigee Anda akan berkurang. Untuk mengimbanginya, pertimbangkan untuk meningkatkan kapasitas di pusat data yang tersisa atau menambahkan pusat data setelah penghentian.
  • Selama proses penonaktifan, ada potensi kehilangan data analisis, bergantung pada komponen analisis mana yang dipasang di pusat data yang dihentikan. Anda dapat menemukan detail selengkapnya di Menambahkan atau menghapus Qpid node.
  • Sebelum menonaktifkan pusat data, Anda harus memahami bagaimana semua komponen dikonfigurasi di semua pusat data, terutama OpenLDAP, ZooKeeper, Cassandra, dan Postgres. Anda juga harus mengambil cadangan semua komponen dan konfigurasinya.

Sebelum memulai

  • Server Pengelolaan: Semua langkah penghentian sangat bergantung pada Server Pengelolaan. Jika Anda hanya memiliki satu Server Pengelolaan tersedia, sebaiknya Anda menginstal Komponen Server Pengelolaan di pusat data selain dc-1 sebelum menonaktifkan Pengelolaan Server di dc-1, dan pastikan bahwa salah satu Server Pengelolaan selalu tersedia.
  • {i>Router<i}: Sebelum menonaktifkan Router, nonaktifkan keterjangkauan Router dengan memblokir porta 15999. Memastikan tidak ada runtime lalu lintas data diarahkan ke {i> Router<i} yang dinonaktifkan.
  • Cassandra dan ZooKeeper: Bagian di bawah ini menjelaskan cara menonaktifkan dc-1 dalam dua penyiapan pusat data. Jika memiliki lebih dari dua pusat data, pastikan untuk menghapus semua referensi ke node yang dihentikan (dalam hal ini dc-1) dari semua file konfigurasi senyap di semua pusat data yang tersisa. Untuk node Cassandra yang akan dinonaktifkan, hapus host tersebut dari CASS_HOSTS. Node Cassandra yang tersisa harus tetap dalam urutan asli CASS_HOSTS.

  • Postgres: Jika Anda menonaktifkan master Postgres, pastikan untuk mempromosikan salah satu node standby yang tersedia sebagai master postgres baru. Sementara server QPID menyimpan buffer di antre, jika master Postgres tidak tersedia untuk waktu yang lebih lama, Anda berisiko kehilangan data analisis.

Prasyarat

  • Sebelum menonaktifkan komponen apa pun, sebaiknya Anda melakukan pencadangan lengkap terhadap semua node. Gunakan prosedur untuk versi Edge Anda saat ini untuk melakukan cadangan. Untuk informasi selengkapnya tentang pencadangan, lihat Pencadangan dan pemulihan.

    Catatan: Jika Anda memiliki beberapa node Cassandra atau ZooKeeper, cadangkan satu per satu, karena proses pencadangan menghentikan sementara ZooKeeper.

  • Pastikan Edge sudah aktif dan berjalan sebelum dinonaktifkan, menggunakan perintah:
    /opt/apigee/apigee-service/bin/apigee-all status
  • Pastikan tidak ada traffic runtime yang saat ini tiba di pusat data Anda akan dihentikan.

Urutan penonaktifan komponen

Jika menginstal Edge untuk Private Cloud di beberapa node, Anda harus menghentikannya Komponen edge pada node tersebut dalam urutan berikut:

  1. UI Edge (edge-ui)
  2. Server Pengelolaan (server pengelolaan edge)
  3. OpenLDAP (apigee-openldap)
  4. Router (router tepi)
  5. Pemroses Pesan (pemroses-pesan-edge)
  6. Server Qpid dan Qpidd (server edge-qpid dan apigee-qpidd)
  7. Database Postgres dan PostgreSQL (edge-postgres-server dan apigee-postgresql)
  8. ZooKeeper (apigee-zookeeper)
  9. Cassandra (apigee-cassandra)

Bagian berikut menjelaskan cara menghentikan setiap komponen.

UI Edge

Untuk menghentikan dan meng-uninstal komponen UI Edge dari dc-1, masukkan perintah berikut:

/opt/apigee/apigee-service/bin/apigee-service edge-ui stop
/opt/apigee/apigee-service/bin/apigee-service edge-ui uninstall

Server Pengelolaan

Untuk menonaktifkan Server Pengelolaan di dc-1, lakukan langkah-langkah berikut:

  1. Hentikan Server Pengelolaan di dc-1:
    apigee-service edge-management-server stop
  2. Temukan UUID Server Pengelolaan yang terdaftar di dc-1:
    curl -u <AdminEmailID>:'<AdminPassword>' \
    -X GET “http://{MS_IP}:8080/v1/servers?pod=central&region=dc-1&type=management-server”
  3. Batalkan pendaftaran jenis server:
    curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \
    -d "type=management-server&region=dc-1&pod=central&uuid=UUID&action=remove"
  4. Hapus server. Catatan: Jika komponen lain juga diinstal di server ini, membatalkan pendaftaran semua sistem terlebih dahulu sebelum menghapus UUID.
    curl -u <AdminEmailID>:'<AdminPassword> -X DELETE http://{MS_IP}:8080/v1/servers/{UUID}
  5. Uninstal komponen Server Pengelolaan di dc-1:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server uninstall

LDAP terbuka

Bagian ini menjelaskan cara menonaktifkan OpenLDAP di dc-1.

Catatan: Jika Anda memiliki lebih dari dua pusat data, lihat Penyiapan dengan lebih dari dua pusat data di bawah.

Untuk menonaktifkan OpenLDAP di dc-1, lakukan langkah-langkah berikut:

  1. Cadangkan node dc-1 OpenLDAP dengan mengikuti langkah-langkah dalam Cara mencadangkan.
  2. Pisahkan replikasi data antara dua pusat data, dc-1 dan dc-2, dengan menjalankan langkah-langkah berikut di kedua pusat data.

    1. Periksa status saat ini:
      ldapsearch -H ldap://{HOST}:{PORT} -LLL -x -b "cn=config" -D "cn=admin,cn=config" -w {credentials} -o ldif-wrap=no 'olcSyncRepl' | grep olcSyncrepl

      Outputnya akan mirip dengan berikut ini:

      olcSyncrepl: {0}rid=001 provider=ldap://{HOST}:{PORT}/ binddn="cn=manager,dc=apigee,dc=com" bindmethod=simple credentials={credentials} searchbase="dc=apigee,dc=com" attrs="*,+" type=refreshAndPersist retry="60 1 300 12 7200 +" timeout=1
    2. Buat file break_repl.ldif yang berisi perintah berikut:
      dn: olcDatabase={2}bdb,cn=config
      changetype: modify
      delete: olcSyncRepl
      
      dn: olcDatabase={2}bdb,cn=config
      changetype: modify
      delete: olcMirrorMode
    3. Jalankan perintah ldapmodify:
      ldapmodify -x -w {credentials} -D "cn=admin,cn=config" -H "ldap://{HOST}:{PORT}/" -f path/to/file/break_repl.ldif

      Outputnya akan mirip dengan berikut ini:

      modifying entry "olcDatabase={2}bdb,cn=config"
      modifying entry "olcDatabase={2}bdb,cn=config"
  3. Anda dapat memverifikasi bahwa dc-2 tidak lagi mereplikasi ke dc-1 dengan membuat entri di LDAP dc-2 dan memastikannya tidak muncul di LDAP dc-1.

    Opsional, Anda dapat mengikuti langkah-langkah berikut, yang akan membuat pengguna hanya baca di dc-2 {i>Node OpenLDAP<i} dan kemudian periksa apakah pengguna direplikasi atau tidak. Kemudian, pengguna dihapus.

    1. Buat file readonly-user.ldif di dc-2 dengan konten berikut:
      dn: uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com
      objectClass: organizationalPerson
      objectClass: person
      objectClass: inetOrgPerson
      objectClass: top
      cn: readonly-user
      sn: readonly-user
      userPassword: {testPassword}
    2. Tambahkan pengguna dengan perintah `ldapadd` di dc-2:
      ldapadd -H ldap://{HOST}:{PORT} -w {credentials} -D "cn=manager,dc=apigee,dc=com" -f path/to/file/readonly-user.ldif

      Output-nya akan serupa dengan:

      adding new entry "uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com"
    3. Telusuri pengguna di dc-1 untuk memastikan pengguna tidak direplikasi. Jika pengguna tidak ada di dc-1, Anda akan yakin bahwa kedua LDAP tidak lagi mereplikasi:
      ldapsearch -H ldap://{HOST}:{PORT} -x -w {credentials} -D "cn=manager,dc=apigee,dc=com" -b uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com -LLL

      Outputnya akan mirip dengan berikut ini:

      No such object (32)
      Matched DN: ou=users,ou=global,dc=apigee,dc=com
    4. Hapus pengguna hanya baca yang Anda tambahkan sebelumnya:
      ldapdelete -v -H ldap://{HOST}:{PORT} -w {credentials} -D "cn=manager,dc=apigee,dc=com" "uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com"
  4. Hentikan OpenLDAP di dc-1:
    /opt/apigee/apigee-service/bin/apigee-service apigee-openldap stop
  5. Uninstal komponen OpenLDAP di dc-1:
    /opt/apigee/apigee-service/bin/apigee-service apigee-openldap uninstall

Router

Bagian ini menjelaskan cara menonaktifkan Router. Lihat Menghapus server untuk mengetahui detail selengkapnya tentang cara menghapus Router.

Langkah-langkah berikut menghentikan Router dari dc-1. Jika ada beberapa node Router yang dikonfigurasi di dc-1, lakukan langkah-langkah di semua node Router satu per satu

Catatan: Di sini diasumsikan bahwa port health check router 15999 dikonfigurasi di beban Anda penyeimbang, dan porta pemblokir 15999 akan membuat {i>router<i} tidak dapat dijangkau. Anda mungkin memerlukan akses root untuk memblokir porta.

Untuk menonaktifkan Router, lakukan langkah-langkah berikut:

  1. Menonaktifkan keterjangkauan router dengan memblokir port 15999, yaitu port health check. Pastikan traffic runtime diblokir di pusat data ini:

    iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT
  2. Pastikan router dapat dijangkau:

    curl -vvv -X GET http://{ROUTER_IP}:15999/v1/servers/self/reachable

    Outputnya akan mirip dengan berikut ini:

    About to connect() to 10.126.0.160 port 15999 (#0)
    Trying 10.126.0.160...
    Connection refused
    Failed connect to 10.126.0.160:15999; Connection refused
    Closing connection 0
    curl: (7) Failed connect to 10.126.0.160:15999; Connection refused
  3. Dapatkan UUID Router, seperti yang dijelaskan di Dapatkan UUID.
  4. Hentikan router:
    /opt/apigee/apigee-service/bin/apigee-service edge-router stop
  5. Buat daftar pod gateway yang tersedia di organisasi dengan perintah berikut:
    curl -u  <AdminEmailID>:<AdminPassword> -X GET "http://{MS_IP}:8080/v1/organizations/{ORG}/pods"

    Lihat Tentang Pod.

  6. Batalkan pendaftaran jenis server:
    curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \
    -d "type=router&amp;region=dc-1&amp;pod=gateway-1&amp;uuid=UUID&amp;action=remove"
  7. Hapus server:
    curl -u <AdminEmailID>:'<AdminPassword>’ -X DELETE http://{MS_IP}:8080/v1/servers/UUID
  8. Uninstal edge-router:
    /opt/apigee/apigee-service/bin/apigee-service edge-router uninstall
    Lihat Menghapus server.
  9. Hapus aturan iptables untuk mengaktifkan port 15999 yang diblokir:
    iptables -F

Message Processor

Bagian ini menjelaskan cara menonaktifkan Pemroses Pesan dari dc-1. Lihat Menghapus server untuk mengetahui detail selengkapnya tentang cara menghapus Pemroses Pesan.

Karena kita mengasumsikan bahwa dc-1 memiliki 12 node penginstalan dalam cluster, ada dua node Pemroses Pesan yang dikonfigurasi di dc-1. Lakukan mengikuti perintah di kedua {i>node<i}.

  1. Mendapatkan UUID Pemroses Pesan, seperti yang dijelaskan dalam Dapatkan UUID.
  2. Hentikan Pemroses Pesan:
    apigee-service edge-message-processor stop
  3. Batalkan pendaftaran jenis server:
    curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers  \
    -d "type=message-processor&amp;region=dc-1&amp;pod=gateway-1&amp;uuid=UUID&amp;action=remove"/pre>
  4. Disassociate an environment from the Message Processor.

    Note: You need to remove the bindings on each org/env that associates the Message Processor UUID.

    curl -H "Content-Type:application/x-www-form-urlencoded" -u <AdminEmailID>:''  \
    -X POST http://{MS_IP}:8080/v1/organizations/{ORG}/environments/{ENV}/servers \
    -d "action=remove&uuid=UUID"
  5. Batalkan pendaftaran jenis server:
    curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://MS_IP:8080/v1/servers -d "type=message-processor&region=dc-1&pod=gateway-1&uuid=UUID&action=remove"
  6. Uninstal Pemroses Pesan:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor uninstall
  7. Batalkan pendaftaran server:
    curl -u <AdminEmailID>:'<AdminPassword> -X DELETE http://{MS_IP}:8080/v1/servers/UUID

Server Qpid dan Qpidd

Bagian ini menjelaskan cara menghentikan Server Qpid (edge-qpid-server) dan Qpidd (apigee-qpidd). Ada dua node Qpid yang dikonfigurasi di dc-1, jadi Anda harus melakukan langkah-langkah berikut untuk keduanya node:

  1. Dapatkan UUID untuk Qpidd, seperti yang dijelaskan dalam Mendapatkan UUID.
  2. Hentikan edge-qpid-server dan apigee-qpidd:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
    /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd stop
  3. Dapatkan daftar Analytics dan grup konsumen:
    curl -u <AdminEmailID>:'<AdminPassword>' -X GET http://{MS_IP}:8080/v1/analytics/groups/ax
  4. Hapus Qpid dari grup konsumen:
    curl -u <AdminEmailID>:'<AdminPassword>' -H "Content-Type: application/json"  -X DELETE \ "http://{MS_IP}:8080/v1/analytics/groups/ax/{ax_group}/consumer-groups/{consumer_group}/consumers/{QPID_UUID}"
  5. Hapus Qpid dari grup analisis:
    curl -v -u <AdminEmailID>:'<AdminPassword>' \
    -X DELETE "http://{MS_IP}:8080/v1/analytics/groups/ax/{ax_group}/servers?uuid={QPID_UUID}&type=qpid-server"
  6. Batalkan pendaftaran server Qpid dari penginstalan Edge:
    curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \
    -d "type=qpid-server&region=dc-1&pod=central&uuid={QPID_UUID}&action=remove"
  7. Hapus server Qpid dari penginstalan Edge:
    curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
  8. Mulai ulang semua komponen edge-qpid-server pada semua node untuk memastikan perubahan diterapkan oleh komponen tersebut:
    $ /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
    $ /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server wait_for_ready
  9. Uninstal edge-qpid-server dan apigee-qpidd:
    $ /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server uninstall
    $ /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd uninstall

Postgres dan Postgresql

Pusat data yang Anda nonaktifkan dapat memiliki master Postgres atau standby Postgres. Bagian berikut menjelaskan cara menghentikannya:

Penonaktifan master Postgres

Catatan: Jika Anda menonaktifkan master Postgres, pastikan untuk mempromosikan salah satu node standby yang tersedia sebagai master postgres baru. Sementara antrean QPID mem-buffer data, jika master Postgres tidak tersedia untuk waktu yang lama, Anda berisiko kehilangan data analisis.

Untuk menonaktifkan master Postgres:

  1. Cadangkan node master Postgres dc-1 dengan mengikuti petunjuk di link berikut:
  2. Mendapatkan UUID server Postgres, seperti yang dijelaskan dalam Dapatkan UUID.
  3. Pada dc-1, hentikan edge-postgres-server dan apigee-postgresql pada master saat ini:
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
  4. Pada node standby di dc-2, masukkan perintah berikut untuk menjadikannya node master:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql promote-standby-to-master <IP of OLD Progress master>

    Catatan: Jika Anda memiliki lebih dari satu node Postgres standby, Anda harus menambahkan entri host di master baru dan memperbarui setelan replikasi untuk semua node standby postgres yang tersedia.

    Untuk menambahkan entri host ke master Postgres baru: ikuti langkah-langkah di bagian yang sesuai di bawah ini:

    Jika hanya ada satu node standby yang tersisa

    Misalnya, sebelum penonaktifan, ada tiga node Postgres yang dikonfigurasi. Anda menonaktifkan master yang ada dan mempromosikan salah satu mode standby postgres yang tersisa node yang akan dikuasai. Konfigurasikan node standby yang tersisa dengan langkah-langkah berikut:

    1. Pada master baru, edit konfigurasi untuk mengatur file:
      PG_MASTER=IP_or_DNS_of_new_PG_MASTER
      PG_STANDBY=IP_or_DNS_of_PG_STANDBY
    2. Aktifkan replikasi pada master baru:
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFIle

    Jika ada lebih dari satu node standby yang tersisa

    1. Tambahkan konfigurasi berikut di /opt/apigee/customer/application/postgresql.properties:
      conf_pg_hba_replication.connection=host replication apigee standby_1_ip/32 trust \n host replication apigee standby_2_ip/32 trust
    2. Pastikan file /opt/apigee/customer/application/postgresql.properties dimiliki oleh pengguna apigee:
            chown apigee:apigee /opt/apigee/customer/application/postgresql.properties
    3. Mulai ulang apigee-postgresql:
      apigee-service apigee-postgresql restart
    4. Untuk memperbarui setelan replikasi pada node standby:

      1. Ubah file konfigurasi /opt/silent.conf dan perbarui kolom PG_MASTER dengan alamat IP master Postgres baru.
      2. Hapus semua data Postgres lama dengan perintah berikut:
        rm -rf /opt/apigee/data/apigee-postgresql/
      3. Siapkan replikasi di node standby:
        /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
    5. Pastikan master Postgres disiapkan dengan benar dengan memasukkan perintah berikut di dc-2:
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
    6. Hapus dan tambahkan server Postgresql dari grup analisis dan grup konsumen.
      1. Hapus server Postgres lama dari grup analisis dengan mengikuti petunjuk di Hapus server Postgres dari grup analisis.
      2. Tambahkan server postgres baru ke grup analisis dengan mengikuti petunjuk di Tambahkan server Postgres yang sudah ada ke grup analisis.
    7. Batalkan pendaftaran server postgres lama dari dc-1:
      curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \
      -d "type=postgres-server&region=dc-1&pod=analytics&uuid=UUID&action=remove"<
    8. Hapus server postgres lama dari dc-1:
      curl -u >AdminEmailID>:'>AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
    9. Master Postgres lama kini aman untuk dinonaktifkan. Uninstal edge-postgres-server dan apigee-postgresql:
      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server uninstall
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql uninstall

    Menonaktifkan standby Postgres

    Catatan: Dokumentasi untuk 12 node clustered installation menunjukkan node dc-1 postgresql sebagai master, tetapi untuk memudahkan, di bagian ini diasumsikan bahwa node postgresql dc-1 dan {i>node postgresql dc-2 adalah master.<i}

    Untuk menonaktifkan mode standby Postgres, lakukan langkah-langkah berikut:

    1. Dapatkan UUID server Postgres, dengan mengikuti petunjuk di Dapatkan UUID.
    2. Hentikan apigee-postgresql di node standby saat ini di dc-1:
      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
    3. Hapus dan tambahkan server Postgresql dari grup analisis dan grup konsumen.
      1. Hapus server Postgres lama dari grup analisis dengan mengikuti petunjuk di Hapus server Postgres dari grup analisis.
      2. Tambahkan server postgres baru ke grup analisis dengan mengikuti petunjuk di Tambahkan server Postgres yang sudah ada ke grup analisis.
    4. Batalkan pendaftaran server postgres lama dari dc-1:
      curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \
      -d "type=postgres-server&region=dc-1&pod=analytics&uuid=UUID&action=remove"<
    5. Hapus server postgres lama dari dc-1:
      curl -u >AdminEmailID>:'>AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
    6. Master Postgres lama kini aman untuk dinonaktifkan. Uninstal edge-postgres-server dan apigee-postgresql:
      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server uninstall
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql uninstall

    ZooKeeper dan Cassandra

    Bagian ini menjelaskan cara menonaktifkan server ZooKeeper dan Cassandra dalam konfigurasi dua pusat data.

    Jika memiliki lebih dari dua pusat data, pastikan untuk menghapus semua referensi ke node yang dihentikan (dalam hal ini dc-1) dari semua file konfigurasi senyap di semua pusat data yang tersisa. Untuk node Cassandra yang akan dinonaktifkan, hapus host tersebut dari CASS_HOSTS. Node Cassandra yang tersisa harus tetap dalam urutan asli CASS_HOSTS.

    Catatan untuk ZooKeeper: Anda harus mempertahankan kuorum node pemilih saat memodifikasi ZK_HOST properti di file konfigurasi, untuk memastikan bahwa ansambel ZooKeeper tetap berfungsi. Anda harus memiliki angka ganjil node pemilih dalam konfigurasi Anda. Untuk informasi selengkapnya, lihat Pemeliharaan Apache ZooKeeper tugas.

    Untuk menonaktifkan server ZooKeeper dan Cassandra:

    1. Cadangkan node dc-1 Cassandra dan ZooKeeper dengan mengikuti petunjuk di tautan berikut:
    2. Menampilkan UUID ZooKeeper dan Cassandra server di pusat data di mana {i>node<i} Cassandra berada akan dinonaktifkan.

      apigee-adminapi.sh servers list -r dc-1 -p central -t application-datastore --admin <AdminEmailID> --pwd '<AdminPassword>' --host localhost
    3. Batalkan pendaftaran jenis server:
      curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://MS_IP:8080/v1/servers -d "type=cache-datastore&type=user-settings-datastore&type=scheduler-datastore&type=audit-datastore&type=apimodel-datastore&type=application-datastore&type=edgenotification-datastore&type=identityzone-datastore&type=user-settings-datastore&type=auth-datastore&region=dc-1&pod=central&uuid=UUID&action=remove"
    4. Batalkan pendaftaran server:
      curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MS_IP:8080/v1/servers/UUID
    5. Perbarui file konfigurasi dengan IP node yang dinonaktifkan akan dihapus dari ZK_HOSTS dan CASS_HOSTS.

      Contoh: Misalkan Anda memiliki IP $IP1 $IP2 $IP3 dalam dc-1 dan $IP4 $IP5 $IP6 pada dc-2, dan Anda sedang menonaktifkan dc-1. Kemudian, Anda harus menghapus IP $IP1 $IP2 $IP3 dari file konfigurasi.

      • Entri file konfigurasi yang ada:
        ZK_HOSTS="$IP1 $IP2 $IP3 $IP4 $IP5 $IP6"
        CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1, $IP4:2,1 $IP5:2,1 $IP6:2,1”
      • Entri file konfigurasi baru:
        ZK_HOSTS="$IP4 $IP5 $IP6"
        CASS_HOSTS="$IP4:2,1 $IP5:2,1 $IP6:2,1"
    6. Perbarui file konfigurasi senyap (diubah di langkah e) dengan IP yang dihapus node yang dinonaktifkan dan menjalankan profil server di semua node yang menghosting Server Pengelolaan:
      /opt/apigee/apigee-setup/bin/setup.sh -p ms -f updated_config_file
    7. Perbarui file konfigurasi dengan IP dari node yang dinonaktifkan dan jalankan profil MP/RMP di semua node Router dan Pemroses Pesan:
      • Jika Router Edge dan Pemroses Pesan dikonfigurasi pada node yang sama, masukkan:
        /opt/apigee/apigee-setup/bin/setup.sh -p rmp -f updated_config_file
      • Jika Router Edge dan Pemroses Pesan dikonfigurasi pada node terpisah, masukkan hal berikut:

        Untuk Router:

        /opt/apigee/apigee-setup/bin/setup.sh -p r -f updated_config_file

        Untuk Pemroses Pesan:

        /opt/apigee/apigee-setup/bin/setup.sh -p mp -f updated_config_file
    8. Konfigurasi ulang semua node Qpid, dengan IP node yang dinonaktifkan akan dihapus dari File Respons:
      /opt/apigee/apigee-setup/bin/setup.sh -p qs -f updated_config_file
    9. Konfigurasi ulang semua node Postgres, dengan IP node yang dinonaktifkan akan dihapus dari File Respons:
      /opt/apigee/apigee-setup/bin/setup.sh -p ps -f updated_config_file
    10. Ubah system_auth keyspace. Jika Anda telah mengaktifkan autentikasi Cassandra di Node Cassandra, perbarui faktor replikasi keyspace system_auth dengan menjalankan perintah berikut:
      ALTER KEYSPACE system_auth WITH replication = {'class': 'NetworkTopologyStrategy', 'dc-2': '3'};

      Perintah ini menetapkan faktor replikasi ke '3', yang menunjukkan tiga node Cassandra dalam cluster. Ubah nilai ini seperlunya.

      Setelah menyelesaikan langkah ini, topologi Cassandra seharusnya tidak memiliki dc-1 di ruang kunci mana pun.

    11. Matikan node Cassandra di dc-1, satu per satu.

      Untuk menonaktifkan node Cassandra, masukkan perintah berikut:

      /opt/apigee/apigee-cassandra/bin/nodetool -h cassIP -u cassandra -pw '<AdminPassword>' decommission
    12. Periksa koneksi node Cassandra dari dc-1 menggunakan salah satu perintah berikut:
      /opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p '<AdminPassword>'

      Atau, perintah verifikasi sekunder yang akan dijalankan pada node yang dihentikan:

      /opt/apigee/apigee-cassandra/bin/nodetool netstats

      Perintah di atas akan menampilkan:

      Mode: DECOMMISSIONED
    13. Jalankan profil DS untuk semua node Cassandra dan ZooKeeper di dc-2:
      /opt/apigee/apigee-setup/bin/setup.sh -p ds -f updated_config_file
    14. Hentikan apigee-cassandra dan apigee-zookeeper di dc-1:
      apigee-service apigee-cassandra stop
      apigee-service apigee-zookeeper stop
    15. Uninstal apigee-cassandra dan apigee-zookeeper di dc-1:
      apigee-service apigee-cassandra uninstall
      apigee-service apigee-zookeeper uninstall

    Hapus binding dari dc-1

    Untuk menghapus binding dari dc-1, lakukan langkah-langkah berikut:

    1. Hapus binding dari dc-1.
      1. Tampilkan daftar semua pod yang tersedia dalam organisasi:
        curl -v -u  <AdminEmailID>:<AdminPassword> -X GET "http://MS_IP:8080/v1/o/ORG/pods"
      2. Untuk memeriksa apakah semua binding telah dihapus, dapatkan UUID server yang terkait dengan pod:
        curl -v -u  <AdminEmailID>:<AdminPassword> \
        -X GET "http://MS_IP:8080/v1/regions/dc-1/pods/gateway-1/servers"

        Jika perintah ini tidak menampilkan UUID apa pun, langkah sebelumnya telah menghapus semua binding, dan Anda dapat melewati langkah berikutnya. Jika tidak, lakukan langkah berikutnya.

      3. Hapus semua binding server untuk UUID yang diperoleh di langkah sebelumnya:
        curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MS_IP:8080/v1/servers/UUID
      4. Batalkan Pengaitan Organisasi dari pod:
        curl -v -u  <AdminEmailID>:<AdminPassword>  "http://MS_IP:8080/v1/o/ORG/pods" -d "action=remove&region=dc-1&pod=gateway-1" -H "Content-Type: application/x-www-form-urlencoded" -X POST
    2. Hapus pod:
      curl -v -u <AdminEmailID>:<AdminPassword> "http://MS_IP:8080/v1/regions/dc-1/pods/gateway-1" -X DELETE
    3. Hapus wilayah.
      curl -v -u <AdminEmailID>:<AdminPassword>  "http://MS_IP:8080/v1/regions/dc-1" -X DELETE

    Catatan: Jika Anda melewatkan salah satu langkah untuk menghapus server, langkah di atas akan mengembalikan pesan {i>error<i} yang server tertentu dalam pod masih ada. Jadi, hapus dengan mengikuti langkah-langkah pemecahan masalah di bawah ini sambil menyesuaikan jenisnya di perintah curl.

    Pada tahap ini, Anda telah menyelesaikan penonaktifan dc-1.

    Lampiran

    Pemecahan masalah

    Jika setelah melakukan langkah sebelumnya, masih ada server di beberapa pod, lakukan langkah-langkah berikut untuk membatalkan pendaftaran dan menghapus server. Catatan: Ubah jenis dan pod sesuai kebutuhan.

    1. Dapatkan UUIDs menggunakan perintah berikut:
      apigee-adminapi.sh servers list -r dc-1 -p POD -t  --admin <AdminEmailID> --pwd  '<AdminPassword>’ --host localhost
    2. Batalkan pendaftaran jenis server:
      curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://MP_IP:8080/v1/servers -d "type=TYPE=REGION=dc-1&pod=POD&uuid=UUID&action=remove"
    3. Hapus server satu per satu:
      curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MP_IP:8080/v1/servers/UUID

    Validasi

    Anda dapat memvalidasi penghentian tersebut menggunakan perintah berikut.

    Server Pengelolaan

    Jalankan perintah berikut dari Server Pengelolaan di semua region.

    curl -v  -u  <AdminEmailID>:'<AdminPassword>' http://MS_IP:8080/v1/servers?pod=central&region=dc-1
    curl -v  -u  <AdminEmailID>:'<AdminPassword>' http://MS_IP:8080/v1/servers?pod=gateway&region=dc-1
    curl -v -u  <AdminEmailID>:'<AdminPassword>'  http://MS_IP:8080/v1/servers?pod=analytics&region=dc-1

    Jalankan perintah berikut pada semua komponen untuk memeriksa persyaratan port bagi semua bagian pengelolaan porta.

    curl -v http://MS_IP:8080/v1/servers/self

    Periksa grup analisis.

    curl  -v  -u  <AdminEmailID>:'<AdminPassword>' "http://MS_IP:8080}/v1/o/ORG/e/ENV/provisioning/axstatus"
    curl -v  -u  <AdminEmailID>:'<AdminPassword>'  http://MS_IP:8080/v1/analytics/groups/ax

    Node Cassandra/ZooKeeper

    Di semua node Cassandra, masukkan:

    /opt/apigee/apigee-cassandra/bin/nodetool -h <host> statusthrift

    Tindakan ini akan menampilkan status running atau not running untuk pengguna tersebut {i>node<i}.

    Pada satu node, masukkan:

    /opt/apigee/apigee-cassandra/bin/nodetool -h <host> ring
    /opt/apigee/apigee-cassandra/bin/nodetool -h <host> status

    Perintah di atas akan menampilkan informasi pusat data aktif.

    Pada node ZooKeeper, pertama-tama masukkan:

    echo ruok | nc <host> 2181

    Perintah ini akan menampilkan imok.

    Lalu masukkan:

    echo stat | nc <host> 2181 | grep Mode

    Nilai Mode yang ditampilkan oleh perintah di atas akan berupa salah satu dari yang berikut: observer, leader, atau follower.

    Dalam satu node ZooKeeper:

    /opt/apigee/apigee-zookeeper/contrib/zk-tree.sh >> /tmp/zk-tree.out.txt

    Pada node master Postgres, jalankan:

    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master

    Validasi bahwa respons menyatakan bahwa node adalah master.

    Di node standby:

    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby

    Validasi bahwa respons menyatakan bahwa node adalah standby.

    Login ke database PostgreSQL menggunakan perintah

    psql -h localhost -d apigee -U postgres

    Jika diminta, masukkan 'postgres' sandi pengguna sebagai 'postgres'. Pilih max(client_received_start_timestamp) dari analisis.

    ”$org.$env.fact” limit 1;

    Log

    Periksa log pada komponen untuk memastikan tidak ada error.