环境
内容 | 版本 |
---|---|
CentOS | 7.4 64位 |
JDK | 1.7 |
Cloudera Manager | 5.14.1 |
服务器配置
IP | hostname | system version |
---|---|---|
192.168.1.31 | c1 | centos 7 |
192.168.1.32 | c2 | centos 7 |
192.168.1.33 | c3 | centos 7 |
离线CDH安装下载地址
链接:https://pan.baidu.com/s/1rGq3TVk1RDvxLilRiaRcFQ 密码:y8yq
软件链接
cdh 5.14.4
http://archive.cloudera.com/cm5/cm/5/cloudera-manager-centos7-cm5.14.4_x86_64.tar.gz
http://archive.cloudera.com/cdh5/parcels/5.14/CDH-5.14.4-1.cdh5.14.4.p0.3-el7.parcel
http://archive.cloudera.com/cdh5/parcels/5.14/CDH-5.14.4-1.cdh5.14.4.p0.3-el7.parcel.sha1
http://archive.cloudera.com/cdh5/parcels/5.14/manifest.json
服务器基础环境准备
1.所有节点修改hostname(重启生效)及hosts
hostnamectl --static set-hostname cdh1
2.修改hosts:
vim /etc/hosts
|192.168.1.31|c1|
|192.168.1.32|c2|
|192.168.1.33|c3|
3.所有节点关闭防火墙和selinux(重启生效)
关闭防火墙
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)
关闭selinux:
vim /etc/selinux/config
找到SELINUX改为:
SELINUX=disabled
4.所有节点ssh无密码登录
主机ssh
ssh-keygen -t rsa #一路回车到完成
分发ssh
#批量发送公钥到其他节点
for num in `seq 1 3`;do ssh-copy-id -i /root/.ssh/id_rsa.pub root@cdh$num;done
JDK安装
卸载系统自带JDK
rpm -qa |grep java #如果有就卸载。没有就不用执行下面
yum remove java* #删除自带的java
java环境配置
rpm -ivh jdk-7u80-linux-x64.rpm
cat >/etc/profile.d/java.sh<<EOF
export JAVA_HOME=/usr/java/jdk1.8.0_121
export CLASSPATH=.:\$JAVA_HOME/jre/lib/rt.jar:\$JAVA_HOME/lib/dt.jar:\$JAVA_HOME/lib/tools.jar
export PATH=\$PATH:\$JAVA_HOME/bin
EOF
source /etc/profile.d/java.sh
安装ntp时间同步软件
所有节点安装
yum install ntp -y
在主机修改
vim /etc/ntp.conf
server s1a.time.edu.cn prefer
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst
先进行一次时间同步
/usr/sbin/ntpdate s1a.time.edu.cn
在其他机器上使用
server server01
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst
Cloudera Manager安装
主机安装
修改仓库文件cloudera-manager.repo,把版本号加上
[cloudera-manager]
name = Cloudera Manager
baseurl = https://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.14.0/ #主要改这里的版本号
gpgkey = https://archive.cloudera.com/redhat/cdh/RPM-GPG-KEY-cloudera
gpgcheck = 1
注意:修改完后的需要将.repo文件拷贝到/etc/yum.repos.d
s1安装
yum localinstall --nogpgcheck *.rpm
从机安装
同样需要修改repos文件
注意:修改完后的需要将.repo文件拷贝到/etc/yum.repos.d
s2-s3安装
yum localinstall --nogpgcheck *.rpm
检查我们安装的cloudera
yum list | grep cloudera*
在安装中遇到的问题
在安装agent时,提示安装失败无法接收 Agent发出的检测信号
安装失败。 无法接收 Agent 发出的检测信号。
请确保主机的名称已正确配置。
请确保端口 7182 可在 Cloudera Manager Server 上访问(检查防火墙规则)。
请确保正在添加的主机上的端口 9000 和 9001 空闲。
检查正在添加的主机上 /var/log/cloudera-scm-agent/ 中的代理日志(某些日志可在安装详细信息中找到)。
如果在 Cloudera Manager 中启用为代理使用 TLS 加密(管理 -> 设置 -> 安全),请确保 /etc/cloudera-scm-agent/config.ini在正在添加的主机上有 use_tls=1。重启相应的代理,并单击此处的重试链接。
查看log信息知道
ProtocolError: <ProtocolError for 127.0.0.1/RPC2: 401 Unauthorized>
[07/Jul/2019 22:12:10 +0000] 11903 MainThread agent INFO Trying to connect to newly launched super
[07/Jul/2019 22:12:10 +0000] 11903 MainThread agent ERROR Failed! trying again in 1 second(s)
Traceback (most recent call last):
File "/usr/lib64/cmf/agent/build/env/lib/python2.7/site-packages/cmf-5.14.1-py2.7.egg/cmf/agent.py", line 2
self.get_supervisor_process_info()
File "/usr/lib64/cmf/agent/build/env/lib/python2.7/site-packages/cmf-5.14.1-py2.7.egg/cmf/agent.py", line 2
self.identifier = self.supervisor_client.supervisor.getIdentification()
File "/usr/lib64/python2.7/xmlrpclib.py", line 1233, in __call__
return self.__send(self.__name, args)
File "/usr/lib64/python2.7/xmlrpclib.py", line 1587, in __request
verbose=self.__verbose
File "/usr/lib64/cmf/agent/build/env/lib/python2.7/site-packages/supervisor-3.0-py2.7.egg/supervisor/xmlrpc
'' )
ProtocolError: <ProtocolError for 127.0.0.1/
解决方案:
$> ps -ef | grep supervisord
$> kill -9 <processID>
sudo service cloudera-scm-agent restart
安装agent的主机上9000和9001端口是否空闲
yum install lsof
[root@s3 cloudera-manager]# lsof -i:9000
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
cmf-agent 9786 root 12u IPv4 50212 0t0 TCP s3:cslistener (LISTEN)
[root@s3 cloudera-manager]# ps -ef | grep 9786
root 9786 1 1 22:19 ? 00:00:04 python2.7 /usr/lib64/cmf/agent/build/env/bin/cmf-agent --package_dir /usr/lib64/cmf/service --agent_dir /var/run/cloudera-scm-agent --lib_dir /var/lib/cloudera-scm-agent --logfile /var/log/cloudera-scm-agent/cloudera-scm-agent.log --daemon --comm_name cmf-agent --pidfile /var/run/cloudera-scm-agent/cloudera-scm-agent.pid
root 10357 2257 0 22:26 pts/0 00:00:00 grep --color=auto 9786