Test rapide de Kontena Akrobateo, un simple opérateur Kubernetes pour exposer les services LoadBalancer en cluster …

Karim
4 min readMay 20, 2019

--

Akrobateo est un service universel très léger de Load Balancing pour Kubernetes mis au point par Kontena. Akrobateo peut fonctionner dans n’importe quel environnement, ce qui le rend adapté à de nombreux cas d’utilisation. Il est implémenté comme un opérateur qui réagit quand il voit le type : Services LoadBalancer dans un cluster.

Akrobateo expose les services LoadBalancer dans le cluster en tant que noeuds hostPorts utilisant DaemonSets.

L’opérateur synchronise naturellement aussi les adresses des services. Dès lors les services de type LoadBalancer se comportent ici à peu près comme les services NodePort. Les Pods proxy node-port utilisent iptables pour faire le transfert de trafic réel.

Une fois que l’on a exposé un service, on peut en toute sécurité, par exemple, pousser les adresses externes des services dans son DNS. Ceci a l’inconvénient qu’un port donné ne peut être exposé que dans un seul service à travers le cluster.

Cet opérateur s’inspire beaucoup du contrôleur K3S servicelb de Rancher : https://github.com/rancher/k3s/blob/master/pkg/servicelb/controller.go

Je pars d’un Scale Set dans Azure avec des instances basses priorités via ces paramêtres pour Azure Resource Manager :et ce template

Template.json

et mes instances Ubuntu 18.04 LTS sont actives :

Je vais utiliser Kontena Pharos pour déployer mon cluster Kubernetes :

J’utilise ce fichier de paramètres en YAML pour lancer le déploiement du cluster via ce binaire à télécharger sur le dépôt Github de Kontena Pharos :

cluster.yml

Lancement du déploiement qui se termine correctement :

Le cluster est actif et prêt à être utilisé :

Déploiement d’Akrobateo à partir des manifests YAML présents sur le dépôt Github :

Test rapide du déploiement du traditionnel démonstrateur FC Agent (avec un service en Load Balancer ici) :

On voit ici qu’en guise d’adresses IP, Akrobateo me retourne les adresses des noeuds Workers ce qui me permet d’accéder au démonstrateur (par le jeu de traduction d’adresse IP locale vers l’adresse IP publique offerte au sein de la plateforme Cloud) :

--

--

Karim
Karim

Written by Karim

Above the clouds, the sky is always blue ...

No responses yet