הוספת צמתים של קסנדרה

Edge for Private Cloud בגרסה 4.17.09

במאמר הזה מוסבר איך מוסיפים שלושה צמתים חדשים של Cassandra להתקנה קיימת של Edge for Private Cloud.

אפשר להוסיף צומת Cassandra אחד או שניים להתקנת Edge קיימת, אבל ב-Apigee מומלץ להוסיף שלושה צמתים בכל פעם.

בדרישות ההתקנה תוכלו למצוא רשימה של דרישות המערכת לצומת של Cassandra.

הגדרת Edge קיימת

בכל הטופולוגיות של Edge שנתמכות במערכת ייצור מוגדרות לשימוש בשלושה צמתים של Cassandra. שלושת הצמתים מצוינים במאפיין 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.

שינוי קובץ התצורה כדי להוסיף את שלושת הצמתים החדשים של Cassandra

בדוגמה הזו, שלושת הצמתים החדשים של 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" 

חשוב: מוסיפים כל צומת חדש של Cassandra אל CASS_HOSTS אחרי צומת קיים.

כך מוודאים שהצמתים הקיימים שומרים על הגדרות האסימונים הראשוניות שלהם, והאסימון הראשוני של כל צומת חדש נמצא בין ערכי האסימונים של הצמתים הקיימים.

הגדרת Edge

לאחר עריכת קובץ התצורה, עליך:

  • הגדרה מחדש של צמתים קיימים של Cassandra
  • התקנת Cassandra בצמתים החדשים
  • הגדרה מחדש של שרת הניהול

הגדרה מחדש של הצמתים הקיימים של Cassandra

בצמתים הקיימים של Cassandra:

  1. מריצים מחדש את setup.sh עם הפרופיל '-p c' וקובץ התצורה החדש:
    > /opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile

התקנת Cassandra בצמתים החדשים

בכל צומת חדש של Cassandra:

  1. מתקינים את Cassandra בשלושת הצמתים:
    1. מתקינים את apigee-setup בצומת הראשון, כפי שמתואר בקטע התקנת הכלי apigee-setup ב-Edge.
    2. מתקינים את Cassandra בצומת הראשון באמצעות קובץ התצורה המעודכן:
      > /opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile
    3. חוזרים על שני השלבים האלה בשאר צמתים Cassandra החדשים.
  2. בונים מחדש את שלושת הצמתים החדשים של Cassandra, ומציינים את שם האזור שמוגדר בקובץ התצורה באמצעות המאפיין REGION. בדוגמה הזו הוא 'dc-1':
    1. בצומת הראשון, מריצים את הפקודה:
      > /opt/apigee/apigee-cassandra/bin/nodetool -h nodeIP rebuild dc-1

      כאשר nodeIP היא כתובת ה-IP של צומת Cassandra.

    2. חוזרים על השלב הזה בשאר הצמתים החדשים של Cassandra.

הגדרה מחדש של שרת הניהול

בצומת ניהול-שרת

  1. מריצים מחדש את setup.sh כדי לעדכן את שרת הניהול לצמתים החדשים של Cassandra שנוספו:
    > /opt/apigee/apigee-setup/bin/setup.sh -p ms -f updatedConfigFile

הפעלה מחדש של כל הנתביים ומעבדי ההודעות

  1. בכל הנתבים:
    > /opt/apigee/apigee-service/bin/apigee-service edge-router מחדש
  2. בכל מעבדי ההודעות:
    > /opt/apigee/apigee-service/bin/apigee-service edge-message-processor הפעלה מחדש

זיכרון פנוי בצמתים הקיימים של Cassandra

בצמתים הקיימים של Cassandra, מריצים את הפקודה nodetool cleanup כדי לפנות מקום בזיכרון:

> /opt/apigee/apigee-cassandra/bin/nodetool -h cassandraIP cleanup