<ph type="x-smartling-placeholder"></ph>
Vous consultez la documentation Apigee Edge.
Accédez à la page
Documentation sur Apigee X. En savoir plus
Dans Edge, un routeur gère tout le trafic entrant de l'API. Autrement dit, tous les protocoles HTTP et HTTPS les requêtes adressées à un proxy d'API sont d'abord traitées par un routeur Edge.
Un hôte virtuel vous permet d'héberger plusieurs noms de domaine sur un serveur. Pour Edge, le serveur correspond à un routeur Edge. En définissant plusieurs hôtes virtuels sur un routeur, le routeur peut gérer les requêtes API vers plusieurs noms de domaine.
Un hôte virtuel sur Edge définit le protocole d'accès (HTTP ou HTTPS), un port de routeur ouvert et un hôte un alias. L'alias d'hôte est généralement le nom de domaine DNS associé à l'adresse IP du routeur.
Par exemple, l'image suivante montre un routeur avec deux définitions d'hôte virtuel:
Le premier hôte virtuel gère les requêtes HTTPS domainName1 et le second gère les requêtes HTTP sur domainName2.
Lors d'une requête adressée à un proxy d'API, le routeur compare l'en-tête Host
de la requête entrante au
liste des alias d'hôtes définis par tous les hôtes virtuels pour déterminer quel
l'hôte gère la requête.
À propos des définitions d'hôte virtuel
Les hôtes virtuels contiennent les informations suivantes:
- Nom interne de l'hôte virtuel. Vous utilisez ce nom pour faire référence à l'instance dans vos mandataires d'API et lors de la configuration de l'hôte virtuel.
- L'alias d'hôte de l'hôte virtuel. En général, l'alias d'hôte est le DNS
nom de domaine qui correspond
à l'adresse IP sur le routeur. L'en-tête
Host
d'un Les requêtes de proxy d'API doivent contenir l'alias d'hôte de l'hôte virtuel. - Un port ouvert sur le routeur.
- Indique si le protocole TLS (accès HTTPS) est activé ou non (accès HTTP).
Par exemple, vous spécifiez les informations suivantes lorsque vous créez un hôte virtuel:
- name = myvhost
- alias de l'hôte = apis.acme.com
- port = 443
- TLS activé
Sur la base du paramètre ci-dessus pour l'hôte virtuel, une requête adressée à un proxy d'API utilise au format suivant:
https://apis.acme.com/{proxy-base-path}/{resource-path}
où :
- {proxy-base-path} est défini lorsque vous créez un proxy d'API et est unique pour chaque proxy d'API.
Exemple :
https://apis.acme.com/characters
- {resource-path} est le chemin d'accès à une ressource accessible via le proxy d'API. Exemple :
https://apis.acme.com/characters/coyote https://apis.acme.com/characters/roadrunner
À propos des hôtes virtuels dans En périphérie pour le cloud
Chaque organisation Edge inclut automatiquement deux environnements (test
et prod
), deux hôtes virtuels dans chaque environnement (par défaut et sécurisé),
et les enregistrements DNS
pour chaque alias d'hôte.
L'alias d'hôte de chaque hôte virtuel fourni par Apigee contient le nom de l'organisation et environment, comme indiqué dans le tableau suivant:
Environment | Nom d'hôte virtuel | Alias d'hôte | Port | TLS activé |
---|---|---|---|---|
production | par défaut | {org-name}-prod.apigee.net |
80 | Non |
sécurisé | {org-name}-prod.apigee.net |
443 | Oui | |
test | par défaut | {org-name}-test.apigee.net |
80 | Non |
sécurisé | {org-name}-test.apigee.net |
443 | Oui |
Par exemple, le nom de domaine par défaut d'une organisation appelée "myorg
"
dans l'environnement prod
est "myorg-prod.apigee.net
".
Par conséquent, pour accéder à un proxy d'API dans cette organisation, vous utilisez une URL au format suivant:
http://myorg-prod.apigee.net/{proxy-base-path}/{resource-path} https://myorg-prod.apigee.net/{proxy-base-path}/{resource-path}
Forfaits payants Apigee:nom de domaine contenant "apigee.net" n'est peut-être pas celle que vous voulez exposer clients. Vous pouvez utiliser une entrée DNS et un enregistrement CNAME pour mapper un nom de domaine à votre organisation sur Edge. Vous devez également créer un hôte virtuel avec l'alias d'hôte défini sur ce nom de domaine. Cela permet aux développeurs d'accéder à votre API via un domaine spécifique à votre entreprise.
Voici un exemple de domaine personnalisé dans Edge:
https://apis.acme.com/{proxy-base-path}/{resource-path}
À propos des hôtes virtuels sur Edge pour Private Cloud
Lorsque vous installez Apigee Edge pour le cloud privé, il n'existe aucune organisation par défaut, ou des hôtes virtuels créés pour vous. Une fois le processus d'installation Edge terminé, la première action consiste généralement à créer une organisation, un environnement et un hôte virtuel l’« intégration » processus.
Pour effectuer l'intégration, exécutez la commande suivante sur le nœud du serveur de gestion Edge:
/opt/apigee/apigee-service/bin/apigee-service apigee-provision setup-org -f configFile
où configFile contient les informations nécessaires à la création d'une l'utilisateur, l'organisation, l'environnement et l'hôte virtuel.
Par exemple, vous pouvez créer les éléments suivants:
- un utilisateur de votre choix qui occupe le rôle d'administrateur de l'entreprise ;
- Une organisation nommée
example
- Un environnement de l'organisation nommé
prod
- Un hôte virtuel dans l'environnement nommé
default
qui autorise l'accès HTTP sur le port 9001 - Un alias d'hôte du nom DNS utilisé pour accéder au routeur, ou l'adresse IP du routeur et
port de l'hôte virtuel au format
IP:9001
.
Vous pouvez ensuite ajouter un nombre illimité d'organisations, d'environnements et d'hôtes virtuels à votre de la version sur site d'Edge. Pour en savoir plus, consultez les pages suivantes :
Les hôtes virtuels sont ouverts sur le routeur Edge. Vous devez donc vous assurer que le port que vous spécifiez pour l'hôte virtuel est ouvert sur le routeur. Vous pouvez utiliser une commande dans le format ci-dessous pour ouvrir un port:
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 9001 -j ACCEPT --verbose
Après avoir exécuté cette commande, vous pouvez accéder à vos API à l'aide d'une URL au format suivant:
http://<router-ip>:9001/{proxy-base-path}/{resource-path}
En règle générale, vous ne publiez pas vos API pour les clients disposant d'une adresse IP numéro de port. À la place, vous définissez une entrée DNS pour le routeur et le port. Exemple :
http://myAPI.myCo.com/{proxy-base-path}/{resource-path}
Lorsque vous définissez l'entrée DNS, vous devez également créer un hôte virtuel avec un alias d'hôte qui correspond au nom de domaine de l'entrée DNS. Dans l'exemple ci-dessus, vous devez spécifier un alias d'hôte. de myAPI.myCo.com lorsque vous créez l'hôte virtuel.
À propos des alias d'hôte et des noms DNS
L'une des propriétés que vous définissez pour un hôte virtuel est l'alias d'hôte. L'alias d'hôte est généralement le nom DNS de l’hôte virtuel. La configuration de l'alias d'hôte dépend du type de Installation en périphérie: cloud ou cloud privé
Les alias d'hôte et Noms DNS dans Edge for the Cloud
Dans Edge pour le cloud, lorsque vous créez pour la première fois une organisation Edge, Apigee
crée deux environnements (test
et prod
), deux hôtes virtuels dans
chaque environnement (par défaut et sécurisé), ainsi que des enregistrements DNS pour chacun
hôte virtuel.
L'alias d'hôte des hôtes virtuels contient le nom de l'organisation et de l'environnement. Par conséquent, une requête via un hôte virtuel se présente comme suit:
http://{org-name}-prod.apigee.net/{proxy-base-path}/{resource-path}
https://{org-name}-prod.apigee.net/{proxy-base-path}/{resource-path}
http://{org-name}-test.apigee.net/{proxy-base-path}/{resource-path}
https://{org-name}-test.apigee.net/{proxy-base-path}/{resource-path}
Généralement, il est préférable de créer des hôtes virtuels qui utilisent votre nom de domaine au lieu d'utiliser le
domaine apigee.net
par défaut. À faire
Vous devez donc d'abord créer votre propre entrée DNS et votre propre enregistrement CNAME.
La figure suivante montre une configuration type de la façon dont Edge traite une requête API:
Dans cet exemple :
- api.acme.com est le nom de domaine que vous souhaitez utiliser.
- Vous définissez une entrée DNS et un enregistrement CNAME qui pointent vers api.acme.com. acme-prod.apigee.net.
- La requête contient l'en-tête
Host
utilisé par le routeur pour déterminer l'hôte virtuel qui gère la requête.
Dans cet exemple, vous spécifiez les informations suivantes dans une définition d'hôte virtuel:
- name = myvhost
- alias de l'hôte = apis.acme.com
- port = 443
- Activer l'accès TLS
Pour en savoir plus, consultez la section Configurer des hôtes virtuels pour le cloud.
Alias d'hôte et noms DNS dans Edge pour Private Cloud
Comme avec Edge pour le cloud, vous créez des hôtes virtuels qui utilisent votre propre nom de domaine pour l'hôte un alias. Vous créez ensuite vos propres entrée DNS et enregistrement CNAME pour accéder à ces hôtes virtuels.
L'une des différences entre le cloud et le cloud privé est que, dans des noms DNS créés automatiquement pour vos organisations, au format suivant:
- name=default:
http://{org-name}-{env-name}.apigee.net
(Port 80 du routeur) - name=secure (sécurisé) :
https://{org-name}-{env-name}.apigee.net
(port du routeur 443)
Dans Edge pour le cloud privé, vous devez créer les entrées DNS vers l'adresse IP et le port de votre routeur.
Par exemple, vous pouvez spécifier les informations suivantes dans la définition d'un hôte virtuel:
- name = myvhost
- alias de l'hôte = apis.acme.com
- port = 9001
- Activer l'accès TLS
La figure suivante montre une configuration type de la façon dont Edge traite une requête API:
Dans cet exemple :
- api.acme.com est le nom de domaine que vous souhaitez utiliser.
- Vous définissez une entrée DNS et un enregistrement CNAME pour pointer api.acme.com vers l'adresse IP. adresse IP et port du routeur.
- La requête contient l'en-tête
Host
utilisé par le routeur pour déterminer l'hôte virtuel qui gère la requête.
Pour en savoir plus, consultez la section Configurer des hôtes virtuels pour le cloud privé.
Alias d'hôte et caractères génériques
Vous pouvez inclure le signe "*" dans l'alias d'hôte. Le « * » le caractère générique peut ne doit se trouver qu'au début (avant le premier ".") de l'alias d'hôte, et ne peut pas être mélangé à d'autres caractères.
Voici un exemple d'alias d'hôte valide utilisant un caractère générique:
*.example.com
Les exemples suivants ne sont pas valides:
www.*.example.com w*.example.com
L'utilisation d'un caractère générique dans
un alias d'hôte virtuel permet
Les proxys d'API gèrent les appels adressés à plusieurs sous-domaines, tels que
alpha.example.com
, beta.example.com
ou
live.example.com
L'utilisation d'un alias générique vous permet également d'utiliser moins de ressources
d'hôtes par environnement pour rester dans le produit
limites, car un hôte virtuel comportant un caractère générique compte comme un seul hôte virtuel.
Le nom CN du certificat TLS de l'hôte virtuel doit comporter un caractère générique correspondant.
Par exemple, *.example.com
.
À propos des propriétés d'hôte virtuel
Dans Edge, un hôte virtuel est représenté par un objet XML. Par exemple, L'objet XML suivant définit un hôte virtuel:
<VirtualHost name="vhostName"> <HostAliases> <HostAlias>hostAlias</HostAlias> </HostAliases> <Interfaces> <!-- Private Cloud only --> <Interface>interfaceName</Interface> <Port>portNumber</Port> <BaseURL>http://myCo.com<</BaseUrl> <OCSPStapling>off</OCSPStapling> <RetryOptions/> <SSLInfo> <Enabled>trueFalse</Enabled> <ClientAuthEnabled>trueFalse</ClientAuthEnabled> <KeyStore>ref://keystoreRef</KeyStore> <KeyAlias>keyAlias</KeyAlias> <TrustStore>ref://truststoreRef</TrustStore> <IgnoreValidationErrors>trueFalse</IgnoreValidationErrors> </SSLInfo> <Properties> <Property name="proxy_read_timeout">timeout</Property> <Property name="keepalive_timeout">timeout</Property> <Property name="proxy_request_buffering">onOff</Property> <Property name="proxy_buffering">onOff</Property> <Property name="ssl_protocols">protocolList</Property> <Property name="ssl_ciphers">cipherList</Property> </Properties> </VirtualHost>
La liste des propriétés que vous pouvez définir varie selon que vous utilisez Edge for the Cloud ou non ou Edge pour le cloud privé. Si vous utilisez Edge pour le cloud privé, la liste des disponibles dépend également de votre version d'Edge. Pour obtenir une description complète de toutes les propriétés d'un hôte virtuel, voir Documentation de référence sur la propriété d'hôte virtuel
Pour plus d'informations sur la création d'hôtes virtuels pour votre version spécifique d'Edge, voir: