Edge for Private Cloud גרסה 4.17.01
כברירת מחדל, Cassandra מותקנת בלי אימות. זה אומר שכל אחד יכול לגשת אל קסנדרה. אפשר להפעיל את האימות אחרי שמתקינים את Edge, או כחלק מתהליך ההתקנה.
אם אתם מחליטים להפעיל אימות ב-Cassandra, הוא משתמש בפרטי הכניסה הבאים כברירת מחדל:
- username = 'cassandra'
- password = 'cassandra'
אתם יכולים להשתמש בחשבון הזה, להגדיר סיסמה אחרת לחשבון או ליצור משתמש חדש ב-Cassandra. להוסיף, להסיר ולשנות משתמשים באמצעות ההצהרות CREATE/ALTER/DROP USER של Cassandra.
מידע נוסף זמין בכתובת http://www.datastax.com/documentation/cql/3.0/cql/cql_reference/cqlCommandsTOC.html.
הפעלת אימות Cassandra במהלך ההתקנה
אפשר להפעיל את האימות של Cassandra בזמן ההתקנה. עם זאת, למרות שאפשר להפעיל אימות כשמתקינים את Cassandra, אי אפשר לשנות את שם המשתמש והסיסמה שמוגדרים כברירת מחדל. צריך לבצע את השלב הזה באופן ידני אחרי שההתקנה של Cassandra מסתיימת.
הערה: צריך להשתמש בהליך הזה כשמתקינים את Cassandra באמצעות האפשרויות "-p c", "-p ds", "-p sa", "-p aio", "-p asa" ו-"-p ebp".
כדי להפעיל את האימות של Cassandra בזמן ההתקנה, צריך לכלול את המאפיין CASS_AUTH בקובץ התצורה של כל הצמתים של Cassandra:
CASS_AUTH=y # The default value is n.
רכיבי Edge הבאים ניגשים ל-Cassandra:
- שרת ניהול
- מעבדי בקשות
- נתבים
- שרתי Qpid
- שרתי Postgres
- BaaS Stack
לכן, כשמתקינים את הרכיבים האלה, צריך להגדיר את המאפיינים הבאים בקובץ התצורה כדי לציין את פרטי הכניסה של Cassandra:
CASS_USERNAME=cassandra CASS_PASSWORD=cassandra
אפשר לשנות את פרטי הכניסה של Cassandra אחרי שמתקינים את Cassandra. עם זאת, אם כבר התקנתם את שרת הניהול, מעבדי הבקשות, הנתבים, שרתי Qpid, שרתי Postgres או BaaS Stack, אתם צריכים גם לעדכן את הרכיבים האלה כדי להשתמש בפרטי הכניסה החדשים.
כדי לשנות את פרטי הכניסה של Cassandra אחרי ההתקנה:
- מתחברים לאחד מצומתי Cassandra באמצעות הכלי cqlsh ופרטי הכניסה שמוגדרים כברירת מחדל. צריך לשנות את הסיסמה רק בצומת אחד, והיא תועבר לכל צומתי Cassandra בטבעת:
> /opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p cassandra
כאשר:- cassIP היא כתובת ה-IP של צומת Cassandra.
- 9042 היא יציאת ברירת המחדל של Cassandra.
- המשתמש שמוגדר כברירת מחדל הוא cassandra.
- סיסמת ברירת המחדל היא cassandra. אם שיניתם את הסיסמה בעבר, השתמשו בסיסמה הנוכחית.
- מריצים את הפקודה הבאה בשורת הפקודה cqlsh> כדי לעדכן את הסיסמה:
cqlsh> ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD'; - יוצאים מהכלי cqlsh:
cqlsh> exit - אם עדיין לא התקנתם את שרת הניהול, מעבדי הבקשות, הנתבים, שרתי Qpid, שרתי Postgres או BaaS Stack, צריך להגדיר את המאפיינים הבאים בקובץ התצורה ואז להתקין את הרכיבים האלה:
CASS_USERNAME=cassandra
CASS_PASSWORD=NEW_PASSWORD - אם כבר התקנתם את שרת הניהול, מעבדי ההודעות, הנתבים, שרתי Qpid, שרתי Postgres או BaaS Stack, עיינו במאמר איפוס סיסמאות Edge כדי לדעת איך לעדכן את הרכיבים האלה כך שישתמשו בסיסמה החדשה.
הפעלת אימות ב-Cassandra אחרי ההתקנה
כדי להפעיל את האימות:
- מעדכנים את כל רכיבי Edge שמתחברים ל-Cassandra עם שם המשתמש והסיסמה של Cassandra.
- מפעילים את האימות בכל הצמתים של Cassandra.
- מגדירים את שם המשתמש והסיסמה של Cassandra בכל אחד מהצמתים. צריך לשנות את פרטי הכניסה רק בצומת Cassandra אחד, והם יופצו לכל צומתי Cassandra בטבעת.
כדי לעדכן את כל רכיבי Edge שמתקשרים עם Cassandra בפרטי הכניסה החדשים, צריך לבצע את הפעולות הבאות. שימו לב שצריך לבצע את השלב הזה לפני שמעדכנים בפועל את פרטי הכניסה של Cassandra:
- בצומת של שרת הניהול, מריצים את הפקודה הבאה:
> /opt/apigee/apigee-service/bin/apigee-service edge-management-server store_cassandra_credentials -u CASS_USERNAME -p CASS_PASSWORD
אפשר גם להעביר לפקודה קובץ שמכיל את שם המשתמש והסיסמה החדשים:
> apigee-service edge-management-server store_cassandra_credentials -f configFile
כאשר configFile מכיל את הפרטים הבאים:
CASS_USERNAME=cassandra
CASS_PASSWORD=CASS_PASSWROD
הפקודה הזו מפעילה מחדש את שרת הניהול באופן אוטומטי. - חוזרים על שלב 1 במכשירים הבאים:
- כל מעבדי הבקשות
- כל הנתבים
- כל שרתי Qpid (edge-qpid-server)
- שרתי Postgres (edge-postgres-server)
- בצומת BaaS Stack לגרסה 4.16.05.04 ואילך:
- מריצים את הפקודה הבאה כדי ליצור סיסמה מוצפנת:
> /opt/apigee/apigee-service/bin/apigee-service baas-usergrid secure_password
הפקודה הזו מבקשת את הסיסמה בטקסט פשוט ומחזירה את הסיסמה המוצפנת בפורמט הבא:
SECURE:ae1b6dedbf6b26aaab8bee815a910737c1c15b55f3505c239e43bc09f8050 - מגדירים את הטוקנים הבאים ב-/opt/apigee/customer/application/usergrid.properties.
אם הקובץ הזה לא קיים, יוצרים אותו:
usergrid-deployment_cassandra.username=cassandra
usergrid-deployment_cassandra.password=SECURE:ae1b6dedbf6b26aaab8bee815a910737c1c15b55f3505c239e43bc09f8050
בדוגמה הזו נעשה שימוש בשם המשתמש שמוגדר כברירת מחדל ל-Cassandra. אם שיניתם את שם המשתמש, הגדירו את הערך של usergrid-deployment_cassandra.username בהתאם.
חשוב לוודא שהסיסמה כוללת את הקידומת "SECURE:". אחרת, מחסנית ה-BaaS מפרשת את הערך כלא מוצפן.
הערה: לכל צומת BaaS Stack יש מפתח ייחודי משלו שמשמש להצפנת הסיסמה. לכן, צריך ליצור את הערך המוצפן בכל צומת של BaaS Stack בנפרד. - משנים את הבעלות על הקובץ usergrid.properties למשתמש apigee:
> chown apigee:apigee /opt/apigee/customer/application/usergrid.properties - מגדירים את צומת Stack:
> /opt/apigee/apigee-service/bin/apigee-service baas-usergrid configure - מפעילים מחדש את BaaS Stack:
> /opt/apigee/apigee-service/bin/apigee-service baas-usergrid restart - חוזרים על השלבים האלה בכל הצמתים של BaaS Stack.
- מריצים את הפקודה הבאה כדי ליצור סיסמה מוצפנת:
כדי להפעיל את האימות של Cassandra ולהגדיר את שם המשתמש והסיסמה:
- מתחברים לצומת הראשון של Cassandra.
- מריצים את הפקודה הבאה:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra enable_cassandra_authentication -e y
הפקודה הזו מפעילה את האימות ומפעילה מחדש את Cassandra.
- חוזרים על שלבים 1 ו-2 בכל צומתי Cassandra.
- מתחברים לצומת Cassandra כלשהו באמצעות הכלי
cqlshופרטי הכניסה שמוגדרים כברירת מחדל. צריך לשנות את הסיסמה רק בצומת Cassandra אחד, והיא תופץ לכל צומתי Cassandra בטבעת:/opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p cassandra
איפה
- cassIP היא כתובת ה-IP של צומת Cassandra.
- 9042 היא היציאה של Cassandra.
- המשתמש שמוגדר כברירת מחדל הוא
cassandra. - סיסמת ברירת המחדל היא
cassandra. אם שיניתם את הסיסמה בעבר, השתמשו בסיסמה הנוכחית.
- מריצים את הפקודה הבאה בשורת הפקודה של
cqlsh>כדי לעדכן את הסיסמה:ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';
- מריצים את הפקודה הבאה בשורת הפקודה של
cqlsh>כדי לוודא שמרחב המפתחות תמיד זמין. למרכז נתונים אחד: בשני מרכזי נתונים:ALTER KEYSPACE system_auth WITH replication = {'class': 'NetworkTopologyStrategy', 'dc-1': '3'};ALTER KEYSPACE system_auth WITH replication = {'class': 'NetworkTopologyStrategy', 'dc-1': '3', 'dc-2': '3'}; - יוצאים מהכלי
cqlsh:exit
- מריצים את
nodetool repairכדי לוודא שהשינוי הופץ לכל צומתי Cassandra:/opt/apigee/apigee-cassandra/bin/nodetool repair system_auth