การเพิ่มโหนด ZooKeeper

เอกสารนี้อธิบายวิธีเพิ่มโหนด ZooKeeper ใหม่ 3 โหนดลงในการติดตั้ง Edge for Private Cloud ที่มีอยู่

คุณสามารถเพิ่มโหนด ZooKeeper 1 หรือ 2 โหนดลงในการติดตั้ง Edge ที่มีอยู่ได้ แต่คุณต้องตรวจสอบว่าคุณมีโหนดผู้ลงคะแนน ZooKeeper เป็นจำนวนคี่เสมอ ตามที่อธิบายไว้ด้านล่าง

การกำหนดค่า Edge ที่มีอยู่

โทโพโลยี Edge ที่รองรับทั้งหมดสำหรับระบบเวอร์ชันที่ใช้งานจริงจะระบุให้ใช้โหนด ZooKeeper 3 โหนด ระบบจะระบุโหนดทั้ง 3 โหนดไปยังพร็อพเพอร์ตี้ ZK_HOSTS และ ZK_CLIENT_HOSTS ในไฟล์การกำหนดค่าดังที่แสดงด้านล่าง

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

สถานที่:

  • ZK_HOSTS ระบุที่อยู่ IP หรือชื่อ DNS ของโหนด ZooKeeper ที่อยู่ IP หรือชื่อ DNS ต้องแสดงตามลำดับเดียวกันในโหนด ZooKeeper ทั้งหมด ในสภาพแวดล้อมของศูนย์ข้อมูลหลายแห่ง ให้แสดงรายการโหนด ZooKeeper ทั้งหมดจากศูนย์ข้อมูลทั้ง 2 แห่ง
  • ZK_CLIENT_HOSTS ระบุที่อยู่ IP หรือชื่อ DNS ของโหนด ZooKeeper ที่ศูนย์ข้อมูลนี้ใช้ ที่อยู่ IP หรือชื่อ DNS ต้องแสดงตามลำดับเดียวกันในโหนด ZooKeeper ทั้งหมด

    ในการติดตั้งศูนย์ข้อมูลเดียว โหนดเหล่านี้จะเป็นโหนดเดียวกับที่ระบุโดย ZK_HOSTS ในสภาพแวดล้อมแบบศูนย์ข้อมูลหลายแห่ง ให้แสดงเฉพาะโหนด ZooKeeper ในศูนย์ข้อมูลนี้

การแก้ไขไฟล์การกำหนดค่าเพื่อเพิ่มโหนด ZooKeeper ใหม่ 3 โหนด

ในตัวอย่างนี้ โหนด ZooKeeper ใหม่ 3 โหนดจะอยู่ที่ที่อยู่ IP ต่อไปนี้

  • 10.10.0.14
  • 10.10.0.15
  • 10.10.0.16

คุณต้องอัปเดตไฟล์การกำหนดค่า Edge ก่อนเพื่อเพิ่มโหนดใหม่ โดยทำดังนี้

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"

ทำเครื่องหมายโหนดสุดท้ายใน ZK_HOSTS ด้วยตัวแก้ไข :observer โหนดที่ไม่มีตัวแก้ไข :observer จะเรียกว่า "ผู้ลงคะแนน" คุณต้องมี "ผู้ลงคะแนน" เป็นจำนวนคี่ในการกำหนดค่า ดังนั้นในการกำหนดค่านี้ คุณจะมีผู้ลงคะแนน ZooKeeper 5 รายและผู้สังเกตการณ์ 1 ราย

ตรวจสอบว่าได้เพิ่มโหนดลงในทั้ง ZK_HOSTS และ ZK_CLIENT_HOSTS ในลำดับเดียวกัน อย่างไรก็ตาม ให้ละเว้นตัวแก้ไข :observer เมื่อตั้งค่า ZK_CLIENT_HOSTS

กำหนดค่า Edge

หลังจากแก้ไขไฟล์การกำหนดค่าแล้ว คุณต้องทำงานต่อไปนี้ทั้งหมด

