您可以在指令列的單一指令列中,建立機構、環境和虛擬主機 或個別建立每個指標此外,您可以使用 管理 API 就能執行許多操作
影片: 觀看 Apigee 機構設定與設定的總覽影片。
正在建立機構 同時將虛擬主機和虛擬主機
在 Apigee Edge 中建立 API Proxy 之前,您必須建立至少一個機構,且 都有一或多個環境和虛擬主機
一般來說,機構和環境會一起建立。如要簡化程序,請使用
apigee-provision
公用程式。從 Edge Management 的指令列叫用
伺服器:
/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
這個設定檔含有建立環境和虛擬服務專員所需的資訊 主機:
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
指令:
- 建立環境。
- 為環境建立單一虛擬主機。
- 將環境與 也就是環境下的機構
- 啟用數據分析
使用以下角色建立環境: 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。它可以驗證 所有資料中心 POD 中的 Qpid 和 Postgres 伺服器。然後開始設定 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
屬性
包含以逗號分隔的 Postgres UUID,qpid-server
屬性則包含 Qpid UUID。
如果您需要取得這些 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 因此效能相當卓越
請使用下列 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>'
有關建立虛擬主機的完整說明,包括建立安全虛擬主機 透過 HTTPS 使用 TLS/SSL 的主機,請參閱設定 API 的 TLS 存取權 私有雲。