Tworzenie organizacji, środowiska i hosta wirtualnego

Edge dla chmury prywatnej w wersji 4.18.01

Jednoczesne tworzenie organizacji, środowiska i hosta wirtualnego

Film: obejrzyj krótki film, aby zapoznać się z konfiguracją organizacji Apigee.

Zanim utworzysz serwer proxy interfejsu API w Apigee Edge, musisz utworzyć co najmniej 1 organizację, a w każdej organizacji co najmniej 1 środowisko i hosta wirtualnego.

Zwykle organizacje i środowiska są tworzone razem. Aby uprościć ten proces, użyj narzędzia apigee-provision. Wywołaj go z wiersza poleceń na serwerze zarządzania Edge:

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

Plik konfiguracji zawiera:

# 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 

Następnie polecenie:

  • Utwórz organizację.
    Uwaga: po utworzeniu organizacji nie możesz zmienić jej nazwy.
  • Powiąż organizację z pod, domyślnie jest ona powiązana z pod „gateway”
  • Dodaj określonego użytkownika jako administratora organizacji. Jeśli użytkownik nie istnieje, możesz go utworzyć.
  • Utwórz co najmniej jedno środowisko.
  • Utwórz co najmniej 1 host wirtualny dla każdego środowiska
  • Powiąż środowisko ze wszystkimi procesorami komunikatów.
  • Włącz statystyki

Pełny plik konfiguracji trybu cichego znajdziesz w artykule Wprowadzenie organizacji.

Domyślnie maksymalna długość nazwy organizacji i nazwy środowiska wynosi 20 znaków, gdy używasz narzędzia apigee-provision. Ten limit nie obowiązuje, jeśli do utworzenia organizacji lub środowiska używasz bezpośrednio interfejsu API Edge.

Tworzenie organizacji

Aby utworzyć organizację, użyj polecenia create-org:

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

Ten skrypt tworzy organizację, ale nie dodaje ani nie konfiguruje środowisk i hostów wirtualnych wymaganych przez organizację do obsługi wywołań interfejsu API.

Plik konfiguracji zawiera nazwę organizacji i adres e-mail administratora organizacji. W atrybucie name możesz używać tylko tych znaków: a-z0-9\-$%. Nie używaj w nazwie spacji, kropek ani wielkich liter:

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

Następnie polecenie:

  • Tworzy organizację.
  • Powiązuje organizację z pod, domyślnie z pod „gateway”
  • Dodaje określonego użytkownika jako administratora organizacji. Użytkownik musi już istnieć, w przeciwnym razie skrypt zgłosi błąd.
<Error>
  <Code>organizations.OrganizationAlreadyExists</Code>
  <Message>Organization : test already exists</Message>
  <Contexts/>
</Error>

Tworzenie organizacji za pomocą wywołań interfejsu API

Możesz też utworzyć organizację, używając tych wywołań interfejsu API. Pierwsze wywołanie tworzy organizację:

curl -H "Content-Type:application/xml" -u sysAdminEmail:adminPasswd \
  -X POST http://ms-ip:8080/v1/organizations \
  -d '<Organization name="org-name" type="paid"/>'

Następne wywołanie wiąże organizację z 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"

Możesz wykonać to wywołanie wielokrotnie, aby powiązać organizację z wieloma podami.

Ostatnie wywołanie dodaje istniejącego użytkownika jako administratora organizacji:

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

Jeśli użytkownik nie istnieje, możesz użyć tego wywołania, aby go utworzyć, jak opisano w sekcji Dodawanie użytkownika.

Tworzenie środowiska

Aby utworzyć środowisko w istniejącej organizacji, użyj polecenia add-env:

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

Ten plik konfiguracji zawiera informacje niezbędne do utworzenia środowiska i hosta wirtualnego:

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

Polecenie:

  • tworzy środowisko,
  • tworzy 1 host wirtualny dla środowiska,
  • Powiązuje środowisko ze wszystkimi procesorami komunikatów w podzie powiązanym z organizacją zawierającą środowisko.
  • Włącza statystyki
    Uwaga: jeśli włączysz statystyki w jednym środowisku w organizacji, musisz je włączyć we wszystkich środowiskach w organizacji.

Tworzenie środowiska za pomocą wywołań interfejsu API

Możesz też utworzyć środowisko, używając tych wywołań interfejsu API. Pierwsze wywołanie tworzy środowisko:

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"/>'

Następne wywołanie wiąże środowisko z procesorem komunikatów. Wykonaj to wywołanie dla każdego procesora komunikatów, który chcesz powiązać ze środowiskiem:

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"

Gdzie uuid to identyfikator UUID procesora komunikatów. Identyfikator UUID możesz uzyskać za pomocą polecenia:

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

gdzie mp-ip to adres IP procesora komunikatów.

Następne wywołanie interfejsu API włącza Analytics w danym środowisku. Sprawdza, czy serwery Qpid i Postgres istnieją w POD-ach wszystkich centrów danych. Następnie rozpoczyna proces wprowadzania Analytics w danej organizacji i środowisku.

/opt/apigee/apigee-service/bin/apigee-service apigee-provision enable-ax -f configFile

Ten plik konfiguracji zawiera:

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"

Plik sample.json zawiera te informacje:

{
  "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"] 
  }
}

Właściwość postgres-servers zawiera rozdzielaną przecinkami listę identyfikatorów UUID Postgres, a właściwość qpid-server zawiera identyfikatory UUID Qpid. Jeśli chcesz uzyskać te identyfikatory UUID, użyj tych poleceń.

W przypadku Qpid uruchom polecenie:

curl -u sysAdminEmail:passwd http://ms-ip/v1/servers?pod=central

Wynikiem tego polecenia jest obiekt JSON. W przypadku każdego serwera Qpid zobaczysz dane wyjściowe w tej postaci:

"type" : [ "qpid-server" ],
"uUID" : "d3c5acf0-f88a-478e-948d-6f3094f12e3b"

W przypadku Postgres uruchom polecenie:

curl -u sysAdminEmail:passwd http://ms-ip/v1/servers?pod=analytics

W przypadku każdego serwera Postgres zobaczysz dane wyjściowe w postaci:

"type" : [ "postgres-server" ],
"uUID" : "d3c5acf0-f88a-478e-948d-6f3094f12e3b"

Tworzenie hosta wirtualnego

Możesz utworzyć hosta wirtualnego w istniejącym środowisku w organizacji. Często środowisko obsługuje wiele hostów wirtualnych. Na przykład jeden host wirtualny może obsługiwać protokół HTTP, a inny host wirtualny w tym samym środowisku – zaszyfrowany protokół HTTPS.

Aby utworzyć dodatkowe hosty wirtualne lub host wirtualny dla środowiska, które go nie ma, użyj tego wywołania interfejsu 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>'

Pełny opis tworzenia hosta wirtualnego, w tym tworzenia bezpiecznego hosta wirtualnego, który używa protokołu TLS/SSL przez HTTPS, znajdziesz w artykule Konfigurowanie dostępu TLS do interfejsu API w chmurze prywatnej.