原文来自Salt Documentation,作者是 Thomas Hatch),我摘抄部分可能今后会用到或适合入门到精通的一些原文段落,简单翻译后发上来,便于查阅和研究

一、原理方面:
The networking layer is built with the excellent ZeroMQ networking library, so the Salt daemon includes a viable and transparent AMQ broker. Salt uses public keys for authentication with the master daemon, then uses faster AES encryption 翻译:salt使用ZeroMQ网络库和AMQ 消息队列和AES加密方式

for payload communication; authentication and encryption are integral to Salt. Salt takes advantage of communication via msgpack, enabling fast and light network traffic.
翻译:salt采用加密与用户权限校验,由于使用msgpack通信所以网络快

Before commands can be sent to a Minion, its key must be accepted on the Master.
在master的命令被发送到minion前,相应的minion先前传送的key必须经过master校验且通过。(一种基于AES的权限校验方式,类似RSA)

Commands are run on the minions through the master, and minions send data back to the master (unless otherwise redirected with a returner).
翻译:命令由master发送给minion,minion发送数据给master,除非使用returner进行转向

By default a Salt Minion will try to connect to the DNS name “salt”;
翻译:Salt Minion默认会与名为salt的DNS连接

Note: Installing M2Crypto swig and libssl-dev are required to build M2Crypto. To fix the error command ’swig’ failed with exit status 1 while installing M2Crypto, try installing it with the following command: env SWIG_FEATURES="- cpperraswarn -includeall -D__‘uname -m‘__ -I/usr/include/openssl" pip install M2Crypto 翻译:安装M2Crypto时需要预先安装M2Crypto swig和libssl-dev模块,如果安装M2Crypto时出现’swig’ failed with exit status 1 这样的错误,在编译安装M2Crypto时带上参数,使用:env SWIG_FEATURES="- -cpperraswarn -includeall -D__‘uname -m‘__ -I/usr/include/openssl" pip install M2Crypto 
二、安装方面:
Here’s an example of using the silent installer: Salt-Minion-0.15.3-Setup-amd64.exe /S /master=yoursaltmaster /minion-name=yourminionname
翻译:静默安装的命令,直接在安装时把master和minion的名称给定义了:Salt-Minion-0.15.3-Setup-amd64.exe /S /master=yoursaltmaster /minion-name=yourminionname

三、配置方面:
The configuration files will be installed to /etc/salt and are named after the respective components, /etc/salt/master and /etc/salt/minion.
翻译:配置文件默认在/etc/salt,因其属性不同分别定义为/etc/salt/master 和/etc/salt/minion.

Make sure that the minion config file has the line ipc_mode: tcp
翻译:minion配置文档需要有ipc_mode: tcp这一行(默认是注释状态)

By default the Salt master listens on ports 4505 and 4506 on all interfaces (0.0.0.0).
翻译:Salt master默认在4505和4506上监听所有接口的数据

To bind Salt to a specific IP, redefine the “interface” directive in the master configuration file, typically /etc/salt/master, as follows: - #interface: 0.0.0.0 + interface: 10.0.0.1
翻译:若要salt监听一个特殊的ip,exp:在/etc/salt/master配置interface: 10.0.0.1

If the DNS name “salt” does not resolve to point to the correct location of the Master, redefine the “master” directive in the minion configuration file, typically /etc/salt/minion, as follows: - #master: salt + master: 10.0.0.1
翻译:如果名为salt的DNS没有指向正确的master的ip,在/etc/salt/minion配置文件里设置master: salt 并且设置 master: 10.0.0.1

四、命令方面
On the salt-master accept the new minion’s key sudo salt-key -A (This accepts all unaccepted keys. If you’re concerned about security just accept the key for this specific minion)
翻译:在salt-master机器上使用sudo salt-key -A命令可与所有无校验key的minion传送信息

Test that your minion is responding (a) On the salt-master run: sudo salt ’*’ test.ping You should get the following response: {‘your minion hostname’: True}
翻译:在salt-master机器上运行: sudo salt ’*’ test.ping命令,可接收到反馈{‘your minion hostname’: True}

Start the master in the foreground (to daemonize the process, pass the -d flag): # salt-master
翻译:若要以守护进程的方式启动master,直接salt-master,不需要/salt-master -d
若需要调试可以salt-master -log-level=debug

