【CDH学习之二】ClouderaManager安装
环境
虚拟机:VMware 10
Linux版本:CentOS-6.5-x86_64
客户端:Xshell4
FTP:Xftp4
jdk8
zookeeper-3.4.11
搭建方案:
server | agent | 内存分配 | |
node1 | 1 | 1 | 8G |
node2 | 1 | 1 | 2G |
node3 | 1 | 1 | 2G |
一、系统环境准备:
1、网络配置
所有节点:
vi /etc/sysconfig/network
vi /etc/hosts
2、SSH免密钥登录
node1执行:
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
生成无密码密钥对
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
然后将公钥添加到其他节点的authorized_keys上:
$ scp ~/.ssh/id_dsa.pub root@node2:/opt
$ scp ~/.ssh/id_dsa.pub root@node3:/opt
#然后分别登录这三台虚拟机,将公钥覆盖到公钥中
$ cat /opt/id_dsa.pub >> ~/.ssh/authorized_keys
然后node2、node3再重复上面操作
最终实现效果:
node1可以免密登录node1、node2、node3
node2可以免密登录node1、node2、node3
node3可以免密登录node1、node2、node3
具体参考:https://www.cnblogs.com/cac2020/p/10207379.html
3、防火墙关闭
所有节点:
service iptables stop
chkconfig iptables off
4、SELINUX关闭
所有节点:
临时关闭:
setenforce 0
修改配置文件/etc/selinux/config(重启生效) :
将 SELINUX=enforcing 改为 SELINUX=disabled
查看 SELINUX 状态:
1) /usr/sbin/sestatus –v
SELinux status: enabled(enabled:开启;disabled:关闭)
2) 使用命令:getenforce
5、安装JDK配置环境变量
所有节点:
export JAVA_HOME=/usr/java/jdk1.7.0_67
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
6、安装NTP
所有节点
安装 NTP:
yum install ntp
配置开机启动:
chkconfig ntpd on
检查是否设置成功:
chkconfig --list ntpd (2-5 为 on 状态则成功)
设置同步:
ntpdate -u ntp.sjtu.edu.cn(时钟服务器根据实际环境设置、本文采用 210.72.145.44-国家授时中心服务器 IP 地址)
7、安装配置mysql
node1节点安装即可:
yum install mysql-server
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123' WITH GRANT OPTION;
flush privileges
8、下载第三方依赖包
所有节点:
yum -y install chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse fuse-libs redhat-lsb
二、Cloudera Manager安装
1、安装Cloudera Manager Server、Agent
所有节点:
拷贝cloudera-manager-el6-cm5.4.3_x86_64.tar.gz到所有Server、Agent节点
创建cm目录:
mkdir /opt/cloudera-manager
解压cm压缩包:
tar xvzf cloudera-manager-el6-cm5.4.3_x86_64.tar.gz -C /opt/cloudera-manager
2、创建用户cloudera-scm
所有节点:
解释:cloudera-scm用来启动运行CM程序的,而且这个程序的目录只允许这个用户来访问,而不能用来登录 创建命令如下:
useradd --system --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
3、配置CM Agent
所有节点:
修改文件/opt/cloudera-manager/cm-5.4.3/etc/cloudera-scm-agent/config.ini中server_host
server_host=node1
4、配置CM Server数据库
node1节点:
拷贝mysql jar文件到目录 /usr/share/java/
注意jar包名称要修改为mysql-connector-java.jar
grant all on *.* to 'temp'@'%' identified by 'temp' with grant option;
cd /opt/cloudera-manager/cm-5.4.3/share/cmf/schema/
./scm_prepare_database.sh mysql temp -h node01 -utemp -ptemp --scm-host node01 scm scm scm
格式:数据库类型、数据库、数据库服务器、用户名、密码、cm server服务器
5、创建Parcel目录
CDH仓库本地目录,从本地获取,不从互联网获取:
Server节点node1:
mkdir -p /opt/cloudera/parcel-repo
给用户cloudera-scm赋予操作该目录的权限
chown cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo
将下载好的文件(CDH-5.4.0-1.cdh5.4.0.p0.27-el6.parcel、CDH-5.4.0-1.cdh5.4.0.p0.27-el6.parcel.sha、manifest.json)拷贝到该目录下
Agent节点node1、node2、node3:
mkdir -p /opt/cloudera/parcels
chown cloudera-scm:cloudera-scm /opt/cloudera/parcels
6、制作CDH本地源
下载好文件CDH-5.4.0-1.cdh5.4.0.p0.27-el6.parcel以及manifest.json,将这两个文件放到server节点的/opt/cloudera/parcel-repo下。
打开manifest.json文件,里面是json格式的配置,找到与下载版本相对应的hash码,新建文件,文件名与你的parel包名一致,并加上.sha后缀,将hash码复制到文件中保存。
7、启动CM Server、Agent
node1启动服务端:
cd /opt/cloudera-manager/cm-5.4.3/etc/init.d/
./cloudera-scm-server start
Sever首次启动会自动创建表以及数据,不要立即关闭或重启,否则需要删除所有表及数据重新安装
node1、node2、node3启动客户端:
./cloudera-scm-agent start
登录访问:http://node1:7180,
用户名、密码:admin/admin
若可以访问,则CM安装成功。
参考:
安装文档下载
cloudera manager的简单使用
CDH 2、Cloudera Manager的安装