码迷,mamicode.com
首页 > Web开发 > 详细

部署SaltStack及批量安装httpd服务

时间:2018-08-05 23:32:54      阅读:367      评论:0      收藏:0      [点我收藏+]

标签:host   防火   -o   epel   file模块   地址   文件权限   简介   etc   

  • SaltStack简介
  • Salt是一个基础平台管理工具。SaltStack 采用 C/S模式,server端就是salt的master,client端就是minion,minion与master之间通过ZeroMQ消息队列通信。master监听4505和4506端口,4505为master和minion认证通信端口,4506为master用来发送命令或者接收minion的命令执行返回信息。
    ?

    • SaltStack常用模块
    • SaltStack提供了非常多的功能模块,以便于对操作系统的基础功能和常用工具的操作。

    1:pkg模块 :是包管理,包括增删更新。
    2:file模块 :管理文件操作,包括同步文件、设置文件权限和所属用户组、删除文件等操作。
    3:cmd模块 :是在Minion上执行命令或者脚本。
    4:user模块 :管理系统账户操作。
    5:service模块 :管理系统服务操作
    6:cron模块 :管理cron服务操作

    ?
    部署环境

    角色 主机名 IP
    master master.saltstack.com 192.168.200.128
    minion web01.saltstack.com 192.168.200.129
    minion web02.saltstack.com 192.168.200.130

    ?
    操作步骤

    • SaltStack安装

    • 1:修改主机名

      # vim /etc/hostname
      三台主机分别为:
      master.saltstack.com    //(管理)
      web01.saltstack.com     //(被管理)
      web02.saltstack.com     //(被管理)
    • 2:修改三台hosts文件

      # vim /etc/hosts
      192.168.200.128 master.saltstack.com
      192.168.200.129 web01.saltstack.com
      192.168.200.130 web02.saltstack.com
    • 3:安装

      # systemctl stop firewalld   
      # setenforce 0                   //关闭防火墙
      # yum install -y epel-release
      # yum install -y salt-master      //管理端安装
      # yum install -y epel-release
      # yum install -y salt-minion      //被管理端安装
    • 4:管理端配置

      # vim /etc/salt/master
      interface: 192.168.200.128    //15行 监听地址改为本地IP
      ............
      auto_accept: True                //215  证书认证
      ............
      file_roots:                          //416行 站点目录开启
          base:
               - /srv/salt
      ............
      nodegroups:                          //710行 组分类
          group1: ‘web01.saltstack.com‘ 
          group2: ‘web02.saltstack.com‘
      ............
      pillar_opts: True              //552行  pillar开启
      
      pillar_roots:                     //529行
           base:
              - /srv/pillar
      
      # cat /etc/salt/master | grep -v ^$ | grep -v ^#       //查看修改好的配置项

      技术分享图片

    ?

    • 5:创建salt文件根目录和pillar目录

      # mkdir /srv/salt
      # mkdir /srv/pillar
      # systemctl start salt-master.service    //开启服务
      # netstat -natp | egrep ‘4505|4506‘       //查看4505、4506端口

      技术分享图片

    ?

    • 6:被管理端配置

      # vim /etc/salt/minion
      master: 192.168.200.128     //16行 指定管理端IP
      id: web01.saltstack.com      //78行 指定被控的主机名 (另外一台为 web02.saltstack.com)
      # systemctl start salt-minion.service  //开启服务

    ?

    • 7:在管理端测试 。 ‘*‘ 指的是所有主机

      # salt ‘*‘ test.ping     //查看通信状态
      # salt ‘*‘ cmd.run ‘df -h‘   //查看所有被管理端的挂载情况
      # salt ‘web01.saltstack.com‘ cmd.run ‘df -h‘   //查看指定主机的挂载情况
      # salt ‘*‘ grains.items   //查看grains值
      # salt ‘*‘ pillar.items   //查看pillar(动态信息)
      # salt-key  //查看已经被接受过的客户端

      技术分享图片技术分享图片
      ?
      ?

    • Saltstack配置管理安装Apache

      注意:‘*‘  表示所有客户端执行apache模块
      # vim /srv/salt/top.sls
      base:
       ‘*‘:
           - apache

      技术分享图片

      # vim /srv/salt/apache.sls   //注意apache-service  是自定义的id名
      apache-service:
          pkg.installed:
              - names:
                  - httpd
                  - httpd-devel
          service.running:
              - name: httpd
              - enable: True

      技术分享图片

    • 重启服务

      # systemctl restart salt-master 
    • 在管理端执行刷新state配置命令

      # salt ‘*‘ state.highstate

      技术分享图片技术分享图片
      ?
      ?

    • 去minion验证下httpd安装成功

    技术分享图片技术分享图片

    部署SaltStack及批量安装httpd服务

    标签:host   防火   -o   epel   file模块   地址   文件权限   简介   etc   

    原文地址:http://blog.51cto.com/13630803/2155031

    (0)
    (0)
       
    举报
    评论 一句话评论(0
    登录后才能评论!
    © 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
    迷上了代码!