2014-10-07 3 views
0

Я новичок-кукла. Я пытаюсь настроить среду развертывания в стиле шеф-повара. У меня установлен макет-мастер-сервер, и я хотел бы иметь возможность настраивать/развертывать два узла, которые я настраивал одновременно.Импортные заявления недействительны

То, что я ожидаю с помощью моей кукольной установки прямо сейчас, для моих двух серверов (называемых img01 и img02) для автоматического создания файла с именем /tmp/test_file.txt.

Я даже не уверен, как действительно «загружать» манифест. Я просто предположил, что что-либо в site.pp автоматически загрузится, но это, похоже, не так. Когда я бегу «кукольный применять /etc/puppet/manifests/site.pp», я получаю следующее:

Error: Could not parse for environment production: No file(s) found for import of 'test' at /etc/puppet/manifests/site.pp:3 on node puppet.lgwp.com 
Error: Could not parse for environment production: No file(s) found for import of 'test' at /etc/puppet/manifests/site.pp:3 on node puppet.lgwp.com 

Это то, что мой манифест установка выглядит как прямо сейчас:

список Cert на кукольный главный сервер:

+ "img01.lgwp.com.com" (SHA256) (omitted) 
+ "img02.lgwp.com" (SHA256) (omitted) 
+ "puppet.lgwp.com" (SHA256) (omitted) (alt names: "DNS:puppet.lgwp.com") 

/etc/puppet/manifest/site.pp:

import "test" 

import "nodes" 

Exec { path => "/usr/bin:/usr/sbin/:/bin:/sbin" } 

/etc/puppet/manifest/nodes.pp:

import "test" 

node "imageserver" { 
    include "tempfile" 
} 

node 'img01.lgwp.com' inherits imageserver { 
} 
node 'img02.lgwp.com' inherits imageserver { 
} 

/etc/puppet/modules/test/manifests/test.pp:

class test { 

    package { test: ensure => latest } 

    file { "test_file": 
    path => '/tmp/test_file.txt', 
    ensure => present, 
    mode => 0755, 
    content => 'hola world', 
    source => "puppet:///modules/test/test_file", 
    require => Package["test"], 
    } 
} 

ответ

1

Дон» t использовать импорт. Только не надо.

Удалить существующие import заявления и изменить настройки manifest в вашем puppet.conf, чтобы включить все файлы в /etc/puppet/manifests.

[main] 
manifest=/etc/puppet/manifests/ 

include tempfile не имеет смысла либо, если у вас есть tempfile модуль. Попробуйте

include test 

Другие классы в test модуль должен быть назван test::something, а также может быть просто включен. Кукольный находит манифесты в соответствующих модулях. В настоящее время нет необходимости использовать import.

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