Menambahkan node ZooKeeper

Dokumen ini menjelaskan cara menambahkan tiga node ZooKeeper baru ke penginstalan Edge for Private Cloud yang ada.

Anda bisa menambahkan satu atau dua node ZooKeeper ke penginstalan Edge yang ada, tetapi Anda harus pastikan Anda selalu memiliki jumlah node pemilih ZooKeeper yang ganjil, seperti yang dijelaskan di bawah ini.

Konfigurasi Edge yang ada

Semua topologi Edge yang didukung untuk sistem produksi menentukan untuk menggunakan tiga node ZooKeeper. Tiga node ditetapkan ke ZK_HOSTS dan ZK_CLIENT_HOSTS dalam file konfigurasi seperti yang ditunjukkan di bawah ini:

IP1=10.10.0.1
IP2=10.10.0.2
IP3=10.10.0.3
HOSTIP=$(hostname -i)
ADMIN_EMAIL=opdk@google.com
APIGEE_ADMINPW=Secret123
LICENSE_FILE=/tmp/license.txt
MSIP=$IP1 
USE_LDAP_REMOTE_HOST=n
LDAP_TYPE=1
APIGEE_LDAPPW=secret
MP_POD=gateway
REGION=dc-1
ZK_HOSTS="$IP1 $IP2 $IP3"
ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3"
CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1"
SKIP_SMTP=n
SMTPHOST=smtp.example.com
SMTPUSER=smtp@example.com
SMTPPASSWORD=smtppwd

Dengan keterangan:

  • ZK_HOSTS menentukan alamat IP atau nama DNS dari {i>node<i} ZooKeeper. Alamat IP atau nama DNS harus dicantumkan dalam urutan yang sama di semua node ZooKeeper. Dalam lingkungan multi-pusat data, cantumkan semua node ZooKeeper dari kedua pusat data.
  • ZK_CLIENT_HOSTS menentukan alamat IP atau nama DNS node ZooKeeper yang digunakan oleh pusat data ini. Alamat IP atau nama DNS harus dicantumkan dalam urutan yang sama di semua node ZooKeeper.

    Dalam satu penginstalan pusat data, ini adalah node yang sama seperti yang ditentukan oleh ZK_HOSTS. Dalam lingkungan multi-pusat data, cantumkan hanya node ZooKeeper dalam pusat data.

Mengubah file konfigurasi untuk menambahkan tiga node ZooKeeper baru

Dalam contoh ini, tiga node ZooKeeper baru berada pada alamat IP berikut:

  • 10.10.0.14
  • 10.10.0.15
  • 10.10.0.16

Anda harus memperbarui file konfigurasi Edge terlebih dahulu untuk menambahkan node baru:

IP1=10.10.0.1
IP2=10.10.0.2
IP3=10.10.0.3
# Add the new node IP addresses.
IP14=10.10.0.14
IP15=10.10.0.15
IP16=10.10.0.16
HOSTIP=$(hostname -i)
ADMIN_EMAIL=opdk@google.com
...
# Update ZK_HOSTS to add each new node after an existing nodes.
ZK_HOSTS="$IP1 $IP2 $IP3 $IP14 $IP15 $IP16:observer"
# Update ZK_Client_HOSTS to add each new node after an existing nodes.
ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3 $IP14 $IP15 $IP16"

Tandai node terakhir di ZK_HOSTS dengan Pengubah :observer. Node tanpa pengubah :observer disebut "voter". Anda harus memiliki jumlah "pemilih" ganjil dalam konfigurasi. Oleh karena itu, dalam konfigurasi ini, Anda memiliki 5 pemilih ZooKeeper dan satu observer.

Pastikan untuk menambahkan node ke ZK_HOSTS dan ZK_CLIENT_HOSTS dalam urutan yang sama. Namun, hapus pengubah :observer saat menyetel ZK_CLIENT_HOSTS.

Konfigurasi Edge

Setelah mengedit file konfigurasi, Anda harus melakukan semua tugas berikut.

Menginstal ZooKeeper di node baru

  1. Instal apigee-setup di node pertama seperti yang dijelaskan dalam Menginstal utilitas penyiapan apigee Edge.
  2. Instal ZooKeeper pada node pertama dengan menggunakan perintah berikut:
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper install
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper setup -f updatedConfigFile
  3. Ulangi langkah 1 dan 2 untuk node ZooKeeper baru yang tersisa.

Mengonfigurasi ulang node ZooKeeper yang ada

Di node ZooKeeper yang ada:

  1. Jalankan kembali perintah penyiapan dengan file konfigurasi baru:
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper setup -f updatedConfigFile

Memulai ulang semua node Zookeeper

Di semua node ZooKeeper:

  1. Mulai ulang node:
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart

    Anda harus memulai ulang semua node ZooKeeper, tetapi urutan mulai ulang tidak penting.

Mengonfigurasi ulang node Server Pengelolaan

Di node Server Pengelolaan:

  1. Jalankan perintah penyiapan:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server setup -f updatedConfigFile
  2. Mulai ulang Server Pengelolaan:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

Konfigurasi ulang semua Router

Di semua node Router:

  1. Jalankan perintah penyiapan:
    /opt/apigee/apigee-service/bin/apigee-service edge-router setup -f updatedConfigFile
  2. Mulai ulang Router:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart

Mengonfigurasi ulang semua Pesan Prosesor

Di semua node Pemroses Pesan:

  1. Jalankan perintah penyiapan:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor setup -f updatedConfigFile
  2. Mulai ulang Pemroses Pesan:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart

Mengonfigurasi ulang semua node Qpid

Di semua node Qpid:

  1. Jalankan perintah penyiapan:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server setup -f updatedConfigFile
  2. Mulai ulang Qpid:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart

Konfigurasi ulang semua node Postgres

Di semua node Postgres:

  1. Jalankan perintah penyiapan:
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server setup -f updatedConfigFile
  2. Mulai ulang Postgres:
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart

Memvalidasi penginstalan

Anda dapat memvalidasi penginstalan node ZooKeeper baru dengan mengirim perintah ke port 2181 menggunakan netcat (nc) atau telnet. Untuk mengetahui info selengkapnya tentang perintah ZooKeeper, lihat: https://zookeeper.apache.org/doc/r3.8.3/zookeeperAdmin.html#sc_zkCommands.

Untuk memvalidasi:

  1. Jika tidak diinstal pada node ZooKeeper, instal nc:
    sudo yum install nc
  2. Jalankan perintah nc berikut:
    echo stat | nc localhost 2181
  3. Ulangi langkah 1 dan 2 di setiap node ZooKeeper. Di baris Mode dari output untuk ke node, satu node harus ditetapkan sebagai observer, satu node sebagai pemimpin, dan sisanya sebagai pengikut.