אפשר ליצור ארגון, סביבה ומארח וירטואלי בשורת הפקודה בקובץ אחד , או ליצור כל אחת מהן בנפרד. בנוסף, אפשר להשתמש Edge 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
מבצע את הפעולות הבאות:
- יצירת הארגון.
- משייך את הארגון ל"השער" צוות אי אפשר לשנות את ההגדרה הזאת.
- הוספת המשתמש שצוין כאדמין בארגון. אם המשתמש לא קיים, יכול ליצור המרה.
- יצירת סביבה אחת או יותר.
- יצירת מארח וירטואלי אחד או יותר לכל סביבה.
- משייך את הסביבה לכל מעבדי ההודעות.
- הפעלת ניתוח נתונים.
כברירת מחדל, האורך המקסימלי של שם הארגון ושם הסביבה הוא 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
:
- יצירת הארגון.
- משייך את הארגון ל"השער" צוות
- הוספת המשתמש שצוין כאדמין בארגון. המשתמש צריך כבר להיות קיים; אחרת הסקריפט יפיק שגיאה.
יצירת ארגון באמצעות קריאות ל-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
קובץ התצורה הזה מכיל את המידע הדרוש כדי ליצור את הסביבה Host (מארח):
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 ב-POD של כל מרכזי הנתונים. לאחר מכן מתחילים את תהליך ההצטרפות ל-Analytics לארגון ולסביבה הנתונים.
קובץ התצורה הזה מכיל:
ORG_NAME=orgName # lowercase only, no spaces, underscores, or periods. ENV_NAME=envName # lowercase only
כאשר example.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:admin_password http://management_server_IP/v1/servers?pod=analytics
הפלט של כל שרת Postgres יהיה:
"type" : [ "postgres-server" ], "uUID" : "d3c5acf0-f88a-478e-948d-6f3094f12e3b"
יצירת מארח וירטואלי
אפשר ליצור מארח וירטואלי בסביבה קיימת בארגון. לעיתים קרובות תומכת במארחים וירטואליים מרובים. לדוגמה, מארח וירטואלי אחד עשוי לתמוך ב-HTTP בזמן שמארח וירטואלי אחר באותה סביבה תומך ב-HTTPS המוצפן של Google.
אפשר להשתמש בקריאה הבאה ל-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/SSL ב-HTTPS, ראו הגדרת גישת TLS ל-API לענן הפרטי.