Menonaktifkan pusat data

Terkadang, Anda mungkin perlu menonaktifkan pusat data. Misalnya, jika Anda 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 datanya, 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 sedang dinonaktifkan dan alihkan ke pusat data lain.
  • 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 penonaktifan.
  • Selama proses penonaktifan, terdapat potensi kehilangan data analisis, bergantung pada komponen analisis mana yang diinstal di pusat data yang dinonaktifkan. Anda dapat menemukan detail selengkapnya di bagian Menambahkan atau menghapus node Qpid.
  • Sebelum menonaktifkan pusat data, Anda harus memahami bagaimana semua komponen dikonfigurasi di semua pusat data, terutama server OpenLDAP, ZooKeeper, Cassandra, dan Postgres. Anda juga harus mengambil cadangan semua komponen dan konfigurasinya.

Sebelum memulai

  • Server Pengelolaan: Semua langkah penonaktifan sangat bergantung pada Server Pengelolaan. Jika hanya ada satu Server Pengelolaan yang tersedia, sebaiknya instal komponen Server Pengelolaan baru di pusat data selain dc-1 sebelum menonaktifkan Server Pengelolaan di 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 sedang dinonaktifkan.
  • Cassandra dan ZooKeeper: Bagian di bawah ini menjelaskan cara menonaktifkan dc-1 dalam dua penyiapan pusat data. Jika Anda 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. 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 Anda melakukan pencadangan lengkap untuk semua node. Gunakan prosedur bagi versi Edge Anda saat ini untuk melakukan pencadangan. 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 menonaktifkan ZooKeeper untuk sementara.

  • 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 yang Anda nonaktifkan.

Urutan penonaktifan komponen

Jika menginstal Edge untuk Private Cloud di 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 (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, 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 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

      Output-nya akan terlihat seperti berikut:

      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

      Output-nya akan terlihat seperti berikut:

      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.

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

      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 15999 router dikonfigurasi di load balancer, dan port pemblokir 15999 akan membuat router tidak dapat dijangkau. Anda mungkin memerlukan akses root untuk memblokir port.

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

    Output-nya akan terlihat seperti berikut:

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

    Baca 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. 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 detail selengkapnya tentang cara menghapus Pemroses Pesan.

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

  1. Dapatkan UUID Pemroses Pesan, seperti yang dijelaskan dalam 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 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 kedua 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 server edge-qpid pada semua node untuk memastikan perubahan diterima 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. 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 di link berikut:
  2. Dapatkan UUID server Postgres, seperti yang dijelaskan dalam Mendapatkan 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 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 salah satu node standby postgres yang tersisa ke master. Konfigurasikan node standby yang tersisa dengan langkah-langkah berikut:

    1. Pada master yang 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 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 Menghapus server Postgres dari grup analisis.
      2. Tambahkan server postgres baru ke grup analisis dengan mengikuti petunjuk di 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 standby Postgres

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

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

    1. Dapatkan UUID server Postgres, dengan mengikuti petunjuk di Mendapatkan UUID.
    2. Hentikan apigee-postgresql pada 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 Menghapus server Postgres dari grup analisis.
      2. Tambahkan server postgres baru ke grup analisis dengan mengikuti petunjuk di 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 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 properti ZK_HOST di file konfigurasi, untuk memastikan ansambel ZooKeeper tetap berfungsi. Anda harus memiliki jumlah ganjil node pemilih dalam konfigurasi Anda. Untuk informasi selengkapnya, lihat Tugas pemeliharaan Apache ZooKeeper.

    Untuk menonaktifkan server ZooKeeper dan Cassandra:

    1. Cadangkan node dc-1 Cassandra dan ZooKeeper dengan mengikuti petunjuk di link berikut:
    2. Buat daftar UUID server ZooKeeper dan Cassandra di pusat data tempat node Cassandra 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 yang dihapus dari ZK_HOSTS dan CASS_HOSTS.

      Contoh: Misalkan Anda memiliki IP $IP1 $IP2 $IP3 dalam dc-1 dan $IP4 $IP5 $IP6 dalam 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 dihentikan penggunaannya 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. 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 yang 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 di cluster. Ubah nilai ini seperlunya.

      Setelah menyelesaikan langkah ini, topologi Cassandra tidak boleh memiliki dc-1 di keyspace 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 di bawah 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 menampilkan pesan error yang menyatakan bahwa server tertentu di pod masih ada. Jadi, hapus jenis tersebut dengan mengikuti langkah-langkah pemecahan masalah di bawah ini, sambil menyesuaikan jenisnya dalam 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 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 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 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 khusus 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.

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