إضافة عُقد ZooKeeper

Edge for Private Cloud الإصدار 4.16.05

يوضّح هذا المستند كيفية إضافة ثلاث عُقد ZooKeeper جديدة إلى تثبيت Edge for Private Cloud الحالي.

يمكنك إضافة عقدة ZooKeeper واحدة أو عقدتَين إلى عملية تثبيت Edge حالية، ولكن عليك التأكّد من أنّ لديك دائمًا عدد فردي من عُقد ZooKeeper المصوّتة، كما هو موضّح أدناه.

إعدادات Edge الحالية

تحدّد جميع طوبولوجيا Edge المتوافقة لنظام الإنتاج استخدام ثلاث عُقد ZooKeeper. يتم تحديد العُقد الثلاث في السمتَين 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 
BIND_ON_ALL_INTERFACES=y
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 أو أسماء نظام أسماء النطاقات لعُقد ZooKeeper. يجب إدراج عناوين IP أو أسماء نظام أسماء النطاقات بالترتيب نفسه على جميع عُقد ZooKeeper. في بيئة مراكز بيانات متعددة، أدرِج جميع عُقد ZooKeeper من كلا مركزَي البيانات.
  • يحدّد ZK_CLIENT_HOSTS عناوين IP أو أسماء نظام أسماء النطاقات لعُقد ZooKeeper التي يستخدمها مركز البيانات هذا. يجب إدراج عناوين IP أو أسماء نظام أسماء النطاقات بالترتيب نفسه على جميع عُقد ZooKeeper.

    في عملية تثبيت مركز بيانات واحد، تكون هذه العُقد هي نفسها المحدّدة في ZK_HOSTS. في بيئة مراكز بيانات متعددة، أدرِج عُقد ZooKeeper في مركز البيانات هذا فقط.

تعديل ملف الإعداد لإضافة عُقد ZooKeeper الثلاث الجديدة

في هذا المثال، تكون عُقد 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" "المصوّتين". يجب أن يكون لديك عدد فردي من "المصوّتين" في الإعدادات. لذلك، في هذه الإعدادات، لديك 5 ناخبين في ZooKeeper ومراقب واحد.

تأكَّد من إضافة العُقد إلى كل من 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. أعِد تشغيل setup.sh باستخدام الملف الشخصي "-p c" وملف الإعداد الجديد:
    > /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.
    في سطر الوضع من الناتج الخاص بالعُقد، يجب تحديد عقدة واحدة على أنّها مراقِبة، وعقدة واحدة على أنّها قائدة، وبقية العُقد على أنّها تابعة.