조직, 환경, 가상 호스트 만들기

Private Cloud용 Edge v4.18.01

조직 만들기 환경 및 가상 호스트 동시에

동영상: Apigee 조직 설정 및 구성의 개요를 소개하는 짧은 동영상을 시청하세요.

Apigee Edge에서 API 프록시를 만들려면 먼저 조직을 하나 이상 만들어야 합니다. 하나 이상의 환경 및 가상 호스트에서 식별할 수 있습니다.

일반적으로 조직과 환경은 함께 생성됩니다. 프로세스를 간소화하려면 apigee-provision 유틸리티입니다. 에지 관리 서버의 명령줄에서 이를 호출합니다.

/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 

그런 다음 명령어는 다음을 수행합니다.

  • 조직 만들기
    참고: 조직을 만든 후에는 이름을 변경할 수 없습니다.
  • 조직을 포드와 연결(기본적으로 '게이트웨이'에 연결) 포드
  • 지정된 사용자를 조직 관리자로 추가합니다. 사용자가 존재하지 않는 경우 있습니다
  • 하나 이상의 환경 만들기
  • 환경마다 하나 이상의 가상 호스트 만들기
  • 환경을 모든 메시지 프로세서와 연결
  • 분석 사용 설정

자동 구성 파일의 전체 내용은 다음을 참조하세요. 온보딩 조직의 역할입니다.

기본적으로 조직 이름과 환경 이름의 최대 길이는 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>'
<ph type="x-smartling-placeholder">

사용자가 존재하지 않는 경우 다음 호출을 사용하여 다음에 설명된 대로 사용자를 만들 수 있습니다. 사용자 추가

환경 만들기

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

명령어:

  • 환경 조성
  • 환경을 위한 단일 가상 호스트 생성
  • 환경을 kube-apiserver와 통신하는 역할을 합니다

  • 분석 사용 설정 참고: 조직의 한 환경에 대해 분석을 사용 설정하는 경우 조직 내 모든 환경에 대한 분석을 지원합니다.

다음을 사용하여 환경을 만듭니다. 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 호출은 지정된 환경에서 애널리틱스를 사용 설정합니다. 이 검증은 모든 데이터 센터의 POD에 있는 Qpid 및 Postgres 서버 그런 다음 애널리틱스 온보딩을 시작합니다. 책임감 있는 AI를 구현할 수 있습니다

/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가 포함되어 있습니다. 필요한 경우 다음 명령어를 사용합니다

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"

가상 호스트 만들기

조직의 기존 환경에서 가상 호스트를 만들 수 있습니다. 보통 여러 가상 호스트를 지원합니다 예를 들어 하나의 가상 호스트는 동일한 환경의 다른 가상 호스트는 암호화된 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>443</Port> \
  </VirtualHost>'

보안 가상 호스트 생성을 포함하여 가상 호스트 만들기에 대한 자세한 설명 HTTPS를 통한 TLS/SSL을 사용하는 호스트에 대한 자세한 내용은 다음을 참조하세요. API에 대한 TLS 액세스 구성 (Private Cloud용)