LXD Initialisatie en Configuratie
Categories:
Deze handleiding biedt instructies voor het installeren, initialiseren en configureren van LXD. LXD is de standaard lichtgewicht hypervisor voor het creëren en beheren van lichte VM’s in de vorm van Linux (LXC) containers.
Installeer LXD
De meeste nodes in dit project komen in de vorm van
LXD Linux-containers. Hiervoor
moeten we het LXD-profiel microk8s
en de netwerkbrug lxdbr1
creëren. Het
microk8s
-profiel is noodzakelijk voor het installeren van
MicroK8s op c2d-ks1, c2d-ks2, c2d-ks3.
LXD is standaard geïnstalleerd op Ubuntu 22.04, maar we moeten het initialiseren
met lxd init
. Accepteer alle standaardinstellingen door op de return-toets te
drukken. Let op: de init
zal een brug lxdbr0
aanmaken.
sudo apt install curl -y
sudo snap install lxd
curl -s -L https://gitlab.com/c2platform/ansible/-/raw/master/doc/howto-development/lxd-init-preseed.yml | lxd init --preseed
Maak microk8s-profiel
Maak het microk8s
-profiel aan.
lxc profile create microk8s
curl -s -L https://gitlab.com/c2platform/ansible/-/raw/master/doc/howto-development/microk8s.profile.txt | lxc profile edit microk8s
Maak lxdbr1-brug
Maak de brug lxdbr1
aan en voeg deze toe aan het default
-profiel.
lxc network create lxdbr1 ipv6.address=none ipv4.address=1.1.4.1/24 ipv4.nat=true
lxc network attach-profile lxdbr1 default eth1
Stel https_address in
Maak LXD beschikbaar voor de Vagrant LXD-provider door httpd_address
in te
stellen en vertrouwen te configureren. Zonder deze stap zie je een bericht bij
vagrant up
vergelijkbaar met:
De LXD-provider kon niet authenticeren bij de daemon op https://127.0.0.1:8443.
lxc config set core.https_address [::]:8443
Vagrant gesynchroniseerde mappen
Sta ondersteuning toe voor LXD gesynchroniseerde mappen door /etc/subuid
en
/etc/subgid
te wijzigen. Zonder deze stap zal je een bericht zien bij vagrant up
:
De hostmachine ondersteunt geen LXD gesynchroniseerde mappen
echo root:1000:1 | sudo tee -a /etc/subuid
echo root:1000:1 | sudo tee -a /etc/subgid
Dir opslagpool
Op Ubuntu 22 gebruikt de default
opslagpool de zfs
driver, wat goed is voor
productieachtige omgevingen maar omslachtig voor ontwikkelingsdoeleinden. Om
deze reden gebruikt dit project een aangepaste opslagpool c2d
die de dir
driver gebruikt.
lxc storage create c2d dir
lxc profile edit default # en verander de pool naar c2d
Toon mij
onknows@io3:~/git/gitlab/vagrant-lxd$ lxc storage create c2d dir
Opslagpool c2d aangemaakt
onknows@io3:~$ lxc storage ls
+---------+--------+--------------------------------------------+-------------+---------+---------+
| NAAM | DRIVER | SOURCE | BESCHRIJVING | GEBRUIKT_DOOR | STATUS |
+---------+--------+--------------------------------------------+-------------+---------+---------+
| c2d | dir | /var/snap/lxd/common/lxd/storage-pools/c2d | | 0 | AANGEMAAKT |
+---------+--------+--------------------------------------------+-------------+---------+---------+
| default | zfs | /var/snap/lxd/common/lxd/disks/default.img | | 0 | AANGEMAAKT |
+---------+--------+--------------------------------------------+-------------+---------+---------+
onknows@io3:~$ lxc profile edit default # verander de pool naar c2d
onknows@io3:~$ lxc profile show default
config: {}
beschrijving: Standaard LXD-profiel
apparaten:
eth0:
naam: eth0
netwerk: lxdbr0
type: nic
eth1:
nictype: gekoppeld
parent: lxdbr1
type: nic
root:
pad: /
pool: c2d
type: disk
naam: standaard
gebruikt_door: []
LXC vertrouwen
Start de eerste node op met Vagrant
c2
vagrant up c2d-rproxy1
Dit zal de foutmelding opleveren:
De LXD-provider kon niet authenticeren bij de daemon op https://127.0.0.1:8443.
Dit kun je oplossen met:
lxc config trust add ~/.vagrant.d/data/lxd/client.crt
Feedback
Was deze pagina nuttig?
Fijn om te horen! Vertel ons alstublieft hoe we kunnen verbeteren.
Jammer om dat te horen. Vertel ons alstublieft hoe we kunnen verbeteren.