Во-первых, честно говоря, я новичок в мире кукол. Я пытаюсь создать марионеточный сценарий для своего сервера.
вот как выглядит моя марионеточная структура
.
|-- environments
| `-- example_env
| |-- manifests
| |-- modules
| `-- README.environment
|-- manifests
| |-- node.pp
| `-- site.pp
|-- modules
| |-- nginx
| | `-- manifests
| | `-- nginx.pp
| |-- sudoers
| | |-- files
| | | `-- sudoers
| | `-- manifests
| | `-- sudoers.pp
| `-- users
| `-- manifests
| `-- users.pp
|-- puppet.conf
`-- templates
вот как мой node.pp
и site.pp
выглядят так.
# /etc/puppet/manifests/node.pp
node werain {
include sudoers
}
и
# etc/puppet/manifests/site.pp
import 'node.pp'
и наконец мой sudoers.pp
файл выглядит так.
# /etc/puppet/modules/sudoers/manifests/sudoers.pp
class sudoers {
file { '/etc/sudoers':
mode: '0400',
source: 'puppet:///modules/sudoers/sudoers',
owner: 'root',
group: 'root'
}
}
Любая подсказка, что я делаю неправильно.
Я управляю puppet
такую команду.
puppet apply /etc/puppet/manifests/site.pp --modulepath=/etc/puppet/modules/
мой puppet
версия 3.8.4
когда вы создаете модуль, вам необходимо иметь init.pp
файл в каталоге манифестов.
Переименуйте, чтобы он выглядел так:
# /etc/puppet/modules/sudoers/manifests/init.pp
class sudoers {
file { '/etc/sudoers':
mode: '0400',
source: 'puppet:///modules/sudoers/sudoers',
owner: 'root',
group: 'root'
}
}