Utilizzo dell'utilità Apigee-adminapi.sh

Edge per Private Cloud v. 4.16.09

Utilizza l'utilità apigee-adminapi.sh per eseguire le stesse attività di configurazione di Edge che esegui effettuando chiamate all'API di gestione di Edge. Il vantaggio dell'utilità apigee-adminapi.sh è che:

  • Utilizza una semplice interfaccia a riga di comando
  • Implementa il completamento dei comandi basato su Tab
  • Fornisce assistenza e informazioni sull'utilizzo
  • Può visualizzare la chiamata API corrispondente se decidi di provare l'API

L'utilità apigee-adminapi.sh non è un remplacement per l'utilità apigee-provision. L'utilità apigee-provision utilizza in realtà l'utilità apigee-adminapi.sh per eseguire le sue attività.

Le principali differenze tra i due sono:

  • L'utilità apigee-adminapi.sh esegue funzioni atomiche che sostituiscono le singole chiamate all'API Edge. Ad esempio, per creare un'organizzazione, un ambiente e un host virtuale sono necessari tre comandi apigee-adminapi.sh distinti corrispondenti a tre chiamate API.
  • L'utilità apigee-provision è progettata per eseguire un'operazione completa di alto livello in un singolo comando. Ad esempio, puoi creare un'organizzazione, un ambiente e un host virtuale con un singolo comando apigee-provision passando un file di configurazione con tutte le informazioni necessarie.

La documentazione di Edge utilizza entrambe le utilità, ove opportuno.

Installazione di apigee-adminapi.sh

L'utilità apigee-adminapi.sh viene installata automaticamente quando installi l'utilità apigee-provision o apigee-validate.

L'utilità viene installata nel percorso seguente:

/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh

Sintassi di apigee-adminapi.sh

L'utilità apigee-adminapi.sh utilizza una semplice sintassi a riga di comando. In qualsiasi momento, utilizza il tasto Tab per visualizzare una richiesta che elenca le opzioni di comando disponibili.

Per visualizzare tutti i comandi possibili, richiama l'utilità senza opzioni:

> apigee-adminapi.sh 

Se premi il tasto Tab dopo aver digitato apigee-adminapi.sh, vedrai l'elenco delle possibili opzioni:

analytics  classification  logsessions  regions  securityprofile  userroles
buildinfo  GET             orgs         runtime  servers          users

Il tasto Tab mostra le opzioni in base al contesto del comando. Se inserisci il tasto Tab dopo aver digitato:

> apigee-adminapi.sh orgs

Vedrai le possibili opzioni per completare il comando orgs:

add  apis  apps  delete  envs  list  pods  userroles

Utilizza l'opzione -h per visualizzare la guida per qualsiasi comando. Ad esempio, se utilizzi l'opzione -h come mostrato di seguito:

> apigee-adminapi.sh orgs -h

L'utilità mostra informazioni di aiuto complete per tutte le opzioni possibili del comando orgs. Il primo elemento dell'output mostra la guida per il comando "orgs add":

+++++++++++++++++++++++++++++++++++++++++++
orgs add
  Required:
    -o ORG Organization name
  Optional:
    -H HEADER add http header in request
    --admin ADMIN_EMAIL admin email address
    --pwd ADMIN_PASSWORD admin password
    --host EDGE_SERVER edge server to make request to
    --port EDGE_PORT port to use for the http request
    --ssl set EDGE_PROTO to https, defaults to http
    --debug ( set in debug mode, turns on verbose in curl )
    -h      Displays Help

Impostazione dei parametri utilizzando le opzioni della riga di comando e le variabili di ambiente

Devi inserire tutti i parametri di un comando utilizzando gli switch della riga di comando o le variabili di ambiente. Anteponi agli switch della riga di comando un trattino singolo (-) o un doppio trattino (--), a seconda dei casi.

