Menonaktifkan pusat data

Terkadang, Anda mungkin perlu menonaktifkan pusat data. Misalnya, jika mengupgrade sistem operasi, Anda harus menginstal sistem operasi baru di pusat data baru, lalu menonaktifkan pusat data lama. Bagian berikut menampilkan contoh penonaktifan pusat data, yang memiliki dua pusat data, dc-1 dan dc-2, pada penginstalan yang dikelompokkan dengan 12 node:

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

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

Pertimbangan sebelum menonaktifkan pusat data

Perhatikan hal-hal berikut saat Anda menonaktifkan pusat data:

  • Blokir semua traffic runtime dan pengelolaan ke pusat data yang dinonaktifkan dan alihkan traffic tersebut ke pusat data lain.
  • Setelah menonaktifkan pusat data, kapasitas di cluster Apigee Anda akan berkurang. Sebagai gantinya, pertimbangkan untuk meningkatkan kapasitas di pusat data yang tersisa atau menambahkan pusat data setelah penonaktifan.
  • Selama proses penghentian, ada potensi kehilangan data analisis, bergantung pada komponen analisis yang diinstal di pusat data yang akan dinonaktifkan. Anda dapat menemukan detail selengkapnya di Menambahkan atau menghapus node Qpid.
  • Sebelum menonaktifkan pusat data, Anda harus memahami cara semua komponen dikonfigurasi di semua pusat data, terutama server OpenLDAP, ZooKeeper, Cassandra, dan Postgres. Anda juga harus melakukan pencadangan semua komponen dan konfigurasinya.

