====== Kubespray ======
Kubespray est une suite de playbook ansible pour déployer un cluster kubernetes.
====== Installation ======
===== Création d'un virtualenv dédié à kubespray =====
Le plus simple est de passer par un virtualenv python pour installer Ansible et les outils nécessaires.
Pour la création du virtualenv :
virtualenv kubespray-virtualenv
On travaille ensuite dans ce virtualenv :
cd kubespray-virtualenv
source bin/activate
===== Installation de kubespray et de ses dépendances =====
On récupère kubespray :
git clone https://github.com/kubernetes-sigs/kubespray.git
On se place dans le répertoire kubespray et on installe les dépendances :
cd kubespray
pip install -r requirements.txt
Un autre prérequis nécessaire est python3-netaddr. Comme il est souvent nécessaire à Ansible je préfère l'installer côté systeme via dnf. Sinon //pip install netaddr// devrait faire le boulot.
====== Configuration de notre inventaire ======
L'inventaire de nos machines à configurer pour le cluster kubernetes va être généré dynamiquement. Pour cela il faut définir la variable IPS contenant leurs IP :
declare -a IPS=(192.168.2.57 192.168.2.69 192.168.2.90)
Pour générer l'inventaire :
CONFIG_FILE=inventory/mycluster/hosts.ini python3 contrib/inventory_builder/inventory.py ${IPS[@]}\n
====== Lancement du playbook ======
J'ai du préciser dans le ansible.cfg que le remote_user était root.
Pour lancer le playbook :
ansible-playbook -i inventory/mycluster/hosts.ini --become --become-user=root cluster.yml
Voilà.