美文网首页
saltstack配置管理

saltstack配置管理

作者: 树遥儿 | 来源:发表于2017-07-19 10:31 被阅读0次

    配置管理是基于远程执行的
    saltstack是如何进行配置管理的,是通过状态管理来进行的。

    vim master
    file_roots:
      base:
        - /srv/salt/base
      test:
        - /srv/salt/test
      prod:
        - /srv/salt/prod
    

    分别是基础环境,测试环境和生产环境,但是top.sls只能放在base环境,其他任何环境下都不行

    cd /srv/salt/base
    vim dns.sls
    /etc/resolv.conf:
      file.managed:
        - source:  salt://files/resolv.conf
        - user: root
        - group: root
        - mode: 644
    

    直接执行:
    salt '*' state.sls dns
    还有一种方法是加到高级状态里面,这样每次执行高级状态都可以执行。写进top_file里面:

    vim top.sls
    base:
      '*':
        - dns
    

    然后执行高级状态
    salt '*' state.highstate

    学习saltstack的管理配置主要学习:

    1. 系统初始化

    建议所有系统初始化的工作都放在base环境下

    mkdir init
    将初始化的文件放在一个单独文件里面。

    cd /srv/salt/base/init
    vim dns.sls
    /etc/resolv.conf:
      file.managed:
        - source:  salt://init/files/resolv.conf
        - user: root
        - group: root
        - mode: 644
    
    mkdir files
    cp /etc/resov.conf files/
    
    

    让history记录时间

    vim history.sls
    /etc/profile:
      file.append:
        - text:
          - export HISTTIMEFORMAT="%F %T `whoami` "
    

    将所有命令都记录下来

    vim audit.sls
    /etc/bashrc:
      file.append:
        - text:
          - export PROMPT_COMMAND='{ msg=$(history 1 | {read x y; echo $y;});logger"[euid=$(whoami)]":$(who am i):[`pwd`]"$msg";}'
    

    给系统改内核参数

    vim sysctl.sls
    vm.swappiness:
      sysctl.present:
        - value: 0 
    #给系统改内核参数
    
    net.ipv4.ip_local_port_range:
      susctl.present:
        - value: 10000 65000 
    #修改ip监听端口
    
    fs.file-max:
      sysctl.present:
        - value: 100000  
    #修改最大文件描述数量
    
    • 这个时候init文件夹里面有四个初始化文件,现在有个问题是怎么引用它们。如果放在top里面就需要把每个都写进去,这个时候可以再写个sls把这些东西都写进去。
    vim env_init.sls
    include:
      - init.dns
      - init.history
      - init.sysctl
      - init.audit.sls
    #include将下面的文件包含进来
    

    然后将env写进top里面就行了。

    cd ../top.sls
    base:
      '*':
        - init.env_ init 
    #init目录下的env_init
    

    可以在执行之前测试对不对:
    salt '*' state.highstate test=True

    1. 功能模块
    1. 业务模块

    相关文章

      网友评论

          本文标题:saltstack配置管理

          本文链接:https://www.haomeiwen.com/subject/jookkxtx.html