金融行业云平台架构总览及自动化运维平台(saltstack)演进规划
Posted 云架构师大白
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了金融行业云平台架构总览及自动化运维平台(saltstack)演进规划相关的知识,希望对你有一定的参考价值。
云平台整体架构:
批量对多中心多活的2N台机器部署应用版本(每中心N台虚机)
调用CMDB和流程引擎完成变更申请和流程审批操作,并将应用版本和部署脚本上传到云平台NAS中,并将任务存入云平台oracle数据库
云平台识别任务所属中心,将应用部署任务发给不同中心puppet,然后将有任务的消息发送给不同中心mco3.Mco将消息发给activeMQ,activeMQ将消息多播给级联的activeMQ,每个级联acticeMQ集群约管理1000台mco agent,均为长连接。
Mcoagent获取到消息后,触发puppet agent主动短连接puppet将部署包,安装脚本和任务拉取到本地执行。(正常情况下puppet agent不会主动连接Puppet)(如果应用版本较大,被管节点会通过sftp到云平台nas中获取版本)
Puppet确认版本部署完成后将数据库中该次任务状态变成已完成,用户可看到任务进行的状态和结果。(如果任务超时还没有完成,则向MCO重发消息)
使用saltstack阶段1(管理几千台)
外部系统将批量配置任务发给salt调度平台
salt调度平台识别属于不同中心或不同环境(开发、生产、测试等)的任务并访问不同域名的keepalived+nginx集群。
keepalived+nginx集群收到请求后根据一定的负载均衡策略讲请求发送给Salt multimaster1或Saltmultimaster2(keepalived+nginx可以设置为主备或多主模式)
Saltmultimaster1和Saltmultimaster2将需要共享的文件放在NAS或git中(如file_rootspillar_roots等)。
salt调度平台通过saltapi轮询确认任务完成后返回给外部系统。
注:
1、外部系统和salt调度平台架构暂不讨论。
2、可横向扩展。
3、如果有硬件F5,可以替代keepalived。
4、建议所有内部访问都采用域名方式。
5、第一阶段根据实际情况甚至也可考虑去掉keepalive+nginx,让salt调度平台直接访问salt master。
使用saltstack阶段2(管理>万台)
增加syndic,每台syndic管理约千台minion,方便横向扩展
saltmaster 、syndic将需要共享的数据放在NAS
采用redis保存jobcache,提高性能,避免数据丢失,采用数据持久化。
注:
建议所有调用都采用异步方式
只描述同阶段1不同的地方,未描述地方同阶段1相同
---------------END--------------
最近好文:
欢迎长按下图关注订阅云架构师大白,收看更多精彩内容,您的订阅和转发,就是对我最大的赞赏!有其他任何问题可以留言或私信我。
以上是关于金融行业云平台架构总览及自动化运维平台(saltstack)演进规划的主要内容,如果未能解决你的问题,请参考以下文章