Compare commits
5 Commits
v0.0.4c-ps
...
v0.0.4h-ps
Author | SHA1 | Date | |
---|---|---|---|
32329396a9 | |||
f9e801c39e | |||
85374ee503 | |||
5232d80321 | |||
5acca816af |
37
README.md
37
README.md
@ -1,13 +1,13 @@
|
|||||||
# gsb2024
|
# gsb2024
|
||||||
|
|
||||||
2024-01-13 ps
|
2024-01-17 18h04 ps
|
||||||
|
|
||||||
Environnement et playbooks **ansible** pour le projet **GSB 2024**
|
Environnement et playbooks **ansible** pour le projet **GSB 2024**
|
||||||
|
|
||||||
## Quickstart
|
## Quickstart
|
||||||
|
|
||||||
Prérequis :
|
Prérequis :
|
||||||
* une machine Linux Debian Bookworm ou Windows
|
* une machine **Linux Debian Bookworm** ou **Windows**
|
||||||
* VirtualBox
|
* VirtualBox
|
||||||
* git
|
* git
|
||||||
* fichier machines virtuelles **ova** :
|
* fichier machines virtuelles **ova** :
|
||||||
@ -38,6 +38,8 @@ Prérequis :
|
|||||||
* **s-lb-web2** : Serveur Wordpress 2 Load Balancer
|
* **s-lb-web2** : Serveur Wordpress 2 Load Balancer
|
||||||
* **s-lb-db** : Serveur Mariadb pour Wordpress
|
* **s-lb-db** : Serveur Mariadb pour Wordpress
|
||||||
* **s-nas** : Serveur NFS pour application Wordpress avec LB
|
* **s-nas** : Serveur NFS pour application Wordpress avec LB
|
||||||
|
* **s-kea1** : Serveur DHCP Kea HA 1
|
||||||
|
* **s-kea2** : Serveur DHCP Kea HA 2
|
||||||
|
|
||||||
|
|
||||||
## Les playbooks
|
## Les playbooks
|
||||||
@ -98,37 +100,40 @@ bash chname <nouveau_nom_de_machine>` , puis redémarrer
|
|||||||
|
|
||||||
### Pour chaque machine
|
### Pour chaque machine
|
||||||
|
|
||||||
#### Etape 1
|
#### Etape 1 - Nommage machine
|
||||||
|
|
||||||
- créer la machine avec **mkvm -r**, les cartes réseau sont paramétrées par **mkvm** selon les spécifications
|
- créer la machine avec **mkvm -r**, les cartes réseau sont paramétrées par **mkvm** selon les spécifications
|
||||||
- ouvrir une session sur la machine considérée
|
- ouvrir une session sur la machine considérée
|
||||||
- renommer la machine soit
|
- renommer la machine soit
|
||||||
* en utilisant le script de renommage comme suit :
|
* en utilisant le script de renommage comme suit :
|
||||||
` /root/tools/ansible/gsb2024/scripts/chname <nouveau_nom_de_machine>`
|
` /root/tools/ansible/gsb2024/scripts/chname <nouveau_nom_de_machine>`
|
||||||
* soit avec :
|
* soit (ici on renomme la machine en **s-infra**) avec :
|
||||||
```shell
|
```shell
|
||||||
NHOST=mavm
|
export HOST=s-infra
|
||||||
sed -i "s/bookworm/${NHOST}/g" /etc/host{s,name}
|
curl 192.168.99.99/gsbstore/inst1|bash
|
||||||
sudo reboot # on redemarre
|
reboot # on redemarre
|
||||||
```
|
```
|
||||||
|
|
||||||
#### Etape 2
|
#### Etape 2 - installation outils, depot gsb2024 et lancement playbook
|
||||||
|
|
||||||
- utiliser le script **gsb-start** : `bash gsb-start`
|
- utiliser le script **gsb-start** : `bash gsb-start`
|
||||||
- ou sinon:
|
- ou sinon:
|
||||||
```shell
|
```shell
|
||||||
mkdir -p tools/ansible ; cd tools/ansible
|
curl 192.168.99.99/gsbstore/inst2|bash
|
||||||
git clone https://gitea.lyc-lecastel.fr/gsb/gsb2024.git
|
|
||||||
cd gsb2024/pre
|
|
||||||
DEPL=192.168.99.99 bash gsbboot
|
|
||||||
cd ../.. ; bash pull-config
|
|
||||||
```
|
```
|
||||||
|
- le script recupere le dépot **gsb2024.git**
|
||||||
|
- il lance ensuite le script **pull-config** avec le script porant le nom de la machine
|
||||||
|
- on peut alors redémarrer
|
||||||
|
|
||||||
#### Etape 3
|
#### Etape 3 - Redémarrage et tests
|
||||||
|
|
||||||
- redémarrer
|
- redémarrer
|
||||||
- **Remarque** : une machine doit avoir été redémarrée pour prendre en charge la nouvelle configuration
|
- **Remarque** : une machine doit avoir été redémarrée pour prendre en charge la nouvelle configuration, en particulier la couche réseau et l'adressage.
|
||||||
|
- selon les situations, il est possible qu'un seul playbook ne soit pas suffisant pour installer complètement une machine. Dans ce cas de figure, le second playbook s'appelle **s-machine-post.yml**.
|
||||||
|
Il est à lancer depuis ''tools/ansible/gsb2024'' :
|
||||||
|
```shell
|
||||||
|
ansible-playbook -i localhost, -c local s-machine-post.yml
|
||||||
|
```
|
||||||
|
|
||||||
## Les tests
|
## Les tests
|
||||||
|
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
## aa : 2023-01-18 15:25
|
## aa : 2023-01-18 15:25
|
||||||
## ps : 2023-02-01 15:25
|
## ps : 2023-02-01 15:25
|
||||||
## ps : 2023-12-18 15:25
|
## ps : 2023-12-18 15:25
|
||||||
|
## ps : 2024-01-17 15:25
|
||||||
|
|
||||||
set -o errexit
|
set -o errexit
|
||||||
set -o pipefail
|
set -o pipefail
|
||||||
@ -83,7 +84,7 @@ cp goss /usr/local/bin
|
|||||||
|
|
||||||
(cat <<'EOT' > "${STOREREP}/inst1"
|
(cat <<'EOT' > "${STOREREP}/inst1"
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
if [[ -z ${HOST+x} ]]; then
|
if [[ -z "${HOST+x}" ]]; then
|
||||||
echo "erreur : variable HOST indefinie"
|
echo "erreur : variable HOST indefinie"
|
||||||
echo " HOST : adresse serveur deploiement"
|
echo " HOST : adresse serveur deploiement"
|
||||||
echo "export HOST=s-xyzt ; ./$0"
|
echo "export HOST=s-xyzt ; ./$0"
|
||||||
@ -93,7 +94,7 @@ fi
|
|||||||
hostname=$(hostname)
|
hostname=$(hostname)
|
||||||
echo "${HOST}" > /etc/hostname
|
echo "${HOST}" > /etc/hostname
|
||||||
hostnamectl set-hostname "${HOST}"
|
hostnamectl set-hostname "${HOST}"
|
||||||
sed -i "s/${hostname}/${HOST}/g" /etc/host{s,name}
|
sed -i "s/${hostname}/${HOST}/g" /etc/hosts
|
||||||
echo "vous pouvez redemarrer ..."
|
echo "vous pouvez redemarrer ..."
|
||||||
EOT
|
EOT
|
||||||
)
|
)
|
||||||
|
@ -7,8 +7,6 @@
|
|||||||
- goss
|
- goss
|
||||||
#- dhcp-fog
|
#- dhcp-fog
|
||||||
# - ssh-cli
|
# - ssh-cli
|
||||||
# - snmp-agent
|
#- fog
|
||||||
# - syslog-cli
|
|
||||||
- fog
|
|
||||||
#- - journald-snd
|
#- - journald-snd
|
||||||
- post
|
- post
|
||||||
|
@ -137,5 +137,5 @@ else
|
|||||||
exit 2
|
exit 2
|
||||||
fi
|
fi
|
||||||
if [[ $startmode == 1 ]] ; then
|
if [[ $startmode == 1 ]] ; then
|
||||||
vboxmanage startvm "${vm}" --type headless
|
vboxmanage startvm "${vm}"
|
||||||
fi
|
fi
|
||||||
|
Reference in New Issue
Block a user