O Puppet não remove automaticamente algo, apenas porque gerenciou uma configuração no passado e o recurso antigo não se aplica mais.
Se você quiser remover essa montagem antiga, remova-a com algo assim.
mount { '/mnt/nfs':
ensure => absent,
}
Eu defini uma classe simples para montar um compartilhamento nfs no host como segue (atual)
class mounts {
file { [ "/mnt/share", "/mnt/share/share1" ]:
ensure => 'directory',
}
mount { '/mnt/share/share1':
ensure => 'mounted',
device => '192.168.122.1:/home/export',
dump => '0',
fstype => 'nfs',
options => 'vers=3,defaults',
pass => '0',
require => File[ "/mnt/share", "/mnt/share/share1" ],
}
}
Então, agora eu tenho uma entrada em / etc / fstab no cliente de marionetes
192.168.122.1:/home/export /mnt/share/share1 nfs vers=3,defaults 0 0
Meu problema é que a classe de fantoches foi definida dessa maneira (OLD)
class mounts {
file { '/mnt/nfs':
ensure => 'directory',
}
mount { '/mnt/nfs':
ensure => 'mounted',
device => '192.168.122.1:/home/export',
dump => '0',
fstype => 'nfs',
options => 'vers=3,defaults',
pass => '0',
require => File[ "/mnt/nfs" ],
}
}
E agora eu tenho duas entradas no / etc / fstab
192.168.122.1:/home/export /mnt/nfs nfs vers=3,defaults 0 0 #OLD
192.168.122.1:/home/export /mnt/share/share1 nfs vers=3,defaults 0 0 #NEW
porque o fantoche não remove a entrada antiga?
O Puppet não remove automaticamente algo, apenas porque gerenciou uma configuração no passado e o recurso antigo não se aplica mais.
Se você quiser remover essa montagem antiga, remova-a com algo assim.
mount { '/mnt/nfs':
ensure => absent,
}