KUBERNETES : Création d’un cluster privé

Menu

1. INSTALLATION OS
2. CONFIGURATION SERVEUR
3. CONFIGURATION DNS
4. INSTALLATION DOCKER
5. INSTALLATION BREEZE
6. INTERFACE WEB
7. CONTROLE
8. DASHBOARD
9. INSTALLATION TRAEFIK
10. INSTALL HELM
11. INSTALL Let’s Encrypt
12. INSTALL Weave Scope
13. DEBUG


Pour éaliser l’installation je me base sur une application Breeze.
– Breeze (Lien https://github.com/wise2c-devops/breeze/)

1. INSTALLATION OS

– sur tout les serveurs

– Démarrer le serveur
– boot sur cd ou ISO
– Sélectionner « Install Centos 7 »
– Sélectionner en francais > Cliquer sur « Poursuivre »
– Sélectionner des logiciels > « Serveur d’infrastructure » sans aucune option
– Sélectionner de la sécurité > Désactivé SELINUX
– Sélectionner hôte et réseau > Choisir le nom de l’hôte
> Configurer le réseau
> Bien l’activer au démarrage
– Sélectionner de la destination > Choisir le volume disque
> Sélectionner le mode manuel
> faire en automatique
> revenir sur le partionnement et diminuer la partition /HOME
> Créer la partition /var/lib/docker la plus grosse possible
– Lancer l’installation
– Choisir le mot de passe ROOT
– A la fin reboot de la machine

Voici un tableau récapitulatif de l’infrastructure avec les fonctions et les adresses IP

VIP kubernetes kubernetes.exemple.local 192.168.1.100
deploy deploy.exemple.local 192.168.1.236
harbor harbor.exemple.local 192.168.1.62
kmaster01 kmaster01.exemple.local 192.168.1.57
kmaster02 kmaster02.exemple.local 192.168.1.167
kmaster03 kmaster03.exemple.local 192.168.1.120
knode01 knode01.exemple.local 192.168.1.37
knode02 knode02.exemple.local 192.168.1.14
knode03 knode03.exemple.local 192.168.1.38
NAS nas.exemple.local 192.168.1.11

2. CONFIGURATION SERVEUR

sur tout les serveurs

Nous controlons la configuration réseau et le nom d’hôte

Mise à jours global et installation de nouvelle application

Nous désactivons le selinux

Pour de la pré-production nous desactivons le firewall

Nous lancons le service en mode automatique pour chaque redémarrage

Nous controlons la synchronisation horaire

Nous redémrrons le serveur

Nous éditons le fichier de configuration pour le NFS

Voici la ligne à modifier

Nous lancons le service en mode automatique pour chaque redémarrage

Nous créons le dossier

Nous montons le lecteur distant

Nous éditons le fichier de partition

Voici la ligne à rajouter

Nous faisons une copie de la configuration par default

Nous en créons un nouveau

Voici les lignes à rajouter

Nous modifions le fichier pour l’inventaire

Voici la ligne modifier

Nous créons le fichier pour rajouter des commande NRPE futur

Voici les lignes à rajouter

Nous modifions le fichier de configuration NRPE

Voici la ligne à modifier

Nous lancons le service en mode automatique pour chaque redémarrage

3. CONFIGURATION DNS

sur le serveur DNS externe

Avoir créer les enregistrements dns sur le serveur en powershell.

4. INSTALLATION DOCKER

sur le serveur DEPLOY

Nous installons docker

Mise en place du droit pour ROOT

Nous lancons le service en mode automatique pour chaque redémarrage

Nous installons docker-compose

5. INSTALLATION BREEZE

sur le serveur DEPLOY

Création de la clé de sécurité

La déployé sur tout les serveurs

Nous créons le répertoire pour les sources

Téléchargement du fichier d’installation

nous lancons l’installations de Breeze

Nous pouvons enfin aller sur l’interface graphique
http://deploy.exemple.local:88
ou
http://192.168.1.236:88

6. INTERFACE WEB

Nous arrivons sur la page principal

Passer en Anglais

On valide en cliquant sur le bouton bleue

Nous pouvons commencer nous cliquons sur Start

Pour créer le cluster nous cliqosn sur le +

Nous lui donnons un nom et une description et nous validons sur Ok

Nous cliquons sur le cluster que nous venons de créer

Nous devons commencer par saisir l’ensemble des serveurs qui vont nous être utile

Nous obtenons une liste commence ci-dessous

Nous pouvons lancer l’installation en cliquant sur « Next step »

Nous devons saisir la fonction pour chaque d’entre eux.

la version de docker

Le paramétrage pour Harbor

Le paramétrage pour le loadbalancer (VIP)

Le paramétrage pour l’ETCD

Le paramétrage pour Kubernetes

Je ne procéde pas à l’installation de Prometheus car il n’a jamais fonctionné pour moi

Nous pouvons lancer l’installation en cliquant sur « Next step »

Lancer l’installation

Une fois terminé cliquer de « DONE »

Nous pouvons que l’installation c’est bien passé.

7. Controle

Nous pouvons controler que l’ensemble de l’installation est correcte avec les commande suivant

8. DASHBOARD

Pour obtenir le port du dashboard

http://kubernetes.exemple.local:30300
ou
http://192.168.1.100:30300

Pour obtenir le Token

eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiO…..

9. INSTALLATION TRAEFIK

seulement sur kmaster01

Nous créons le répertoire pour les sources

Nous créons le fichier installation

Voici les lignes à rajouter

Nous exécutons le fichier d’installation

Nous pouvons aller sur l’interface
http://traefik-ui.exemple.local

10. INSTALL HELM

Nous créons le répertoire pour les sources

Nous téléchargons la source

Nous la décompressons

nous la déplacons

nous initialisation

Nous mettons à jour

Nous mettons en route la repo de notre application

Nous

Nous créons clusterrolebinding

Nous créons serviceaccount

Nous créons le fichier installation

Voici les lignes à rajouter

Nous exécutons le fichier d’installation

Nous mettons en route le service

11. INSTALL Let’s Encrypt

Nous créons le répertoire pour les sources

Nous créons le fichier installation

Voici les lignes à rajouter

Nous exécutons le fichier d’installation

12. INSTALL Weave Scope

Nous créons le répertoire pour les sources

Nous téléchargons la source

Nous lancons l’installation

Nous pouvons controler que tout est bien en place

Nous créons le fichier installation

Voici les lignes à rajouter

Nous exécutons le fichier d’installation

Nous pouvons voir l’ensemble des process qui tourne
http://weavescope.exemple.local

13. DEBUG

Voici quelque commande utile

find /var -name « *.log » \( \( -size +50M -mtime +7 \) -o -mtime +30 \) -exec truncate {} –size 0 \;

yum clean all
rm -rf /var/cache/yum
rm -rf /var/tmp/yum-*
package-cleanup –quiet –leaves –exclude-bin
package-cleanup –oldkernels –count=2
rm -rf /root/.composer/cache
rm -rf /home/*/.composer/cache
find -regex « .*/core\.[0-9]+$ » -delete

kubectl get nodes
kubectl cordon knode02
kubectl uncordon knode02
kubectl drain knode02
kubectl get pods –all-namespaces
kubectl get nodes | grep ‘^.*notReay.*$’ | awk ‘{print $1}’ | xargs kubectl describe node

journalctl -u kubelet

Taggé , , , , , , , , , , , , , , , , , , , , , , , , , , , , , .Mettre en favori le Permaliens.

Les commentaires sont fermés.