网络游戏基础系统架构与监控策略

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

网络游戏基础系统架构与监控策略武神世纪网络技术有限公司曹世军caoshijun@gmail.com2009.8.29提纲●游戏服务器架构需求●游戏服务器架构介绍●监控策略及实例●经验点滴游戏服务器架构需求●苛刻的数据安全及系统安全要求●超乎寻常的网络延时敏感性及南北互联问题●故障硬件的快速替换及远程控制的可靠性●快速部署能力以满足游戏产品的爆发性增长导致的资源需求●快速且简单的实现大批量服务器的程序版本升级,以减少例行维护导致的服务不可用●快速且简单的合并、分散压力以应对频繁的合服、劈服操作●自动化运维实现的方便性游戏服务器架构介绍●帐号数据中心●游戏服务器组●游戏辅助服务器组●官方网站及论坛●游戏服务器操作系统●更深入的理解你的硬件帐号数据中心●存储游戏客户的帐号密码、点卡信息、充值记录、密码保护等重要信息●目前一般都是多款游戏产品共用一个数据中心,所有游戏产品的登录验证都在帐号数据中心进行,充值金额也可以在多款游戏产品中使用。●一般部署在可靠性较高的多线机房●爆发性访问比较常见,日常负载不高●游戏企业的命脉,安全要求最大化游戏服务器组●以组分布,各组之间架构一致,便于横向扩展及管理,所有的游戏运算都在此进行。●一般由接入服务器、逻辑运算服务器、游戏数据库、日志服务器和其他特殊服务器构成。●对网络延时非常敏感,一般采用分布式部署,让服务器就近某一地区的客户,最大化减小客户端到服务器的网络延时。●分布式部署也解决了南北互联的问题。游戏辅助服务器●下载服务器–提供游戏客户端,客户端补丁升级包的下载–对网络的延时不敏感,爆发性流量较大–联通,电信分开部署●自动更新服务器–提供游戏客户端的自动升级–对网络的延时不敏感,爆发性流量较大–联通,电信分开部署官方网站及论坛●官方网站包含企业网站、游戏产品网站、帐号管理中心。●企业网站一般都是用作企业形象宣传。●游戏产品网站及对应的论坛一般都是针对某一款游戏产品做宣传。●帐号管理中心提供各个游戏产品用户的帐号注册、秘保设定、密码找回等。●该类应用在游戏停机维护期间突发流量大。游戏服务器操作系统●现实世界的实际情况–幸福的人都是相同的,不幸的人各有各的不幸●没错,最好就是用Linux!–和其他Unixlike相比人才更好找–和其他Unixlike相比驱动程序更好找–和windows相比更灵活,考虑下在Windows上自动化运维的代价。●可以的话用64位吧●实在不行的话Windows也不是不可以●我们是自己定制的DebianX86_64无盘系统更深入的理解你的硬件●内存是新一代的磁盘●磁盘是新一代的磁带●无处不在的要命缓存●更快的CPU解决了很多程序语言的效率问题更深入的理解你的硬件-带外管理●带外管理的历史●BMC/IPMI●IDC机房能确保的资源:电源、网络●系统磐机,操作系统失去响应,服务器需要冷重启的时候只能打电话由机房操作吗?●调整机房里服务器的BIOS非要出差到机房所在地去吗?●重装服务器的操作系统必须由机房实施或者出差到机房所在地吗?●硬件日志查询(机箱盖,温度,风扇转速)●Linux下Console重定向结合IPMI的神奇游戏企业的监控目标●报警–及时准确的发现并初步判断问题–实现迅速可靠的多途径报警●SMS●IM●E-Mail●趋势分析及预警–网络流量–系统性能(cpu,mem,load,disk,etc)●由历史数据分析出未来将要面临的问题●由历史数据分析出配置变更的效果监控策略●明确需求并分清主次–要达到什么目标?要监控何种内容?–按照被监控对象在企业应用中的重要性划分主次●选用合适的软件–监控目标和内容决定了你应该采用何种监控软件●选择合适的架构–选择适合自己的监控平台架构,分布式or集中式●逐渐添加监控目标●养成每天看图的习惯实例-1●监控目标:–游戏各类应用状态,系统状态,网络状态●划分等级:–数据中心游戏服务器官方网站及论坛游戏辅助服务器●软件使用:–Nagios用于服务状态监测及报警,是自动化运维的基础,日常使用侧重于报警。–Cacti用于数据记录及历史数据展现,是资源调度及数据分析的基础,日常使用侧重于数据记录。–用RRDTOOL结合Shell实现了一套基础监控软件实例-2●监控架构的选择–分布式和集中式两套监控系统–Cacti和Nagios集中部署在公司内部机房,用于各个服务器的状态监测、报警及数据记录。–每组游戏服务器都有一套自己写的组内服务器监控系统,部署在全国各地的游戏服务器上,用于网络不可达造成的集中监控失效的情况下,可以在恢复后通过分布式监控工具回查历史记录。●其他–系统日志通过syslog汇聚存放,集中审查,重要消息多途径报警Email,IM,SMSetc.。经验点滴●一开始要简单●简单的同时要考虑横向扩展●以上两个实现自动化管理的基础●善用开源软件,不重复发明轮子,打磨轮子●重视标准●考虑硬件的可管理性●提高交流效率(wiki)●在不断满足应用需求的同时遵循以上几点参考资料●“懒惰”集群管理员的11个秘诀–●2009.3.28CU沙龙北京田逸《开源监控利器nagios实战全解.rar》–=230127●2009.3.28CU沙龙北京《使用cacti搭建企业监控平台》–=230128●2007.12.8CU沙龙西安Cacti在Linux上的部署和使用》–●2007.12.8CU沙龙西安孙继东《rrd数据库及rrdtool简介》–●2007.12.8CU沙龙西安李平《nagios在企业中的应用》–●2009.3.28CU沙龙北京曹金城《mysql运行监控全解》●=230129Thanks!Q&A

1 / 28
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功