Sebelum memulai

  • Server Pengelolaan: Semua langkah penghentian sangat bergantung pada Server Pengelolaan. Jika Anda hanya memiliki satu Server Pengelolaan yang tersedia, sebaiknya instal komponen Server Pengelolaan baru di pusat data selain dc-1 sebelum menonaktifkan Server Pengelolaan pada dc-1, dan pastikan salah satu Server Pengelolaan selalu tersedia.
  • Router: Sebelum menonaktifkan Router, nonaktifkan keterjangkauan Router dengan memblokir port 15999. Pastikan tidak ada traffic runtime yang diarahkan ke Router yang dinonaktifkan.
  • Cassandra dan ZooKeeper: Bagian di bawah ini menjelaskan cara menonaktifkan dc-1 dalam konfigurasi dua pusat data. Jika Anda memiliki lebih dari dua pusat data, pastikan untuk menghapus semua referensi ke node yang dinonaktifkan (dalam kasus 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. Meskipun server QPID menyimpan buffer dalam antrean, jika master Postgres tidak tersedia untuk waktu yang lebih lama, Anda berisiko kehilangan data analisis.

Prasyarat

  • Sebelum menonaktifkan komponen apa pun, sebaiknya lakukan pencadangan menyeluruh pada semua node. Gunakan prosedur pencadangan versi Edge Anda saat ini. Untuk mengetahui informasi selengkapnya tentang pencadangan, lihat Pencadangan dan pemulihan.

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

  • Pastikan Edge aktif dan berjalan sebelum penonaktifan, menggunakan perintah:
    /opt/apigee/apigee-service/bin/apigee-all status
  • Pastikan tidak ada traffic runtime yang tiba di pusat data yang sedang Anda nonaktifkan.

Urutan komponen penghentian

Jika menginstal Edge untuk Private Cloud pada beberapa node, Anda harus menonaktifkan komponen Edge pada node tersebut dengan urutan berikut:

  1. UI Edge (edge-ui)
  2. Server Pengelolaan (server pengelolaan edge)
  3. OpenLDAP (apigee-openldap)
  4. Router (edge-router)
  5. Message Processor (edge-message-processor)
  6. Qpid Server dan Qpidd (edge-qpid-server dan apigee-qpidd)
  7. Database Postgres dan PostgreSQL (edge-postgres-server dan apigee-postgresql)
  8. Kebun Binatang (apigee-zookeeper)
  9. Cassandra

Bagian berikut menjelaskan cara menonaktifkan setiap komponen.

UI Edge

Untuk menghentikan dan meng-uninstal komponen UI Edge 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 pada server ini, batalkan pendaftaran semua komponen tersebut 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 OpenLDAP dc-1 dengan mengikuti langkah-langkah di 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 direplikasi ke dc-1 dengan membuat entri di LDAP dc-2 dan memastikannya tidak muncul di LDAP dc-1.

    Atau, Anda dapat mengikuti langkah-langkah di bawah ini, yang membuat pengguna hanya baca di node OpenLDAP dc-2, lalu memeriksa apakah pengguna tersebut direplikasi atau tidak. Pengguna tersebut kemudian 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

      Outputnya 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 direplikasi:
      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 menghapus Router.

Langkah-langkah berikut adalah menonaktifkan 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 dalam load balancer, dan port pemblokiran 15999 akan membuat router tidak dapat dijangkau. Anda mungkin memerlukan akses root untuk memblokir port.

Untuk menonaktifkan Router, lakukan langkah-langkah berikut:

  1. Nonaktifkan 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 dalam Mendapatkan UUID.
  4. Hentikan router:
    /opt/apigee/apigee-service/bin/apigee-service edge-router stop
  5. Cantumkan pod gateway yang tersedia di organisasi berdasarkan 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. Batalkan pendaftaran server:
    curl -u <AdminEmailID>:'<AdminPassword>’ -X DELETE http://{MS_IP}:8080/v1/servers/UUID
  8. Meng-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 menghapus Pemroses Pesan.

Karena kita berasumsi bahwa dc-1 memiliki penginstalan cluster 12 node, maka ada dua node Pemroses Pesan yang dikonfigurasi di dc-1. Lakukan perintah berikut di kedua node.

  1. Dapatkan UUID Pemroses Pesan, seperti yang dijelaskan dalam artikel Mendapatkan 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 menonaktifkan Server Qpid (edge-qpid-server) dan Qpidd (apigee-qpidd). Ada dua node Qpid yang dikonfigurasi di dc-1, sehingga Anda harus melakukan langkah-langkah berikut untuk kedua node:

  1. Dapatkan UUID untuk Qpidd, seperti yang dijelaskan dalam Mendapatkan UUID.
  2. Menghentikan 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 server edge-qpid 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 akan dinonaktifkan mungkin memiliki master Postgres atau mode standby Postgres. Bagian berikut menjelaskan cara menghentikannya:

Menonaktifkan master Postgres

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

Untuk menonaktifkan master Postgres:

  1. Cadangkan node master Postgres dc-1 dengan mengikuti petunjuk pada link berikut:
  2. Dapatkan UUID server Postgres, seperti yang dijelaskan dalam Mendapatkan UUID.
  3. Pada dc-1, hentikan edge-postgres-server dan apigee-postgresql di 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 memiliki lebih dari satu node Postgres standby, Anda harus menambahkan entri host pada 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 satu node standby postgres yang tersisa ke master. Konfigurasikan node standby yang tersisa dengan langkah-langkah berikut:

    1. Pada master baru, edit file konfigurasi untuk menetapkan:
      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 pada 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 dalam Menghapus server Postgres dari grup analisis.
      2. Tambahkan server postgres baru ke grup analisis dengan mengikuti petunjuk dalam artikel Menambahkan server Postgres yang 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 Postgres standby

    Catatan: Dokumentasi untuk penginstalan cluster 12 node menampilkan node postgresql dc-1 sebagai master, tetapi untuk memudahkan, di bagian ini diasumsikan bahwa node postgresql dc-1 berstatus standby dan node postgresql dc-2 adalah master.

    Untuk menonaktifkan Postgres standby, lakukan langkah-langkah berikut:

    1. Dapatkan UUID server Postgres dengan mengikuti petunjuk dalam artikel Mendapatkan UUID.
    2. Menghentikan 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 dalam Menghapus server Postgres dari grup analisis.
      2. Tambahkan server postgres baru ke grup analisis dengan mengikuti petunjuk dalam artikel Menambahkan server Postgres yang 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 dua penyiapan pusat data.

    Jika Anda memiliki lebih dari dua pusat data, pastikan untuk menghapus semua referensi ke node yang dinonaktifkan (dalam kasus 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 di ZooKeeper: Anda harus mempertahankan kuorum node pemilih saat mengubah properti ZK_HOST di file konfigurasi, untuk memastikan ansambel ZooKeeper tetap berfungsi. Jumlah node pemilih Anda harus ganjil di konfigurasi Anda. Untuk informasi selengkapnya, lihat Tugas pemeliharaan ZooKeeper Apache.

    Untuk menonaktifkan server ZooKeeper dan Cassandra:

    1. Cadangkan node Cassandra dan ZooKeeper dc-1 dengan mengikuti petunjuk di link berikut:
    2. Cantumkan UUID server ZooKeeper dan Cassandra di pusat data tempat node Cassandra akan dihentikan.

      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 yang dihapus dari ZK_HOSTS dan CASS_HOSTS.

      Contoh: Misalkan Anda memiliki IP $IP1 $IP2 $IP3 di dc-1 dan $IP4 $IP5 $IP6 di dc-2, dan Anda 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. Update file konfigurasi senyap (diubah pada langkah e) dengan IP dari node yang dinonaktifkan dan dihapus dan jalankan profil server Pengelolaan di semua node yang menghosting Server Pengelolaan:
      /opt/apigee/apigee-setup/bin/setup.sh -p ms -f updated_config_file
    7. Update file konfigurasi dengan IP dari node nonaktif yang telah dihapus dan jalankan profil MP/RMP di semua node Router dan Message Processor:
      • 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 keyspace system_auth. Jika autentikasi Cassandra diaktifkan pada node Cassandra yang sudah ada, 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 tidak boleh memiliki dc-1 di keyspace mana pun.

    11. Penonaktifan node Cassandra pada 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 di node yang dinonaktifkan:

      /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. Menghentikan 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

    Menghapus binding dari dc-1

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

    1. Hapus binding dari dc-1.
      1. Cantumkan semua pod yang tersedia di 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, berarti 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 pada langkah sebelumnya:
        curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MS_IP:8080/v1/servers/UUID
      4. Membatalkan pengaitan Org 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 menampilkan pesan error bahwa server tertentu dalam pod masih ada. Jadi, hapus dengan mengikuti langkah-langkah pemecahan masalah di bawah, sambil menyesuaikan jenis dalam perintah curl.

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

    Lampiran

    Pemecahan masalah

    Jika setelah melakukan langkah-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 UUID 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 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 port pengelolaan.

    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 node tersebut.

    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.

    Di node ZooKeeper, 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 berikut: observer, leader, atau follower.

    Di 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

    Lakukan validasi bahwa respons menyatakan bahwa node adalah master.

    Di node standby:

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

    Lakukan validasi bahwa respons menyatakan bahwa node adalah standby.

    Login ke database PostgreSQL menggunakan perintah

    psql -h localhost -d apigee -U postgres

    Saat diminta, masukkan sandi pengguna 'postgres' 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.