23decxf 发表于 2018-8-3 06:40:53

搭建puppet+svn+func的注意事项

  由于之前有位大师已经详细的讲解了如何搭建puppet+svn+func,在这里我就不多说了,要不然就算不上原创了,需要了解如何搭建就请参考以下地址吧
  http://blog.chinaunix.net/uid-14880689-id-3201948.html
  在这里我主要说一下我安装时碰到的一些问题
  1、svn触发脚本
  触发脚本的名称是post-commit,这个脚本需要手动创建,触发脚本放在hooks目录下。每个人的svn根目录不一样,我的是/opt/svndata/puppet/hooks。当使用commit提交svn时就会触发这个脚本。
  2、触发脚本中使用sudo报错
  我在编辑post-commit脚本是发现,执行某些命令权限不足,于是加了sudo,却发现报错
  解决方法:编辑/etc/sudoers,将Defaultsrequiretty注释掉
  3、触发脚本中调用的一条shell语句
  ssh -np 33777 root@192.168.7.156 “svn up svn://192.168.7.135:9999/puppet /etc/puppet –username=puppet –password=puppet;sh /www/leary/run_client.sh”
  这条语句刚开始不是很明白,后来自己仔细的捋了一下流程,才发现这个是puppet服务端更新svn客户端用的,就是说在puppet服务器上安装一个svn客户端,这个命令就是用来更新svn的。
  所以这条命令涉及到了两个问题:
  (1)、linux版本svn客户端安装
  subversion-1.6.15.tar.gz
  subversion-deps-1.6.15.tar.gz
  tar zxvfsubversion-1.6.15.tar.gz
  tar zxvfsubversion-deps-1.6.15.tar.gz
  ./configure --prefix=/opt/svn
  make && make install
  将svn命令链接到/usr/local/bin目录下
  ln -s /usr/local/subversion/bin/svn /usr/local/bin
  执行svn help 如果出现命令列表,则表示已经链接成功
  建立svn目录
  执行svn co http://192.168.7.135:999/svn/puppet /etc/ --username=puppet --password=puppet
  执行成功后会在/etc/下生成puppet目录
  (2)、不用密码使用ssh直接登录服务器
  登陆svn服务器
  # ssh-keygen (回车,回车,一直回车)
  在/root/.ssh/下面会生成两个文件
  私有密钥id_rsa
  公共密钥id_rsa.pub
  将私有密钥id_rsa复制到puppet服务器/root/.ssh/下面,并重命名为authorized_keys
页: [1]
查看完整版本: 搭建puppet+svn+func的注意事项