Edge สำหรับ Private Cloud เวอร์ชัน 4.18.05
คุณจะสร้างองค์กร สภาพแวดล้อม และโฮสต์เสมือนในบรรทัดคำสั่งด้วยคำสั่งเดียว หรือจะสร้างแต่ละรายการแยกกันก็ได้ นอกจากนี้ คุณยังใช้ Management API เพื่อดำเนินการต่างๆ ข้างต้นได้ด้วย
วิดีโอ: ดูวิดีโอสั้นๆ สำหรับภาพรวมการตั้งค่าและกำหนดค่าองค์กร Apigee
การสร้างองค์กร สภาพแวดล้อม และโฮสต์เสมือนพร้อมกัน
ก่อนสร้างพร็อกซี API ใน Apigee Edge คุณต้องสร้างองค์กรอย่างน้อย 1 รายการ และในแต่ละองค์กร ต้องมีสภาพแวดล้อมและโฮสต์เสมือนอย่างน้อย 1 รายการภายในแต่ละองค์กร
โดยปกติแล้วองค์กรและสภาพแวดล้อมจะสร้างขึ้นร่วมกัน ใช้ยูทิลิตี 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
จะดำเนินการต่อไปนี้
- สร้างองค์กร
- เชื่อมโยงองค์กรกับพ็อด "เกตเวย์" คุณจะเปลี่ยนการตั้งค่านี้ไม่ได้
- เพิ่มผู้ใช้ที่ระบุเป็นผู้ดูแลระบบองค์กร หากไม่มีผู้ใช้อยู่ คุณจะสร้างผู้ใช้ได้
- สร้างสภาพแวดล้อมอย่างน้อย 1 รายการ
- สร้างโฮสต์เสมือนอย่างน้อย 1 รายการสำหรับแต่ละสภาพแวดล้อม
- เชื่อมโยงสภาพแวดล้อมกับผู้ประมวลผลข้อความทั้งหมด
- เปิดใช้ Analytics
โดยค่าเริ่มต้น ความยาวสูงสุดของชื่อองค์กรและชื่อสภาพแวดล้อมคือ 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"/>'
การเรียกครั้งถัดไปจะเชื่อมโยงองค์กรกับพ็อด
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
- สร้างสภาพแวดล้อม
- สร้างโฮสต์เสมือนเดี่ยวสำหรับสภาพแวดล้อม
- เชื่อมโยงสภาพแวดล้อมกับผู้ประมวลผลข้อความทั้งหมดในพ็อดที่เชื่อมโยงกับองค์กรที่มีสภาพแวดล้อมนั้น
- เปิดใช้ Analytics
สร้างสภาพแวดล้อมโดยใช้การเรียก 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"/>'
การเรียกใช้ครั้งถัดไปจะเชื่อมโยงสภาพแวดล้อมเข้ากับเครื่องมือประมวลผลข้อความ เรียกใช้ Message Processor แต่ละเครื่องที่คุณต้องการเชื่อมโยงกับสภาพแวดล้อม ดังนี้
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
โดย 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/SSL ผ่าน HTTPS ได้ที่การกำหนดค่าการเข้าถึง TLS ไปยัง API สำหรับ Private Cloud