编 号 密 级 阶 段 页 数 非密 Z 14 代 号 Docker环境下利用Ambari界面部署名 称 HDP 单 位 编 写
校 对 审 核 标 审 批 准 航天恒星科技有限公司 文档控制
变更记录
版本号 日期 作者 段落、图或表 增加/修改/删除 简单描述 更改单编号
目 录
1 集群配置 ..................................................................................................................... 1
1.1 集群组成 ................................................................................................................................... 1 1.2 系统和软件版本........................................................................................................................ 1
2 启动Docker Container ............................................................................................. 2
2.1 安装docker ................................................................................................................................ 2 2.2 制作镜像 ................................................................................................................................... 2 2.3 启动Ambari-Server节点 .......................................................................................................... 2 2.4 启动Ambari-Agent节点 .......................................................................................................... 2 2.5 修改hosts .................................................................................................................................. 2
3 HDP安装部署 ............................................................................................................. 3
i
1 集群配置 1.1 集群组成
本次部署由于虚拟机限制,总共有2个Docker Container,如下所示: 主机ip 主机名 Docker镜像 Cpu (每个2核) 172.17.0.2 amb0.mycorp.kom ambari-stack - - ambar-server,ambari-agent, namenode, nagios server, ganlia server, datanode 172.17.0.3 amb1.mycorp.kom ambari-stack - - ambari-agent, snamenode, datanode 上表中的Docker镜像是利用Dockerfile生成的镜像。首先从Github上克隆https://github.com/sequenceiq/docker-ambari.git到本地,然后修改其中的Dockerfile,修改方法为在“EXPOSE 8080”前增加:
内存 作用
最后根据这个Dockerfile生成docker镜像。
1.2 系统和软件版本
系统采用CentOS6.5,Docker版本为1.1.2,ambari-server和ambari-agent为1.6.0,HDP版本为2.1。
1
2 启动Docker Container 2.1 安装docker
使用yum install docker.io安装docker。
2.2 制作镜像
制作过程见1.1。
2.3 启动Ambari-Server节点
使用命令docker run -d -p 8080 -h amb0.mycorp.kom --name amb0
ambari-stack --tag ambari-server=true建立主机名为amb0.mycorp.kom的container,其中 --tag ambari-server=true表示该container上运行ambari-server。
2.4 启动Ambari-Agent节点
使用命令 docker run -d -e SERF_JOIN_IP=172.17.0.2 --dns 127.0.0.1 --entrypoint /usr/local/serf/bin/start-serf-agent.sh -e KEYCHAIN=$KEYCHAIN --name amb1 -h amb1.mycorp.kom ambari-stack --log-level debug建立主机名为amb1.mycorp.kom的container,其中 -e SERF_JOIN_IP=172.17.0.2表示该container上运行ambari-agent需要连接的ambari-server。
以上两步之后运行docker ps -a 可以看到当前正在运行的container,例如:
2.5 修改hosts
通过docker inspect命名可以查看各个container的信息,从中获取到各个container的IP地址,然后使用ssh登陆到各节点,修改hosts文件,是每个container都知道其他container主机名对应的IP地址,例如:
2