Build Puppet Clusters with Vagrant
$ cd ~/docs/propuppetex/chapter3
$ cat Vagrantfile
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "centos64"
config.vm.define "ppt" do |ppt|
ppt.vm.hostname = "puppet.boco.com.cn"
ppt.vm.network "private_network", ip: "192.168.50.3",
virtualbox__intnet: "gcptest-network"
ppt.vm.provider :virtualbox do |vbox|
vbox.customize ["modifyvm", :id, "--natnet1", "10.3/16"]
end
ppt.vm.provision :shell, path: "master.sh"
end
config.vm.define "web" do |web|
web.vm.hostname = "web.boco.com.cn"
web.vm.network "private_network", ip: "192.168.50.4",
virtualbox__intnet: "gcptest-network"
web.vm.provider :virtualbox do |vbox|
vbox.customize ["modifyvm", :id, "--natnet1", "10.3/16"]
end
web.vm.provision :shell, path: "web.sh"
end
end
$ cat master.sh
echo '*' > /etc/puppet/autosign.conf
sed -i '/[.*]/ a \ autosign = true' /etc/puppet/puppet.conf # add "autosign = true" in [main] and [agent]
echo "192.168.50.3 puppet.boco.com.cn puppet" >> /etc/hosts
echo "192.168.50.4 web.boco.com.cn web" >> /etc/hosts
mkdir /etc/puppet/manifests
cat > /etc/puppet/manifests/site.pp <<-EOF
node 'web' {
file { '/home/vagrant/aaa.conf':
content => 'this is made by puppet master!',
}
}
EOF
service iptables stop
$ cat web.sh
sed -i '1 a \ master = puppet' /etc/puppet/puppet.conf # add "master = puppet" after the line [main]
echo "192.168.50.3 puppet.boco.com.cn puppet" >> /etc/hosts
echo "192.168.50.4 web.boco.com.cn web" >> /etc/hosts
echo "proxy=http://10.21.3.31:8888" >> /etc/yum.conf
service iptables stop
Now run "puppet master --no-daemonize --verbose" on ppt, run "puppet agent --test" on web, you can file the file "aaa.conf" at /home/vagrant.
最新文章
- 剑指Offer面试题:5.重建二叉树
- PHP设计的超强大的文件上传类(单文件上传)
- cocos2dx day 1
- autoit使用WMIC获取硬件信息
- vuejs全局api
- NOI WC2016滚粗记
- 加快MySQL逻辑恢复速度的方法和参数总结
- eclips中增加对jar包的引用
- php 去除数组中重复元素
- apache&;nginx资料汇总
- c#用反射原理递归遍历复杂实体对象
- OC - 18.监听iPhone的网络状态
- python操作RabbiMQ
- 我的Python成长之路---第二天---Python基础(7)---2016年1月9日(晴)
- .Net异步编程知多少
- lsb_release 命令找不到
- 201521123060 《Java程序设计》第9周学习总结
- 支付sdk —— 该组件为封装了 微信,支付宝,银联支付
- EOJ Monthly 2019.2 题解(B、D、F)
- appendChild()方法遇到的问题
热门文章
- Linux安全攻防:使用TRAP实现持续控制和提权
- Docker:Linux离线安装docker-compose
- getopt模块的学习
- docker安装应用整理
- 章节1-Prometheus基础(1)
- 【动画消消乐】HTML+CSS 自定义加载动画:清新折叠方块效果 063(附源码及原理详解)
- 【16位RAW图像处理三】直方图均衡化及局部直方图均衡用于16位图像的细节增强。
- python之数据驱动ddt操作(方法二)
- .Net Core微服务——自动收缩、健康检查:Consul(三)
- PAT乙级:1063 计算谱半径 (20分)