畅游运维自动化架构探索_第1页
畅游运维自动化架构探索_第2页
畅游运维自动化架构探索_第3页
畅游运维自动化架构探索_第4页
畅游运维自动化架构探索_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、畅游运维自动化架构探索01畅游运维自动化体系演变历程02畅游运维自动化探索历程03畅游运维自动化体系的下一步探索游戏运维的特点及痛点 畅游运维自动化架构演变历程 畅游运维自动化架构现状畅游运维自动化技术体系畅游运维自动化体系演变历程游戏运维的特点及痛点游戏运维的特点:游戏架构类型多操作系统多数据库类型多开发语言不统一服务器型多游戏业务无法实现长连接断开重连游戏的周期性带来的特点:1、筹备期到公测期,需要 根据导量数据结果快速满足业务的需求,资源的需求 不可预计且很有可能是爆发式/断崖式需求。2、稳定 运营期,资源和操作的需求基本稳定。3、运营后期, 合服操作频发,资源需求最小化游戏运维的痛点:

2、运维脚本及工具零散、数量多、难复用资源需求弹性大成本和效率及可用性的平衡大流程高并发故障需要实时处理且尽快恢复多版本管理畅游运维自动化架构演变历程1、信息统一先行海报系统(CMDB)工单系统2.1、业务自动化系统跟进 游戏运维自动化平台Web自动化平台:Docker、私有云 701(自动分发)版本发布2.2、周边配套兴起报警系统&电话自动报警 自动化装机系统3、标准化统一收拢 服务集群形成4、服务驱动 故障自愈运维移动办公5、智能运维畅游运维自动化架构现状万台服务器千台网络设备千个机柜 千台云主机千台数据库百个Web站点 百个游戏业务多类型数据库多类型操作系统 多类型硬件品牌公有云 基调 CD

3、NDNSpod监控告警中心(Zabbix+自动语 音呼叫+告警集中 展示管理)CMDB(8大类、94项数据)权限配置管理资源配置管理业务配置管理OA流程配置管理游戏自动化运维系统私有云管理(Docker+OpenStack)自动化装机网 络管理系统工单系统故障/回溯管理系统费用拆分系统运维指标数据 统计系统预算与成本分析管理系统海豹资产信息管理 系统服役档案查询系统应用层数据层基础数 据采集畅游运维自动化技术体系LVSNginx ProxyNginx + JAVA平台化框架工作流任务调度引擎Java服务化(帐号+商品+交易+支付+渠道)中间层(mycat)DockerOpenstack阿里、腾

4、讯云负载均衡层代理层WEB层平台层业务服务层中间层基础设施层MysqlRedisOracle以应用为核心的海豹系统(CMDB)工单系统 游戏运维自动化平台版本发布系统PASS平台 天使系统(权限管理) 报警系统&电话自动报警畅游运维自动化探索历程以应用为核心的海豹系统(CMDB)CMDB的设计: 以应用为核心:配置信息关联环境信息关联设备信息关联权限信息关联拓扑信息关联流程信息CMDB的建设经验:资源关联业务维度为业务提供服务通过业务场景进行驱动海豹系统(CMDB)的功能架构海豹平台资产信息软性资产软件、证书、 Unity、账号.硬件资产物理机、虚拟机、 云资产、机房.资产统计网络资产IP、带

5、宽、交换 机、专线、ACL.部门、项目、人员API组织信息权限信息菜单信息、角色信 息、人员权限APIEHR系统OAUTH天使系统OA固定资产管理系统 Web自动化平台装机平台 第三方云平台游戏运维自动化平台Web自动化平台DB平台告警平台游戏zabbix平台Webzabbix平台费用拆分平台漏洞扫描应 用 层数 据 层数据 来源海豹系统(CMDB):用以管理系统中心的服务器及 相关的软硬件资产信息,是所 有系统资产信息的来源。对所有资产的进行查询、变更 及管理。通过统计报表模块图示化的展 示资产的情况海豹系统(CMDB)的功能架构LinuxMySQL海 豹 系 统 技 术 架 构 图表 现

