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

Vous pouvez créer une organisation, un environnement et un hôte virtuel via la ligne de commande ou créer chacun d'eux séparément. Vous pouvez également utiliser API Edge pour effectuer bon nombre de ces actions.

Vidéo : regardez une courte vidéo pour un aperçu de la configuration de l'organisation Apigee.

la création d'une organisation, et l'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, au sein de chaque organisation, dans 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 Edge Management Serveur:

/opt/apigee/apigee-service/bin/apigee-service apigee-provision setup-org -f configFile

configFile correspond au chemin d'accès à un fichier de configuration semblable à suivantes:

# Set Edge sys admin credentials.
ADMIN_EMAIL=your@email.com
APIGEE_ADMINPW=admin_password  # If omitted, you are prompted for it.
NEW_USER="y"
USER_NAME=orgAdmin@myCo.com
FIRST_NAME=foo
LAST_NAME=bar
USER_PWD="userPword"
ORG_NAME=example  # lowercase only, no spaces, underscores, or periods.
ENV_NAME=prod  # lowercase only
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.
# Optionally set the base URL displayed by the Edge UI for an
# API proxy deployed to the virtual host.
# VHOST_BASEURL="http://myCo.com"
# AXGROUP=axgroup-001 # Default value is axgroup-001

Lors de la configuration d'une organisation, le script setup-org effectue les opérations suivantes:

  • Crée l'organisation.
  • Associe l'organisation à la "passerelle" pod. Vous ne pouvez pas le modifier.
  • Ajoute l'utilisateur spécifié en tant qu'administrateur de l'organisation. Si l'utilisateur n'existe pas, pouvez en créer un.
  • Crée un ou plusieurs environnements.
  • crée un ou plusieurs hôtes virtuels pour chaque environnement.
  • Associe l'environnement à tous les processeurs de messages.
  • Active les analyses.

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 API Edge directement pour créer l'organisation ou l'environnement. Le nom de l'organisation et l'environnement le nom doit être en minuscules.

Créer une organisation

Utilisez la commande create-org pour créer une organisation, comme dans l'exemple suivant affiche:

/opt/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'organisation administrateur. Les caractères que vous pouvez utiliser dans l'attribut name sont limités aux a-z0-9\-$% N'utilisez pas d'espaces, de points ou de lettres majuscules dans le nom:

APIGEE_ADMINPW=admin_password    # If omitted, you are prompted for it.
ORG_NAME=example  # lowercase only, no spaces, underscores, or periods.
ORG_ADMIN=orgAdmin@myCo.com

Le script create-org:

  • Crée l'organisation.
  • Associe l'organisation à la "passerelle" pod.
  • 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.

Créez une organisation à l'aide de Appels d'API

Vous pouvez utiliser les appels d'API suivants pour créer une organisation. Le premier appel crée organisation:

curl -H "Content-Type:application/xml" -u sysAdminEmail:adminPasswd \
  -X POST http://management_server_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://management_server_IP:8080/v1/organizations/org_name/pods \
  -d "region=default&pod=gateway"

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>'
<ph type="x-smartling-placeholder">

Si l'utilisateur n'existe pas, vous pouvez utiliser l'appel suivant pour le créer comme décrit dans Ajouter un utilisateur :

Créez un environnement

Utilisez le script add-env pour créer un environnement dans une organisation existante:

/opt/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=admin_password  # If omitted, you are prompted for it.
ORG_NAME=example  # lowercase only, no spaces, underscores, or periods.
ENV_NAME=prod  # lowercase only
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. 
# Optionally set the base URL displayed by the Edge UI for an
# API proxy deployed to the virtual host.
# VHOST_BASEURL="http://myCo.com"
# AXGROUP=axgroup-001 # Default value is axgroup-001

La commande add-env :

  • Crée l'environnement.
  • crée un seul hôte virtuel pour l'environnement ;
  • Associe l'environnement à tous les processeurs de messages du pod associé au organisation hébergeant l'environnement.
  • Active les données analytiques

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://management_server_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://management_server_IP:8080/v1/organizations/org_name/environments/env_name/servers \
  -d "action=add&uuid=uuid"

uuid est l'UUID du processeur de messages. Vous pouvez obtenir l'UUID à l'aide de la méthode :

curl http://Message_Processor_IP:8082/v1/servers/self

Message_Processor_IP est l'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.

.

Ce fichier de configuration contient:

ORG_NAME=orgName  # lowercase only, no spaces, underscores, or periods.
ENV_NAME=envName  # lowercase only

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:password http://management_server_IP/v1/servers?pod=central

Le résultat de cette commande est un objet JSON. Pour chaque serveur Qpid, vous verrez une sortie dans le formulaire:

"type" : [ "qpid-server" ],
"uUID" : "d3c5acf0-f88a-478e-948d-6f3094f12e3b"

Pour Postgres, exécutez la commande suivante:

curl -u sysAdminEmail:admin_password http://management_server_IP/v1/servers?pod=analytics

Pour chaque serveur Postgres, le résultat se présente sous la forme suivante:

"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, prend en charge 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://management_server_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 environnement virtuel sécurisé, qui utilise TLS/SSL sur HTTPS, consultez la section Configuration de l'accès TLS à une API pour le Private Cloud.