本文是《CDH5部署三部曲》的第二篇,上一篇《CDH5部署三部曲之一:准备工作》将集群所有机器做了必要的设置,今天一起来完成CDH的部署、启动、设置等操作;
系列文章链接
- 《CDH5部署三部曲之一:准备工作》
- 《CDH5部署三部曲之二:部署和设置》
- 《CDH5部署三部曲之三:问题总结》
master机器上的设置
SSH登录master机器,执行以下操作:
- 安装mariadb:
yum install mariadb-server
- 启动mariadb服务,并设置为开机启动:
systemctl start mariadb && systemctl enable mariadb
- 初始化数据库配置:
mysql_secure_installation
- 按照控制台提示进行设置,主要是设置root账号的密码,以及允许root账号远程登录;
- 登录mariadb:
mysql -u root -p123456
- 给root的远程操作开放所有权限,并且刷新:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
flush privileges;
- 创建parcel的本地仓库的文件夹,并且设置所有者和群组:
mkdir -p /opt/cloudera/parcel-repo
chown cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo
- 将前面下载好的三个文件放入目录/opt/cloudera/parcel-repo,这三个文件是:CDH-5.7.6-1.cdh5.7.6.p0.6-el7.parcel、manifest.json、CDH-5.7.6-1.cdh5.7.6.p0.6-el7.parcel.sha1
- 将/opt/cloudera/parcel-repo目录下的CDH-5.7.6-1.cdh5.7.6.p0.6-el7.parcel.sha1文件改名为CDH-5.7.6-1.cdh5.7.6.p0.6-el7.parcel.sha(即:把后缀从sha1改成sha)
- 接下来初始化CM数据,登录mariadb:
mysql -u root -p123456
- 给temp账号赋予权限,并且刷新:
create user 'temp'@'%' identified by 'temp';
grant all on *.* to 'temp'@'%' identified by 'temp' with grant option;
flush privileges;
- 退出mariadb交互;
- 进入目录/opt/cloudera-manager/cm-5.7.2/share/cmf/schema/:
cd /opt/cloudera-manager/cm-5.7.2/share/cmf/schema/
- 执行以下命令即可初始化CM的数据:
./scm_prepare_database.sh mysql temp -h master -utemp -ptemp --scm-host master scm scm scm
- 提示操作成功:
至此,master设置完毕,接下来设置worker1和worker2
worker1机器上的设置(worker2也这样设置)
- 创建本地parcel缓存文件夹:
mkdir -p /opt/cloudera/parcels
- 给文件夹赋权限:
chown cloudera-scm:cloudera-scm /opt/cloudera/parcels
worker1和worker2都做上述设置,接下来就可以启动CDH了。
启动server(master机器)
- SSH登录master;
- 进入启动命令所在目录:
cd /opt/cloudera-manager/cm-5.7.2/etc/init.d/
- 启动server:
./cloudera-scm-server start
- 启动成功的提示信息如下:
启动agent(worker1和worker2机器)
- SSH登录worker1;
- 进入启动命令所在目录:
cd /opt/cloudera-manager/cm-5.7.2/etc/init.d/
- 启动agent:
./cloudera-scm-agent start
- 启动成功的提示信息如下:
- 然后登录worker2,重复上述操作;
至此,CDH部署和启动完成,可以开始设置了;
设置CDH
- 浏览器访问地址:http://192.168.133.154:7180 ,会提示登录,账号和密码都是admin:
- 接下来的页面是许可条款,选择接受后进入选择版本的页面,我这里选择的是试用版,如下图:
- 即将部署多个服务:
- 进入选择机器的页面,如下图红框所示,将worker1和worker2都勾选上:
- parcel设置,如下所示:
- 由于之前已经将parcel文件下载到master机器上,因此下载安装包的进度一开始就是百分之百,耐心等待后面的分配、解压、激活等步骤自动完成:
- 集群安装完成,如下图,可以按照提示进行优化:
- 部署服务,这里我选择了所有服务:
- 角色设置页面,将没有分配主机的服务分配到某一台机器上,我这里都选择了worker1:
- 数据库的设置页面,由于只在master安装了mysql,所有我这里全部填写的是master:
- 详细的设置页面,请按照实际情况设置:
- 开始启动各个服务,等待完成:
- 所有服务正常后,状态页面如下图所示:
至此,CDH5部署和启动都已完成,但实际的启动过程并非一帆风顺,HDFS、Hive等服务都可能启动失败,下一篇文章会将这些问题以及解决方法都列出来;