Outils pour utilisateurs

Outils du site


Conteneurs LXC sous Proxmox

Images de systèmes

Il y a quelques tarballs pour des distribs minimales, avec des services pré-installés (appliance).

Les images de Debian post-installation (très peu de choses ont été faites) occupent chez moi 650Mo-700Mo après MàJ du système. C'est peut-être beaucoup.

On pourrait aussi installer d'autres systèmes. Genre NixOS mais avec des difficultés : https://github.com/NixOS/nixpkgs/issues/9735

Configuration

L'IP est gérée par DHCP, je configure mon routeur pour un baux statique.

L'accès SSH n'est dispo que si l'on créé un authorized_keys, donc l'accès par MDP est désactivé par défaut avec l'image Debian.

Templates LXC et lxc-create

Les templates sont conçus par l'équipe de Proxmox. Préconfiguré, bien gentil.

Un doute : et si le template était foireux ? Il peut être pertinent de partir sur une installation de Debian “authentique”.

Pour cela, pas le choix, il faut installer debootstrap, et utiliser lxc-create.

/etc/pve/lxc/102.conf
arch: amd64
cores: 1
hostname: mplnfsc
memory: 512
net0: name=eth0,bridge=vmbr0,hwaddr=4E:00:65:4C:46:67,ip=dhcp,type=veth
ostype: debian
rootfs: thinpool_ssd:vm-100-disk-1,size=4G
swap: 512
unprivileged: 1
#unprivileged: 0
mp0: /mnt/local/mpl_data,mp=/mnt/mpl_data
lxc.aa_profile = lxc-container-default-with-nfsd
#lxc.aa_profile = unconfined
/etc/pve/lxc/102.conf
# Template used to create this container: /usr/share/lxc/templates/lxc-debian
# Parameters passed to the template: -r stretch
# Template script checksum (SHA-1): 04e03df7bef22b844d7983bf5dc820c94ec10080
# For additional config options, please look at lxc.container.conf(5)
 
# Uncomment the following line to support nesting containers:
#lxc.include = /usr/share/lxc/config/nesting.conf
# (Be aware this has security implications)
 
#lxc.network.type = empty
lxc.rootfs = /var/lib/lxc/102/rootfs
#lxc.rootfs.backend = dir
 
# Common configuration
lxc.include = /usr/share/lxc/config/debian.common.conf
 
# Container specific configuration
#lxc.tty = 4
#lxc.utsname = 102
lxc.arch = amd64
 
 
# Ajouts extraits depuis les confs existantes de conteneurs Proxmox
#lxc.arch = amd64
#lxc.include = /usr/share/lxc/config/debian.common.conf
lxc.include = /usr/share/lxc/config/debian.userns.conf
lxc.monitor.unshare = 1
lxc.id_map = u 0 100000 65536
lxc.id_map = g 0 100000 65536
lxc.tty = 2
lxc.environment = TERM=linux
lxc.utsname = mplnfsc
lxc.cgroup.memory.limit_in_bytes = 536870912
lxc.cgroup.memory.memsw.limit_in_bytes = 1073741824
lxc.cgroup.cpu.shares = 1024
#lxc.rootfs = /var/lib/lxc/102/rootfs
lxc.network.type = veth
lxc.network.veth.pair = veth100i0
lxc.network.hwaddr = 4E:00:65:4C:46:67
lxc.network.name = eth0
lxc.aa_profile = unconfined
lxc.cgroup.cpuset.cpus = 3

Penser à faire correspondre l'adresse MAC. Changer les noms (utsname). Le chemin de rootfs…

Il semblerait que le aa_profile d'un conteneur non privilégié soit en “unconfined”.

Il faut aussi voir comment Proxmox se débrouille avec le rootfs. Les répertoires /rootfs sont vides (normalement, c'est stocké sur une partition LVM-thin séparée).

article/linux/mplx/installation-proxmox-conteneurs.txt · Dernière modification: 2017/09/08 22:59 par bicarbonate