• 自动化运维工具----saltstack安装及配置


    Saltstack

    一.环境准备

    https://mirrors.aliyun.com/repo/Centos-7.repo

    https://mirrors.aliyun.com/repo/epel-7.repo

    需要以上两个阿里云的repo还有本机自身的centos7镜像的repo。

    二.安装saltstack

    master机器上安装salt-master

    yum -y install salt-master

    minion机器上安装salt-minion

    yum -y install salt-minion

    master机器上配置/etc/salt/master配置文件

    搜索file_root找到该配置栏目,把备注去掉

    file_roots:
      base:
        - /saltstack/salt

    搜索pillar找到该配置栏目,把备注去掉

    pillar_roots:
      base:
        - /saltstack/pillar

    开启防火墙

    firewall-cmd --add-port=4506/tcp --permanent

    firewall-cmd --add-port=4505/tcp --permanent

    重启服务

    设置开机启动

    systemctl restart salt-master.service

    systemctl enable salt-master.service 

    minion机器上,配置/etc/salt/minion配置文件

    搜索master并修改其ip地址

    master: 172.16.1.177

    搜索id,此处表示在master側显示本机为什么样的id。

    id: web01

    重启服务

    设置开机启动

    systemctl restart salt-minion.service

    systemctl enable salt-minion.service 

    然后在master机器上输入命令

    salt-key  查看是否有minion连接上(若连接不上,可能是minion配置或者是防火墙问题,配置文件的空格限制非常严格)

    salt-key  -A  接受所有连接

    salt-key  -a  接受主机

    salt-key  -d  删除主机

    salt-key  -l   列出所有

    三.saltstack命令

    Salt命令格式

        目标    模块(命令)  方法(参数)

    salt       ‘*’        test.ping

    salt       ‘*’        cmd.run            ‘df -h’

    一些小实例:

    -------------------------------------------------实例1:批量管理文件--------------------------------------------------

    在之前的/etc/salt/master配置文件中我们已经定义了saltfile默认根目录为/srv/saltpillar根目录为/srv/pillar。但是系统这时候是没有这两个目录的,因此要自己创建。

    mkdir  /srv/{salt,pillar}  

    然后进入/srv/salt,创建目录files

    mkdir  /srv/salt/files

    同时创建配置文件,host_file.slssalt配置文件的后缀必须为sls

    vim  host_flie.sls 

    update-hosts:
      file.managed:
        - name: /etc/hosts                         #指定修改哪里的文件
        - source: salt://files/hosts              #指定源文件存放在本地的哪里
        - user: root
        - group: root
        - mode: 664

    执行命令,更新文件。

    salt  ‘*’  state.sls  host_file 

    -------------------------------------------------实例2:批量安装应用-------------------------------------------------

    创建sls文件

    vim  service_install.sls

    service-install:
      pkg.installed:                                  #安装模块
        - names:
          - vsftpd
          - httpd
          - lrzsz
          - lsof

    service-running:
      service.running:                             #服务启动模块
        - enable: True
        - reload: True
        - names:
          - vsftpd

    执行sls文件

    salt  ‘*’  state.sls  service_install.sls

    ------------------------------------------实例三:规划定时任务crontab------------------------------------------

    创建sls文件

    vim  cron.sls

    cleanup:
      cron.present:
        - name: /bin/bash /scripts/cleanup.sh                    #想要加入定时任务的命令
        - user: root                                                             #指定用户为root
        - minute: 5                                                             #分  
        - hour: 10-23                                                          #时
        - daymonth: 1-30                                                   #日
        - month: 1-6                                                           #月

    #  -dayweek:                                                              #周

  • 相关阅读:
    常用操作之增、删、改、查
    文本编辑器相关操作
    关于Secondary NameNode
    hive基础概念总结(1)
    Shell 十三问[转]
    《SQL Server 2012 Tutorials Analysis Services Multidimensional Modeling》读后感
    HDFS随笔(1)
    Hue for Apache Hadoop
    大数据面试题总结
    关于数据倾斜
  • 原文地址:https://www.cnblogs.com/QicongLiang/p/10115262.html
Copyright © 2020-2023  润新知