Edge per Private Cloud v. 4.17.01
Creazione di un'organizzazione Ambiente e 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 su Edge Management Server:
> /opt/apigee/apigee-service/bin/apigee-service apigee-provision setup-org -f configFile
Il file di configurazione contiene:
# 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. # AXGROUP=axgroup-001 # Default value is axgroup-001
Il comando quindi:
- Crea l'organizzazione
Nota: non puoi rinominare un'organizzazione dopo averla creata. - Associa l'organizzazione a un pod. Per impostazione predefinita, questa viene associata al "gateway" pod
- Aggiungi l'utente specificato come amministratore dell'organizzazione. Se l'utente non esiste, puoi creare 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 dati e analisi
Per un file di configurazione invisibile completo, consulta Eseguire l'onboarding di una dell'organizzazione.
Per impostazione predefinita, la lunghezza massima del nome dell'organizzazione e del nome dell'ambiente è 20 caratteri quando si utilizza apigee-provision utilità. Questo limite non si applica se utilizzi direttamente l'API Edge per creare l'organizzazione oppure completamente gestito di Google Cloud.
Crea un'organizzazione
Utilizza il comando create-org per creare un'organizzazione:
> /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 dell'organizzazione e l'indirizzo email dell'amministratore. La i caratteri che puoi utilizzare nell'attributo name sono limitati a: a-z0-9\-$%. Non usare spazi, punti o lettere maiuscole nel nome:
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
Il comando quindi:
- Crea l'organizzazione
- Associa l'organizzazione a un pod. Per impostazione predefinita, la associa al "gateway" pod
- Aggiunge l'utente specificato come amministratore dell'organizzazione. L'utente deve già esistere. altrimenti lo script emette un errore.
<Error> <Code>organizations.OrganizationAlreadyExists</Code> <Message>Organization : test already exists</Message> <Contexts/> </Error>
Crea un'organizzazione utilizzando Chiamate API
In alternativa, puoi utilizzare le seguenti chiamate API per creare un'organizzazione. La prima chiamata crea l'organizzazione:
curl -H "Content-Type:application/xml" -u <sysAdminEmail>:<adminPasswd> \ -X POST http://<ms-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://<ms-ip>:8080/v1/organizations/<org-name>/pods \ -d "region=default&pod=gateway"
Puoi effettuare questa chiamata più volte per associare l'organizzazione a più dei pod.
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 in corso...
Creazione di un ambiente
Utilizza il comando add-env per crea 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=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. # AXGROUP=axgroup-001 # Default value is axgroup-001
Il comando:
- 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
Nota: se abiliti l'analisi per un ambiente di un'organizzazione, devi abilitare l'analisi per tutti gli ambienti dell'organizzazione.
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://<ms-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://<ms-ip>:8080/v1/organizations/<org-name>/environments/<env-name>/servers \ -d "action=add&uuid=<uuid>"
Dove "<uuid>" è la UUID del processore di messaggi. Puoi ottenere l'UUID utilizzando il comando:
> curl http://<mp-ip>:8082/v1/servers/self
Dove "<mp-ip>" è la 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.
> /opt/apigee/apigee-service/bin/apigee-service apigee-provision enable-ax -f configFile
Questo file di configurazione contiene:
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"
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 il comando:
curl -u <sysAdminEmail>:<passwd> http://<ms-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 il comando:
curl -u <sysAdminEmail>:<passwd> http://<ms-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://<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>9002</Port> \ </VirtualHost>'
Per una descrizione completa della creazione di un host virtuale, inclusa la creazione di un host virtuale che utilizza TLS/SSL su HTTPS, vedi http://apigee.com/docs/api-services/content/creating-virtual-host.