Utilizzo dell'utilità Apigee-adminapi.sh

apigee-adminapi.sh chiama l'API di gestione Edge per eseguire molte attività di manutenzione.

Informazioni su apigee-adminapi.sh

Richiama apigee-adminapi.sh

Richiami apigee-adminapi.sh da un nodo del server di gestione. Quando richiami l'utilità, devi definire quanto segue come variabili di ambiente o opzioni della riga di comando:

  • ADMIN_EMAIL (corrisponde all'opzione della riga di comando admin)
  • ADMIN_PASSWORD (pwd)
  • EDGE_SERVER (host)

L'esempio seguente richiama apigee-adminapi.sh e passa i valori richiesti come opzioni della riga di comando:

/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh buildinfo list --admin user@example.com --pwd abcd1234 --host localhost

L'esempio seguente definisce le opzioni richieste come variabili di ambiente temporanee e poi richiama l'utilità apigee-adminapi.sh:

export ADMIN_EMAIL=user@example.com
export ADMIN_PASSWORD=abcd1234
export EDGE_SERVER=192.168.56.101
/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh servers list

Se non passi la password come opzione o non la definisci come variabile di ambiente, apigee-adminapi.sh ti chiederà di inserirla.

Imposta i parametri apigee-adminapi.sh

Devi inserire tutti i parametri di un comando utilizzando gli switch della riga di comando o le variabili di ambiente. Anteponi alle opzioni della riga di comando un trattino singolo (-) o un trattino doppio (--) come richiesto.

Ad esempio, puoi specificare il nome dell'organizzazione in uno dei seguenti modi:

  • Utilizzando l'opzione della riga di comando -o:
    /opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh orgs -o testOrg
  • Impostazione di una variabile di ambiente denominata ORG:
    export ORG=testOrg
    /opt/apigee/apigee-adminapi/bin/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 l'opzione --host (che corrisponde alla variabile di ambiente EDGE_SERVER), apigee-adminapi.sh risponde con il seguente errore:

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

Se ricevi un errore HTTP STATUS CODE: 401, significa che hai inserito la password sbagliata.

Richiedi assistenza per apigee-adminapi.sh

In qualsiasi momento, utilizza il tasto Tab per visualizzare un prompt che elenca le opzioni di comando disponibili.

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

/opt/apigee/apigee-adminapi/bin/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 premi il tasto Tab dopo aver digitato:

/opt/apigee/apigee-adminapi/bin/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 di qualsiasi comando. Ad esempio, se utilizzi l'opzione -h come mostrato di seguito:

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

L'utilità visualizza informazioni di aiuto complete per tutte le opzioni possibili del comando orgs. Il primo elemento nell'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

Passa un file ad apigee-adminapi.sh

L'utilità apigee-adminapi.sh è un wrapper di curl. Di conseguenza, alcuni comandi corrispondono a chiamate API PUT e POST che accettano un corpo della richiesta. Ad esempio, la creazione di un host virtuale corrisponde a una chiamata API POST che richiede informazioni sull'host virtuale nel corpo della richiesta.

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

/opt/apigee/apigee-adminapi/bin/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 POST. Ad esempio, il comando seguente accetta un file che definisce l'host virtuale:

/opt/apigee/apigee-adminapi/bin/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>

Visualizza le informazioni di debug e dell'API

Utilizza l'opzione --debug dell'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, il comando seguente utilizza l'opzione --debug. I risultati mostrano l'output del comando curl sottostante in modalità dettagliata:

/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh orgs add -o testOrg2 --admin foo@bar.com --host localhost --debug
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