Menambahkan node ZooKeeper

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

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

Konfigurasi Edge yang ada

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

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:

  • ZK_HOSTS menentukan alamat IP atau nama DNS node 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 penginstalan pusat data tunggal, node ini sama dengan yang ditentukan oleh ZK_HOSTS. Dalam lingkungan multi-pusat data, cantumkan hanya node ZooKeeper di pusat data ini.

Mengubah file konfigurasi untuk menambahkan tiga node ZooKeeper baru

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

  • 10.10.0.14
  • 10.10.0.15
  • 10.10.0.16

Anda harus mengupdate 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 "pemilih". Anda harus memiliki jumlah "pemilih" ganjil dalam konfigurasi Anda. 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, hilangkan pengubah :observer saat menyetel ZK_CLIENT_HOSTS.

Mengonfigurasi Edge

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

Menginstal ZooKeeper di node baru

  1. Instal apigee-setup pada node pertama seperti yang dijelaskan dalam Menginstal utilitas apigee-setup Edge.
  2. Instal ZooKeeper di node pertama 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

Pada 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 menjadi masalah.

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

Mengonfigurasi 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 Message Processor

Di semua node Message Processor:

  1. Jalankan perintah penyiapan:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor setup -f updatedConfigFile
  2. Mulai ulang Message Processor:
    /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

Mengonfigurasi 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 mengirimkan perintah ke port 2181 menggunakan netcat (nc) atau telnet. Untuk mengetahui info selengkapnya tentang perintah ZooKeeper, lihat: http://zookeeper.apache.org/doc/r3.1.2/zookeeperAdmin.html#sc_zkCommands.

Untuk memvalidasi:

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