Ad esempio, dalla guida indicata sopra per il comando "orgs add", puoi specificare il nome dell'organizzazione:

  • Utilizzo dell'opzione -o della riga di comando:
    > apigee-adminapi.sh orgs -o testOrg
  • Impostazione di una variabile di ambiente denominata ORG:
    > export ORG=testOrg
    > apigee-adminapi.sh orgs

Se ometti i parametri obbligatori del comando, l'utilità visualizza un messaggio di errore che descrive i parametri mancanti. Ad esempio, se ometti la variabile di ambiente --host o EDGE_SERVER che specifica il server Edge Management Server durante la creazione di un'organizzazione, viene visualizzato il seguente messaggio di errore:

Error with required variable or parameter
ADMIN_PASSWORD....OK
ADMIN_EMAIL....OK
EDGE_SERVER....null

Due parametri comuni che spesso imposti come variabili di ambiente sono l'indirizzo email del sys admin e l'indirizzo IP del server di gestione:

> export ADMIN_EMAIL=foo@bar.com
> export EDGE_SERVER=192.168.56.101

Trasmissione di un file all'utilità apigee-adminapi.sh

Alcuni comandi di utilità apigee-adminapi.sh corrispondenti a chiamate API PUT e POST che accettano un corpo della richiesta. Ad esempio, la creazione di un hosting virtuale corrisponde a una chiamata API POST che richiede informazioni sull'hosting virtuale nel corpo della richiesta.

Quando utilizzi l'utilità apigee-adminapi.sh per creare un host virtuale o qualsiasi comando che accetti un corpo della richiesta, puoi passare tutte le informazioni necessarie sulla riga di comando come mostrato di seguito:

> apigee-adminapi.sh orgs envs virtual_hosts add -e prod -o testOrg --host localhost --admin foo@bar.com -v myVHostUtil -p 9005 -a 192.168.56.101:9005

In alternativa, puoi passare un file contenente le stesse informazioni che sarebbero contenute nel corpo della richiesta del POST. Ad esempio, il seguente comando prende un file che definisce l'host virtuale:

> apigee-adminapi.sh orgs envs virtual_hosts add -e prod -o testOrg --host localhost --admin foo@bar.com -f vhostcreate

dove il file vhostcreate contiene il corpo POST della chiamata. In questo esempio, si tratta di un corpo della richiesta in formato XML:

<VirtualHost name="myVHostUtil">
   <HostAliases>
     <HostAlias>192.168.56.101:9005</HostAlias>
   </HostAliases>
   <Interfaces/>
   <Port>9005</Port>
</VirtualHost>

Visualizzazione delle informazioni di debug e dell'API

Utilizza l'opzione --debug per l'utilità apigee-adminapi.sh per visualizzare informazioni dettagliate sul comando. Queste informazioni includono il comando cURL generato dall'utilità apigee-adminapi.sh per eseguire l'operazione.

Ad esempio, questo comando utilizza l'opzione --debug:

> apigee-adminapi.sh orgs add -o testOrg2 --admin foo@bar.com --host localhost --debug

Viene visualizzato il seguente output, incluso il comando cURL generato:

curl -H Content-Type: application/xml -v -X POST     -s -k -w \n==> %{http_code} 
-u ***oo@bar.com:*****     http://localhost:8080/v1/o -d <Organization name="testOrg2" 
type="paid"/>
* About to connect() to localhost port 8080 (#0)
*   Trying ::1... connected
* Connected to localhost (::1) port 8080 (#0)
* Server auth using Basic with user 'foo@bar.com'
> POST /v1/o HTTP/1.1
> Authorization: Basic c2dp234234NvbkBhcGlnZ2342342342342341Q5
> User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.19.1
Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2
> Host: localhost:8080
> Accept: */*
> Content-Type: application/xml
> Content-Length: 43
>
} [data not shown]
< HTTP/1.1 201 Created
< Content-Type: application/json
< Date: Tue, 03 May 2016 02:08:32 GMT
< Content-Length: 291
<
{ [data not shown]
* Connection #0 to host localhost left intact
* Closing connection #0