2016-09-05 3 views
1

Работает ли chef-клиент как часть запуска сервера или только на следующем внутреннем наборе поваренной книги для шеф-повара?Работает ли chef-клиент при запуске?

Есть ли настройка поваренной книги для шеф-повара, чтобы серверы выполняли работу шеф-повара, как только они загружались (не видели), без необходимости вручную редактировать сценарии запуска?

Я спрашиваю, потому что я отключил прозрачные страницы (согласно this mongo doc).

Я могу легко получить рецепт, чтобы отредактировать правильный параметр для правильных файлов, но при перезагрузке настройка переключается обратно. Если я знаю, что chef-client будет работать при перезагрузке первой вещи, мне не придется беспокоиться о том, чтобы возиться с сценариями запуска.

ответ

2

По умолчанию chef-client не настроен для запуска как задача init. Хотя, шеф-клиент может быть запущен как демон. cookbook chef-client может использоваться для настройки chef-клиента как демона. Добавьте рецепт по умолчанию в список запуска узла, а затем используйте атрибуты в этой кулинарной книге, чтобы настроить поведение шеф-повара.

https://docs.chef.io/ctl_chef_client.html#run-as-a-service

Если вы хотите, вы можете настроить его в качестве инициализации службы с шефом-клиентом :: init_service рецепта.

https://github.com/chef-cookbooks/chef-client/blob/master/recipes/init_service.rb

+0

ОК, просто убедитесь, что, если я добавлю этот рецепт в список запуска узлов, он начнет запускать шеф-клиент при его загрузке? – red888

+0

Сначала вы должны настроить chef-client как службу, выполнив этот рецепт на этом узле. В следующий раз, когда он загрузится/перезагрузится, начнется шеф-клиент. –

1
  1. Вы можете запустить повара, используя хрон, есть специальный 'макро' @reboot, вы должны добавить аналогичную строку в кронтаб:

    @reboot /path/to/my/chef-client 
    
  2. Некоторые дистрибутивы Linux поддерживают /etc/rc.local файл (например, Debian/Ubuntu) или аналогичный файл, который выполняется.

Смежные вопросы