2014-12-04 6 views
-1

У меня есть сервер, на котором работает марионетка и hiera, и на данный момент 1 клиент. Я хочу, чтобы управлять все мои узлы с hiera конфигурационными файлами, так что я только поместить это в /etc/puppet/manifests/site.pp:Hiera, по умолчанию site.pp и ошибка не смогли найти класс

hiera_include(classes, '') 

В мой файл/и т.д./кукольный/hieradata/общая:

--- 
classes: 
    - "common_test" 
    - fw_test 
    - zabbix::agent 

    zabbix::agent:zabbix_version : '2.2' 
    zabbix::agent:server: 192.168.1.1 
    zabbix::agent:serveractive: '192.168.1.1' 
    zabbix::agent:hostname: 'Test_puppet' 
    zabbix::agent:manage_firewall: true 

С этой конфигурацией мои параметры (192.168.1.1, true, Test_puppet и т. Д.) Не установлены на моем клиенте.

Второй вопрос, когда я добавить zabbix::userparameters в моем списке классов У меня есть эта ошибка Could not find class zabbix::userparameters for... Но этот класс существует (я использую этот пакет https://forge.puppetlabs.com/wdijkerman/zabbix)

Я беру этот пример, но это также does'nt работа с другими классами для ошибки параметров. С уважением.

ответ

1

Неправильные ключи параметров. Например, это ...

Zabbix :: Агент: zabbix_version: '2,2'

... вместо этого следует ...

Zabbix :: агент :: zabbix_version: '2.2'

. Основной проблемой является слишком мало двоеточий между zabbix::agent и zabbix_version. Я не думаю пробел между ключом и задним числом двоеточия, но более условно не иметь.

Что касается zabbix::userparameters, это (определенный) тип ресурса, а не класс. Вы не можете include его (или hiera_include()).

+0

О, это действительно просто, спасибо вам большое! У вас есть идея для пользовательских параметров? Могу ли я сделать что-то подобное zabbix :: agent :: userparameters: source: '...'? – Oyabi

+1

Вы можете создать свой собственный класс, чтобы обернуть объявление 'zabbix :: userparameters'. Вы можете дать этому классу любые параметры, которые ему нужны, и объявить его и его параметры через hiera. Обратите внимание, однако, что точка 'zabbix :: userparameters', являющаяся типом ресурса вместо класса, должна состоять в том, чтобы позволить узлам объявлять более одного. Таким образом, хотя стратегия, которую я описываю, должна работать с точки зрения кукол, я не могу сказать, действительно ли это правильно для ваших узлов. –

+0

Хорошо, я попробую это завтра. У меня последний вопрос. Я написал марионеточный модуль (не публиковать). Его init.p начинаются как 'class testasterisk ($ host_patton = undef, ...'. Но когда я устанавливаю параметр в моем файле hiera с помощью 'testasterisk :: host_patton: '192.168.1.1'', он не работает. Я использую переменную host_patton в шаблоне с '<% = @host_patton%>', и это отлично работает, когда я использую только марионетку. У вас есть идея? Большое спасибо за вашу драгоценную помощь =) – Oyabi

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