• Home  / 
  • Docker
  •  /  Configurer Rancher UI et déployer un agent Rancher

Configurer Rancher UI et déployer un agent Rancher

By KrustyHack / last year
configurer rancher ui

Ay à toutes et à tous !

Me voilà de retour avec la suite de mon précédent article « Déployer Rancher UI en HTTPS avec Docker » où cette fois on passe dans le vif du sujet: configurer Rancher UI et ajouter un 1er agent Rancher. Une fois cet agent en place, on pourra le gérer et y déployer des containers Docker en quelques clics.

Configurer Rancher UI

C’est la 1ère chose à faire une fois notre serveur Rancher en place. On va donc paramétrer les droits d’accès à notre interface afin de ne pas laisser le bordel publique. On se rend sur la page « Admin » puis « Access Control »:

rancher ui sans acl

Pour l’instant l’interface est publique. Il faut configurer les ACL

Vous pouvez voir que l’on peut configurer l’accès à notre UI de différentes manières:

  • Active Directory
  • GitHub
  • Local
  • OpenLDAP

Pour ce tuto, on va choisir l’identification via GitHub. Pour cela, voici la marche à suivre:

  1. Rendez-vous ici pour configurer une nouvelle application GitHub
  2. Cliquez sur « Register new application » et remplissez le formulaire comme suit:
    1. Application name: le nom que vous voulez, exemple: Mon Rancher
    2. Homepage URL: l’url de votre UI Rancher. Pour le tuto c’est https://test.nicolashug.com
    3. Application description: la description que vous voulez
    4. Authorization callback URL: l’url de votre UI Rancher. Ici https://test.nicolashug.com/
  3. Cliquez sur « Register application »
  4. Copiez/collez le « Client ID » et le « Client Secret » dans les champs sur la page de configuration de Rancher
  5. Validez le tout, une popup devrait apparaître et connectez votre GitHub
  6. Ayé, c’est prêt

Par défaut, uniquement votre compte GitHub à accès à l’UI. Toutefois, vous pouvez ajouter d’autres utilisateurs ou vous pouvez carrément rendre l’accès publique.

Maintenant, allons voir la configuration générale dans « Settings »:

configuration rancher ui

Paramétrage général de l’UI Rancher

Ici, vous pouvez configurer l’url par défaut de votre UI, les différents accès aux catalogues Rancher, ajouter vos propres catalogues, … Tout ce que j’ai fais sur cette page pour l’instant c’est de cocher « This site’s address » pour m’assurer que Rancher prenne le HTTPS, puis je sauvegarde.

Alors pour ce qui est des catalogues Rancher, je ne vais pas trop en parler mais pour faire court, ce sont des applications, services, … créés par la communauté ou par l’équipe Rancher qui sont pré-configurés et que l’on peut déployer en quelques clics via l’interface Rancher. C’est un peu comme ce que l’on a fait lors du précédent article avec notre docker-compose.yml où l’on a prédéfini 3 containers sauf que là tout est prêt à l’emploi, y a qu’à cliquer pour déployer.

Ajouter notre agent Rancher

Allez, l’étape suivante est plutôt simple et consiste à ajouter notre 1er agent Rancher afin d’y déployer nos containers. Pour ça, il suffit de se rendre sur l’onglet « Infrastructure » et de cliquer sur « Add Host ». Une page va alors apparaître et on va pouvoir configurer notre futur agent. Vous pourrez y choisir sur quelle « plateforme d’hébergement » se trouve votre serveur (genre AWS, Digital Ocean, Rackspace, …) ou utiliser une plateforme « custom », ce qui est notre cas ici puisque notre agent Rancher sera sur une Ubuntu de chez OVH.

Sélectionnez donc « Custom » et ajoutez un label au serveur en cliquant sur « Add Label ». Cela nous permettra de cibler plus facilement le serveur lors des déploiements de nos containers (pour simplifier).

ajouter un agent rancher

On paramètre le nouvel agent Rancher

Ensuite, on copie/colle la commande générée par Rancher (étape 5) sur notre serveur agent et on lance le tout:

root@rancher-slave:~# docker run -e CATTLE_HOST_LABELS='server=rancher-slave'  -d --privileged -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/rancher:/var/lib/rancher rancher/agent:v0.11.0 https://test.nicolashug.com/v1/scripts/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
root@rancher-slave:~# docker ps
CONTAINER ID        IMAGE                   COMMAND             CREATED             STATUS              PORTS               NAMES
1cb248862151        rancher/agent:v0.11.0   "/run.sh run"       24 seconds ago      Up 24 seconds                           rancher-agent

Super, notre agent semble tourner ! Retournons sur l’interface Rancher afin de vérifier ça (dans l’onglet « Infrastructure »):

agent rancher

Notre agent Rancher est up !

Excellent ! Notre serveur esclave est apparu dans notre infra Rancher.

Il faut savoir que Rancher UI dispose également d’une API très pratique qui permet de tout gérer via Curl (par exemple). Je vous invite à regarder ça dans l’onglet « API » de l’interface.

On va maintenant pouvoir y déployer des containers Docker ! Mais pour l’instant, je vous laisse faire le tour de l’interface (encore une fois) et découvrir un peu le bordel pour vous faire la main avant notre prochaine étape: déployer des containers Docker. On verra comment mettre en branle un WordPress et sa base de données avec Rancher UI !

Je vous dit à plus et au prochain article !

Leave a comment: