Edge for Private Cloud เวอร์ชัน 4.16.09
การสร้างองค์กร สภาพแวดล้อม และโฮสต์เสมือนพร้อมกัน
ก่อนที่จะสร้างพร็อกซี API ใน Apigee Edge คุณต้องสร้างองค์กรอย่างน้อย 1 องค์กร และภายในแต่ละองค์กรต้องมีสภาพแวดล้อมและโฮสต์เสมือนอย่างน้อย 1 รายการ
โดยทั่วไปแล้ว ระบบจะสร้างองค์กรและสภาพแวดล้อมร่วมกัน หากต้องการลดความซับซ้อนของกระบวนการ ให้ใช้ยูทิลิตี apigee-provision เรียกใช้จากบรรทัดคำสั่งบน Edge Management Server ดังนี้
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-provision setup-org -f configFile
ไฟล์การกำหนดค่าประกอบด้วยข้อมูลต่อไปนี้
APIGEE_ADMINPW=adminPword # If omitted, you are prompted for it. NEW_USER="y" USER_NAME=orgAdmin@myCo.com FIRST_NAME=foo LAST_NAME=bar USER_PWD="userPwrod" ORG_NAME=example # lowercase only, no spaces, underscores, or periods. ENV_NAME=prod 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. # AXGROUP=axgroup-001 # Default value is axgroup-001
คำสั่งที่ต้องใช้
- สร้างองค์กร
หมายเหตุ: คุณจะเปลี่ยนชื่อองค์กรไม่ได้หลังจากสร้างแล้ว - เชื่อมโยงองค์กรกับพ็อด โดยค่าเริ่มต้นจะเชื่อมโยงกับพ็อด "เกตเวย์"
- เพิ่มผู้ใช้ที่ระบุเป็นผู้ดูแลระบบองค์กร หากไม่มีผู้ใช้ คุณสามารถสร้างได้
- สร้างสภาพแวดล้อมอย่างน้อย 1 รายการ
- สร้างโฮสต์เสมือนอย่างน้อย 1 รายการสำหรับแต่ละสภาพแวดล้อม
- เชื่อมโยงสภาพแวดล้อมกับ Message Processor ทั้งหมด
- เปิดใช้ Analytics
ดูไฟล์การกำหนดค่าแบบไม่โต้ตอบที่สมบูรณ์ได้ที่หัวข้อเริ่มต้นใช้งานองค์กร
โดยค่าเริ่มต้น ความยาวสูงสุดของชื่อองค์กรและชื่อสภาพแวดล้อมคือ 20 อักขระเมื่อใช้ยูทิลิตี apigee-provision ขีดจำกัดนี้จะไม่มีผลหากคุณใช้ Edge API โดยตรงเพื่อสร้างองค์กรหรือสภาพแวดล้อม
สร้างองค์กร
ใช้คำสั่ง create-org เพื่อสร้างองค์กร ดังนี้
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-provision create-org -f configFile
สคริปต์นี้จะสร้างองค์กร แต่ไม่ได้เพิ่มหรือกำหนดค่าสภาพแวดล้อมและโฮสต์เสมือนที่องค์กรต้องใช้เพื่อจัดการการเรียก API
ไฟล์การกำหนดค่าประกอบด้วยชื่อขององค์กรและอีเมลของผู้ดูแลระบบองค์กร อักขระที่คุณใช้ในแอตทริบิวต์ name ได้จำกัดไว้ที่ a-z0-9\-$% อย่าใช้เว้นวรรค จุด หรือตัวพิมพ์ใหญ่ในชื่อ
APIGEE_ADMINPW=adminPword # If omitted, you are prompted for it. ORG_NAME=example # lowercase only, no spaces, underscores, or periods. ORG_ADMIN=orgAdmin@myCo.com
คำสั่งที่ต้องใช้
- สร้างองค์กร
- เชื่อมโยงองค์กรกับพ็อด โดยค่าเริ่มต้นจะเชื่อมโยงกับพ็อด "เกตเวย์"
- เพิ่มผู้ใช้ที่ระบุเป็นผู้ดูแลระบบองค์กร ผู้ใช้ต้องมีอยู่แล้ว ไม่เช่นนั้นสคริปต์จะแสดงข้อผิดพลาด
<Error>
<Code>organizations.OrganizationAlreadyExists</Code>
<Message>Organization : test already exists</Message>
<Contexts/>
</Error>สร้างองค์กรโดยใช้การเรียก API
หรือจะใช้การเรียก API ต่อไปนี้เพื่อสร้างองค์กรก็ได้ การเรียกครั้งแรกจะสร้างองค์กร
curl -H "Content-Type:application/xml" -u <sysAdminEmail>:<adminPasswd> \ -X POST http://<ms-ip>:8080/v1/organizations \ -d '<Organization name="<org-name>" type="paid"/>'
การเรียกใช้ครั้งถัดไปจะเชื่อมโยงองค์กรกับพ็อด ดังนี้
curl -H "Content-Type:application/x-www-form-urlencoded" \ -u <sysAdminEmail>:<adminPasswd> -X POST \ http://<ms-ip>:8080/v1/organizations/<org-name>/pods \ -d "region=default&pod=gateway"
คุณสามารถเรียกใช้ API นี้ได้หลายครั้งเพื่อเชื่อมโยงองค์กรกับพ็อดหลายรายการ
การเรียกใช้ครั้งสุดท้ายจะเพิ่มผู้ใช้ที่มีอยู่เป็นผู้ดูแลระบบองค์กรสำหรับองค์กร
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 เพื่อสร้างสภาพแวดล้อมในองค์กรที่มีอยู่
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-provision add-env -f configFile
ไฟล์การกำหนดค่านี้มีข้อมูลที่จำเป็นในการสร้างสภาพแวดล้อมและโฮสต์เสมือน
APIGEE_ADMINPW=adminPword # If omitted, you are prompted for it. ORG_NAME=example # lowercase only, no spaces, underscores, or periods. ENV_NAME=prod 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. # AXGROUP=axgroup-001 # Default value is axgroup-001
คำสั่ง
- สร้างสภาพแวดล้อม
- สร้างโฮสต์เสมือนรายการเดียวสำหรับสภาพแวดล้อม
- เชื่อมโยงสภาพแวดล้อมกับ Message Processor ทั้งหมดในพ็อดที่เชื่อมโยงกับองค์กรที่มีสภาพแวดล้อมนั้น
- เปิดใช้การวิเคราะห์
หมายเหตุ: หากเปิดใช้การวิเคราะห์สำหรับสภาพแวดล้อมหนึ่งในองค์กร คุณต้องเปิดใช้การวิเคราะห์สำหรับสภาพแวดล้อมทั้งหมดในองค์กร
สร้างสภาพแวดล้อมโดยใช้การเรียก API
หรือจะใช้การเรียก API ต่อไปนี้เพื่อสร้างสภาพแวดล้อมก็ได้ การเรียกครั้งแรกจะสร้างสภาพแวดล้อมดังนี้
curl -H "Content-Type:application/xml" -u <sysAdminEmail>:<adminPasswd> \ -X POST http://<ms-ip>:8080/v1/organizations/<org-name>/environments \ -d '<Environment name="<env-name>"/>'
การเรียกครั้งถัดไปจะเชื่อมโยงสภาพแวดล้อมกับ Message Processor เรียกใช้คำสั่งนี้สำหรับ Message Processor แต่ละรายการที่ต้องการเชื่อมโยงกับสภาพแวดล้อม
curl -H "Content-Type:application/x-www-form-urlencoded" \ -u <sysAdminEmail>:<adminPasswd> -X POST \ http://<ms-ip>:8080/v1/organizations/<org-name>/environments/<env-name>/servers \ -d "action=add&uuid=<uuid>"
โดยที่ "<uuid>" คือ UUID ของ Message Processor คุณสามารถรับ UUID ได้โดยใช้คำสั่งต่อไปนี้
> curl http://<mp-ip>:8082/v1/servers/self
โดย "<mp-ip>" คือที่อยู่ IP ของ Message Processor
การเรียก API ถัดไปจะเปิดใช้ Analytics สำหรับสภาพแวดล้อมหนึ่งๆ โดยจะตรวจสอบการมีอยู่ของเซิร์ฟเวอร์ Qpid และ Postgres ใน POD ของศูนย์ข้อมูลทั้งหมด จากนั้นจะเริ่มการเริ่มต้นใช้งาน Analytics สำหรับองค์กรและสภาพแวดล้อมที่ระบุ
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-provision enable-ax -f configFile
ไฟล์การกำหนดค่านี้ประกอบด้วยข้อมูลต่อไปนี้
ORG_NAME=orgName # lowercase only, no spaces, underscores, or periods. ENV_NAME=envName
curl -H "Content-Type:application/json" -u <sysAdminEmail>:<adminPasswd> -X POST http://<ms-ip>:8080/v1/organizations/<org-name>/environments/<env-name>/analytics/admin -d "@sample.json"
โดยที่ 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>:<passwd> http://<ms-ip>/v1/servers?pod=central
เอาต์พุตของคำสั่งนี้คือออบเจ็กต์ JSON สำหรับเซิร์ฟเวอร์ Qpid แต่ละเครื่อง คุณจะเห็นเอาต์พุตในรูปแบบต่อไปนี้
"type" : [ "qpid-server" ], "uUID" : "d3c5acf0-f88a-478e-948d-6f3094f12e3b"
สำหรับ Postgres ให้เรียกใช้คำสั่งต่อไปนี้
curl -u <sysAdminEmail>:<passwd> http://<ms-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://<ms-ip>:8080/v1/organizations/<org-name>/environments/<env-name>/virtualhosts \
-d '<VirtualHost name="default"> \
<HostAliases> \
<HostAlias>myorg-test.apigee.net</HostAlias> \
</HostAliases> \
<Interfaces/> \
<Port>9443</Port> \
</VirtualHost>' ดูคำอธิบายทั้งหมดเกี่ยวกับการสร้างโฮสต์เสมือน รวมถึงการสร้างโฮสต์เสมือนที่ปลอดภัยซึ่งใช้ TLS/SSL ผ่าน HTTPS ได้ที่ http://apigee.com/docs/api-services/content/creating-virtual-host