ansible同时部署不同版本的storm
部署不同版本storm
目前,我们支持不同版本的storm同时部署及单独部署。
多个storm_nimbus的部署
我们以bjdxt-online03为例,比如目前有两个版本storm_nimbus_093
, storm_nimbus_096
我们可以如下方式配置自己的hosts inventory文件:
[storm_nimbus:children]
storm_nimbus_093
storm_nimbus_096
[storm_nimbus_093]
mesos-storm-online001-bjdxt6.xxx.virtual
[storm_nimbus_096]
mesos-storm-online011-bjdxt.xxx.virtual
[storm_nimbus_093:vars]
storm_version=0.9.3_mesos-0.21.0_bjdxt-online03
[storm_nimbus_096:vars]
storm_version=0.9.6_mesos-0.21.0_bjdxt-online03
完成配置后,我们可以如下方式部署:
- 同时部署
$ ansible-playbook --limit=storm_nimbus -i hosts/bjdxt-online03 mesos.yaml --tags storm_nimbus
- 单独部署
$ ansible-playbook --limit=storm_nimbus_096 -i hosts/bjdxt-online03 mesos.yaml --tags storm_nimbus
多个storm executor的部署
这里主要将所有的storm executor部署到所有的mesos slave集群中。
- 同时部署
首先,需要完成storm executor的宿主机的配置,即slaves的配置。
在slaves中,可以添加如下配置到storm_version
数组变量中:
[slaves:vars]
storm_version=["0.9.3_mesos-0.21.0_bjdxt-online03","0.9.6_mesos-0.21.0_bjdxt-online03"]
完成上述配置后,可以如下部署了:
$ ansible-playbook -i hosts/bjdxt-online03 mesos.yaml --tags storm
- 单独部署
如果需要单独部署,在storm_version
数组中只填写需要部署的version即可。比如:0.9.3_mesos-0.21.0_bjdxt-online03
[slaves:vars]
storm_version=["0.9.3_mesos-0.21.0_bjdxt-online03"]
完成上述配置后,还是可以如下部署了:
$ ansible-playbook -i hosts/bjdxt-online03 mesos.yaml --tags storm