Créer une organisation, un environnement et un hôte virtuel

Edge pour Private Cloud version 4.16.05

Créer simultanément une organisation, un environnement et un hôte virtuel

Avant de créer un proxy d'API sur Apigee Edge, vous devez créer au moins une organisation et, au sein de 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 

Ensuite, la commande:

  • Créer l'organisation
    Remarque: Vous ne pouvez pas renommer une organisation après l'avoir créée.
  • Associer l'organisation à un pod (par défaut, cette organisation est associée au pod de "passerelle")
  • Ajoutez l'utilisateur spécifié en tant qu'administrateur de l'entreprise. S'il 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 Analytics

Pour obtenir un fichier de configuration silencieuse complet, consultez la section Intégrer une organisation.

Par défaut, la longueur maximale du nom de l'organisation et du nom de l'environnement est de 20 caractères lorsque vous utilisez l'utilitaire apigee-provision. Cette limite ne s'applique pas si vous utilisez directement l'API Edge pour créer l'organisation ou l'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 et l'adresse e-mail de l'administrateur de l'organisation. Les caractères que vous pouvez utiliser dans l'attribut "name" sont limités aux suivants: a-z0-9\-$%. N'utilisez pas d'espaces, de points ni de 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, la commande:

  • Crée l'organisation
  • Associe l'organisation à un pod (l'organisation est par défaut associée au pod de la "passerelle")
  • Ajoute l'utilisateur spécifié en tant qu'administrateur de l'organisation. Si l'utilisateur existe déjà, 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 d'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 pods.

Le dernier appel 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 de l'hôte virtuel:

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é à l'organisation à laquelle appartient l'environnement.
  • Active les analyses
    Remarque: Si vous activez les analyses pour un environnement au sein d'une organisation, vous devez l'activer pour tous les environnements de l'organisation.

Créer un environnement à l'aide d'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. Effectuez 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 l'adresse IP du processeur de messages.

L'appel d'API suivant active Analytics pour un environnement donné. Il vérifie l'existence des serveurs Qpid et Postgres dans les POD de tous les centres de données. Il lance ensuite l'intégration Analytics pour l'organisation et l'environnement concernés.

> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-provision enable-ax -f configFile

Ce fichier de configuration contient:

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"

sample.json contient des entrées pour l'intégration Analytics. Contactez l'assistance Apigee pour obtenir le fichier JSON.

Créer un hôte virtuel

Vous pouvez créer un hôte virtuel dans un environnement existant au sein d'une organisation. Souvent, un environnement accepte plusieurs hôtes virtuels. Par exemple, un hôte virtuel peut être compatible avec le protocole HTTP, tandis qu'un autre hôte virtuel du même environnement peut être compatible avec le protocole HTTPS chiffré.

Utilisez l'appel d'API suivant afin de 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>443</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 hôte virtuel sécurisé utilisant TLS/SSL sur HTTPS, consultez la page http://apigee.com/docs/api-services/content/creating-virtual-host.