The apigee-adminapi.sh appelle l'API Management Edge pour effectuer de nombreuses tâches de maintenance.
À propos d'apigee-adminapi.sh
Appeler apigee-adminapi.sh
Vous appelez apigee-adminapi.sh à partir d'un nœud de serveur de gestion. Lorsque vous appelez l'utilitaire, vous devez
définir les éléments suivants en tant que variables d'environnement ou options de ligne de commande :
ADMIN_EMAIL(correspond à l'option de ligne de commandeadmin)ADMIN_PASSWORD(pwd)EDGE_SERVER(host)
L'exemple suivant appelle apigee-adminapi.sh et transmet les valeurs requises en tant qu'options de ligne de commande
:
/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh buildinfo list --admin user@example.com --pwd abcd1234 --host localhost
L'exemple suivant définit les options requises en tant que variables d'environnement temporaires, puis
appelle l'apigee-adminapi.sh utilitaire :
export ADMIN_EMAIL=user@example.comexport ADMIN_PASSWORD=abcd1234export EDGE_SERVER=192.168.56.101/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh servers list
Si vous ne transmettez pas le mot de passe en tant qu'option ou si vous ne le définissez pas en tant que variable d'environnement,
apigee-adminapi.sh vous invite à le saisir.
Définir les paramètres apigee-adminapi.sh
Vous devez saisir tous les paramètres d'une commande à l'aide de commutateurs de ligne de commande ou de variables d'environnement. Faites précéder les commutateurs de ligne de commande d'un tiret simple (-) ou d'un double tiret (--) selon les besoins.
Par exemple, vous pouvez spécifier le nom de l'organisation de l'une des manières suivantes :
- À l'aide du commutateur de ligne de commande
-o:/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh orgs -o testOrg
- En définissant une variable d'environnement nommée
ORG:export ORG=testOrg
/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh orgs
Si vous omettez des paramètres obligatoires dans la commande, l'utilitaire affiche un message d'erreur
décrivant les paramètres manquants. Par exemple, si vous omettez l'option --host (qui correspond à la variable d'environnement EDGE_SERVER), apigee-adminapi.sh répond avec l'erreur suivante :
Error with required variable or parameter ADMIN_PASSWORD....OK ADMIN_EMAIL....OK EDGE_SERVER....null
Si vous recevez une erreur HTTP STATUS CODE: 401, cela signifie que vous avez saisi un
mot de passe incorrect.
Obtenir de l'aide pour apigee-adminapi.sh
À tout moment, utilisez la touche Tabulation pour afficher une invite qui liste les options de commande disponibles.
Pour afficher toutes les commandes possibles, appelez l'utilitaire sans aucune option :
/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh
Si vous appuyez sur la touche Tabulation après avoir saisi apigee-adminapi.sh, la liste des options possibles s'affiche :
analytics classification logsessions regions securityprofile userroles buildinfo GET orgs runtime servers users
La touche Tabulation affiche les options en fonction du contexte de la commande. Si vous appuyez sur la touche Tabulation après avoir saisi :
/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh orgs
Les options possibles pour compléter la commande orgs s'affichent :
add apis apps delete envs list pods userroles
Utilisez l'option -h pour afficher l'aide de n'importe quelle commande. Par exemple, si vous utilisez l'
-h option comme indiqué ci-dessous :
/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh orgs -h
L'utilitaire affiche des informations d'aide complètes pour toutes les options possibles de la
orgs commande. Le premier élément de la sortie affiche l'aide de la
orgs add commande :
+++++++++++++++++++++++++++++++++++++++++++ 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
Transmettre un fichier à apigee-adminapi.sh
L'utilitaire apigee-adminapi.sh est un wrapper autour de curl. Par conséquent, certaines
commandes correspondent à des appels d'API PUT et POST qui acceptent un corps de requête.
Par exemple, la création d'un hôte virtuel correspond à un appel d'API POST qui nécessite
des informations sur l'hôte virtuel dans le corps de la requête.
Lorsque vous utilisez l'utilitaire apigee-adminapi.sh pour
créer un hôte virtuel ou toute commande qui accepte un corps de requête, vous pouvez transmettre toutes les informations
nécessaires sur la ligne de commande, comme indiqué ci-dessous :
/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
Vous pouvez également transmettre un fichier contenant les mêmes informations que celles qui seraient contenues dans le corps de la requête POST. Par exemple, la commande suivante prend un fichier définissant l'hôte virtuel :
/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
Où le fichier vhostcreate contient le corps POST de l'appel. Dans
cet exemple, il s'agit d'un corps de requête au format XML :
<VirtualHost name="myVHostUtil">
<HostAliases>
<HostAlias>192.168.56.101:9005</HostAlias>
</HostAliases>
<Interfaces/>
<Port>9005</Port>
</VirtualHost>Afficher les informations de débogage et d'API
Utilisez l'option --debug de l'utilitaire apigee-adminapi.sh pour afficher
des informations détaillées sur la commande. Ces informations incluent la curl commande
générée par l'apigee-adminapi.sh utilitaire pour effectuer l'opération.
Par exemple, la commande suivante utilise l'option --debug. Les résultats
affichent la sortie de la commande sous-jacente curl en mode détaillé :
/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