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

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

คุณเพิ่มโหนด ZooKeeper ลงในการติดตั้ง Edge ที่มีอยู่ได้ 1 หรือ 2 รายการได้ แต่ต้องตรวจสอบว่ามีโหนดผู้โหวต 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 ใหม่สามโหนดจะอยู่ที่ที่อยู่ 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 ในโหนดแรกตามที่อธิบายไว้ในติดตั้งยูทิลิตี Edge Apigee-setup
  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 ทั้งหมด แต่ลำดับของการรีสตาร์ทจะไม่มีผล

กำหนดค่าโหนดเซิร์ฟเวอร์การจัดการอีกครั้ง

ในโหนดของเซิร์ฟเวอร์การจัดการ ให้ทำดังนี้

  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

กำหนดค่าตัวประมวลผลข้อความทั้งหมดใหม่

ในโหนดตัวประมวลผลข้อความทั้งหมด:

  1. เรียกใช้คำสั่งตั้งค่าต่อไปนี้
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor setup -f updatedConfigFile
  2. รีสตาร์ทโปรแกรมประมวลผลข้อความโดยทำดังนี้
    /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 ของเอาต์พุตสำหรับโหนด ควรกำหนดให้ 1 โหนดเป็นผู้สังเกตการณ์ โหนด 1 โหนดเป็นผู้นำ และโหนดที่เหลือเป็นผู้ติดตาม