zoukankan      html  css  js  c++  java
  • salt命令

    salt-key

     -L list在master上所有收到的公钥连接请求

     -A accept所有pending的请求。
     -D 删除所有
     在minion上启动服务后,几十秒后会在/etc/salt/pki/minion/下生成一个钥匙对。
     然后minion会把pub公钥发给master,master上就会出现unaccepted的ID。
     然后minion上/etc/salt/pki/minion/下就会出现一个master的pub公钥。这样认证就完成了。
     认证完成后还要过几十秒才能test.ping。
     有时候会出现minion上钥匙对还没生成,master上就出现了unaccepted的ID,这时候accept是没用的。要删除minion上/etc/salt/pki/minion/下的三个文件。然后重启minion。minion会重新生成钥匙对。
    ID
     minion会生成一个自身的ID,这个ID可以在conf里设定,但是默认是注释的。没有设定的话,就会以hostname为ID
     master上的minion名就是这个ID,在/etc/salt/pki/minion下有存储。
     

    调试

    salt-minion -l dubug
    salt-master -l debug
    一些运行的报错可以在这里看
     

    target
     
    pillar
     可以把一些指定的信息(如修改conf文件的参数)写到minion上。
     和state文件一样,是sls格式的
     
    模块&功能
     sys.doc mod.fun 显示一个fun的帮助信息
     sys.list_functions mod 列出一个mod的所有fun
     disk.blkid 显示block的fstype和uuid
     disk.fstype 显示fstype
     disk.percent 磁盘使用率
     disk.usage 磁盘使用量(容量,inode)
     cmd.run "xx" 批量执行命令
     cmd.script salt://xx.sh 下载salt上file server的脚本到minion上执行。
     cmd.shells 返回/etc/shells的内容,就是可用的shell
     cp.get_file 从master拷贝文件到minion,比如脚本
     state.sls file(不带.sls后缀) 执行一个或多个sls文件中的目标状态
     test.ping 测试连通性,安装完minion后需要测试
    file server
     简单的文件服务器,向minion分发文件。
     salt文件服务器是内建在master里面的
     主要目的是为salt状态系统提供文件
     可以用于从master到minion的任意普通文件传输
     backends
      salt支持模块化的文件服务器后端系统
      系统允许salt master直连第三方系统,收集和管理文件,并对minion可用
      可以配置多后端,就可以搜索在这里被定义的文件。
      默认设置只启用标准后端“roots”,使用“file_roots”选项
      请求文件时首先会在roots中搜索
     env环境
      文件服务器基于传递给master的环境工作
      每个环境有多个根目录。
      base环境要求在第一位
     动态模块分发
      自定义的salt执行,状态和其他模块,可以通过satl文件服务器分发到minion
      通过file_roots选项定义,在环境根目录下,符合模块类型就可被使用
     从指定环境请求文件
      查询语法:
    state
     salt states是配置管理系统,它的核心是相应的sls文件。
     sls文件描述系统的目标状态,存放目录由“环境”指定
     sls文件使用YAML格式。
     sls会使用jinja语言,支持一些循环判断
     file_roots下会有多个环境,其中base是必要的,top.sls也放在其中
     top.sls:不是必须的。比如要配置跨机器的lamp,不同机器的sls文件需要由top.sls去指定
     include state的层级关系。许多功能被分成许多sls,然后有一个sls来引用这些sls。
     在sls文件中目录用.表示。
     在生产环境中,执行salt命令,后面都该加上test=True,先做测试。
     sls文件最前面的是state ID,如果模块中不含name,state ID就是name。
     一个ID下可以有多个模块。完成多种功能。
     一种安装逻辑
      haproxy的安装分三部分,依赖包的安装,安装文件的传输,命令的执行
      在命令实行时,需要有require: 确认pgk和file已经完成。
     
    sls文件编写案例
     mypkgs:
       pkg.installed:
         - sources:
        - foo: salt://rpms/foo.rpm
        - baz: ftp://someothersite.org/baz.rpm
     
     libevent:
       file.managed:
      - name: /tmp/libevent-2.1.8-stable.tar.gz
      - source: salt://memcache/libevent-2.1.8-stable.tar.gz
      - mode: 755
      - user: root
      - group: root
       cmd.run:
      - name: "cd /tmp && tar zxf libevent-2.1.8-stable.tar.gz && cd libevent-2.1.8-stable && ./confugure --prefix=/usr/local/libevent-218 && make && make install"
      - require:
        - file: libevent
     #这个ID包含两个功能,第二个功能依赖于第一个功能的实现,所以有require一项,格式是- 模块: 模块所在ID
     
     include:
       - linux-system-init.dns
       - linux-system-init.histtimeformat
       - linux-system-init.sysctl
       - linux-system-init.zabbix-agent-install
     #在子目录里写好几个sls,然后在root目录下编写一个总体的sls,使用include模块,包含linux-system-init目录下的多个子sls,不需要后缀名。

     
     
     
      
      
      
      
      
      
  • 相关阅读:
    超定方程组
    单应矩阵
    Flexible Camera Calibration By Viewing a Plane From Unknown Orientations
    解 Ax = 0
    PVANET: Deep but Lightweight Neural Networks for Real-time Object Detection
    图像处理库
    visdom 简单使用
    STN(Spatial Transformer Networks)
    Distilling the Knowledge in a Neural Network
    记一次前端中国标准时间转换为yyyy-MM-dd类型
  • 原文地址:https://www.cnblogs.com/jabbok/p/10182930.html
Copyright © 2011-2022 走看看