网易乐得RDS设计—集群管理

在一套完整的CMDB系统中,需要能对整个服务器集群进行统一的管理。在RDS中,我们选用了SaltStack来管理所有的数据库服务器和上面的实例
一SaltStack简介

SaltStack是一款Python编写的,结合了消息队列服务ZeroMQ,用于大规模批量管理服务器的工具,支持在管理端主节点(Master)执行命令来远程配置复数客户端从节点(Minion),包括执行特定命令、传输文件、安装服务、配置定时任务等常用操作。

一个完整的通讯流程包括如下几步:

1.Master执行salt命令,命令通过salt.client.LocalClient.cmd_cli方法发送到Master,Master生成一个jid,并根据jid等待获取执行结果。

2.Master将salt命令通过ret_port端口,发送给客户端Minion。

3.Minion收到消息后发起一个线程执行salt命令,调用Minion._return_pub方法将执行结果返回给Master。

4.Master接收Minion返回的结果,并调用 Master.handle_aes将结果写入文件中。

5.salt.client.LocalClient.cmd_cli通过轮询获取到Job执行结果,并将结果输出到终端。

一次salt请求执行完毕,下面我们安装并部署服务。

二安装部署

我们选择两台主机:Master:10.0.0.1,Slave:10.0.0.2(Minion1)来演示部署SaltStack服务的流程。

在Master节点部署服务

[root@10.0.0.1 ~]# yum install –y epel-release

[root@10.0.0.1 ~]# yum install –y salt-master salt-minion

[root@10.0.0.1 ~]# vi /etc/salt/master

cachedir: /var/cache/salt

keep_jobs: 24

file_roots:

base:

 - /srv/salt/

dev:

 - /srv/salt/dev/services

 - /srv/salt/dev/states

prod:

 - /srv/salt/prod/services

 - /srv/salt/prod/statesq

publish_port: 4505

ret_port: 4506

/etc/salt/master是salt-master的默认配置文件,每次修改后都需要重启该服务。在这里我们主要关注如上几个参数,并可根据需求进行修改:

1.cachedir:放置salt命令执行的缓存信息,大量的调用会使该目录存在过多缓存,可以更换存放路径

2.keep_jobs:cachedir中保持缓存信息的时间,默认为24小时

3.file_roots:salt执行文件时默认的脚本所在地址,后文涉及到的sls文件也在该目录中

4.publish_port,ret_port:代表salt的消息发布系统端口和节点间通信端口,默认为4505,4506,请避免这两个端口被占用。

配置完成后启动salt-master服务

[root@10.0.0.1 ~]# service salt-master start

[root@10.0.0.1 ~]# service salt-master status

● salt-master.service - The Salt Master Server

Loaded: loaded (/usr/lib/systemd/system/salt-master.service; enabled; vendor preset: disabled)

Active: active (running) since Mon 2018-07-16 19:30:59 CST; 3 weeks 6 days ago

在Minion节点部署服务

[root@10.0.0.2 ~]# yum install –y salt-minion

[root@10.0.0.2 ~]# vi /etc/salt/minion

master: 10.0.0.1

id: Minion1

/etc/salt/minion是salt-minion的默认配置文件,需要修改两个参数:

1.master:可以配置为Master主机的IP或是hostname。

2.id:Minion的标识,Master通过Minion的id发送命令,请根据业务关系进行配置。

启动salt-minion服务

[root@10.0.0.2 ~]# service salt-minion start

[root@10.0.0.2 ~]# ser

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值