luoson1 发表于 2018-8-3 10:20:54

puppet自动化管理工具学习之用户,组

  puppet 自动化管理工具学习之用户,组:
  要实现这种功能,大概有3种方法,1.直接在site.pp里直接写,这样代码不够简洁。2.可以应用到class调用。3.可以写函数达到效果。自己处于学习阶段,定期更新中。作为笔记。简单介绍下3种实现的方法:
  一:vi site.pp
  user { "pu_test":
  ensure   => "present",
  uid => 801,
  home => "/home/pu_test",
  managehome => true,
  shell => "/bin/bash",
  }
  group { "pu_test":
  gid => 801,
  ensure => "present",
  }
  在客户端执行:puppetd --test --server puppet
  # puppetd --test --server puppet
  info: Caching catalog for test_web1.fminutes.com
  info: Applying configuration version '1320113587'
  notice: //User/ensure: created
  notice: Finished catalog run in 0.41 seconds
  出现以上结果,就是正确的,看下是否有新用户产生。
  二:应用到类的话,先在modules/下创建模块,然后在入口文件里导入该模块。
  mkdir {files,manifests,templates}
  vi manifests/users.pp
  class users::pu_users {
  @user { "test3":
  ensure   => "present",
  comment=> "",
  home   => "/home/test3",
  managehome => true,
  shell    => "/bin/bash",
  }
  @user { "test4":
  ensure   => "present",
  comment=> "",
  home   => "/home/test4",
  managehome => true,
  shell    => "/bin/bash",
  }
  }
  然后再写模块文件:init.pp
  vi init.pp
  import "users.pp"
  在puppet/manifests下有site.pp,nodes.pp,没有的话就创建。
  vi site.pp
  import "nodes.pp"
  vi nodes.pp
  node 'test_web1.fminutes.com' {
  include users::pu_users
  include users::groups
  realize (User["test3"])

  #      User <|>  ##此命令跟上一条的命令一样,将虚拟的转变为现实。如没有此命令,不会成功。
  ##二个任选一个即可。
  }
  三:调用函数
  site.pp,nodes.pp,init.pp跟上面的一样,更改uses.pp里即可。
  vi users.pp
  #class users::pu_users {
  define add_user ( $email,$uid ) {
  $username = $title
  user { $username:
  ensure   => &quot;present&quot;,#
  uid      => $uid,
  comment=> $email,
  home   => &quot;/home/$username&quot;,
  managehome => true,
  shell    => &quot;/bin/bash&quot;,
  }
  }
  add_user { &quot;test5&quot;:
  email => &quot;test5&quot;,
  uid   => &quot;901&quot;,
  }
  }
  8.参考资料
  puppet官方网站:http://www.puppetlabs.com/
  puppet中文wiki:http://puppet.chinaec2.com/
  puppet中文博客:http://www.comeonsa.com
http://www.mysqlops.com/category/puppet
页: [1]
查看完整版本: puppet自动化管理工具学习之用户,组