saltstack 安装
centos 6.5
saltstack 2015.5.10 (Lithium)
tips:上个版本2015.5.3或者5.5有个bug,Python调用salt的unzip模块报错;
安装
在配置了163和epel的源后使用yum安装即可;
# yum update python*
# yum -y install salt-master #主控端
# yum -y install salt-minion #被控端
配置主控端
主控端的基本配置
# vi /etc/salt/master
interface [local ip] #绑定本机IP
auto_accept: False #自动接受连接,默认就是False
file_roots:
base:
- /srv/salt #salt的文件根目录,默认就是这个
配置开机自动启动,并启动:
# chkconfig salt-master on
# service salt-master start
日志文件:/var/log/salt/master
默认使用端口4505和4506,注意防火墙的情况;
配置被控端
被控端的基本配置
# vi /etc/salt/minion
master: [主控端IP]
id: [被控端名称] #考虑用主机名或根据业务起名,不可重复
配置开机自动启动,并启动:
# chkconfig salt-minion on
# service salt-minion start
日志文件:/var/log/salt/minion
主控端接受连接
# salt-key -A #接受所有连接
# salt-key -L #查看接受或拒绝的情况
测试连接情况(这里假设有两台被控端:DEV-APP-001,DEV-APP-002)
# salt '*' test.ping
DEV-APP-:
True
DEV-APP-:
True
使用salt批量远程执行命令
这是salt的基本功能之一,可以很大程度减少批量机器的运维工作量;
查看下有没有安装telnet,或者直接yum安装:
# salt '*' cmd.run 'which telnet'
# salt '*' cmd.run 'yum -y install telnet'
可以传输文件或文件夹到被控端,目标文件必须放到salt的文件根目录,默认为/srv/salt;
假设在主控端有这个文件:/srv/salt/myfile/test.log
# salt '*' cp.get_file salt://myfile/test.log /root/test.log #传输文件
# salt '*' cp.get_dir salt://myfile /root #传输文件夹
环境变量的问题
注意环境变量的问题,很多时候一些奇怪的问题都是这个引起的;
比如用环境变量配置的Java,需要首先加载profile:
# salt '*' cmd.run 'source /etc/profile; java -version'
tips:遇到过一个特别的坑,使用salt远程启动的Java程序日志都为乱码,后来执行locale发现了问题:
# salt '*' cmd.run 'locale'
DEV-APP-:
LANG=zh_CN.UTF-
LC_CTYPE="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_COLLATE="C"
LC_MONETARY="C"
LC_MESSAGES="C"
LC_PAPER="C"
LC_NAME="C"
LC_ADDRESS="C"
LC_TELEPHONE="C"
LC_MEASUREMENT="C"
LC_IDENTIFICATION="C"
LC_ALL=C
LC_ALL被置为了C,覆盖了LANG的配置,所以可以这样解决:
# salt '*' cmd.run 'export LC_ALL=""; locale'
DEV-APP-001:
LANG=zh_CN.UTF-
LC_CTYPE="zh_CN.UTF-8"
LC_NUMERIC="zh_CN.UTF-8"
LC_TIME="zh_CN.UTF-8"
LC_COLLATE="zh_CN.UTF-8"
LC_MONETARY="zh_CN.UTF-8"
LC_MESSAGES="zh_CN.UTF-8"
LC_PAPER="zh_CN.UTF-8"
LC_NAME="zh_CN.UTF-8"
LC_ADDRESS="zh_CN.UTF-8"
LC_TELEPHONE="zh_CN.UTF-8"
LC_MEASUREMENT="zh_CN.UTF-8"
LC_IDENTIFICATION="zh_CN.UTF-8"
LC_ALL=
启动Java程序时就是这样了:
# salt '*' cmd.run 'source /etc/profile; export LC_ALL=""; java -version'
over
saltstack 安装的更多相关文章
- SaltStack安装篇
一.基础介绍1.简介 salt 是一个基础平台管理工具 salt是一个配置管理系统,能够维护预定于状态的远程节点 salt是一个分布式远程执行系统,用来在远程节点上执行命令和查询数据 2.salt的核 ...
- Saltstack 安装使用
Saltstack是一个具备puppet与func功能为一身的集中化,轻量级的自动化运维管理工具,使用python编写,功能非常强大,可以使用EPEL快速安装.相比较puppet,安装和配置更加容易和 ...
- SaltStack 安装及配置认证
一.SaltStack 安装 SaltStack 是基于 Python 开发的,也是基于 C/S 架构,通过服务端 ( master ) 控制多台客户端 ( minion ) 实现批量操作这里我们使用 ...
- SaltStack安装及配置
1.简介SaltStack是一个服务器基础架构集中化管理平台,具备配置管理.远程执行.监控等功能,一般可以理解为简化版的puppet和加强版的func.SaltStack基于Python语言实现,结合 ...
- SaltStack安装配置
一.环境准备:操作系统CentOS Linux release 7.3.1611master ip:192.168.1.180minion ip:192.168.1.183设置server(maste ...
- saltstack安装配置(syndic)
syndic是saltstack用来做集群部署的,一般结构如图: syndic是一个特殊的minion,syndic类继承于minion类,syndic可以看作一个代理,只做数据传递. CentOS上 ...
- SaltStack安装部署
SaltStack安装部署 安装: 一. master: 1. 配置yum源安装 # rpm --import https://repo.saltstack.com/yum/redhat/6/x86_ ...
- 01_3大配置管理工具、SaltStack安装、修改minion_id
1.配置管理 1.1 puppet /'pʌpɪt/ 木偶:傀儡:受他人操纵的人 使用自有的puppet描述语言,可管理配置文件.用户.cron任务.软件包.系统服务等. 问题: 学习曲线非常陡峭 ...
- saltstack安装配置(halite)
saltstack官方提供了一个简单的web UI--halite.但是给出的安装配置方法实在没法实现,在网上找了几篇博客,见文章末尾的参考链接,可以用起来了.但是功能有点简单.这篇文章记录安装配置h ...
- SaltStack安装(CentOS7.x)
安装基础: 参考文档:https://docs.saltstack.com/en/latest/topics/installation/rhel.html 1.导入SaltStack仓库key: wg ...
随机推荐
- [Golang] 编译程序时打上git提交信息标记
1.加入代码 //version.go package version import ( "flag" "fmt" "os" ) var ( ...
- python爬虫工具
一直都听说python写爬虫工具非常方便,为了获取数据,我也要写点爬虫,但是python太灵活了,不知道python爬虫要哪些框架,要了解,比如beatiful soup,scrapy, 爬虫的额主要 ...
- post数据过多时,有可能会丢失数据
开奖时,post时请求的user_id过多,导致活动id丢失
- 12 postgresql数据库备份和恢复
数据表结构备份与恢复 备份 1.找到postgres 安装目录,在找到bin文件夹,会看到一堆exe后缀的文件,用win+r 打开cmd,将pg_dump.exe 拖进cmd黑窗口中 2.基本语法:- ...
- httpClient实例--返回响应部分并且转换成对象
import java.io.ByteArrayOutputStream;import java.io.IOException;import java.io.InputStream;import ja ...
- git 不能创建分支
git 不能创建分支,如下 fatal: cannot lock ref 'refs/heads/hotfix/aa': 'refs/heads/hotfix' exists; cannot crea ...
- 海思编解码芯片添加64M nor flash
uboot和内核都必须修改. struct spi_info hisfc350_spi_info_table[] : 在结构体里面添加自己的flash节点,我这里用的是MX66LS51235E { & ...
- CentOS 6.8 安装TigerVNC 实现 Linux 远程桌面并安装火狐浏览器
CentOS 6.8 安装TigerVNC 实现 Linux 远程桌面并安装火狐浏览器 vnc客户端地址:https://files.cnblogs.com/files/MYSQLZOUQI/vnc- ...
- Redis入门到高可用(二十一)——缓存的使用和设计
一.缓存的收益与成本 1.收益 2.成本 二.使用场景 三.缓存的更新策略 四.缓存颗粒度控制 五.缓存穿透 六.无底洞问题 七.热点key的重建优化
- Hadoop生态集群MapReduce详解
一.概述 MapReduce是一种编程模型,这点很重要,仅仅是一种编程的模型,而不是具体的软件.在hadoop中,HDFS是分布式的文件存储系统,而MapReduce是一个分布式的计算框架.用于大规模 ...