Un cluster Kubernetes chez nous est un groupe de vos propres serveurs cloud réunis sur un même réseau privé et configurés sous la forme d’un cluster Kubernetes prêt à l’emploi (k3s). Vous le commandez sous Serveurs → Clusters Kubernetes. Chaque machine qui le compose est facturée à l’heure, comme tout autre serveur cloud.
Ce que vous obtenez
- Une machine de plan de contrôle, qui exécute l’API Kubernetes.
- Des machines de travail (de zéro à dix), qui exécutent vos applications.
- Un réseau privé les reliant, afin que les machines communiquent entre elles en toute confidentialité.
- Argo CD (facultatif), un panneau Web qui déploie vos applications depuis un dépôt Git.
- Un exemple d’application (facultatif), pour que vous puissiez voir Argo CD fonctionner immédiatement.
Où vous pouvez en créer un
Un cluster nécessite un réseau privé, la fiche de commande n’affiche donc que les centres de données qui en proposent un, et uniquement les tailles de machine tarifées dans le centre de données que vous choisissez. Cliquez sur Afficher le prix pour voir le total horaire et mensuel avant de créer quoi que ce soit.
Existe-t-il un panneau de contrôle ?
Kubernetes se pilote depuis votre propre ordinateur avec kubectl, l’outil en ligne de commande standard de Kubernetes. Il n’existe pas de panneau de style cPanel. Trois voies d’accès s’offrent à vous :
- La page du cluster dans votre tableau de bord présente chaque machine, son état de disponibilité, la version de Kubernetes et l’adresse de l’API, et comporte le bouton Télécharger kubeconfig.
- kubectl sur votre ordinateur, à l’aide du fichier kubeconfig que vous avez téléchargé.
- Argo CD, le panneau Web, si vous avez choisi de l’installer.
Utiliser votre cluster, étape par étape
- Attendez que la page du cluster indique que chaque machine est prête. La création prend quelques minutes.
- Installez kubectl sur votre ordinateur (consultez kubernetes.io pour votre système).
- Cliquez sur Télécharger le fichier kubeconfig. Le fichier porte le nom de votre cluster, par exemple
my-cluster-kubeconfig.yaml. Gardez-le privé : toute personne le détenant contrôle le cluster.
- Vérifiez que le cluster répond :
kubectl --kubeconfig my-cluster-kubeconfig.yaml get nodes Chaque machine doit être indiquée comme Ready.
- Déployez votre application avec
kubectl apply -f <your file>, ou laissez Argo CD la déployer depuis Git.
Ouvrir Argo CD
Argo CD n’est pas exposé à Internet. Ouvrez-le via kubectl :
kubectl --kubeconfig my-cluster-kubeconfig.yaml port-forward svc/argocd-server -n argocd 8080:443
Ouvrez ensuite https://localhost:8080 dans votre navigateur. Le nom d’utilisateur est admin ; le premier mot de passe est stocké dans le cluster et vous pouvez le lire avec :
kubectl --kubeconfig my-cluster-kubeconfig.yaml -n argocd \
get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d
Les machines elles-mêmes
Chaque machine apparaît également sous Serveurs, comme tout autre serveur cloud. Vous pouvez vous y connecter via SSH en tant qu'admin avec l’une des clés SSH que vous avez choisies, et y consulter ses propres graphiques, son pare-feu et sa console.
Sécurité
L’API Kubernetes écoute sur le port 6443 du plan de contrôle. Utilisez la carte Pare-feu sur le serveur du plan de contrôle pour autoriser uniquement vos propres adresses sur ce port.
Suppression d’un cluster
L’option Supprimer le cluster sur la page du cluster supprime chaque machine ainsi que le réseau privé. La facturation des machines s’arrête lorsqu’elles sont supprimées. Aucun élément ne pourra être récupéré, veillez donc à copier tout ce dont vous avez besoin au préalable.