عند إضافة عُقد كاساندرا إلى مجموعة، من الضروري مراعاة النقطتين الرئيسيتين التاليتين:
- يجب ألا تتغير المواضع الحالية للعُقد في حلقة Cassandra لتقليل البث والحفاظ على حلقة متوازنة.
- يجب أن يظل عدد العُقد في جميع مراكز البيانات ثابتًا.
لضمان الهدف الأول، من الأهمية بمكان مضاعفة عدد العُقد في مجموعة Cassandra في كل مرة تضيف فيها عُقدًا جديدة.
على سبيل المثال، إذا بدأت بهيكل قياسي لتثبيت مجموعة من 12 عقدة موزَّعًا على مركزَي بيانات، سيكون لديك ما مجموعه ست عُقد من كاساندرا، ثلاث عُقد في كل مركز بيانات. لتوسيع هذه المجموعة، يجب إضافة ثلاث عقد إلى كل مركز بيانات، وزيادة إجمالي عدد العقد إلى 12 (ستة عقد في كل مركز بيانات). إذا كان هناك حاجة إلى توسيع إضافي، فيجب إضافة ست عُقد إضافية إلى كل مركز بيانات، مما ينتج عنه 24 عُقدة إجمالية (12 عُقدة في كل مركز بيانات).
يوفّر هذا المستند تعليمات حول إضافة ثلاث عُقد Cassandra جديدة إلى تثبيت Edge for Private Cloud الحالي. يمكن اتّباع الخطوات نفسها لإضافة عُقد أخرى. تأكد دائمًا من مضاعفة عدد العُقد عند توسيع المجموعة.
للحصول على قائمة بمتطلبات النظام لعقدة Cassandra، يُرجى الرجوع إلى قسم متطلبات التثبيت.
إعدادات Edge الحالية
تحدد جميع طوباء Edge المتوافقة لنظام الإنتاج استخدام ثلاث كاساندرا
العُقد. تم تحديد العُقد الثلاث للسمة CASS_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" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1" SKIP_SMTP=n SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com SMTPPASSWORD=smtppwd
يُرجى العِلم أنّ السمة REGION
تحدّد اسم المنطقة على النحو التالي: "dc-1". أنت بحاجة إلى ذلك
المعلومات عند إضافة عُقد كاساندرا الجديدة.
تعديل ملف الإعداد لإضافته عقد كاساندرا الثلاثة الجديدة
في هذا المثال، تقع عُقد Cassandra الثلاثة الجديدة في عناوين 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 CASS_HOSTS to add each new node after an existing nodes. # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1:1,1 $IP14:1,1 $IP2:1,1 $IP15:1,1 $IP3:1,1 $IP16:1,1"
يضمن هذا أن العُقد الحالية تحتفظ بإعدادات الرمز المميز الأولي والرمز المميز الأولي كل عقدة جديدة تقع بين قيم الرمز المميز للعقد الموجودة.
إعداد Edge
بعد تعديل ملف الإعداد، عليك إجراء ما يلي:
- إعادة ضبط عُقد Cassandra الحالية
- تثبيت Cassandra على العُقد الجديدة
- إعادة ضبط خادم الإدارة
إعادة ضبط إصدار Cassandra الحالي العُقد
في عُقد Cassandra الحالية:
- إعادة تشغيل setup.sh باستخدام "-p c" وملف الإعداد الجديد:
/opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile
تثبيت Cassandra على العُقد الجديدة
استخدم الإجراء أدناه لتثبيت Cassandra على العُقد الجديدة.
في كل عقدة Cassandra جديدة:
- تثبيت Cassandra على العُقد الثلاثة:
- تثبيت
apigee-setup
على العقدة الأولى كما هو موضح في تثبيت أداة Edge apigee-setup. - ثبِّت "كاساندرا" في العقدة الأولى باستخدام ملف الإعداد المحدَّث:
/opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile
- كرر هاتين الخطوتين لعقد Cassandra الجديدة المتبقية.
- تثبيت
- إعادة إنشاء عقد كاساندرا الثلاثة الجديدة، مع تحديد اسم المنطقة ليكون مركز البيانات
التي تُضيف فيها العقدة (
dc-1
وdc-2
، وما إلى ذلك). في هذا المثال، هيdc-1
:- في العقدة الأولى، شغِّل:
/opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw password] -h nodeIP rebuild dc-1
حيث nodeIP هو عنوان IP لعقدة Cassandra.
ما عليك سوى إدخال اسم المستخدم وكلمة المرور إذا كنت: تم تفعيل مصادقة JMX على Cassandra.
- كرر هذه الخطوة على عُقد Cassandra الجديدة المتبقية.
- في العقدة الأولى، شغِّل:
إعادة ضبط خادم الإدارة
في عقدة Management-Server
- أعد تشغيل setup.sh لتحديث خادم الإدارة لعُقد Cassandra التي تمت إضافتها حديثًا:
/opt/apigee/apigee-setup/bin/setup.sh -p ms -f updatedConfigFile
إعادة تشغيل جميع أجهزة التوجيه والرسائل المعالِجات
- على جميع أجهزة التوجيه:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- في جميع معالِجات الرسائل:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
توفُّر مساحة خالية على القرص الحالي عُقد كاساندرا
بعد إضافة عقدة جديدة، يمكنك استخدام الأمر nodetool cleanup
في
العقد الموجودة مسبقًا لتحرير مساحة على القرص. يمحو هذا الأمر الرموز المميزة للضبط التي ليست
أطول من عقدة Cassandra الموجودة مسبقًا.
لإخلاء مساحة على القرص على عُقد Cassandra الموجودة مسبقًا بعد إضافة عقدة جديدة، نفِّذ الأمر التالي:
/opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw password] -h cassandraIP cleanup
ما عليك سوى إدخال اسم المستخدم وكلمة المرور إذا كنت: تم تفعيل مصادقة JMX على Cassandra.
إثبات صحة إعادة الإنشاء
استخدم الأوامر التالية للتحقق من نجاح عملية إعادة الإنشاء:
nodetool [-u username -pw password] -h nodeIP netstats
يجب أن يشير هذا الأمر إلى MODE: Normal
عند ارتفاع العقدة والفهارس.
المواقع.
nodetool [-u username -pw password] -h nodeIP statusthrift
يجب أن يشير ذلك إلى أن خادم التوفير قيد التشغيل، مما يسمح لـ "كاساندرا" بقبول عميل جديد الطلبات.
nodetool [-u username -pw password] -h nodeIP statusbinary
يجب أن يشير إلى أن النقل الأصلي (أو البروتوكول الثنائي) قيد التشغيل.
nodetool [-u username -pw password] -h nodeIP describecluster
يجب إظهار أن العُقد الجديدة تستخدم إصدار المخطط نفسه مثل العُقد القديمة.
لمزيد من المعلومات عن استخدام nodetool
، يمكنك الاطّلاع على
مستندات استخدام أداة عقدة