节点规划
192-168-164-49 cloudera-manager-server, cloudera-manager-agent
192-168-164-50 cloudera-manager-agent
192-168-168-93 cloudera-manager-agent
192-168-173-40 cloudera-manager-agent
192-168-173-41 cloudera-manager-agent
192.168.173.69 postgresql元数据库
根据自己需求下载相关包,这里我以5.7.1为例
http://archive.cloudera.com/cdh5/parcels/5.7.1/
http://archive.cloudera.com/cm5/cm/5/
在192-168-164-49上执行以下
透明登陆配置:
ssh-****** -t rsa
cd .ssh
ssh-copy-id -i id_rsa.pub 192-168-164-50
ssh-copy-id -i id_rsa.pub 192-168-168-93
ssh-copy-id -i id_rsa.pub 192-168-173-40
ssh-copy-id -i id_rsa.pub 192-168-173-41
所有节点创建相关目录:
mkdir -p /opt/cloudera-manager
在192-168-164-49解压后,将cloudera manager复制到每个节点:
tar -zxvf cloudera-manager-el6-cm5.7.1_x86_64.tar.gz -C /opt/cloudera-manager
scp -r /opt/cloudera-manager/* [email protected]:/opt/cloudera-manager/
scp -r /opt/cloudera-manager/* [email protected]:/opt/cloudera-manager/
scp -r /opt/cloudera-manager/* [email protected]:/opt/cloudera-manager/
scp -r /opt/cloudera-manager/* [email protected]:/opt/cloudera-manager/
在cdh-cm上执行命令(创建CDH的parcel包仓储):
mkdir -p /opt/cloudera/parcel-repo
将文件CDH-5.7.1-1.cdh5.7.1.p0.11-el6.parcel、CDH-5.7.1-1.cdh5.7.1.p0.11-el6.parcel.sha1以及manifest.json上传到cdh-cm上的的/opt/cloudera/parcel-repo目录下,然后执行如下命令:
mv /opt/cloudera/parcel-repo/CDH-5.7.1-1.cdh5.7.1.p0.11-el6.parcel.sha1 /opt/cloudera/parcel-repo/CDH-5.7.1-1.cdh5.7.1.p0.11-el6.parcel.sha
使用上面的命令去掉文件/opt/cloudera/parcel-repo/CDH-5.7.1-1.cdh5.7.1.p0.11-el6.parcel.sha1最后的"1",这步一定要做
在所有节点上执行如下命令:
mkdir -p /opt/cloudera/parcels
拷贝数据到相关目录:
scp -r /opt/cloudera/parcel-repo/* 192-168-164-50:/opt/cloudera/parcels
scp -r /opt/cloudera/parcel-repo/* 192-168-168-93:/opt/cloudera/parcels
scp -r /opt/cloudera/parcel-repo/* 192-168-173-40:/opt/cloudera/parcels
scp -r /opt/cloudera/parcel-repo/* 192-168-173-41:/opt/cloudera/parcels
修改agent配置文件,使得agent都指向server主机192-168-164-49
vim /opt/cloudera-manager/cm-5.7.1/etc/cloudera-scm-agent/config.ini
server_host=192-168-164-49
修改相关服务配置,server和agent
vi /etc/init.d/cloudera-scm-server
##将CMF_DEFAULTS=KaTeX parse error: Expected 'EOF', got '#' at position 122: …era-scm-server
#̲#将CMF_DEFAULTS={CMF_DEFAULTS:-/etc/default}改为CMF_DEFAULTS=/opt/cloudera-manager/cm-5.7.1/etc/default
配置server数据库postgresql
在192.168.173.69创建要使用的数据库scm
postgres=# CREATE ROLE scm LOGIN PASSWORD ‘scm’;
postgres=# CREATE DATABASE scm OWNER scm ENCODING ‘UTF8’;
修改server配置文件
vi /opt/cloudera-manager/cm-5.7.1/etc/cloudera-scm-server/db.properties
com.cloudera.cmf.db.type=postgresql
com.cloudera.cmf.db.host=192.168.173.69:1921
com.cloudera.cmf.db.name=scm
com.cloudera.cmf.db.user=scm
com.cloudera.cmf.db.password=scm
com.cloudera.cmf.db.setupType=EXTERNAL
添加cloudera-scm用户,并赋予相关权限
useradd --system --home=/opt/cloudera-manager/cm-5.7.1/run/cloudera-scm-server --no-create-home --shell=/bin/false --comment “Cloudera SCM User” cloudera-scm
chown cloudera-scm:cloudera-scm /opt/cloudera-manager
chown cloudera-scm:cloudera-scm /opt/cloudera/parcels/
chown cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo/
添加服务
cd /opt/cloudera-manager/cm-5.7.1/etc/init.d
192-168-164-49节点需要cloudera server ,其他节点只添加cloudera-scm-agent即可
cp cloudera-scm-server /etc/init.d/
cp cloudera-scm-agent /etc/init.d/
192-168-164-49节点启动server
service cloudera-scm-server start
每个节点启动agent
service cloudera-scm-agent status
登陆CM
http://192.168.164.49:7180/cmf/login
默认用户名和密码都是admin
至此集群安装完成