资源规划
组件 | cfp-acrm-cdh-1 | cfp-acrm-cdh-2 | cfp-acrm-cdh-3 |
---|---|---|---|
OS | redhat-6.8 | redhat-6.8 | redhat-6.8 |
CDH | CDH-5.8.3 CM/Agent | CDH-5.8.3 Agent | CDH-5.8.3 Agent |
Java | jdk-8u221 | jdk-8u221 | jdk-8u221 |
scala | scala-2.11.8 | scala-2.11.8 | scala-2.11.8 |
MySQL | N.A | N.A | MySQL-5.7.30 |
安装介质
版本:cloudera-manager-el6-cm5.8.3x86_64.tar.gz
CM下载:http://archive.cloudera.com/cm5/cm/5/ _
离线包下载:http://archive.cloudera.com/cdh5/parcels
集群配置
# 设置主机名(集群所有节点)
sudo vi /etc/hosts
配置如下:
# 注意:务必注释# 127.0.1.1 ${HOST_NAME}
# 本机内网IP建议配置与第一行(多个域名情况下)
192.168.0.101 cfp-acrm-cdh-1
192.168.0.102 cfp-acrm-cdh-2
192.168.0.103 cfp-acrm-cdh-3
# 分发到集群其他节点
for i in {2,3} ;do scp /etc/hosts cfp-acrm-cdh-$i:/etc;done
为了便于Windows主机上维护CM,可以将集群节点IP加入到hosts(C:\Windows\System32\Drivers\etc):
192.168.0.101 cfp-acrm-cdh-1
192.168.0.102 cfp-acrm-cdh-2
192.168.0.103 cfp-acrm-cdh-3
环境准备
Φ 安装操作系统
参考:《基于Vagrant的RedHat6.8》
Φ SSH免密
参考:《RedHat6.8-SSH免密》
注意:需要配置root用户的SSH免密。
Φ 安装JDK
参考:《RedHat6.8-安装JDK-1.8.221》
注意:需要配置root用户的/etc/profile,而不是其他用户的~/.bashrc,并且安装目录不要安装在其他用户目录下,安装过程使用root。
Φ 安装Scala
参考:《RedHat6.8-安装Scala-2.11.8》
注意:需要配置root用户的/etc/profile,而不是其他用户的~/.bashrc,并且安装目录不要安装在其他用户目录下,安装过程使用root。
Φ 安装MySQL
参考:《RedHat6.8-安装MySQL-5.7.30》
在MySQL中依次创建CDH监控数据库、Hive数据库、Oozie数据库、Hue数据库。
# 1)启动数据库
mysql -uroot -p123456
use mysql;
select User, Host from user;
update user set host='%' where host='localhost';
# 删除root用户的其他host(%之外)
flush privileges;
# 2)集群监控数据库
create database amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
# 3)Hive数据库
create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
# 4)Oozie数据库
create database oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
# 5)Hue数据库
create database hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
# 6)关闭数据库
quit
Φ 安装第三方依赖
依次在所有Agent的节点上执行下载安装第三方依赖。
yum -y install chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse fuse-libs redhat-lsb
CDH安装部署
Φ 安装准备
sudo su
# 1)创建cm安装目录(所有节点)
mkdir -p /opt/cm
# 2)解压安装包到cm安装目录
cd /share
tar -zxvf cloudera-manager-el6-cm5.8.3_x86_64.tar.gz -C /opt/cm
# 3)集群所有CM/Agent节点上创建用户cloudera-scm
useradd \
--system \
--home=/opt/cm/cm-5.8.3/run/cloudera-scm-server \
--no-create-home \
--shell=/bin/false \
--comment "Cloudera SCM User" cloudera-scm
参数说明:
- —system:创建一个系统账户
- —home:指定用户登入时的主目录,替换系统默认值/home/<用户名>
- —no-create-home:不要创建用户的主目录
- —shell:用户的登录 shell 名
- —comment:用户的描述信息
注意:Cloudera Manager默认去找用户cloudera-scm,创建完该用户后,将自动使用此用户。
Φ CM Agent配置
vi /opt/cm/cm-5.8.3/etc/cloudera-scm-agent/config.ini
配置如下:
server_host=cfp-acrm-cdh-1
Φ CM元数据库驱动
# 所有节点
cp -rf /share/mysql-connector-java-5.1.40.jar /usr/share/java/mysql-connector-java.jar
注意:jar包名称要修改为mysql-connector-java.jar(即与**config.ini中cloudera_mysql_connector_jar属性值相同即可)**。
Φ CM元数据库创建
scm用户授权(若执行创建过程中出现权限问题则执行如下命令):
use mysql;
update user set host = '%' where user = 'scm';
grant all on *.* to scm@'%' identified by '531.Desk' with grant option;
grant all privileges on *.* to scm@'%' identified by 'scm' with grant option;
flush privileges;
CM元数据库创建:
/opt/cm/cm-5.8.3/share/cmf/schema/scm_prepare_database.sh mysql cm -hcfp-acrm-cdh-3 -uroot -p123456 --scm-host cfp-acrm-cdh-1 scm scm scm
参数说明:
- -h:远程数据库的主机名
- -u:数据库名称
- -p:数据库密码
- —scm-host:SCM服务器主机名
Φ 分发
scp -r /opt/cm root@cfp-acrm-cdh-2:/opt/
scp -r /opt/cm root@cfp-acrm-cdh-3:/opt/
Φ CM离线仓库
# 创建CM离线仓库目录并更改所属组合所属用户为cloudera-scm
mkdir -p /opt/cloudera/parcel-repo
chown cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo
# 拷贝下载文件manifest.json,*.parcel,*.parcel.sha1到CM离线仓库目录
cp -rf /share/manifest.json /opt/cloudera/parcel-repo/
cp -rf /share/CDH-5.8.3-1.cdh5.8.3.p0.2-el6.parcel /opt/cloudera/parcel-repo/
cp -rf /share/CDH-5.8.3-1.cdh5.8.3.p0.2-el6.parcel.sha1 /opt/cloudera/parcel-repo/
# 修改验证文件后缀
cd /opt/cloudera/parcel-repo
mv CDH-5.8.3-1.cdh5.8.3.p0.2-el6.parcel.sha1 CDH-5.8.3-1.cdh5.8.3.p0.2-el6.parcel.sha
# 创建Agent离线仓库目录
mkdir -p /opt/cloudera/parcels
chown cloudera-scm:cloudera-scm /opt/cloudera/parcels
# 分发
scp -r /opt/cloudera root@cfp-acrm-cdh-2:/opt/
scp -r /opt/cloudera root@cfp-acrm-cdh-3:/opt/
# 分发后重新授权(节点2、3)
chown cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo
chown cloudera-scm:cloudera-scm /opt/cloudera/parcels
启动CM
Φ 启动CM Server
# 节点1
/opt/cm/cm-5.8.3/etc/init.d/cloudera-scm-server start
/opt/cm/cm-5.8.3/etc/init.d/cloudera-scm-server status
/opt/cm/cm-5.8.3/etc/init.d/cloudera-scm-server stop
Φ 启动CM Agent
注意:启动过程非常慢,Manager启动成功需要等待5分钟左右,过程中会在数据库中创建对应的表需要耗费一些时间。# 节点1、2、3
/opt/cm/cm-5.8.3/etc/init.d/cloudera-scm-agent start
/opt/cm/cm-5.8.3/etc/init.d/cloudera-scm-agent status
/opt/cm/cm-5.8.3/etc/init.d/cloudera-scm-agent stop
验证
浏览器入口:http://cfp-acrm-cdh-1:7180# -c:会话自动刷新
netstat -anp -c | grep 7180
账户口令:admin/admin
CM TCP端口参考:https://www.yuque.com/polaris-docs/bigdata/cdh