Edge for Private Cloud v. 4.17.01
Mit dem Dienstprogramm apigee-adminapi.sh können Sie dieselben Edge-Konfigurationsaufgaben ausführen, die Sie auch durch Aufrufe der Edge Management API ausführen. Das Dienstprogramm apigee-adminapi.sh bietet folgende Vorteile:
- Einfache Befehlszeile verwenden
- Implementiert die Tab-basierte Befehlsvervollständigung
- Bietet Hilfe und Nutzungsinformationen
- Kann den entsprechenden API-Aufruf anzeigen, wenn Sie die API ausprobieren möchten
Das Dienstprogramm apigee-adminapi.sh ist kein Ersatz für das Dienstprogramm apigee-provision. Das Dienstprogramm apigee-provision verwendet das Dienstprogramm apigee-adminapi.sh, um seine Aufgaben auszuführen.
Die wichtigsten Unterschiede zwischen den beiden sind:
- Das Dienstprogramm apigee-adminapi.sh führt atomare Funktionen aus, die einzelne Edge API-Aufrufe ersetzen. Zum Erstellen einer Organisation, einer Umgebung und eines virtuellen Hosts sind beispielsweise drei separate apigee-adminapi.sh-Befehle erforderlich, die drei API-Aufrufen entsprechen.
- Das Dienstprogramm apigee-provision ist so konzipiert, dass es einen vollständigen Vorgang auf hoher Ebene in einem einzigen Befehl ausführt. Sie können beispielsweise eine Organisation, eine Umgebung und einen virtuellen Host mit einem einzigen apigee-provision-Befehl erstellen, indem Sie eine Konfigurationsdatei mit allen erforderlichen Informationen übergeben.
In der Edge-Dokumentation werden beide Dienstprogramme verwendet, sofern dies sinnvoll ist.
apigee-adminapi.sh installieren
Das Dienstprogramm apigee-adminapi.sh wird automatisch installiert, wenn Sie das Dienstprogramm apigee-provision oder apigee-validate installieren.
Das Dienstprogramm wird am folgenden Speicherort installiert:
/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh
apigee-adminapi.sh-Syntax
Das Dienstprogramm apigee-adminapi.sh verwendet eine einfache Befehlszeilensyntax. Sie können jederzeit die Tabulatortaste drücken, um eine Aufforderung mit den verfügbaren Befehlsoptionen aufzurufen.
Wenn Sie alle möglichen Befehle sehen möchten, rufen Sie das Dienstprogramm ohne Optionen auf:
> apigee-adminapi.sh
Wenn Sie nach der Eingabe von apigee-adminapi.sh die Tabulatortaste drücken, wird die Liste der möglichen Optionen angezeigt:
analytics classification logsessions regions securityprofile userroles buildinfo GET orgs runtime servers users
Mit der Tabulatortaste werden Optionen basierend auf dem Kontext des Befehls angezeigt. Wenn Sie nach der Eingabe die Tabulatortaste drücken:
> apigee-adminapi.sh orgs
Sie sehen die möglichen Optionen für den Befehl orgs:
add apis apps delete envs list pods userroles
Verwenden Sie die Option -h, um Hilfe zu einem beliebigen Befehl aufzurufen. Wenn Sie beispielsweise die Option -h wie unten gezeigt verwenden:
> apigee-adminapi.sh orgs -h
Das Dienstprogramm zeigt vollständige Hilfeinformationen für alle möglichen Optionen des Befehls orgs an. Das erste Element in der Ausgabe zeigt die Hilfe für den Befehl "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
Parameter mit Befehlszeilen-Switches und Umgebungsvariablen festlegen
Sie müssen alle Parameter für einen Befehl entweder über Befehlszeilenoptionen oder über Umgebungsvariablen eingeben. Stellen Sie den Befehlszeilenparametern nach Bedarf einen einzelnen Bindestrich (-) oder einen doppelten Bindestrich (--) voran.
In der oben gezeigten Hilfe für den Befehl „orgs add“ können Sie den Organisationsnamen beispielsweise so angeben:
- Mit dem Befehlszeilenschalter -o:
> apigee-adminapi.sh orgs -o testOrg - Umgebungsvariable mit dem Namen ORG festlegen:
> export ORG=testOrg
> apigee-adminapi.sh orgs
Wenn Sie erforderliche Parameter für den Befehl weglassen, wird eine Fehlermeldung mit den fehlenden Parametern angezeigt. Wenn Sie beispielsweise beim Erstellen einer Organisation die Umgebungsvariable --host oder EDGE_SERVER weglassen, die den Edge-Verwaltungsserver angibt, wird die folgende Fehlermeldung angezeigt:
Error with required variable or parameter ADMIN_PASSWORD....OK ADMIN_EMAIL....OK EDGE_SERVER....null
Zwei gängige Parameter, die Sie häufig als Umgebungsvariablen festlegen, sind die E-Mail-Adresse des Systemadministrators und die IP-Adresse des Management Servers:
> export ADMIN_EMAIL=foo@bar.com > export EDGE_SERVER=192.168.56.101
Datei an das Dienstprogramm „apigee-adminapi.sh“ übergeben
Einige apigee-adminapi.sh-Dienstprogrammbefehle entsprechen PUT- und POST-API-Aufrufen, die einen Anfragetext enthalten. Das Erstellen eines virtuellen Hosts entspricht beispielsweise einem POST-API-Aufruf, für den Informationen zum virtuellen Host im Anfragetext erforderlich sind.
Wenn Sie das Dienstprogramm apigee-adminapi.sh verwenden, um einen virtuellen Host zu erstellen, oder einen Befehl, der einen Anfragetext akzeptiert, können Sie alle erforderlichen Informationen in der Befehlszeile übergeben, wie unten gezeigt:
> 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
Alternativ können Sie eine Datei übergeben, die dieselben Informationen enthält, die im Anfragetext des POST enthalten wären. Der folgende Befehl verwendet beispielsweise eine Datei, die den virtuellen Host definiert:
> apigee-adminapi.sh orgs envs virtual_hosts add -e prod -o testOrg --host localhost --admin foo@bar.com -f vhostcreate
wobei die Datei vhostcreate den POST-Text des Aufrufs enthält. In diesem Beispiel ist es ein XML-formatierter Anfragetext:
<VirtualHost name="myVHostUtil">
<HostAliases>
<HostAlias>192.168.56.101:9005</HostAlias>
</HostAliases>
<Interfaces/>
<Port>9005</Port>
</VirtualHost>Debugging- und API-Informationen anzeigen
Verwenden Sie die Option --debug für das Dienstprogramm apigee-adminapi.sh, um detaillierte Informationen zum Befehl anzuzeigen. Diese Informationen umfassen den cURL-Befehl, der vom Dienstprogramm apigee-adminapi.sh generiert wurde, um den Vorgang auszuführen.
In diesem Befehl wird beispielsweise die Option --debug verwendet:
> apigee-adminapi.sh orgs add -o testOrg2 --admin foo@bar.com --host localhost --debug
Die folgende Ausgabe wird angezeigt, einschließlich des generierten cURL-Befehls:
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