Först behöver vi två moduler för att hantera dels fstab samt en modul för att hantera mountningarna. För fstab använder vi AlexClines fstab module och för mountningarna använder vi modulen mounts från samma utvecklare.
Börja med att installera båda modulerna, dessväre saknas stöd för Ubuntu i mounts modulen så där har jag fått göra en fork som jag ska försöka publicera en dag.
$ sudo puppet module install AlexCline-fstab
Notice: Preparing to install into /etc/puppet/modules ...
Notice: Downloading from https://forgeapi.puppetlabs.com ...
Notice: Installing -- do not interrupt ...
/etc/puppet/modules
└─┬ AlexCline-fstab (v0.5.4)
└── puppetlabs-stdlib (v4.8.0)
$ sudo puppet module install AlexCline-mounts
Notice: Preparing to install into /etc/puppet/modules ...
Notice: Downloading from https://forgeapi.puppetlabs.com ...
Notice: Installing -- do not interrupt ...
/etc/puppet/modules
└─┬ AlexCline-mounts (v0.3.1)
├── AlexCline-dirtree (v0.2.1)
└── AlexCline-fstab (v0.5.4)I nodens manifest lägger vi till följande för att skapa en rad i fstab
fstab { 'disk':
source => 'nfs-server:/disk',
dest => '/disk',
type => 'nfs',
opts => 'soft,rw,bg,intr',
dump => 0,
passno => 0,
}Här har vi skapat en definition för nfs disken /disk på servern som heter nfs-server. Det skapas dock ingen mountpunkt på noden, det löser vi med den andra modulen, därför skapar vi följande definition.
mounts { 'Mount punkt för /disk':
ensure => present,
source => 'nfs-server:/disk',
dest => '/disk',
type => 'nfs',
opts => 'soft,rw,bg,intr',
}Och inom 30 minuter så ska /disk finnas och vi kommer åt alla filer från servern.