6、层应 用 控 制层 业 务 逻 辑 层持 久 层 层HTMLJSPSiteMeshJSP引擎JQueryFreemarkerFreemarker引擎ELJSTLApache Shiro 权限 认证SpringMVCSQLServerHbernate VlidatorSpringMybatisHibernateQuartzLOG4J SLF4J日志Java mailSpring taskDruidJdbctemplateEhcache海豹系统(CMDB)采用:jdk6+tomcat6+mysql5.1进行开发shiro进行权限控制quartz定时任务hibernate数据库操作(部分采用myba

7、tis)echache缓存前台bootstrap2海豹系统(CMDB)的实现工单系统工单系统:为系统运维中心提供工作信息和故障 信息的记录、处理、跟踪的统一管理平台工单系统采用:MyEclipse开发Oracle11g对数据进行存储开发框架使用的Spring MVC使用JDBC连接数据库权限控制使用的ShiroQuarz定时任务Echache做缓存前端有部分使用的是BootstrapAPI工单系统需求管理故障管理.新 我 任 任 成 操 建 的 务 务 员 作 需 任 管 管 管 管 求 务 理 理 理 理工单统计.故障数据统计API自动化运 维平台OA系统海豹系统任务系统天使审计外部数 据来

8、源OAUTH(获取认证)天使系统(获取权限)新 补 审 故 审 执 建 充 核 障 核 行 故 故 故 回 回 回 障 障 障 溯 溯 溯游戏运维自动化平台运维自动化平台分为三个系统:运维自动化任务系统:是所有功能执行及功能配置的平台,并把这些功能注 册到运维自动化自助系统。工单系统运维自动化任务系统运维自动化自助平台配置的操作注册 到自助平台需求运维自动化自助平台:用户通过运维自动化自助系统进行自助服务。运维自动化服务总线:用于各系统间的数据交互与通信。架构:采用SOA架构,松耦合,可重用。自动化运维任务系统运维自动化服务总线自动化运维自助平台用户登陆、权限获取、资产查询功能注册任务状态回调

9、用户登陆、权限获取游戏运维自动化平台主要技术选型:前端: Extjs后端: Python+Django数据库: mysql缓存: memcache redis消息中间件: RabbitMQ异步任务: Celery定时任务: APScheduler服务总线: Zato服务器管控: SaltStack运维自动化自助平台运维 自动化 任务 系统统一 认证天使海豹(权限)(CMDB)系统系统电话 告警服务总线运维自动化任务系统游戏运维自动化平台-自动化运维任务系统自动化运维任务系统: 结合开源技术与公司现 有资源的运维基础操作 平台。不仅支持脚本执行、定 时任务等基础运维场景 外,还提供了流程式开 发

10、框架,使运维人员能 开发自己需要的业务维 护功能;流程控制执行/后处理异步执行、功能解耦、插 件式设计技术: Rabbitmq、celery目标主机控制自研脚本协议(支持多脚 本、跨平台、数据压缩)技术: saltstack客户端用户端技术: EXTJS、自研开发库 架构: MVC/MVVM服务端响应用户操作/衔接各系统面向客户端API、面向服务API、 流程数据结构处理与任务下发技术: Python3、Django、自研开 发库架构: 3层架构DBCache定时任务子系统定时/周期任务触发定时/周期触发流程,与 crontab一致性体验技术: APScheduler、rpycProxyPro

11、xyProxyProxy主机主机主机主机任务调度系统任务引擎执行单元反应单元插件 系统回调 系统日志告警自动化运维任务系统流程执行处理单元流程结构解析执行任务状态更新异常事件触发 技术: celery任务事件处理单元可在线热更新,插件式设 计技术: celery、自研开发库自动化运维任务系统游戏运维自动化平台-运维自动化自助平台及服务总线运维自动化自助平台:面向运维人员与操作人员的操作终端。1、运维人员把需要外包的功能注册到自助平台2、 运维人员对外包人员进行权限划分3、 外包人员执行选择的功能4.、自助平台调用该功能的源平台5.、源平台处理完成后把结果回调给自助平台运维自动化服务总线:用于各

12、系统间的数据交互与通信。客户端用户端技术: EXTJS、自研开发库 架构: MVC/MVVM服务端DBCacheCache查询数据库操作用户请求响应用户操作/衔接各系统面向外包运维操作人员设计灵活严谨的用户权限控制可将第三方平台的功能注册进 来以便统一管理与执行多平台一致性用户操作体验技术: Python3、Django、自研 开发库架构: 分层架构运维自动化自助平台服务总线系统服务总线/衔接各系统对接海报系统对接统一登陆系统对接天使系统对接运维自动化各系统资产补充数据技术: Python、Zato运维自动化服务总线自助平台平台A结果回调功能触发平台B运维自动化自助平台版本发布系统版本发布系统

