Откуда в манифесте Puppet

Следующий манифест Puppet предназначен для установки двоичного файла и файла описания службы systemd для запуска двоичный файл как службу и для перезапуска службы при изменении двоичного файла или описания службы.

class my_module::my_service {

  file { '/usr/local/bin/my_service':
    notify => Service['my_service'],
    owner  => root,
    group  => root,
    mode   => '500',
    ensure => present,
    source => 'puppet:///modules/my_module/my_service',
  }

  file { '/lib/systemd/system/my_service.service':
    notify => Service['my_service'],
    owner  => root,
    group  => root,
    mode   => '400',
    ensure => present,
    source => 'puppet:///modules/my_module/my_service.service',
  }

  service { 'my_service':
    require  => [ File['/usr/local/bin/my_service'],
                  File['/lib/systemd/system/my_service.service'] ],
    enable   => true,
    ensure   => running,
    provider => systemd,
  }
}                 

Когда я пытаюсь применить его, я получаю следующие сообщения об ошибках:

Warning: /Stage[main]/My_module::My_service/File[/usr/local/bin/my_service]: 
Skipping because of failed dependencies
Notice: /Stage[main]/My_module::My_service/File[/lib/systemd/system/my_service.service]: 
Dependency User[root] has failures: true
Warning: /Stage[main]/My_module::My_service/File[/lib/systemd/system/my_service.service]: 
Skipping because of failed dependencies
Notice: /Stage[main]/My_module::My_service/Service[my_service]: 
Dependency User[root] has failures: true
Warning: /Stage[main]/My_module::My_service/Service[my_service]: 
Skipping because of failed dependencies

Где в этом манифесте возникает зависимость от пользователя [root] и как я могу решить возникшую проблему? (Мне кажется, что даже если цитирование root файла файла вызвало неявную зависимость от пользователя [root] , этот специальный пользователь уже должен существовать в любом case.)

0
задан 4 September 2017 в 12:53
2 ответа

Основная причина заключалась в том, что я запустил марионеточный агент -f из непривилегированной учетной записи. Добавление sudo решило эту проблему.

0
ответ дан 24 November 2019 в 03:54

Вы действительно не можете избежать таких неявных отношений. Ваш каталог пытается управлять пользователем root, и если это не удается, Puppet откажется подключаться к зависимым ресурсам.

Вы должны либо выяснить, почему ресурс User [root] отказывает в первую очередь (это это серьезный красный флаг, разумеется), или, если возможно, прекратите управление этим ресурсом (обычно действительно бессмысленно управлять этой самой учетной записью).

0
ответ дан 24 November 2019 в 03:54

Теги

Похожие вопросы