SaltStack(五) SaltStack与ZeroMQ

一、ZeroMQ描述

  我们进行自动化运维大多数情况下,是我们的服务器数量已经远远超过人工SSH维护的范围,SaltStack可以支数以千计,甚至更多的服务器,这些性能的提供主要来自于ZeroMQ,因为SaltStack地城是基于ZeroMQ进行高效的网络通信,ZMQ用于node与node间的通信,node可以是主机也可以可以是进程。

二、ZeroMQ简介

        ZeroMQ(我们通常还会OMQ,Zmq等来表示)是一个简单好用的传输层,像框架一样的一个套接字库,他使用的socket编程更加简单、简洁和性能更高,它还是一个消息处理队列库,可在多个线程、内核和主机核之间弹性伸缩。

  发布与订阅

            ZeroMQ支持Publish/Subscribe,即发布与订阅模式,我们经常简称Pub/Sub
            如图:
            
            Salt Master运行两个网络服务,其中一个是ZeroMQ Pub系统,默认监听4505端口,可以通过修改/etc/salt/master配置文件的publish_port参数设置,它是salt的消息发布系统,如果查看4505端口,会发现所有Minion连接到Master的4505端口,TCP状态持续保持为ESTABLISHED

            [root@salt-client ~]# lsof -i :4505
            COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
            salt-mini 2630 root   24u  IPv4  41122      0t0  TCP 172.16.17.12:41314->salt:4505 (ESTABLISHED)
            这样Salt Master发布一个消息,所有连接到4505这个Pub端口上的Minion都会接受到这个消息,然后每个Minion会再判断自己是否需要执行这个消息。        

  请求与响应

            ZeroMQ支持Request-Reply,即请求与响应模式,我们经常简称REQ/REP
            如图:
            
            Salt Master运行的第二个网络服务就是ZeroMQ REP系统,默认监听4506端口,可以通过修改/etc/salt/master配置文件的ret_port参数设置,他是salt客户端与服务端通信的端口,比如说Minion执行某个命令后的返回值就是发送Master的4506这个REP端口。
            由于我们在最初安装了python-setproctitle软件包,所以我们可以直接看到Salt Master启动的进程的名称。     

 [root@ops-node1 ~]# ps aux | grep salt
            /usr/bin/salt-master -d ProcessManager  #中心进程管理器
            /usr/bin/salt-master -d _clear_old_jobs  #清除旧的Jobs文件及更新fileserver
            /usr/bin/salt-master -d Publisher       #将任务PUB到Minion端
            /usr/bin/salt-master -d EventPublisher  #Event Publisher进程
            /usr/bin/salt-master -d ReqServer_ProcessManager #ReqServer进程管理器
            /usr/bin/salt-master -d MWorker  #工作进程
            /usr/bin/salt-master -d MWorker  #工作进程
            /usr/bin/salt-master -d MWorker  #工作进程
            /usr/bin/salt-master -d MWorker  #工作进程
            /usr/bin/salt-master -d MWorker  #工作进程
            /usr/bin/salt-master -d MWorkerQueue #将Ret接口(ROUTER)数据转发到Worker(DEALER)

转载于:https://www.cnblogs.com/cxcx/p/6216053.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值