การสร้างองค์กร สภาพแวดล้อม และโฮสต์เสมือน

Edge for Private Cloud v. 4.17.01

การสร้างองค์กร สภาพแวดล้อม และโฮสต์เสมือนพร้อมกัน

ก่อนสร้างพร็อกซี API ใน Apigee Edge คุณต้องสร้างองค์กรอย่างน้อย 1 องค์กร และสร้างสภาพแวดล้อมและโฮสต์เสมือนอย่างน้อย 1 รายการภายในแต่ละองค์กร

โดยปกติแล้ว องค์กรและสภาพแวดล้อมจะสร้างขึ้นร่วมกัน ใช้ยูทิลิตี apigee-provision เพื่อให้กระบวนการง่ายขึ้น เรียกใช้จากบรรทัดคำสั่งในเซิร์ฟเวอร์การจัดการ Edge โดยทำดังนี้

> /opt/apigee/apigee-service/bin/apigee-service apigee-provision setup-org -f configFile

ไฟล์การกําหนดค่าประกอบด้วย

# Set Edge sys admin credentials.
ADMIN_EMAIL=your@email.com
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 รายการสําหรับแต่ละสภาพแวดล้อม
  • เชื่อมโยงสภาพแวดล้อมกับโปรแกรมประมวลผลข้อความทั้งหมด
  • เปิดใช้ Analytics

โปรดดูไฟล์การกําหนดค่าแบบเงียบที่สมบูรณ์ที่หัวข้อเริ่มต้นใช้งานองค์กร

โดยค่าเริ่มต้น ชื่อองค์กรและชื่อสภาพแวดล้อมมีอักขระได้ไม่เกิน 20 ตัวเมื่อใช้ยูทิลิตี apigee-provision ขีดจํากัดนี้จะไม่มีผลหากคุณใช้ Edge API โดยตรงเพื่อสร้างองค์กรหรือสภาพแวดล้อม

สร้างองค์กร

ใช้คําสั่ง create-org เพื่อสร้างองค์กร

> /opt/apigee/apigee-service/bin/apigee-service apigee-provision create-org -f configFile

สคริปต์นี้จะสร้างองค์กร แต่ไม่เพิ่มหรือกำหนดค่าสภาพแวดล้อมและโฮสต์เสมือนที่องค์กรต้องใช้ในการจัดการการเรียก API

ไฟล์การกําหนดค่าจะมีชื่อองค์กรและอีเมลของผู้ดูแลระบบองค์กร อักขระที่คุณใช้ในแอตทริบิวต์ชื่อได้ถูกจํากัดไว้ที่ 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" 

คุณอาจทำการเรียกนี้ได้หลายครั้งเพื่อเชื่อมโยงองค์กรกับพ็อดหลายรายการ

การเรียกใช้ครั้งสุดท้ายจะเพิ่มผู้ใช้ที่มีอยู่เป็นผู้ดูแลระบบขององค์กร

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=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

คำสั่ง

  • สร้างสภาพแวดล้อม
  • สร้างโฮสต์เสมือนรายการเดียวสําหรับสภาพแวดล้อม
  • เชื่อมโยงสภาพแวดล้อมกับโปรแกรมประมวลผลข้อความทั้งหมดในพ็อดที่เชื่อมโยงกับองค์กรที่มีสภาพแวดล้อม
  • เปิดใช้ข้อมูลวิเคราะห์
    หมายเหตุ: หากเปิดใช้ข้อมูลวิเคราะห์สําหรับสภาพแวดล้อมหนึ่งในองค์กร คุณต้องเปิดใช้ข้อมูลวิเคราะห์สําหรับทุกสภาพแวดล้อมในองค์กร

สร้างสภาพแวดล้อมโดยใช้การเรียก 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>"/>' 

การเรียกครั้งถัดไปจะเชื่อมโยงสภาพแวดล้อมกับตัวประมวลผลข้อความ เรียกใช้การดำเนินการนี้สำหรับโปรแกรมประมวลผลข้อความแต่ละรายการที่ต้องการเชื่อมโยงกับสภาพแวดล้อม

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 ของเครื่องมือประมวลผลข้อความ คุณสามารถรับ UUID ได้โดยใช้คำสั่งต่อไปนี้

> curl http://<mp-ip>:8082/v1/servers/self

โดยที่ "<mp-ip>" คือที่อยู่ IP ของโปรแกรมประมวลผลข้อความ

การเรียก API ครั้งถัดไปจะเปิดใช้ Analytics สําหรับสภาพแวดล้อมหนึ่งๆ จะตรวจสอบการมีอยู่ของเซิร์ฟเวอร์ Qpid และ Postgres ใน POD ของศูนย์ข้อมูลทั้งหมด จากนั้นระบบจะเริ่มการเริ่มต้นใช้งาน Analytics สำหรับองค์กรและสภาพแวดล้อมที่ระบุ

> /opt/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>9002</Port> \
  </VirtualHost>' 

ดูคำอธิบายการสร้างโฮสต์เสมือนอย่างละเอียด รวมถึงการสร้างโฮสต์เสมือนที่ปลอดภัยซึ่งใช้ TLS/SSL ผ่าน HTTPS ได้ที่ http://apigee.com/docs/api-services/content/creating-virtual-host