[ root@master ~]# salt-key -L 
Unaccepted Keys: alpha bravo charlie delta Accepted Keys:
以上命令用来列出已接收或未接收key的列表

 

Salt Document学习笔记1的更多相关文章

  1. Salt Document学习笔记2

    配置文件需修改的内容及注意点: Edit the master config file: 1. Uncomment and change the user: root value to your ow ...

  2. salt stack学习笔记

    saltstack运行模式: local master/minion salt ssh saltstack三大功能 远程执行命令 配置管理(状态管理) 云管理 安装: master  salt-mas ...

  3. 两千行PHP学习笔记

    亲们,如约而至的PHP笔记来啦~绝对干货! 以下为我以前学PHP时做的笔记,时不时的也会添加一些基础知识点进去,有时还翻出来查查. MySQL笔记:一千行MySQL学习笔记http://www.cnb ...

  4. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  5. swift学习笔记3——类、结构体、枚举

    之前学习swift时的个人笔记,根据github:the-swift-programming-language-in-chinese学习.总结,将重要的内容提取,加以理解后整理为学习笔记,方便以后查询 ...

  6. html5学习笔记一

    HTML5学习笔记 <video>标记:定义视频,Ogg.MPEG4.WebM三种格式 <video src=”movie.ogg”  controls=”controls”> ...

  7. CSS3与页面布局学习笔记(八)——浏览器兼容性问题与前端性能优化方案

    一.浏览器兼容 1.1.概要 世界上没有任何一个浏览器是一样的,同样的代码在不一样的浏览器上运行就存在兼容性问题.不同浏览器其内核亦不尽相同,相同内核的版本不同,相同版本的内核浏览器品牌不一样,各种运 ...

  8. MongoDB学习笔记~环境搭建

    回到目录 Redis学习笔记已经告一段落,Redis仓储也已经实现了,对于key/value结构的redis我更愿意使用它来实现数据集的缓存机制,而对于结构灵活,查询效率高的时候使用redis就有点不 ...

  9. JavaScript闭包(Closure)学习笔记

    闭包(closure)是JavaScript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现. 下面就是我的学习笔记,对于JavaScript初学者应该是很有用的. 一.变量的作用域 要理解 ...

随机推荐

  1. luogu1541 乌龟棋 (dp)

    dp..dp的时候不能设f[N][x1][x2][x3][x4],会T,要把N省略,然后通过1/2/3/4牌的数量来算已经走到哪一个了 #include<bits/stdc++.h> #d ...

  2. Windows 10中设置自动登录

    步骤 使用WinKey+R打开运行,输入netplwiz. 在打开的用户账户对话框-用户选项卡-取消勾选要使用本计算机,用户必须输入用户名和密码(E). 点击应用按钮,在弹出的自动登录对话框中输入相关 ...

  3. Gradle安装 Gradle效率提升 eclipse安装gradle插件 【我】

    Gradle安装 从官网下载 gradle4.6版本,也可以从svn地址下载 https://downloads.gradle.org/distributions/gradle-4.6-bin.zip ...

  4. NO.9: 令operator=返回一个reference to *this

    1.令赋值操作返回一个reference to *this(除非你有个标新立异的理由,那就随大众- - )

  5. 洛谷【P2458】[SDOI2006]保安站岗 题解 树上DP

    题目描述 五一来临,某地下超市为了便于疏通和指挥密集的人员和车辆,以免造成超市内的混乱和拥挤,准备临时从外单位调用部分保安来维持交通秩序. 已知整个地下超市的所有通道呈一棵树的形状:某些通道之间可以互 ...

  6. MUI 窗体切换(setting设置)即窗口从右往左切换,返回从左往右切换。

    1)引入mui.min.css 2)引入mui.min.js  引入mui.view.js 1.HTML: //这是页面的主体结构 <div id="app" class=& ...

  7. spring @Transactional注解参数详解

    事物注解方式: @Transactional 当标于类前时, 标示类中所有方法都进行事物处理 , 例子: @Transactional public class TestServiceBean imp ...

  8. pyautogui_pdf批量转换为TXT

    pyautogui_pdf批量转换为TXT, 用pdf自带无损转换 # -*- coding: utf-8 -*- """ Created on Thu May 5 15 ...

  9. javascript 小清新颜色翻页效果

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. android SQLiteOpenHelper 使用

    1.实体 package mydemo.mycom.demo2.entity; public class UserInfo { private int id; private String usern ...