2017-01-24 57 views
0

我一直在运行Vagrant中的puppet开发环境时遇到问题,这会引发多个VirtualBox虚拟机。在使用流浪傀儡的时候,第一个流浪乞讨人员是否需要在没有条件的情况下运行下一个流浪汉?

我使用shell置备对木偶主站和木偶客户端安装木偶并且这第一vargrant up期间运行,那么我允许每个机器看到别人通过vagrant hostsupdater插件使用/ etc /主机。

然后我在Puppet服务器上运行sudo puppet apply site.pp;并在傀儡客户端运行sudo puppet agent --server puppet-server --verbose --no-daemonize --waitforcert 10 --noop

然后当证书出现在sudo puppet cert list的puppet服务器上时,我签署了证书sudo puppet cert <client-host-name>,证书获得缓存在客户端上;

回到客户端我运行了sudo puppet agent --server puppet-server --verbose --no-daemonize --waitforcert 10,并注意到所做的更改是针对该机器进行的。

现在我做的下一件事就是关闭所有使用sudo shutdown -h now

然后以前的机器时,我会vagrant up使其返回到联机两者之间的连接将停止工作,木偶援引有关证书的一些错误不匹配。

但最近,当我再次尝试这些步骤,我把它做一个不同的方式,而不是运行vagrant up我跑vagrant up --no-provision第二次的机器启动了,看来这两个可以再沟通。

我的理论是这样的,当第二次重新启动计算机时,排除--no-provision参数,重新生成CA,因此会导致问题,因为两台计算机没有有更长的彼此证书。

这是正确的吗?真的很烦人不得不重新创建机器并手动设置木偶。

也有可能是我的流浪汉SHELL供应方,以检查是否木偶已安装自动跳过重新安装傀儡如果已经安装了它?

此外,有没有办法自动运行木偶服务器上sudo puppet apply site.pp安装后和木偶客户端上运行sudo puppet agent --server puppet-server --verbose --no-daemonize --waitforcert 10 --noop,并且回服务器添加的证书,在使用外壳供应方以正确的顺序?

P.S.是的,我已经知道有是无业游民一个傀儡供应方,但我学习木偶的客户端/服务器端。

+0

我只是想验证这是这种情况。 – leeand00

回答

0

的嗡嗡声,这是奇怪的。

的唯一原因,一个供应方将在第二个(和即将推出)vagrant up是您专门提出要求,所以如果您有类似

config.vm.provision :shell, :inline => "blablabla", :run => 'always' 

通知:run => always这是告诉流浪汉运行置备运行。vagrant up(没有任何选项)的输出将是

==> app: Machine already provisioned. Run `vagrant provision` or use the `--provision` 
==> app: flag to force provisioning. Provisioners marked to run always will still run. 
==> app: Running provisioner: shell... 
+0

那不是吗?也许':run =>'always''是默认的? – leeand00

+1

nop总是不是默认的 - 你能显示'vagrant up'的输出,就像我看到它流浪说_Machine已经provisioned_ –

+0

当我再次打破它时,我会让你知道...... – leeand00