העברת רכיבים ממכונה אחת לאחרת עלולה לגרום לחוסר התאמה בהגדרה אם לא מסנכרנים את כתובות ה-IP בקובצי התצורה של הרכיבים שלך.
בקטע הזה נסביר איך לאבחן ולתקן אי-התאמות בהגדרות.
כתובות IP לעומת שמות מארחים
צריך להשתמש בכתובות IP ולא בשמות מארח בקובצי התצורה של הרכיבים.
קובצי תצורה מסוימים של רכיבים מאפשרים להשתמש בשמות מארחים מאשר כתובות IP, שימוש בשמות מארחים עלול לסבך את פתרון הבעיות. לדוגמה, שמות מארחים יכול להיות המקור לבעיות שקשורות לקישוריות שרת DNS, לכשלים בחיפוש סנכרון.
לכן, מערכת Apigee ממליצה מאוד להשתמש בכתובות IP לכל הרכיבים הגדרות אישיות. במקרים מסוימים, כמו במקרה של Cassandra, צריך להשתמש בכתובות IP ולא ניתן להשתמש שמות מארחים. רוב הדוגמאות בתיעוד מתבססות על כתובות IP להגדרת רכיבים.
לגבי שמות מארחים וכתובות IP, קחו בחשבון את ההשלכות של התרחישים הבאים כשמעבירים שרתי Apigee:
תרחיש | ההשפעה על שרתים שמועברים |
---|---|
שינוי בכתובת ה-IP | מעדכנים את כל הקבצים הקשורים שמפנים לכתובת ה-IP המקורית. |
שינוי שם המארח ללא שינוי בכתובת ה-IP | אין השפעה |
שינוי בשם המארח עם שינוי בכתובת ה-IP | זהה לשינוי בכתובת ה-IP |
שינוי כתובת ה-IP של צומת Cassandra
כדי לשנות את כתובת ה-IP של צומת Cassandra, מבצעים את השלבים הבאים:
עבור עם צומת Cassandra יחיד
- עריכה של
/opt/apigee/customer/application/cassandra.properties
במערכת ששונה. אם הקובץ לא קיים, יוצרים אותו. - משנים את הפרמטרים הבאים:
- הגדרה של
conf_cassandra_seeds
וconf_cassandra_listen_address
כדי לציין את כתובת ה-IP החדשה של המערכת. - שינוי
conf_cassandra_rpc_address
לשימוש את כתובת ה-IP החדשה או 0.0.0.0 (כדי לאפשר ל-Cassandra Thrift להאזין לכל התוכן ממשקים).
- הגדרה של
- לפתיחת
/opt/apigee/apigee-cassandra/conf/cassandra-topology.properties
בעורך. כתובת ה-IP הישנה והגדרת ברירת המחדל אמורים להופיע בטופס:192.168.56.101=dc-1:ra-1 default=dc-1:ra-1
שומרים את המידע הזה.
- עריכה של
/opt/apigee/customer/application/cassandra.properties
כדי לשנות את כתובת ה-IP הישנה שצוינה לכתובת ה-IP החדשה:conf_cassandra-topology_topology=192.168.56.103=dc-1:ra-1\ndefault=dc-1:ra-1\n
יש להזין '\n' אחרי כתובת ה-IP, ולציין את אותן הגדרות ברירת מחדל כמו שמצאתם למעלה בשלב 3.
- הפעלה מחדש של Cassandra:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- אם צריך, אפשר גם לתקן את ZoomKeeper (ראו בהמשך), אחרת, להפעיל מחדש כל פלטפורמת Apigee שמתחיל ב-Management Server.
עבור הגדרות עם מספר צמתים של Cassandra (צלצול)
- אם הצומת שמשנים הוא צומת מקור, צריך לערוך את השדה
/opt/apigee/customer/application/cassandra.properties
. אחר כל מערכת בצלצול, ומשנים את הפרמטרconf_cassandra_seeds
כך שיכלול כתובת ה-IP החדשה של המערכת ששונתה. אם הקובץ cassandra.properties לא קיים, יוצרים את זה. - עריכה של
/opt/apigee/customer/application/cassandra.properties
במערכת ששונה ומשנים את הפרמטרים הבאים:- מגדירים את
conf_cassandra_listen_address
לשימוש בכתובת ה-IP החדשה. - צריך להגדיר את
conf_cassandra_rpc_address
לשימוש בכתובת ה-IP החדשה או לכתובת 0.0.0.0 (מאפשר ל-Cassandra Thrift להאזין בכל הממשקים).
- מגדירים את
- לפתיחת
/opt/apigee/apigee-cassandra/conf/cassandra-topology.properties
בעורך. אתם אמורים לראות את כל כתובות ה-IP של Cassandra ואת הגדרות ברירת המחדל טופס:192.168.56.101=dc-1:ra-1 192.168.56.102=dc-1:ra-1 192.168.56.103=dc-1:ra-1 default=dc-1:ra-1
שומרים את המידע הזה.
- עריכה של
/opt/apigee/customer/application/cassandra.properties
כדי לשנות את כתובת ה-IP הישנה שצוינה לכתובת ה-IP החדשה:conf_cassandra-topology_topology=192.168.56.101=dc-1:ra-1\n192.168.56.102=dc-1:ra-1\n192.168.56.104=dc-1:ra-1\ndefault=dc-1:ra-1\n
יש להזין '\n' אחרי כל כתובת IP, ותשתמשו באותן הגדרות ברירת מחדל שתוארו למעלה בשלב 3.
- צריך להפעיל מחדש את Cassandra במערכת ששונתה. אם המערכת ששונתה היא צומת מקור, גם
להפעיל מחדש כל מערכת שמשתמשת בצומת מקור שהשתנה.
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- מריצים את הפקודה
nodetool ring
בצומת שהשתנה כדי לוודא שהצלצול הושלם. אפשר למצוא את הכלי בכתובת/opt/apigee/apigee-cassandra/bin
nodetool [-u username -pw password] -h localhost ring
צריך להעביר את שם המשתמש והסיסמה רק אם מופעל אימות JMX של Cassandra.
- מריצים את
nodetool repair
צומת שהשתנה. הערה: התהליך עשוי להימשך זמן מה, ולכן מומלץ מאוד שלא לעשות זאת במהלך שעות השיא של התנועה ב-API.nodetool [-u username -pw password] -h localhost repair -pr
- במקרה הצורך, יש לתקן אתZoKeeper (ראו בהמשך), ואז להפעיל מחדש כל רכיב בפלטפורמת Apigee, מתחיל בשרת הניהול.
עדכון מאגר הנתונים הרשמות
- מחפשים את מזהי ה-UUID של רישומי מאגר הנתונים שמציינים את כתובת ה-IP הישנה באמצעות הפרמטר
פקודות שלמטה. חשוב לשים לב ל"סוג" ו-UUID :
-
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=central®ion=DC" | egrep -i '[type|internalip|uuid|region]'
-
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=gateway®ion=DC" | egrep -i '[type|internalip|uuid|region]'
-
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=analytics®ion=DC" | egrep -i '[type|internalip|uuid|region]'
כאשר DC הוא השם של מרכז הנתונים. בהתקנה של מרכז נתונים יחיד, הוא בדרך כלל 'dc-1'.
-
- לרשום את כתובות ה-IP החדשות באמצעות אחת מהפקודות הבאות. הפקודה הנדרשת תגרום לביצוע של
תלויים בסוג הצומת שהשתנה.
- עבור type="application-datastore":
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \ "Type=application-datastore&Type=audit-datastore&InternalIP=NEWIP®ion=REGION&pod=central" \ -H 'content-type: application/x-www-form-urlencoded' -X POST
- עבור type="kms-datastore":
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \ "Type=kms-datastore&Type=dc-datastore&Type=keyvaluemap-datastore&Type=counter-datastore&Type=cache-datastore \ &InternalIP=NEWIP®ion=REGION&pod=GATEWAY_POD" -H 'content-type: \ application/x-www-form-urlencoded' -X POST
- עבור type="reportcrud-datastore":
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers" -d \ "Type=reportcrud-datastore&InternalIP=NEW_IP®ion=REGION&pod=analytics" \ -H 'content-type: application/x-www-form-urlencoded' -X POST
- עבור type="application-datastore":
- מחיקת רישומים ישנים של ה-UUID של המערכת שבה כתובת ה-IP הייתה
השתנה. בכל אחד מהבעיות הבאות עם מזהה ייחודי אוניברסלי (UUID):
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers/OLD_UUID" -X DELETE
שינוי כתובת ה-IP של צומת בנתונים שלzoKeeper
כדי לשנות את כתובת ה-IP של צומת בנתונים שלzoKeeper, צריך לפעול לפי השלבים הבאים:
שינוי כתובת ה-IP והפעלה מחדש של האנסמבל של ZzooKeeper (לתצורות של הרכבה מרובת צמתים בלבד)
- פתיחת
/opt/apigee/apigee-zookeeper/conf/zoo.cfg
בעורך. אתם אמורים לראות כל כתובות ה-IP של ZoomKeeper והגדרות ברירת המחדל בטופס:server.1=192.168.56.101:2888:3888 server.2=192.168.56.102:2888:3888 server.3=192.168.56.103:2888:3888
שומרים את המידע הזה.
- בכל צומת של ZoomKeeper, עורכים את הקובץ
/opt/apigee/customer/application/zookeeper.properties
כדי להגדיר את המאפייןconf_zoo_quorum
לכתובות ה-IP הנכונות. אם הקובץ לא קיים, צור אותו.conf_zoo_quorum=server.1=192.168.56.101:2888:3888\nserver.2=192.168.56.102:2888:3888\nserver.3=192.168.56.104:2888:3888\n
יש להזין '\n' לאחר כל כתובת IP, והרשומות יופיעו באותו סדר בכל צומת.
- כדי למצוא את המנהיג של המארז של ZogoKeeper, משתמשים בפקודה הבאה (מחליפים
node מחליפים בכתובת ה-IP של מכשיר Zoomkeeper :
echo srvr | nc node 2181
בשורה Mode בפלט אמור להיות כתוב 'leader'.
- מפעילים מחדש את ZoomKeeper אחד אחרי השני, מתחילים ב-Lead ומסתיים בצומת ב-
שכתובת ה-IP שונתה. אם כתובות ה-IP שונו על ידי יותר מצומת אחד של גן חיות, יכול להיות
יש צורך להפעיל מחדש את כל הצמתים.
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
- משתמשים בפקודה
echo
שמתוארת למעלה כדי לאמת כל צומת של ZoomKeeper.
עדכון לצמתים של Apigee בהגדרה ששונתה
- בכל צומת של נתב, עורכים את הקובץ
/opt/apigee/customer/application/router.properties
כמפורט בהמשך. אם הקובץ לא קיים, יוצרים אותו.- משנים את הפרמטר
conf_zookeeper_connection.string
כך שיכלול את כתובת ה-IP החדשה כתובת - משנים את הפרמטר
conf_zookeeper_zk1.host
כך שיכלול את כתובת ה-IP החדשה כתובת
- משנים את הפרמטר
- בכל צומת של מעבד הודעות, עורכים את הקובץ
/opt/apigee/customer/application/message-processor.properties
כמפורט בהמשך. אם הקובץ לא קיים, יוצרים אותו.- צריך לשנות את הפרמטר
conf_zookeeper_connection.string
כך שיכלול את הפרמטר החדש כתובת IP - משנים את הפרמטר
conf_zookeeper_zk1.host
כך שיכלול את כתובת ה-IP החדשה כתובת
- צריך לשנות את הפרמטר
- בצומת של שרת הניהול, עורכים את הקובץ
/opt/apigee/customer/application/management-server.properties
. כמפורט בהמשך. אם הקובץ לא קיים, יוצרים אותו.- צריך לשנות את הפרמטר
conf_zookeeper_connection.string
כך שיכלול את הפרמטר החדש כתובת IP - משנים את הפרמטר
conf_zookeeper_zk1.host
כך שיכלול את כתובת ה-IP החדשה כתובת
- צריך לשנות את הפרמטר
- מפעילים מחדש את כל רכיבי פלטפורמת Apigee על ידי הרצת הפקודה הבאה בכל צומת:
/opt/apigee/apigee-service/bin/apigee-all restart
שינוי כתובת ה-IP של שרת LDAP (OpenLDAP)
כדי לשנות את כתובת ה-IP של צומת OpenLDAP, מבצעים את הפעולות הבאות:
- בצומת של שרת הניהול, עורכים את הקובץ
/opt/apigee/customer/application/management-server.properties
. חדש. אם הקובץ לא קיים, יוצרים אותו. - בקובץ
management-server.properties
, מגדירים אתconf_security_ldap.server.host
לכתובת ה-IP החדשה. - מפעילים מחדש את שרת הניהול:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
שינוי כתובת ה-IP של צומת Apigee אחר סוגים
כדי לשנות את כתובת ה-IP של כל אחד מסוגי הצמתים האלה (נתב, מעבד הודעות, הודעות אימייל) שרת (לא postgresql) ושרת Qpid (לא qpidd):
- כדי לרשום את כתובת ה-IP הפנימית והחיצונית החדשה, צריך להשתמש בפקודה
curl
הבאה:curl -u ADMINEMAIL:PW -X PUT \ http://MSIP:8080/v1/servers/uuid -d ExternalIP=ip
curl -u ADMINEMAIL:PW -X PUT \ http://$MSIP:8080/v1/servers/uuid -d InternalIP=ip
כאשר uuid הוא ה-UUID של הצומת.
מידע על האופן שבו ניתן לקבל מזהה ייחודי אוניברסלי (UUID) של רכיב מופיע במאמר קבלת מזהי UUID של רכיב.