組織、環境、仮想ホストの作成

Edge for Private Cloud v. 4.17.09

組織の作成、 環境と仮想ホストを同時に使用できます。

Apigee Edge で API プロキシを作成する前に、少なくとも 1 つの組織を作成し、 内部 IP アドレスを使用して通信できます

通常、組織と環境は一緒に作成されます。プロセスを簡素化するために、 apigee-provision ユーティリティを使用してプロビジョニングされます。 このコマンドは、Edge Management Server のコマンドラインから呼び出します。

> /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. 
# 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 

このコマンドは次の処理を行います。

  • 組織を作成する
    : 組織を作成した後にその名前を変更することはできません。
  • 組織を Pod に関連付ける(デフォルトでは「gateway」に関連付け) チーム
  • 指定したユーザーを組織管理者として追加します。ユーザーが存在しない場合は、ユーザーを 1 です。
  • 1 つ以上の環境を作成する
  • 環境ごとに 1 つ以上の仮想ホストを作成する
  • 環境をすべての Message Processor に関連付ける
  • アナリティクスを有効にする

サイレント構成ファイルの詳細については、Google Compute Engine の できます

デフォルトでは、組織名と環境名の最大長は 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=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"/>'

次の呼び出しで、組織を Pod に関連付けます。

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>'
<ph type="x-smartling-placeholder">

ユーザーが存在しない場合は、前述の手順に沿って次の呼び出しを使用してユーザーを作成できます。 ユーザーを追加しています。

環境の作成

add-env コマンドを使用して 既存の組織に環境を作成するには:

> /opt/apigee/apigee-service/bin/apigee-service apigee-provision add-env -f configFile

この構成ファイルには、環境と仮想環境を作成するために必要な情報が含まれています。 host:

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. 
# 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

コマンド:

  • 環境を作成する
  • 環境に単一の仮想ホストを作成する
  • 環境に関連付けられた Pod 内のすべての Message Processor に環境を関連付けます。 その環境を含む組織です。
  • 分析を有効にする
    : 組織内の 1 つの環境に対して Analytics を有効にする場合は、 分析を組織内のすべての環境で有効にできます。

以下を使用して環境を作成する 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>"

&lt;uuid&gt;」はどこにあるかは Message Processor の UUID。UUID は、次のコマンドで取得できます。

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

&lt;mp-ip&gt;」の部分は Message Processor の IP アドレス。

次の API 呼び出しでは、特定の環境でアナリティクスを有効にします。コンテナ イメージの すべてのデータセンターの Pod 内の Qpid サーバーと Postgres サーバー。その後、アナリティクスのオンボーディングが 固有の組織と環境に対する権限が含まれます。

> /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 プロパティ には Postgres UUID のカンマ区切りのリストが含まれ、qpid-server プロパティには Qpid UUID が含まれています。 これらの 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"

仮想ホストを作成する

組織内の既存の環境に仮想ホストを作成できます。多くの場合、 複数の仮想ホストをサポートします。たとえば、1 つの仮想ホストで HTTP 同じ環境内の別の仮想ホストでは暗号化された HTTPS ポートを 構成されます。

次の API 呼び出しを使用して、追加の仮想ホストを作成するか、または VM 用の仮想ホストを作成します。 仮想ホストのない環境の場合:

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

安全な仮想ホストの作成など、仮想ホストの作成方法の詳細を HTTPS で TLS/SSL を使用するホストについては、API への TLS アクセスの構成をご覧ください。 (プライベート クラウド向け)をご覧ください。