Edge pour Private Cloud v. 4.16.09
Créer une organisation, un environnement et un hôte virtuel en même temps
Avant de créer un proxy d'API sur Apigee Edge, vous devez créer au moins une organisation et, dans chaque organisation, un ou plusieurs environnements et hôtes virtuels.
En règle générale, les organisations et les environnements sont créés ensemble. Pour simplifier le processus, utilisez l'utilitaire apigee-provision. Appelez-le à partir de la ligne de commande sur le serveur de gestion Edge:
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-provision setup-org -f configFile
Le fichier de configuration contient les éléments suivants:
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
La commande effectue ensuite les opérations suivantes :
- Créez l'organisation.
Remarque : Vous ne pouvez pas renommer une organisation après l'avoir créée. - Associez l'organisation à un pod. Par défaut, elle est associée au pod "gateway".
- Ajoutez l'utilisateur spécifié en tant qu'administrateur de l'organisation. Si l'utilisateur n'existe pas, vous pouvez en créer un.
- Créer un ou plusieurs environnements
- Créer un ou plusieurs hôtes virtuels pour chaque environnement
- Associer l'environnement à tous les processeurs de messages
- Activer l'analyse
Pour obtenir un fichier de configuration silencieuse complète, consultez la section Intégrer un organisation.
Par défaut, la longueur maximale du nom de l'organisation et du nom de l'environnement est de 20 caractères lors de l'utilisation du service apigee-provision utilitaire. Cette limite ne s'applique pas si vous utilisez directement l'API Edge pour créer l'organisation ou environnement.
Créer une organisation
Utilisez la commande create-org pour créer une organisation:
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-provision create-org -f configFile
Ce script crée l'organisation, mais n'ajoute ni ne configure les environnements et les hôtes virtuels requis par l'organisation pour gérer les appels d'API.
Le fichier de configuration contient le nom de l'organisation et l'adresse e-mail de son administrateur. La Vous ne pouvez utiliser que les caractères suivants dans l'attribut "name" : a-z0-9\-$%. N'utilisez pas d'espaces. des points ou des lettres majuscules dans le nom:
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
Ensuite:
- Crée l'organisation
- Associe l'organisation à un pod, par défaut au pod "gateway".
- Ajoute l'utilisateur spécifié en tant qu'administrateur de l'organisation. L'utilisateur doit déjà exister, sinon le script génère une erreur.
<Error> <Code>organizations.OrganizationAlreadyExists</Code> <Message>Organization : test already exists</Message> <Contexts/> </Error>
Créer une organisation à l'aide de Appels d'API
Vous pouvez également utiliser les appels d'API suivants pour créer une organisation. Le premier appel crée l'organisation :
curl -H "Content-Type:application/xml" -u <sysAdminEmail>:<adminPasswd> \ -X POST http://<ms-ip>:8080/v1/organizations \ -d '<Organization name="<org-name>" type="paid"/>'
L'appel suivant associe l'organisation à 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"
Vous pouvez effectuer cet appel plusieurs fois pour associer l'organisation à plusieurs les pods.
L'appel final ajoute un utilisateur existant en tant qu'administrateur de l'organisation :
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>'
Si l'utilisateur n'existe pas, vous pouvez utiliser l'appel suivant pour le créer, comme décrit dans la section "Ajouter un utilisateur".
Créer un environnement
Utilisez la commande add-env pour créer un environnement dans une organisation existante :
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-provision add-env -f configFile
Ce fichier de configuration contient les informations nécessaires à la création de l'environnement et hôte:
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
La commande
- Crée l'environnement
- Crée un hôte virtuel unique pour l'environnement
- Associe l'environnement à tous les processeurs de messages du pod associé au organisation hébergeant l'environnement.
- Active les analyses
Remarque : Si vous activez les analyses pour un environnement d'une organisation, vous devez les activer pour tous les environnements de l'organisation.
Créer un environnement à l'aide de Appels d'API
Vous pouvez également utiliser les appels d'API suivants pour créer un environnement. Le premier appel crée l'environnement :
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>"/>'
L'appel suivant associe l'environnement à un processeur de messages. Passez cet appel pour chaque Processeur de messages que vous souhaitez associer à l'environnement:
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>"
Où <uuid> est l'UUID du processeur de messages. Vous pouvez obtenir l'UUID à l'aide de la commande suivante :
> curl http://<mp-ip>:8082/v1/servers/self
Où "<mp-ip>" est le Adresse IP du processeur de messages.
L'appel d'API suivant active Analytics pour un environnement donné. Elle valide l'existence Les serveurs Qpid et Postgres dans les POD de tous les centres de données Il lance ensuite l'intégration d'Analytics pour l'organisation et l'environnement donnés.
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-provision enable-ax -f configFile
Ce fichier de configuration contient les éléments suivants:
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"
Où sample.json contient les éléments suivants :
{ "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"] } }
Propriété postgres-servers contient une liste des UUID Postgres séparés par une virgule, et la propriété qpid-server contient les UUID Qpid. Si vous devez obtenir ces UUID, utilisez les commandes suivantes.
Pour Qpid, exécutez la commande suivante :
curl -u <sysAdminEmail>:<passwd> http://<ms-ip>/v1/servers?pod=central
Le résultat de cette commande est un objet JSON. Pour chaque serveur Qpid, le résultat s'affiche au format suivant :
"type" : [ "qpid-server" ], "uUID" : "d3c5acf0-f88a-478e-948d-6f3094f12e3b"
Pour Postgres, exécutez la commande suivante:
curl -u <sysAdminEmail>:<passwd> http://<ms-ip>/v1/servers?pod=analytics
Pour chaque serveur Postgres, le résultat s'affiche au format suivant :
"type" : [ "postgres-server" ], "uUID" : "d3c5acf0-f88a-478e-948d-6f3094f12e3b"
Créer un hôte virtuel
Vous pouvez créer un hôte virtuel dans l'environnement existant d'une organisation. Souvent, un environnement est compatible avec plusieurs hôtes virtuels. Par exemple, un hôte virtuel peut prendre en charge le protocole d'authentification, tandis qu'un autre hôte virtuel du même environnement accepte le protocole HTTPS standard.
Utilisez l'appel d'API suivant pour créer des hôtes virtuels supplémentaires ou pour créer un hôte virtuel pour un environnement sans hôte virtuel :
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>9443</Port> \ </VirtualHost>'
Pour obtenir une description complète de la création d'un hôte virtuel, y compris de la création d'un environnement virtuel sécurisé, qui utilise TLS/SSL sur HTTPS, consultez la page http://apigee.com/docs/api-services/content/creating-virtual-host.