Dans l'article précédent, nous avons découvert le fonctionnement des Wavelength Zones et activé celle de Casablanca. Passons maintenant à la pratique: déployer un site web public dans cette zone.
Avant de plonger dans le déploiement, il faut d'abord comprendre comment une ressource déployée dans une Wavelength Zone devient accessible depuis internet. c'est le rôle de la Carrier Gateway.
Qu'est-ce qu'une Carrier Gateway ?
Dans un VPC classique, pour donner un accès public à une instance EC2, on utilise une Internet Gateway. Dans une Wavelength Zone, ce rôle est joué par la Carrier Gateway. Elle permet d'assurer la connectivité entre les ressources de la Wavelength Zone et le réseau de l'opérateur via des Carrier IP
eu-west-3-cmn-wlz-1a), avec une Carrier IP, afin qu'elle soit accessible publiquement depuis le réseau d'Orange. - Créer la Carrier Gateway
- Créer un sous-réseau dans la Wavelength Zone
- Associer une table de routage
- Lancer l'instance EC2 avec une Carrier IP
- Tester l'accès public
1. Créer la Carrier Gateway
Donnez un nom, par exemple carrier-gw-casablanca, sélectionnez le VPC concerné. et cliquer sur Create carrier gateway.
Cela crée aussi une table de routage, qu on peut associer aux subnets de la Wavelength
2. Créer le sous-réseau dans la Wavelength Zone
subnet-wlz-casablanca. Dans Availability Zone, choisissez eu-west-3-cmn-wlz-1a afin de créer le sous-réseau dans la Wavelength Zone de Casablanca. Pour IPv4 CIDR block, indiquez par exemple 10.0.1.0/24, puis sélectionnez Create subnet pour finaliser sa création.3. Configurer le routage
Une fois le sous-réseau créé, il faut l'associer à la table de routage utilisée pour la Wavelength Zone.o
Pour cela, dans les paramètres dy subnet, dans l'onglet Route table, sélectionnez Edit route table association
4. Lancer l'instance EC2 avec une Carrier IP
L’objectif est de lancer l’instance directement dans le subnet de la Wavelength Zone et de lui attribuer une Carrier IP.Lors de la création de la mchine EC2, il faudra, ,dans Network settings, sélectionner le VPC concerné, puis le subnet subnet-wlz-casablanca. et ensuite activez Auto-assign Carrier IP pour associer une Carrier IP à l’instance.
Pour automatiser la configuration du serveur Web au démarrage de l’instance, je vais utiliser User data dans Advanded details, et je mets le script suivant qui installe Nginx, démarre le service et crée une page Web simple :
#!/bin/bash
yum install -y nginx
systemctl enable nginx
systemctl start nginx
cat <<EOF > /usr/share/nginx/html/index.html
<html>
<head>
<title>Wavelength Casablanca</title>
</head>
<body>
<h1>Welcome to CloudedLabs.com</h1>
<p>Ce serveur est déployé dans la Wavelength Zone de casa blanca.</p>
<img src="https://blogger.googleusercontent.com/img/a/AVvXsEiBIHeZ9p77AOlzXKdJYyFOLhvO7ZH_4oUyaNfSwMR1XggJCTyHbtv0Xkt20qObTHD6avL8iNktLmTiGcsauxOX1bvRmKcE1JzL5TyLDXFyNAVM06uHbAVR_iAEm7WbR6kqJKaZdYS8kyqjnTYjRrjTcS3WeFQeRVH5jPUulYv2VQx0pcYC7Qalt5Ya_vjT
"
alt="AWS Wavelength Zone Casablanca"
style="max-width:100%; height:auto;">
</body>
</html>
EOF