大数据环境与docker
在使用CDH构建在k8s上的时候遇到了异常困难的问题,其检查机制会将解析主机的IP作为目标容器的IP,导致两者无法正常安装部署,只能放弃已经做好的容器镜像,之后在不断的寻找中终于到了可以达到预期目标的方法。
首先是找到了Spark的两个容器镜像:
https://hub.docker.com/r/bde2020/spark-master
https://hub.docker.com/r/gettyimages/spark
其中big-data-europe/docker-spark已经可以直接部署在k8s上面,但我们想要构建大数据的环境仅仅有spark是不足的,但深入了解后,发现big-data-europe中已经有许多已经被制作好的容器,仅需组合就可以很方便的使用。
使用方法在页面也很详细,构建文件也在github中,只需要对几个脚本文件进行了解,即可清楚整体的构建流程,也能很方便的组合自己的环境。其中所有镜像在https://hub.docker.com/u/bde2020。
大数据组件的融合
我组合环境的时候使用的是gettyimages/docker-spark与big-data-europe的Hadoop、Hive、HBase,其次还自己做了一个包含Sqoop工具的datanode节点。
这套构建方法目前来看已经已经可以承担目标预期的任务,在构建过程中也遇到了很多障碍:
1. 其中spark镜像中包含的jars包远比标准版本的要少,需要手动放入hive等包,为了避免缺少,需要将相应版本的jar包全部放入;
2. 版本问题,各组件之间的版本需要匹配;
3. spark中的spark的conf目录可以与hive的hive-site.xml建立联系,方便互通,同时也需要做一些调整;
4. env文件仅需合并,并调整方可。
大数据环境从docker到k8s
然后是从docker-compose文件开始构建k8s文件,这个主要是在同事的帮助下,需要注意以下几个问题:
1. 服务需要将几个关键镜像添加NodePort,端口开放足够
2. 创建容器的顺序问题,开启的顺序差异将导致容器是否能正常启动,如果启动失败,一般rc也将自动重新创建容器,如果还不行则需要手动删除,rc会自动重构。
原文地址:https://www.cnblogs.com/finalnarcissus/p/11718627.html
时间: 2024-10-10 08:43:00