升级数据库游戏不停服?来看看TcaplusDB是怎么操作的
对于一款线上游戏而言,每次停服都会对玩家活跃、用户体验、运营数据等造成一定影响,以至于大部分游戏停服升级都选择在凌晨进行。而TcaplusDB的升级可以让游戏完全不受影响照常运行,TcaplusDB的升级是如何操作的呢?让我们来看一下其中的第一步:Tcap center升级。
1. 升级注意事项
center的版本需要保证为最新的版本,升级的时候需要优先升级center,center目前存在standby模式,在升级完主center后,还要升级standby模式下的center;
较多版本的center升级并不能完全通过操作界面来升级完成,有些版本存在手动修改的相关配置的问题;所以升级前需要查看升级手册的内容,升级手册打包在发布包中,
手册名称为upgrade_version_notice.docx,将发布包如TcaplusService3.51.1.201644.x86_64_release_20201116.tar.gz解压缩后,在目录release\x86_64下面
打开文档,查看内容,目录结构参考如下
如上版本都是存在升级注意事项,仔细阅读其中的内容,并严格操作;
注意:存在注意事项的版本升级不能跳跃式升级,如计划升级到3.51.1,则此时的center的版本一定要不小于3.46.1,低于该版本,需要先升级到3.46.1版本,才能继续升级到3.51.1;
2. 升级流程
版本升级注意事项不在此赘述,仔细阅读,严格按照说明操作即可,下面介绍通用的升级流程;
- 由于center最先升级,所以需要先上传升级包,点击“运维平台”→"版本信息";
- 进入上传安装包界面,点击" 加入Service版本",在“集群“部分勾选要上传的集群,“OMS内网IP\域名”部分一般默认,如果存在内外网的话,这里一般填上内网IP即可,点击“选择文件”,加入要上传的文件,文件名一般为TcaplusService3.51.1.201644.x86_64_release_20201116.tar.gz这种,再点击“提交”按钮,即会上传安装包;
- 上传安装包会生成一个操作事务,点击“运维平台” ->“事务处理”页面,可以看到上传安装包的事务,“事务类型“列展示为“加载发布包”,由于是刚生成的事务,一般是在最新一条;
- 进入事务页面后,选择“集群“,再“事务类型”选择“加载发布包”,就可以看到生成的上传发布包的事务了;
- 上传发布包完成后,点击"运维平台" →"集群状态",进入操作页面;
- 在“集群”后面的下拉框选择要升级的集群,展开Tcapcenter,点击“升级”按钮,进入升级界面
- 在“请选择版本”后面的下拉框选择要升级的版本,点击“提交按钮”,即进入升级,此时“集群状态”将处于不可展示状态
- 等待几秒后,再次刷新“集群状态”页面,升级成功后,可以看到center的版本变成了升级后的版本,此时升级就算是成功了;
- 升级完主center后,此时再升级standby模式下的center,如下“集群 (1)”的"Standby Center Info"机器为“*.*.*.*( Set ID : 2 )”,代表standby center的机器在集群2上,其机器IP为*.*.*.*,下面进入standby集群2
- 下拉“集群”后面的下拉框,选择下拉信息带"(2 standby)"信息的集群,确定其IP和主center页面中展示的"Standby Center Info"机器信息一致,点击后面的“升级”按钮,升级即可,后续的操作流程和主center一致
TcaplusDB是腾讯出品的分布式NoSQL数据库,存储和调度的代码完全自研。具备缓存+落地融合架构、PB级存储、毫秒级时延、无损水平扩展和复杂数据结构等特性。同时具备丰富的生态、便捷的迁移、极低的运维成本和五个九高可用等特点。客户覆盖游戏、互联网、政务、金融、制造和物联网等领域。
原文地址:https://www.cnblogs.com/tcaplusdb/p/15002136.html
- GridView实战一:自定义分页、排序、修改、插入、删除
- Windows下程序打包发布时的小技巧
- Linux的“壳”
- 网页优化系列一:合并文件请求(asp.net版)
- Windows下Thumbnail的开发总结
- 剑指OFFER之调整数组顺序使奇数位于偶数前面找(九度OJ1516)
- Linux架构
- 绘图: Python matplotlib简介
- 绘图: matplotlib Basemap简介
- GridView实战二:使用ObjectDataSource数据源控件(自定义缓存机制实现Sort)
- 把孩子打造成为码农
- 分享基于Qt5开发的一款故障波形模拟软件
- 剑指OFFER之打印1到最大的N位数(九度OJ1515)
- GridView实战二:使用ObjectDataSource数据源控件
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Mybatis的缓存机制详解
- zookeeper基本特性与基于Linux的ZK客户端命令行学习
- Apache Curator操作zookeeper的API使用
- 使用Java API操作zookeeper的acl权限
- 使用ZooKeeper提供的原生Java API操作ZooKeeper节点
- CountDownLatch类的使用
- Spring-如何给静态变量注入值
- ZooKeeper的伪分布式集群搭建以及真分布式集群搭建
- zookeeper权限acl与四字命令
- 微信公众号开发-素材/消息管理接口
- 微信开发的一些神坑
- Spring Boot集成ElasticSearch实现简单的增删查改接口
- Spring Cloud Zuul 综合使用
- Spring Cloud Hystrix - 服务容错
- 记一次内存溢出问题的排查、分析过程及解决思路