Backup work

This commit is contained in:
Maurice Makaay 2020-02-07 10:42:19 +00:00
parent 42785fa98b
commit ac583527f5
1 changed files with 60 additions and 30 deletions

90
demo.md
View File

@ -1,11 +1,16 @@
# Inhoud van de demo
# Onderwerpen van de demo
* Mini-omschrijving XS4ALL voice platform
* Waarom LXD?
* Doel van de demo: LXD + Ansible + Galera cluster
* Installatie VM's voor de demo
* Netwerktopologie
* LXD clustering
* De Ansible container
* Ansible-vault voor opslag secrets
* Dynamische inventory
* Container bootstrapping vanuit Ansible
* Installatie van het Galera cluster
* Rolling upgrade Galera cluster
# Mini-omschrijving XS4ALL voice platform
@ -209,46 +214,58 @@ CONTAINER2 aangesloten is op SIP en mgmt. CONTAINER4 is alleen aangesloten op he
SIP netwerk, en kan via dat netwerk op layer 2 CONTAINER1 en CONTAINER2 ook bereiken.
__Voor de demo gebruiken we een simpeler opzet:__
__Voor de demo gebruiken we een iets simpeler opzet:__
```yaml
network:
version: 2
ethernets:
enp1s0: {}
enp6s0: {}
bridges:
br-demo:
br-public:
dhcp4: no
dhcp6: no
interfaces: ["enp1s0"]
addresses: ["192.168.56.150/24"] # of 151 voor sidn-demo-02
addresses: ["192.168.56.150/24"] # en 151 op de andere host
gateway4: "192.168.56.1"
nameservers:
addresses: ["192.168.56.1"]
addresses: ["8.8.8.8", "9.9.9.9"]
br-demo:
dhcp4: no
dhcp6: no
interfaces: ["enp6s0"]
addresses: ["10.0.0.150/24"] # en 151 op de andere host
```
Dus maar 1 bridge "br-demo" en het "fysieke" interface enp1s0 van de VM zit
"ingeplugd" in deze bridge. In een plaatje:
Bridge br-public is aangesloten op een bridge die NAT netwerk verzorgt op
de VM host en daarmee gebruikt kan worden om via NAT naar het internet te
komen. Bridge br-demo zit aangesloten op een host-only bridge op de VM host
en heeft dus de rol van een losse, niet-connected netwerkswitch.
In een plaatje:
```text
KVM host
192.168.56.1 (gateway + DHCP + DNS)
|
|
+------192.168.56.0/24----+
| |
+------O---------------+ +------O---------------+
| enp1s0 | | enp1s0 |
| | | | | |
| +---O------------+ | | +---O------------+ |
| | br-demo | | | | br-demo | |
| | 192.168.56.150 | | | | 192.168.56.151 | |
| +--O---O---------+ | | +--O--O----------+ |
| | | | | | | |
| | CONTAINER2 | | | CONTAINER4 |
| | | | | |
| CONTAINER1 | | CONTAINER3 |
| | | |
+------192.168.56.0/24-----------+
| |
| private |
| +----bridge----+ |
| | 10.0.0.0/24 | |
| | | |
+------O------O--------+ +--O----------O--------+
| enp1s0 enp6s0 | | enp6s0 enp1s0 |
| | | | | | | |
| br-public br-demo | | br-demo br-public |
| | \ / | | | | \ / | |
| | \/ | | | | \/ | |
| | /\ | | | | /\ | |
| ansible-01 \ | | | galera-02 \ | |
| | | | | \ | |
| galera-01 | | galera-03 |
+----------------------+ +----------------------+
KVM guest: sidn-demo-01 KVM guest: sidn-demo-02
```
@ -367,6 +384,11 @@ sidn-demo-0X# lxc profile edit demo
timezone: Europe/Amsterdam
description: SIDN demo profile
devices:
if-public:
name: if-public
nictype: bridged
parent: br-public
type: nic
if-demo:
name: if-demo
nictype: bridged
@ -390,7 +412,7 @@ ook voor oudere versies van Ubuntu en voor niet cloud-init images te gebruiken i
Noot:
In de praktijk hebben wij tot op heden alleen maar timezone en netwerkconfiguratie
gepusht met de cloud-init configuratie. En zelfs de netwerkconfguratie slechts
deels, omdat deze met de cloud-init van Ubuntu 14.04 nog niet mogelijk was.
deels, omdat demodeze met de cloud-init van Ubuntu 14.04 nog niet mogelijk was.
@ -402,7 +424,7 @@ koppelt, die onderling gaan uitwisselen welke containers er op de hosts draaien.
Daarna krijg je met bijvoorbeeld "lxc list" niet alleen inzicht in de containers
die op de lokale host draaien, maar ook in alle containers die op alle cluster
hosts draaien.
demo
Het klinkt heel goed: LXD clustering. Functioneel heb ik er echter nog
weinig heil in gevonden voor onze setup. Bovendien heb ik op clustersystemen
regelmatig problemen gezien met het goed werkend houden van het cluster,
@ -480,13 +502,19 @@ sidn-demo-01# vi /tmp/config
version: 1
config:
- type: physical
name: if-demo
subnets:
- type: static
name: if-public
subnets:
- type: static
address: 192.168.56.160
netmask: 255.255.255.0
gateway: 192.168.56.1
dns_nameservers: [192.168.56.1]
- type: physical
name: if-demo
subnets:
- type: static
address: 10.0.0.160
netmask: 255.255.255.0
```
Bouw de container op en start hem:
@ -519,13 +547,15 @@ Opmerkingen:
ook weggelaten kunnen worden.
Op de container is nu te zien dat het layer 2 netwerk via de netwerk bridge
Op de container is nu te zien dat het layer 2 netwerk via de netwerk bridges
ontsloten is vanuit de container:
```
ansible# ip a (laat zien dat er nu een if-demo interface bestaat)
ansible# ping 192.168.56.150 (een ping naar de eigen LXD host)
ansible# ping 192.168.56.151 (een ping naar de andere LXD host)
ansible# ping 10.0.0.150 (een ping naar de eigen LXD host)
ansible# ping 10.0.0.151 (een ping naar de andere LXD host)
```
#### Connectie Ansible -> managed hosts
@ -591,8 +621,8 @@ sidn-demo-0X# lxc exec sidn-demo-01:ansible cat /root/.ssh/id_rsa.pub >> /root/.
Hierna moet het volgende werken:
```bash
ansible# ssh 192.168.56.150 touch .hushlogin
ansible# ssh 192.168.56.151 touch .hushlogin
ansible# ssh 10.0.0.150 touch .hushlogin
ansible# ssh 10.0.0.151 touch .hushlogin
```
#### Installatie van de Ansible software