Синтаксическая ошибка в '{'; ожидается '}' при использовании nagios в марионетке
Это большая проблема для меня, потому что я не знаком с куклой.
ОШИБКА на марионетке:
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 на сервере SERVER: не удалось выполнить синтаксический анализ для рабочей среды: синтаксическая ошибка в '{'; ожидается '}' в /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 в модуле модуля / код 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",
    } 
}
и файловый модуль / nagios / init.pp пуст
Как я мог это исправить?
3 ответа
Puppet 0.25 не поддерживает параметризованные классы, вы должны перейти на puppet > 2.6.
Это решено. Версия Puppet Master - 0.25, по умолчанию на Ubuntu 10.04 LTS. Я обновил его до 2.7.14, и он работает нормально.
У меня когда-то была похожая проблема, оказалось, что это проблема простого синтаксиса. Где-то в документе у меня была синтаксическая ошибка, но я показывал ее мне почти в конце этого документа. Поэтому я бы посоветовал вам проверить ваши скобки, кавычки и запятые.