基于Docker-Compose的部署Ambari组件的方法、装置及存储介质与流程
- 国知局
- 2024-09-11 14:27:55
本发明涉及容器化,具体涉及一种基于docker-compose的部署ambari组件的方法、装置及存储介质。
背景技术:
1、ambari技术体系下,是通过server(全称ambari server)发送安装指令到命令队列中,然后子节点的agent(全称ambari agent)调用脚本进行命令的执行进行安装,在现有的ambari组件部署方式有很大的资源浪费,每次部署组件都需要从server端读取配置,然后发送指令到安装脚本,再从yum(全称yellow dog updater,modified,前端软件包管理器)源拉取需要安装的组件安装包,由于大数据组件部署的特性,安装的组件都是完全一致的,只不过由于分布式的要求,需要部署在大规模的节点上,每次都从yum源上拉取同样的安装包就造成了很大的资源浪费,近几年容器化社区的兴起,也提供了新的思路,因此,有必要提出一种基于docker容器部署以及docker-compose容器编排的ambari组件的方法和系统,以至于部分地解决现有技术中存在的问题。
技术实现思路
1、本发明为了克服以上技术的不足,提供了一种用户可以在不影响原用户体系的基础上,通过sdk包自定义二次开发完成和第三方统一认证登陆体系对接的基于docker-compose的部署ambari组件的方法、装置及存储介质。
2、本发明克服其技术问题所采用的技术方案是:
3、一种基于docker-compose的部署ambari组件的方法,包括:
4、s1.基于httpd基础容器镜像重新构建httpd容器镜像;
5、s2.将ambari和hdp安装包打到重新构建的httpd容器镜像的默认存储路径中;
6、s3.在httpd容器镜像中部署mysql服务;
7、s4.构建ambari-server镜像;
8、s5.编写httpd容器镜像初始化时指定httpd容器镜像需要完成的命令的bootstra.sh脚本;
9、s6.编写docker-compose.yaml文件。
10、进一步的,步骤s1中通过执行docker build命令基于httpd基础容器镜像重新构建httpd容器镜像。
11、进一步的,步骤s3中httpd容器镜像部署mysql服务后执行ambari的init.sql以初始化数据。
12、进一步的,步骤s4包括如下步骤:
13、s41.安装mysql client并添加初始化文件init.sql;
14、s42.添加httpd容器镜像启动时执行脚本文件bootstrap.sh;
15、s43.执行docker build命令构建dockerfile构建ambari-server镜像。
16、进一步的,步骤s5中编写bootstra.sh脚本的内容包括:设置数据库的host环境变量、port环境变量、username环境变量、执行ambari-server镜像的安装命令、执行ambari-server镜像的配置命令。
17、进一步的,步骤s6中编写docker-compose.yaml文件的内容包括:镜像仓库地址、数据卷挂载、暴露端口、环境变量、依赖的service。
18、另一发面,本发明还涉及一种基于docker-compose的部署ambari组件的装置,处理器、通信接口、存储器和通信总线,其中,所述处理器,所述通信接口,所述存储器通过所述通信总线完成相互间的通信;其中:
19、所述存储器,用于存放计算机程序;
20、所述处理器,用于通过运行所述存储器上所存放的程序来执行:
21、基于httpd基础容器镜像重新构建httpd容器镜像;
22、将ambari和hdp安装包打到重新构建的httpd容器镜像的默认存储路径中;
23、在httpd容器镜像中部署mysql服务;
24、构建ambari-server镜像;
25、编写httpd容器镜像初始化时指定httpd容器镜像需要完成的命令的bootstra.sh脚本;
26、编写docker-compose.yaml文件。
27、另一发面,本发明还涉及一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现:
28、基于httpd基础容器镜像重新构建httpd容器镜像;
29、将ambari和hdp安装包打到重新构建的httpd容器镜像的默认存储路径中;
30、在httpd容器镜像中部署mysql服务;
31、构建ambari-server镜像;
32、编写httpd容器镜像初始化时指定httpd容器镜像需要完成的命令的bootstra.sh脚本;
33、编写docker-compose.yaml文件。
34、本发明的有益效果是:通过编写dockerfile文件,构建ambari的docker镜像,同时基于docker-compose.yaml文件编写标准的容器编排文件,ambari镜像depends on mysql和httpd镜像,httpd镜像中会打入ambari及hdp3.1的安装部署包,通过docker-compose进行容器编排将镜像部署在同一容器集群环境中。可以解决ambari组件在不同操作系统中部署的兼容问题,释放部署资源。
技术特征:1.一种基于docker-compose的部署ambari组件的方法,其特征在于,包括:
2.根据权利要求1所述的基于docker-compose的部署ambari组件的方法,其特征在于:步骤s1中通过执行docker build命令基于httpd基础容器镜像重新构建httpd容器镜像。
3.根据权利要求1所述的基于docker-compose的部署ambari组件的方法,其特征在于:步骤s3中httpd容器镜像部署mysql服务后执行ambari的init.sql以初始化数据。
4.根据权利要求3所述的基于docker-compose的部署ambari组件的方法,其特征在于,步骤s4包括如下步骤:
5.根据权利要求4所述的基于docker-compose的部署ambari组件的方法,其特征在于:步骤s5中编写bootstra.sh脚本的内容包括:设置数据库的host环境变量、port环境变量、username环境变量、执行ambari-server镜像的安装命令、执行ambari-server镜像的配置命令。
6.根据权利要求1所述的基于docker-compose的部署ambari组件的方法,其特征在于:步骤s6中编写docker-compose.yaml文件的内容包括:镜像仓库地址、数据卷挂载、暴露端口、环境变量、依赖的service。
7.一种基于docker-compose的部署ambari组件的装置,其特征在于,处理器、通信接口、存储器和通信总线,其中,所述处理器,所述通信接口,所述存储器通过所述通信总线完成相互间的通信;其中:
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现:
技术总结一种基于Docker‑Compose的部署Ambari组件的方法、装置及存储介质,涉及容器化技术领域,通过编写Dockerfile文件,构建Ambari的Docker镜像,同时基于docker‑compose.yaml文件编写标准的容器编排文件,ambari镜像depends on mysql和httpd镜像,httpd镜像中会打入ambari及hdp3.1的安装部署包,通过docker‑compose进行容器编排将镜像部署在同一容器集群环境中。可以解决Ambari组件在不同操作系统中部署的兼容问题,释放部署资源。技术研发人员:王哲,魏子重,李锐受保护的技术使用者:山东浪潮科学研究院有限公司技术研发日:技术公布日:2024/9/9本文地址:https://www.jishuxx.com/zhuanli/20240911/290958.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。