saltstack的SSH使用--Roster的配置使用

来源:互联网 发布:java安卓4.4.4模拟器 编辑:程序博客网 时间:2024/06/07 19:00

openssh作为大多数UNIX平台常用的工具,用于对远程主机进行访问和操作,意思就是安全的shell,在传统的salt中,由minion主动去连接master,master不需要保存minion 网络和主机配置,但是在基于SSH的连接时,master必须通过SSH去连接访问minion,所以就有了roster这个文件来保存主机信息

Roster的编写

Roster文件默认的情况下位于/etc/salt
如果需要修改其路径可以使用以下命令

salt-ssh --roster-file=‘指定的roster路径’ 主机名 操作

在Roster中需要编写minion主机的一些信息,例如

# Sample salt-ssh config file#web1:#  host: 192.168.42.1 # The IP addr or DNS hostname#  user: fred         # Remote executions will be executed as user fred#  passwd: foobarbaz  # The password to use for login, if omitted, keys are used#  sudo: True         # Whether to sudo to root, not enabled by default#web2:#  host: 192.168.42.2openstack:   host: 172.25.254.41   user: root   passwd: xxxxxx

在roster文件中支持以下这些选项
host MINION主机的IP地址如果有解析的话主机名也可以
port 通常是ssh协议默认的22端口,按照需要可以更改
user 登陆目的主机时的用户
passwd 对应用户的密码
sudo 这个选项之后可填’True’或者’False’,为了非特权用户可以执行特权命令,为了sudo时不需要密码,可以通过visudo来修改/etc/sudoers文件来完成
priv 指定私钥路径
timeout 指定等待连接完成的最大时间,默认60秒
thin_dir slat-thin agent的安装目录
当然在salt中也内置其他的roster,可以自己进行指定,例如下面这个命令

salt-ssh --roster=scan 172.25.254.0/24 test.ping

在salt中总共有这几种roster
scan 这是一种动态的roster,在客户端对一定范围内的IP地址进行处理请求。在使用的时候,需要连接的所有主机连接信息都必须一致(除了IP地址)

cache
每一个minion的grain会被缓存到Master上,当已经安转过minion的客户端无法响应时,需要进行排错可以使用cache roster进行排错。
例如开启salt-minion服务

salt-ssh --roster cache openstack service.start salt-minion

cloud
cloud与cache有点类似,也会默认的缓存minion之前的信息,但是cloud需要在minion和master建立一个连接之后才能获得IP地址并且缓存上。salt cloud创建的minion除非通过特殊指定,IP地址可能重其后发生变更,使用方法与cache类似

原创粉丝点击