Edge for Private Cloud v4.18.05
אתם יכולים ליצור ארגון, סביבה ומארח וירטואלי בשורת הפקודה בפקודה אחת, או ליצור כל אחד מהם בנפרד. בנוסף, אתם יכולים להשתמש ב-Management API כדי לבצע הרבה מהפעולות האלה.
סרטון: סרטון קצר עם סקירה כללית על ההגדרה והתצורה של ארגון Apigee.
יצירת ארגון, סביבה ומארח וירטואלי בו-זמנית
לפני שיוצרים שרת proxy ל-API ב-Apigee Edge, צריך ליצור לפחות ארגון אחד, ובכל ארגון צריך ליצור סביבה אחת או יותר ומארחים וירטואליים.
בדרך כלל, ארגונים וסביבות נוצרים ביחד. כדי לפשט את התהליך, אפשר להשתמש בכלי apigee-provision. מפעילים אותו משורת הפקודה בשרת הניהול של Edge:
/opt/apigee/apigee-service/bin/apigee-service apigee-provision setup-org -f configFile
configFile הוא הנתיב לקובץ תצורה שנראה כך:
# Set Edge sys admin credentials. ADMIN_EMAIL=your@email.com APIGEE_ADMINPW=admin_password # If omitted, you are prompted for it. NEW_USER="y" USER_NAME=orgAdmin@myCo.com FIRST_NAME=foo LAST_NAME=bar USER_PWD="userPword" ORG_NAME=example # lowercase only, no spaces, underscores, or periods. ENV_NAME=prod # lowercase only VHOST_PORT=9001 VHOST_NAME=default VHOST_ALIAS="$IP1:9001" # Optionally configure TLS/SSL for virtual host. # VHOST_SSL=y # Set to "y" to enable TLS/SSL on the virtual host. # KEYSTORE_JAR= # JAR file containing the cert and private key. # KEYSTORE_NAME= # Name of the keystore. # KEYSTORE_ALIAS= # The key alias. # KEY_PASSWORD= # The key password, if it has one. # Optionally set the base URL displayed by the Edge UI for an # API proxy deployed to the virtual host. # VHOST_BASEURL="http://myCo.com" # AXGROUP=axgroup-001 # Default value is axgroup-001
כשמגדירים ארגון, הסקריפט setup-org מבצע את הפעולות הבאות:
- יצירת הארגון.
- משייכת את הארגון ל-pod של השער. אי אפשר לשנות אותה.
- הוספת המשתמש שצוין כאדמין של הארגון. אם המשתמש לא קיים, אתם יכולים ליצור אותו.
- יוצר סביבה אחת או יותר.
- יוצר מארח וירטואלי אחד או יותר לכל סביבה.
- משייכת את הסביבה לכל מעבדי הבקשות.
- הפעלת ניתוח נתונים.
כברירת מחדל, האורך המקסימלי של שם הארגון ושם הסביבה הוא 20 תווים כשמשתמשים בכלי apigee-provision. המגבלה הזו לא חלה אם משתמשים ב-Edge API ישירות כדי ליצור את הארגון או הסביבה.
יצירת ארגון
משתמשים בפקודה create-org כדי ליצור ארגון, כמו בדוגמה הבאה:
/opt/apigee/apigee-service/bin/apigee-service apigee-provision create-org -f configFile
הסקריפט הזה יוצר את הארגון, אבל לא מוסיף או מגדיר את הסביבות והמארחים הווירטואליים שהארגון צריך כדי לטפל בקריאות ל-API.
קובץ התצורה מכיל את שם הארגון ואת כתובת האימייל של האדמין בארגון. התווים שאפשר להשתמש בהם במאפיין name מוגבלים ל-a-z0-9\-$%. אסור להשתמש ברווחים, בנקודות או באותיות רישיות בשם:
APIGEE_ADMINPW=admin_password # If omitted, you are prompted for it. ORG_NAME=example # lowercase only, no spaces, underscores, or periods. ORG_ADMIN=orgAdmin@myCo.com
הסקריפט create-org:
- יצירת הארגון.
- משייכת את הארגון ל-pod של השער.
- הוספת המשתמש שצוין כאדמין של הארגון. המשתמש כבר צריך להיות קיים, אחרת הסקריפט יציג שגיאה.
יצירת ארגון באמצעות קריאות ל-API
כדי ליצור ארגון, אפשר להשתמש בקריאות הבאות ל-API. הקריאה הראשונה יוצרת את הארגון:
curl -H "Content-Type:application/xml" -u sysAdminEmail:adminPasswd \ -X POST http://management_server_IP:8080/v1/organizations \ -d '<Organization name="org_name" type="paid"/>'
הקריאה הבאה משייכת את הארגון ל-pod:
curl -H "Content-Type:application/x-www-form-urlencoded" \ -u sysAdminEmail:adminPasswd -X POST \ http://management_server_IP:8080/v1/organizations/org_name/pods \ -d "region=default&pod=gateway"
הקריאה האחרונה מוסיפה משתמש קיים כמנהל החשבון הארגוני של הארגון:
curl -H "Content-Type:application/xml" -u sysAdminEmail:adminPasswd \ -X POST http://<ms-ip>:8080/v1/organizations/org_name/users/user_email/userroles/ \ -d '<Roles><Role name="orgadmin"/></Roles>'
אם המשתמש לא קיים, אפשר להשתמש בקריאה הבאה כדי ליצור את המשתמש, כמו שמתואר בקטע הוספת משתמש.
יצירת סביבה
משתמשים בסקריפט add-env כדי ליצור סביבה בארגון קיים:
/opt/apigee/apigee-service/bin/apigee-service apigee-provision add-env -f configFile
קובץ התצורה הזה מכיל את המידע שנדרש כדי ליצור את הסביבה ואת המארח הווירטואלי:
APIGEE_ADMINPW=admin_password # If omitted, you are prompted for it. ORG_NAME=example # lowercase only, no spaces, underscores, or periods. ENV_NAME=prod # lowercase only VHOST_PORT=9001 VHOST_NAME=default VHOST_ALIAS="$IP1:9001" # Optionally configure TLS/SSL for virtual host. # VHOST_SSL=y # Set to "y" to enable TLS/SSL on the virtual host. # KEYSTORE_JAR= # JAR file containing the cert and private key. # KEYSTORE_NAME= # Name of the keystore. # KEYSTORE_ALIAS= # The key alias. # KEY_PASSWORD= # The key password, if it has one. # Optionally set the base URL displayed by the Edge UI for an # API proxy deployed to the virtual host. # VHOST_BASEURL="http://myCo.com" # AXGROUP=axgroup-001 # Default value is axgroup-001
הפקודה add-env:
- יוצר את הסביבה.
- יוצר מארח וירטואלי אחד לסביבה.
- משייכת את הסביבה לכל מעבדי הבקשות ב-pod שמשויך לארגון שמכיל את הסביבה.
- הפעלת ניתוח נתונים
יצירת סביבה באמצעות קריאות ל-API
לחלופין, אתם יכולים להשתמש בקריאות הבאות ל-API כדי ליצור סביבה. הקריאה הראשונה יוצרת את הסביבה:
curl -H "Content-Type:application/xml" -u sysAdminEmail:adminPasswd \ -X POST http://management_server_IP:8080/v1/organizations/org_name/environments \ -d '<Environment name="env_name"/>'
הקריאה הבאה משייכת את הסביבה למעבד בקשות. מבצעים את הקריאה הזו לכל מעבד בקשות שרוצים לשייך לסביבה:
curl -H "Content-Type:application/x-www-form-urlencoded" \ -u sysAdminEmail:adminPasswd -X POST \ http://management_server_IP:8080/v1/organizations/org_name/environments/env_name/servers \ -d "action=add&uuid=uuid"
כאשר uuid הוא ה-UUID של מעבד הבקשות. כדי לקבל את ה-UUID, אפשר להשתמש בפקודה:
curl http://Message_Processor_IP:8082/v1/servers/self
כאשר Message_Processor_IP הוא כתובת ה-IP של מעבד ההודעות.
הקריאה הבאה ל-API מפעילה את Analytics בסביבה נתונה. הוא מאמת את קיומם של שרתי Qpid ו-Postgres ב-PODs של כל מרכזי הנתונים. לאחר מכן, הוא מתחיל את תהליך ההצטרפות ל-Analytics בארגון ובסביבה שצוינו.
קובץ התצורה הזה מכיל:
ORG_NAME=orgName # lowercase only, no spaces, underscores, or periods. ENV_NAME=envName # lowercase only
כאשר sample.json מכיל את הפרטים הבאים:
{ "properties" : { "samplingAlgo" : "reservoir_sampler", "samplingTables" : "10=ten;1=one;", "aggregationinterval" : "300000", "samplingInterval" : "300000", "useSampling" : "100", "samplingThreshold" : "100000" }, "servers" : { "postgres-server" : [ "1acff3a5-8a6a-4097-8d26-d0886853239c", "f93367f7-edc8-4d55-92c1-2fba61ccc4ab" ], "qpid-server" : [ "d3c5acf0-f88a-478e-948d-6f3094f12e3b", "74f67bf2-86b2-44b7-a3d9-41ff117475dd"] } }
המאפיין postgres-servers מכיל רשימה מופרדת בפסיקים של מזהי ה-UUID של Postgres, והמאפיין qpid-server מכיל את מזהי ה-UUID של Qpid.
אם אתם צריכים לקבל את מזהי ה-UUID האלה, השתמשו בפקודות הבאות.
ב-Qpid, מריצים את הפקודה הבאה:
curl -u sysAdminEmail:password http://management_server_IP/v1/servers?pod=central
הפלט של הפקודה הזו הוא אובייקט JSON. לכל שרת Qpid, הפלט יהיה בפורמט הבא:
"type" : [ "qpid-server" ], "uUID" : "d3c5acf0-f88a-478e-948d-6f3094f12e3b"
ב-Postgres, מריצים את הפקודה הבאה:
curl -u sysAdminEmail:passwor http://management_server_IP/v1/servers?pod=analytics
לכל שרת Postgres, יוצג פלט בפורמט הבא:
"type" : [ "postgres-server" ], "uUID" : "d3c5acf0-f88a-478e-948d-6f3094f12e3b"
יצירת מארח וירטואלי
אתם יכולים ליצור מארח וירטואלי בסביבה קיימת בארגון. בדרך כלל, סביבה תומכת בכמה מארחים וירטואליים. לדוגמה, מארח וירטואלי אחד יכול לתמוך בפרוטוקול HTTP, ומארח וירטואלי אחר באותה סביבה יכול לתמוך בפרוטוקול HTTPS המוצפן.
כדי ליצור מארחים וירטואליים נוספים, או כדי ליצור מארח וירטואלי לסביבה ללא מארח וירטואלי, משתמשים בקריאה הבאה ל-API:
curl -H "Content-Type:application/xml" -u sysAdminEmail:adminPasswd \
-X POST http://management_server_IP:8080/v1/organizations/org_name/environments/env_name/virtualhosts \
-d '<VirtualHost name="default"> \
<HostAliases> \
<HostAlias>myorg-test.apigee.net</HostAlias> \
</HostAliases> \
<Interfaces/> \
<Port>443</Port> \
</VirtualHost>'במאמר הגדרת גישת TLS ל-API ב-Private Cloud מוסבר איך ליצור מארח וירטואלי, כולל מארח וירטואלי מאובטח שמשתמש ב-TLS/SSL דרך HTTPS.