13、:公司自研、代理项目版本发布的通道,与运维自动化平台 对接,为集中配置管理做好源头管理。通过对接工单系统更新维护流程,获取相应的项目发布数据 自动推送到目标服务器上, 实现了完全自动的发布流程。版本发布系统采用:jdk1.6.0_45+tomcat6.0.44+mysql5.5.10+WindowsServer2008开发运行,shiro进行权限控制quartz定时任务mybatis数据库操作echache缓存,前台bootstrap2采用svnkit进行svn信息传输脚本通信采用tcp协议PASS平台提供一致性环境保障提供应用多租户隔离以及资源的多租户隔离提供服务发现、可弹性伸缩、状态管理、

14、资源 分配、动态调度等能力支持预发布、一键发布、一键回滚以及自动化 部署提供透明化的监控、容灾能力提供各容器日志查询下载提供运维、开发、测试多角度业务场景代码 发布 引擎统一 认证分权 管理容器 健康 检查 与注 册发 现服务 发现 与 nginx 自动 配置 变更资源 监控 与报 警组 件PaaS平台PASS平台主要技术选型:后端: Python+Django存储: mysql、Influxdb、etcd缓存: redis消息中间件: RabbitMQ异步任务: Celery外部组件: Docker、Registry、nginx dyups模块权限系统PaaS平台CMDB用户登录权限获取资产

15、信息同步PASS平台PAASHunt er serve rNginx集群Dyups Modul esSvn repoQueueRabbitMQHunter clientHunter Agent实时收 集宿主和容器 数据上报监控 数据到时序数 据容器注册镜像信 息拉取镜 像代码仓 库Redis缓存监 控数据Redis缓存 容器状态PAASInfluxdbNginx集群registryEtcdSvn repoQueuecele rycele rycele rydockerdockerdockerServers异步调度任 务创建容器自动化装机系统装机系统面临的挑战:服务器型号多操作系统类型多规模量大

16、交付时间短协议服务HOSTHOST.装机服 务功能模块BootO S管理硬件 服务数据 统计权限DBCMDB运维测(User)权限验证DHCP服务TFTP服务HTTP服务调度引 擎逻辑层API数据交互获取资源发送装 机信号配置 dhcp 配置 文件DHCP服务器配置 default 文件和ks 文件节点服务器调用自动化装机系统天使系统(权限管理)天使系统主要包含两部分:1、是为系统运维中心所有的web、服务器、 zabbix、svn、中控机等设备进行统一的权 限管理 。2、是从安全方面对服务器进行审计。开通修改删除查询权限内部web系统 模块SVN服务器模块APIIT操作日志内部web系统 模

17、块SVN服务器模块日志分析告警微信、邮件用户权限管理天使系统审计服务器操作 日志天使系统(权限管理)的技术架构天使系统采用:jdk6+tomcat6+mysql5.6进行开发shiro进行权限控制quartz定时任务mybatis数据库操作echache缓存前台bootstrap2LinuxMySQLJSP 天 使 系 统 技 术 架 构 图 表 现 层应 用 控 制层 业 务 逻 辑 层SiteMeshJSP引擎HTMLJQueryFreemarkerFreemarker引擎ELJSTLApache Shiro 权限 认证SpringMVCSQLServerHbernate Vlidator

18、SpringMybatisJdbctemplateJava mailquartzLOG4J SLF4J日志Spring task持DruidEhcache 久 层以zabbix为例:自动化的阶段公共服务标准化故障自愈.畅游运维自动化体系的下一步探索自动化的阶段手工配置脚本自动化系统自动化调度自动化:通过后边的调度引擎,帮你一个系统、一个系统之间进行切换,这叫跨系统 调度自动化。智能化:无人值守公共服务标准化简化运维管理防止架构失控防止可用性降低提升效率服务透明,能自助服务4套nginx需要整合5套zabbix需要整合2套memcache需要整合3套redis集群需要整合TomcatResinApacheMysqlMongodb日志端口扫描公共服务标准化Redis集群接入申请、 开通Nginx集群接入申请、 开通MySql集群接入申请、 开通OA自助服 务台工单Mysql集群管理 系统数据接口总 线私有云集群(PaaS+IaaS)Nginx

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论