Utiliser vRack - Exemple avec Managed Kubernetes et une instance Public Cloud
Découvrez comment connecter un cluster OVHcloud Managed Kubernetes et une instance Public Cloud au sein du même vRack
Objectif
Le vRack OVHcloud est une solution de réseau privé qui permet à nos clients de faire transiter du trafic entre les serveurs dédiés OVHcloud, ainsi qu'avec d'autres services OVHcloud. Il permet également d'ajouter des instances Public Cloud et des clusters Managed Kubernetes à votre réseau privé, afin de créer une infrastructure de ressources physiques et virtuelles.
Dans ce tutoriel, nous allons activer le vRack sur un projet Public Cloud. Nous allons ensuite créer un cluster Managed Kubernetes et une instance Public Cloud (PCI). Les deux seront ensuite ajoutés au vRack.
Concrètement, nous allons installer un cluster OVHcloud Managed Kubernetes et une instance Public Cloud, tous deux dans le même réseau privé. Nous allons déployer un WordPress sur le cluster Kubernetes, qui utilisera le réseau privé pour se connecter à une base de données MariaDB installée sur l'instance Public Cloud.
Ce tutoriel vous montre, à titre d'exemple, comment utiliser le vRack OVHcloud pour connecter un cluster Managed Kubernetes à une instance Public Cloud au sein du même réseau privé.
La méthode décrite dans ce tutoriel fonctionne actuellement si le cluster Managed Kubernetes et l'instance externe se trouvent dans le même réseau privé du vRack. Le processus permettant de les connecter entre différents réseaux privés sera décrit dans un prochain tutoriel.
Prérequis
Ce tutoriel suppose que vous disposez déjà d'un cluster OVHcloud Managed Kubernetes fonctionnel, ainsi que de connaissances de base sur son fonctionnement. Pour en savoir plus sur ces sujets, consultez le guide Démarrer avec OVHcloud Managed Kubernetes Service.
Vous devez également avoir installé Helm sur votre poste de travail et sur votre cluster. Consultez le tutoriel Comment installer Helm sur OVHcloud Managed Kubernetes Service.
Il suppose également que vous avez déjà suivi le guide Utiliser vRack pour activer le vRack sur votre projet Public Cloud et intégrer votre cluster OVHcloud Managed Kubernetes au vRack.
En pratique
Configurer le vRack
Nous devons d'abord configurer un réseau privé vRack pour notre Public Cloud. Pour cela, suivez le guide Configurer vRack pour Public Cloud. Une fois que vous avez créé un vRack et l'avez ajouté à un réseau privé, vous pouvez poursuivre.
Comme expliqué dans le guide Limites connues, les sous-réseaux suivants ne sont pas compatibles avec la fonctionnalité vRack et peuvent générer des comportements incohérents avec les réseaux overlay que nous utilisons :
Configurer Managed Kubernetes
Nous créons ensuite un cluster Kubernetes, comme expliqué dans le guide Créer un cluster. L'intégration d'un cluster à un réseau privé vRack doit se faire à la troisième étape de la création du cluster, lorsque nous pouvons choisir un réseau privé existant pour le cluster :
Notre nouveau cluster sera créé au sein du réseau privé vRack que nous avons choisi.
Dans le tableau de bord de Managed Kubernetes Service, nous pouvons voir le cluster, avec le réseau privé choisi dans la colonne Réseau attaché :
Configurer la PCI
Nous pouvons maintenant créer une nouvelle instance Public Cloud au sein du vRack, en suivant le guide Intégrer une instance au vRack.
Nous allons créer une instance Ubuntu :
À la quatrième étape de la création, nous l'attachons au réseau privé créé précédemment :
Une fois l'instance créée, cliquez sur son nom, puis faites défiler légèrement la page afin de voir les informations de connexion dans l'espace client OVHcloud.
Si nous nous connectons à l'instance en SSH, nous pouvons constater qu'elle dispose de deux interfaces réseau : l'une attachée à l'adresse IP publique utilisée pour la connexion, l'autre attachée au réseau privé :
Notez l'adresse IP du réseau privé (dans notre exemple 10.0.64.51), car nous en aurons besoin pour configurer WordPress.
Configurer MariaDB sur la PCI
Installer MariaDB
La méthode la plus simple pour installer MariaDB sur la PCI consiste à utiliser le gestionnaire de paquets apt :
Cela installera MariaDB ainsi que toutes ses dépendances :
Créer un utilisateur et une base de données
Nous pouvons maintenant nous connecter à la base de données à l'aide du client mysql :
Par défaut, le compte root n'a pas de mot de passe lorsqu'il se connecte depuis localhost, nous accédons donc directement à la CLI de MariaDB.
Créez une base de données wordpress_db et un utilisateur wordpress_user :
1. Créer la base de données :
2. Créer l'utilisateur (avec accès distant) et lui accorder les privilèges sur la nouvelle base de données :
3. Appliquer les changements pour que les modifications sur les tables de privilèges de MariaDB prennent effet immédiatement :
L'instance MariaDB est maintenant prête.
Faire écouter MariaDB sur l'interface du réseau privé
Par défaut, MariaDB écoute uniquement sur localhost. Pour accepter les requêtes provenant du réseau privé, nous devons également le faire écouter sur cette interface réseau.
La méthode la plus simple consiste à modifier la ligne bind_address, définie par défaut sur 127.0.0.1, et à la remplacer par l'IP MariaDB dans le fichier de configuration /etc/mysql/mariadb.conf.d/50-server.cnf :
avant :
après :
Où <MARIADB_ADDRESS> est l'adresse IP du réseau privé de l'instance MariaDB (dans notre exemple 10.0.64.51).
Redémarrez ensuite MariaDB :
Puis essayez de vous connecter à MariaDB en utilisant cette interface :
Dans notre exemple :
Accéder à l'instance MariaDB depuis le cluster Managed Kubernetes
Pour vérifier que le vRack fonctionne correctement, testons si nous pouvons accéder à l'instance MariaDB depuis le cluster Managed Kubernetes via le vRack.
Nous allons déployer un client MySQL dans le cluster Kubernetes, qui se connectera à l'instance MariaDB en passant par le vRack. N'oubliez pas de remplacer <MARIADB_ADDRESS> par l'adresse IP du réseau privé de l'instance MariaDB (dans notre exemple 10.0.64.51).
Accédez à votre cluster Kubernetes en cours d'exécution (vous devez au préalable avoir récupéré le fichier kubeconfig et configuré votre variable d'environnement KUBECONFIG) :
Puis exécutez la commande suivante :
Configurer WordPress
Maintenant que la base de données est configurée, nous pouvons déployer WordPress sur le cluster Kubernetes. Nous suivons un processus similaire à celui de notre tutoriel Installer WordPress, en l'adaptant pour utiliser une base de données externe.
Prérequis
L'équipe OVHcloud Managed Kubernetes Service travaille sur un correctif prévu pour début 2022. Dans l'intervalle, veuillez supprimer la StorageClass par défaut et installer la nouvelle.
- Supprimez la
StorageClassconcernée que vous utilisez par défaut
Cela supprimera la StorageClass existante :
- Créez une nouvelle
StorageClassavec le correctif requis
Cela applique le manifeste YAML StorageClass correct :
Utiliser le chart Helm WordPress
Pour ce tutoriel, nous utilisons le chart Helm WordPress disponible sur le dépôt Bitnami. Ce chart est entièrement configurable, mais nous n'aurons besoin d'ajuster que les paramètres de la base de données externe :
Pour externalDatabase.host, nous devrons utiliser l'adresse IP du réseau privé de l'instance MariaDB, notée lors de la création de la PCI.
N'oubliez pas de remplacer <MARIADB_ADDRESS> par l'adresse IP du réseau privé de l'instance MariaDB (dans notre exemple 10.0.64.51).
Attendez d'obtenir une IP externe :
Nous pouvons ensuite suivre les instructions pour obtenir l'URL d'administration :
En saisissant l'URL dans le navigateur, nous accédons au nouveau blog, qui accède à la base de données MariaDB de l'instance PCI via le vRack.
Aller plus loin
-
Pour une formation ou une assistance technique sur la mise en œuvre de nos solutions, contactez votre commercial ou consultez la page Professional Services pour obtenir un devis et faire analyser votre projet par nos experts.
-
Échangez avec notre communauté d'utilisateurs.