ติดตั้ง ZooKeeper ในโหนดใหม่

  1. ติดตั้ง apigee-setup ในโหนดแรกตามที่อธิบายไว้ในติดตั้งยูทิลิตี apigee-setup ของ Edge
  2. ติดตั้ง ZooKeeper ในโหนดแรกโดยใช้คำสั่งต่อไปนี้
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper install
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper setup -f updatedConfigFile
  3. ทำขั้นตอนที่ 1 และ 2 ซ้ำสำหรับโหนด ZooKeeper ใหม่ที่เหลือ

กำหนดค่าโหนด ZooKeeper ที่มีอยู่ใหม่

ในโหนด ZooKeeper ที่มีอยู่ ให้ทำดังนี้

  1. เรียกใช้คำสั่งการตั้งค่าอีกครั้งด้วยไฟล์การกำหนดค่าใหม่ โดยทำดังนี้
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper setup -f updatedConfigFile

รีสตาร์ทโหนด Zookeeper ทั้งหมด

ในโหนด ZooKeeper ทั้งหมด ให้ทำดังนี้

  1. รีสตาร์ทโหนดโดยทำดังนี้
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart

    คุณต้องรีสตาร์ทโหนด ZooKeeper ทั้งหมด แต่ลำดับการรีสตาร์ทไม่สำคัญ

กำหนดค่าโหนดเซิร์ฟเวอร์การจัดการใหม่

ในโหนด Management Server ให้ทำดังนี้

  1. เรียกใช้คำสั่งการตั้งค่าต่อไปนี้
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server setup -f updatedConfigFile
  2. รีสตาร์ทเซิร์ฟเวอร์การจัดการโดยทำดังนี้
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

กำหนดค่าเราเตอร์ทั้งหมดใหม่

ในโหนดเราเตอร์ทั้งหมด ให้ทำดังนี้

  1. เรียกใช้คำสั่งการตั้งค่าต่อไปนี้
    /opt/apigee/apigee-service/bin/apigee-service edge-router setup -f updatedConfigFile
  2. รีสตาร์ทเราเตอร์
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart

กำหนดค่า Message Processor ทั้งหมดใหม่

ในโหนด Message Processor ทั้งหมด ให้ทำดังนี้

  1. เรียกใช้คำสั่งการตั้งค่าต่อไปนี้
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor setup -f updatedConfigFile
  2. รีสตาร์ท Message Processor โดยทำดังนี้
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart

กำหนดค่าโหนด Qpid ทั้งหมดใหม่

ในโหนด Qpid ทั้งหมด ให้ทำดังนี้

  1. เรียกใช้คำสั่งการตั้งค่าต่อไปนี้
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server setup -f updatedConfigFile
  2. รีสตาร์ท Qpid:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart

กำหนดค่าโหนด Postgres ทั้งหมดใหม่

ในโหนด Postgres ทั้งหมด ให้ทำดังนี้

  1. เรียกใช้คำสั่งการตั้งค่าต่อไปนี้
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server setup -f updatedConfigFile
  2. รีสตาร์ท Postgres:
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart

ตรวจสอบการติดตั้ง

คุณสามารถตรวจสอบการติดตั้งโหนด ZooKeeper ใหม่ได้โดยส่งคำสั่งไปยังพอร์ต 2181 โดยใช้ netcat (nc) หรือ telnet ดูข้อมูลเพิ่มเติมเกี่ยวกับคำสั่ง ZooKeeper ได้ที่ http://zookeeper.apache.org/doc/r3.1.2/zookeeperAdmin.html#sc_zkCommands

วิธีตรวจสอบมีดังนี้

  1. หากไม่ได้ติดตั้งในโหนด ZooKeeper ให้ติดตั้ง nc โดยทำดังนี้
    sudo yum install nc
  2. เรียกใช้คำสั่ง nc ต่อไปนี้
    echo stat | nc localhost 2181
  3. ทำขั้นตอนที่ 1 และ 2 ซ้ำในโหนด ZooKeeper แต่ละโหนด ในบรรทัด Mode ของเอาต์พุตสำหรับโหนด ควรมีการกำหนดโหนดหนึ่งเป็นผู้สังเกตการณ์ โหนดหนึ่งเป็นผู้นำ และโหนดที่เหลือเป็นผู้ติดตาม