Для меня это большая проблема, потому что я не знаком с марионеткой.
ОШИБКА на кукловоде:
debug: importing '/etc/puppet/manifests/nodes/group-1.pp'
err: Could not parse for environment production: Syntax error at '{'; expected '}' at /etc/puppet/manifests/nodes/group-1.pp:6
ОШИБКА на марионеточном клиенте:
ошибка: не удалось получить каталог с удаленного сервера: ошибка 400 на СЕРВЕРЕ: не удалось выполнить синтаксический анализ для производственной среды: синтаксическая ошибка в '{'; ожидается '}' в /etc/puppet/manifests/nodes/group-1.pp:6
в группе-1.pp:
node 'group1'
{
include ntp
class { 'nagios::host': #this is line 6
nodename => $clientcert,
appname => 'test',
}
}
Код nagios :: host в модуле module / nagios / host.pp находится здесь:
class nagios::host($nodename, $hostgroup) {
file { '/usr/lib/nagios/plugins':
mode => "755",
require => Package["nagios-plugins"],
}
...
@@nagios_service { "${nodename}_check_ssh":
ensure => present,
use => 'generic-service',
host_name => "${nodename}",
notification_interval => 60,
flap_detection_enabled => 0,
service_description => "SSH",
check_command => "check_ssh",
target => "/etc/nagios3/services.d/${nodename}.cfg",
}
}
а файл module / nagios / init.pp пуст
Как я мог это исправить?
Puppet 0.25 не поддерживает параметризованные классы, необходимо обновить его до puppet> 2.6.
Это решено. Основная версия марионетки - 0.25, по умолчанию в ubuntu 10.04 LTS. Я обновил его до 2.7.14, и он работает нормально.
Однажды у меня была похожая проблема, это оказалась простая синтаксическая проблема. Где-то в документе у меня была синтаксическая ошибка, но я показал мне ошибку почти в конце этого документа. Поэтому я бы посоветовал вам проверить скобки, кавычки и запятые.