Hallo zusammen,
ich habe mir neuerdings eine Docker-VM aufgebaut, dort möchte ich einen NFS-Share einbinden.
Dabei hängen USB-Platten am Host, und die NFS-Shares werden über einen LXC bereitgestellt.
Aktuell ist es folgendermaßen gelöst:
Im PVE: /etc/pve/lxc/400.conf
In der 400-LXC: /etc/exports
Bei Änderungen immer "exportfs -a" durchgeführt.
Der Inhalt der MPs ist hier auch noch richtig.
Dann in der Docker-VM mit IP 192.168.0.65:
sudo mount -t nfs -o nolock 192.168.0.56:/mnt/storage /home/varustartes/Storage
oder auch per fstab:
192.168.0.56:/mnt/storage /home/varustartes/Storage nfs nofail,nolock,noatime 0 0
Führt dann dazu dass in der Docker-VM der Inhalt vom /mnt/nfs_share auftaucht, der nicht für die IP-Adresse der Docker-VM freigegeben ist, außerdem sind die Einträge in der exports-Datei doch völlig unterschiedlich benannt...
Sonst haben die NFS-Shares immer so funktioniert. Was bitte übersehe ich?
Das Verhalten trat erst auf nachdem ich einige NFS-shares konsolidiert habe, die vorher in der VM eingebunden waren.
Habe aber ganz normal einfach Einträge entfernt/unmounted, und jeweils neu gestartet, vom Ziel zur Quelle, so wie man es eigentlich auch machen sollte.
Wenn ich den ersten EIntrag in der Exports-Datei auskommentiere, dann wird der richtige NFS-Share gefunden. Aber das ist ja nur ein Workaround.
Entweder habe ich hier einen Bug, oder ich verstehe etwas fundamental falsch...
PS: Wenn ich die USB-Platten an der VM durchreichen würde, dann stünden sie am Host vermutlich nicht mehr zur Verfügung, richtig?
Will vermeiden zu viele Services auf die VM ziehen zu müssen.
ich habe mir neuerdings eine Docker-VM aufgebaut, dort möchte ich einen NFS-Share einbinden.
Dabei hängen USB-Platten am Host, und die NFS-Shares werden über einen LXC bereitgestellt.
Aktuell ist es folgendermaßen gelöst:
Im PVE: /etc/pve/lxc/400.conf
Code:
arch: amd64
cores: 4
features: mount=nfs,nesting=1
hostname: NFS-Server
memory: 512
mp0: /mnt/pve/SSD3/Varustartes/Complete ISO/,mp=/mnt/nfs_share
mp1: /mnt/pve/SSD3/,mp=/mnt/storage
net0: name=eth0,bridge=vmbr0,firewall=1,gw=192.168.0.1,hwaddr=7A:F3:96:6E:B6:43,ip=192.>
onboot: 1
ostype: debian
rootfs: local-lvm:vm-400-disk-0,size=8G
swap: 512
In der 400-LXC: /etc/exports
Code:
# M9201
/mnt/nfs_share 192.168.0.29/24(rw,sync,no_subtree_check)
# Docker
/mnt/storage 192.168.0.65/24(rw,sync,no_subtree_check)
Bei Änderungen immer "exportfs -a" durchgeführt.
Der Inhalt der MPs ist hier auch noch richtig.
Dann in der Docker-VM mit IP 192.168.0.65:
sudo mount -t nfs -o nolock 192.168.0.56:/mnt/storage /home/varustartes/Storage
oder auch per fstab:
192.168.0.56:/mnt/storage /home/varustartes/Storage nfs nofail,nolock,noatime 0 0
Führt dann dazu dass in der Docker-VM der Inhalt vom /mnt/nfs_share auftaucht, der nicht für die IP-Adresse der Docker-VM freigegeben ist, außerdem sind die Einträge in der exports-Datei doch völlig unterschiedlich benannt...
Sonst haben die NFS-Shares immer so funktioniert. Was bitte übersehe ich?
Das Verhalten trat erst auf nachdem ich einige NFS-shares konsolidiert habe, die vorher in der VM eingebunden waren.
Habe aber ganz normal einfach Einträge entfernt/unmounted, und jeweils neu gestartet, vom Ziel zur Quelle, so wie man es eigentlich auch machen sollte.
Wenn ich den ersten EIntrag in der Exports-Datei auskommentiere, dann wird der richtige NFS-Share gefunden. Aber das ist ja nur ein Workaround.
Entweder habe ich hier einen Bug, oder ich verstehe etwas fundamental falsch...
PS: Wenn ich die USB-Platten an der VM durchreichen würde, dann stünden sie am Host vermutlich nicht mehr zur Verfügung, richtig?
Will vermeiden zu viele Services auf die VM ziehen zu müssen.
Last edited: