生产环境下的组件,版本升级有什么需要注意的地方?
公司所用的大数据平台是基于原生Hadoop,并且在这之上做了些微调和二次开发。所以在这里写版本号其实意义不太大。但我还是记录一下:
- Hadoop 2.4.0.x
- Hbase 0.98.x
- Zookeeper 3.4.6.x
- Hive 0.13.x
- Flume 1.6.0.x
- Kafka 未知
- Phoenix 未知
- Spark 1.5.2
上面的x代表公司二次开发的小版本号,目前参与过公司的Hbase版本升级和Zookeeper。因为公司的大数据集群比较多,估计算上PRE和SIT环境,得有20-30个集群。最大的集群600多节点,最小的集群只有5-6个节点。
虽然都是批量执行升级脚本,但是还是会有一些预先检查的工作。
我们选择先在测试集群和影响最小的集群先行升级,运行一两天后,再对较大的集群升级。如果新版本几天下来都没有问题,那么就在最大的集群上升级。
如果小集群上在新版本测试上发现错误则及时回滚和检查错误。
滚动升级 使用批量脚本 从FTP上把新的软件包拉到机器上,然后替换掉配置就可以了。
这些都可以用一个脚本批量执行。