Creazione di un'organizzazione, un ambiente e un host virtuale

Nella riga di comando puoi creare un'organizzazione, un ambiente e un host virtuale in un'unica oppure puoi crearli singolarmente. Inoltre, puoi utilizzare API Edge eseguire molte di queste azioni.

Video:guarda un breve video per una panoramica dell'impostazione e della configurazione di Apigee Organization.

La creazione di un'organizzazione dell'ambiente di rete e dell'host virtuale contemporaneamente

Prima di creare un proxy API su Apigee Edge, devi creare almeno un'organizzazione e all'interno di ciascuna organizzazione, uno o più ambienti e host virtuali.

In genere, organizzazioni e ambienti sono creati insieme. Per semplificare la procedura, utilizza l'utilità apigee-provision. Richiamalo dalla riga di comando in Edge Management Server:

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

Dove configFile è il percorso di un file di configurazione simile seguenti:

# 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

Quando configuri un'organizzazione, lo script setup-org esegue le seguenti operazioni:

  • Crea l'organizzazione.
  • Associa l'organizzazione al "gateway" pod. Non puoi modificare questa impostazione.
  • Aggiunge l'utente specificato come amministratore dell'organizzazione. Se l'utente non esiste, possono crearne uno.
  • Crea uno o più ambienti.
  • Crea uno o più host virtuali per ogni ambiente.
  • Associa l'ambiente a tutti i processori di messaggi.
  • Abilita l'analisi.

Per impostazione predefinita, la lunghezza massima del nome dell'organizzazione e del nome dell'ambiente è 20 caratteri quando utilizzi l'utilità apigee-provision. Questo limite non si applica se utilizzi l'API Edge per creare l'organizzazione o l'ambiente. Sia il nome dell'organizzazione che l'ambiente devono essere in minuscolo.

Crea un'organizzazione

Utilizza il comando create-org per creare un'organizzazione, come nell'esempio seguente mostra:

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

Questo script crea l'organizzazione, ma non aggiunge né configura gli ambienti e gli host virtuali richiesti dall'organizzazione per gestire le chiamate API.

Il file di configurazione contiene il nome e l'indirizzo email dell'organizzazione amministratore. I caratteri che puoi utilizzare nell'attributo name sono limitati a a-z0-9\-$%. Non utilizzare spazi, punti o lettere maiuscole nel nome:

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

Lo script create-org:

  • Crea l'organizzazione.
  • Associa l'organizzazione al "gateway" pod.
  • Aggiunge l'utente specificato come amministratore dell'organizzazione. L'utente deve già esistere. altrimenti lo script genera un errore.
di Gemini Advanced.

Crea un'organizzazione utilizzando Chiamate API

Puoi utilizzare le seguenti chiamate API per creare un'organizzazione. La prima chiamata crea organizzazione:

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

La chiamata successiva associa l'organizzazione a un 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"

Nell'ultima chiamata viene aggiunto un utente esistente come amministratore dell'organizzazione:

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

Se l'utente non esiste, puoi utilizzare la chiamata seguente per creare l'utente come descritto in Aggiunta di un utente.

Creazione di un ambiente

Utilizza lo script add-env per creare un ambiente in un'organizzazione esistente:

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

Questo file di configurazione contiene le informazioni necessarie per creare l'ambiente host:

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

Il comando add-env:

  • Crea l'ambiente.
  • Crea un singolo host virtuale per l'ambiente.
  • Associa l'ambiente a tutti i processori di messaggi nel pod associato al dell'organizzazione in cui si trova l'ambiente.
  • Abilita l'analisi

Crea un ambiente utilizzando Chiamate API

In alternativa, puoi utilizzare le seguenti chiamate API per creare un ambiente. La prima chiamata crea l'ambiente:

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

La chiamata successiva associa l'ambiente a un processore di messaggi. Effettua questa chiamata per ogni Processore di messaggi da associare all'ambiente:

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"

Dove uuid è l'UUID del processore di messaggi. Puoi ottenere l'UUID utilizzando il comando :

curl http://Message_Processor_IP:8082/v1/servers/self

Dove Message_Processor_IP è l'indirizzo IP del processore di messaggi.

La successiva chiamata API abilita Analytics per un determinato ambiente. Convalida l'esistenza di Server Qpid e Postgres nei POD di tutti i data center. Poi avvia l'onboarding di Analytics per l'organizzazione e l'ambiente specificati.

Questo file di configurazione contiene:

ORG_NAME=orgName  # lowercase only, no spaces, underscores, or periods.
ENV_NAME=envName  # lowercase only

dove sample.json contiene quanto segue:

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

La proprietà postgres-servers contiene un elenco separato da virgole degli UUID Postgres, mentre la proprietà qpid-server contiene gli UUID Qpid. Se devi recuperare questi UUID, utilizza i comandi seguenti.

Per Qpid, esegui questo comando:

curl -u sysAdminEmail:password http://management_server_IP/v1/servers?pod=central

L'output di questo comando è un oggetto JSON. Per ogni server Qpid, l'output sarà visualizzato nella modulo:

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

Per Postgres, esegui questo comando:

curl -u sysAdminEmail:admin_password http://management_server_IP/v1/servers?pod=analytics

Per ogni server Postgres, l'output sarà visualizzato nel seguente formato:

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

Crea un host virtuale

Puoi creare un host virtuale in un ambiente esistente di un'organizzazione. Spesso supporta più host virtuali. Ad esempio, un host virtuale potrebbe supportare il protocollo HTTP mentre un altro host virtuale nello stesso ambiente supporta il protocollo HTTPS criptato protocollo.

Utilizza la seguente chiamata API per creare host virtuali aggiuntivi o per creare un host virtuale per di un ambiente senza host virtuale:

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

Per una descrizione completa della creazione di un host virtuale, inclusa la creazione di un host virtuale che utilizza TLS/SSL tramite HTTPS, consulta Configurazione dell'accesso TLS a un'API per il cloud privato.