操作系统:CentOS 6.5
JDK版本:1.7.0_80
所需安装包及版本说明:
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
cloudera-manager-el6-cm5.4.3_x86_64.tar.gz
不同的系统环境安装方式不同,要严格按照官方文档来
本文采用离线安装方式
1、网络配置
vi /etc/sysconfig/network
vi /etc/hosts
通过 service network restart 重启网络服务生效
2、SSH免密钥登录
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
或者
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
ssh-copy id node01
3、防火墙关闭
临时关闭:
service iptables stop
关闭开机启动:
chkconfig iptables off
4、SELINUX关闭
临时关闭:
setenforce 0
修改配置文件/etc/selinux/config(重启生效):
vi /etc/selinux/config
将 SELINUX=enforcing 改为 SELINUX=disabled
查看 SELINUX 状态:
1、 SELinux status: enabled(enabled:开启;disabled:关闭)
/usr/sbin/sestatus –v
2、使用命令:getenforce
5、安装JDK配置环境变量
export JAVA_HOME=/usr/java/jdkXXX
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOMdE/lib/dt.jar:$JAVA_HOME/lib/tools.jar
source /etc/profile
6、安装NTP
所有节点安装 NTP: yum install ntp
配置开机启动: chkconfig ntpd on
检查是否设置成功: chkconfig --list ntpd (2-5 为 on 状态则成功)
设置同步: ntpdate -u s2m.time.edu.cn
yum install ntp
chkconfig ntpd on
chkconfig --list ntpd
ntpdate -u s2m.time.edu.cn
7、安装配置mysql
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123' WITH GRANT OPTION;
flush privileges;
delete from mysql.user where host != '%' and user = 'root';
8、下载第三方依赖包
yum 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 (Server、Agent 都要做)
mkdir /opt/cloudera-manager
tar xvzf cloudera-manager*.tar.gz -C /opt/cloudera-manager
2、创建用户cloudera-scm
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_port
4、配置CM Server数据库
拷贝mysql jar文件到目录 /usr/share/java/ (没有就创建)
注意jar包名称要修改为mysql-connector-java.jar
cp mysql-connector-java-5.1.31-bin.jar /usr/share/java/mysqlconnector-java.jar
创建用户
grant all on *.* to 'temp'@'%' identified by 'temp' with grant option;
flush privileges;
cd /opt/cloudera-manager/cm-5.4.3/share/cmf/schema/
./scm_prepare_database.sh mysql temp -h cdh1 -u temp -p temp --scm-host cdh1 scm scm scm
格式:数据库类型、数据库、数据库服务器、用户名、密码、cm server服务器
若 上步失败或过程 中 操作中断,删除所有库、重头来过 /( ㄒ o ㄒ )/~~
mysql> drop user 'temp'@'%';
5、创建Parcel目录
(demo中 cdh1既是server也是agent)
Server节点
mkdir -p /opt/cloudera/parcel-repo
修改权限
chown cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo
Agent节点
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 (检查后在启动)
启动Server
cd /opt/cloudera-manager/cm-5.4.3/etc/init.d/
./cloudera-scm-server start
Sever首次启动会自动创建表以及数据,不要立即关闭或重启,否则需要删除所有表及数据重新安装
启动Agent
./cloudera-scm-agent start
访问:http://ManagerHost:7180,若可以访问(用户名、密码:admin),则安装成功。
Manager 启动成功需要等待一段时间, 过程 中会 在 数据库中创建对应的表需要耗费一些时间。
CDH5 安装
CM Manager && Agent 成功启动后,登录前端页面进行 CDH 安装配置。
免费版本的 CM5 已经去除 50 个节点数量的限制。
各个 Agent 节点正常启动后,可以在当前管理的主机列表中看到对应的节点。 选择要安装的节点,点继续。
接下来,出现以下包名,说明本地 Parcel 包配置无误,直接点继续就可以了。
点击,继续,如果配置本地 Parcel 包无误,那么下图中的已下载,应该是瞬间就完成了, 然后就是耐心等待分配过程就行了,大约 10 多分钟吧,取决于内网网速。
接下来是服务器检查,可能会遇到以下问题:
Cloudera 建议将 /proc/sys/vm/swappiness 设置为 0。当前设置为 60。使用 sysctl 命令在 运行时更改该设置并编辑 /etc/sysctl.conf 以在重启后保存该设置。您可以继续进行安装, 但可能会遇到问题,Cloudera Manager 报告您的主机由于交换运行状况不佳。以下主机受 到影响:
通过 echo 0 > /proc/sys/vm/swappiness 即可解决。
接下来是选择安装服务:
测试 采用 了 Hadoop默认,实际按工作环境 来 定 咯 ~~
服务配置,一般情况下保持默认就可以了(Cloudera Manager 会根据机器的配置自动进行 配置,如果需要特殊调整,自行进行设置就可以了):
接下来是数据库的设置,检查通过后就可以进行下一步的操作了:
下面是集群设置的审查页面,我这里都是保持默认配置的:
终于到安装各个服务的地方了,注意,如果采用其他数据库安装 Hive 等组件的时候报错, 检查之前配置 CM Server 数据库时,jar 包拷贝位置及名称是否修改
服务的安装过程大约半小时内就可以完成:
安装完成后,就可以进入集群界面看一下集群的当前状况了。
这里可能会出现无法发出查询:对 Service Monitor 的请求超时的错误提示,如果各个组件 安装没有问题,一般是因为服务器比较卡导致的,过一会刷新一下页面就好了: