cdh5.10.2离线安装
安装包:
下载cm-5.10.2到/usr/local/soft/下
http://archive-primary.cloudera.com/cm5/cm/5/cloudera-manager-el6-cm5.4.3_x86_64.tar.gz
下载cdh-5.4.3到/usr/local/soft/下
http://archive-primary.cloudera.com/cdh5/parcels/5.4.3/
CDH-5.4.3-1.cdh5.4.3.p0.6-el6.parcel
CDH-5.4.3-1.cdh5.4.3.p0.6-el6.parcel.sha
manifest.json
下载mysql
Mysql-connector-java-5.1.34
配置/etc/hosts
vim /etc/hosts
192.168.1.201 hx1
192.168.1.202 hx2
192.168.1.203 hx3
192.168.1.204 hx4
192.168.1.205 hx5
关闭防火墙
service iptables stop
chkconfig iptables off
service iptables status
关闭selinux
vim /etc/selinux/config
#SELINUX=enforcing
SELINUX=disabled
集群时间同步:同步时间每天的00:01,同步日志存放在/opt/systime.log
Vim systime.sh
#!/bin/sh
Cur=’date +%H:%M:%S’
Echo “sync time starting : $Cur”
for i in {1..5}; do echo s1-hx${i}; ssh hx${i} “source /opt/profile; date –s $ Cur”;done;
Echo “sync time starting : $Cur”
在/etc/目录下使用:crontab –e
输入 :1 0 * * * /etc/systime.sh >>/opt/systime.log (1 0 * * *中间有空格)
安装jdk7
cd /usr/local/soft/
tar -zxvf jdk-7u65-linux-x64.tar.gz
vim /etc/profile
export JAVA_HOME=/usr/local/soft/jdk1.7.0_65
export PATH=.:$JAVA_HOME/bin:$PATH
安装mysql
rpm -qa | grep -i mysql
rpm -e --nodeps mysql-libs-5.1.71-1.el6.x86_64
yum install mysql-server
service mysqld start
chkconfig mysqld on
mysql -uroot –p 此时mysql无密码
set password=password('123456'); 设置密码
flush privileges; 生效
exit 退出
mysql -uroot -p123456 登录
如下数据库只在s1节点上 :
创建集群监控数据库
create database amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
创建hive数据库
create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
创建hue数据库(cloudera提供的在浏览器上使用HDFS文件浏览、hiveSQL、Solr、Impala、Spark、Pig、Oozie、HBase操作、MapReduce、Sqoop2、ZooKeeper、MySQL、Oracle、Postgresql)
create database hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
开启远程登录权限:
在hx1节点上登陆mysql授权mysql对所有库下的表授权,允许任何用户远程访问
mysql> grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
Query OK, 0 rows affected (0.02 sec)
刷新权限使mysql权限生效
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
mysql> use mysql;
Database changed
mysql> select host,user,password from user;
+--------------+------+-------------------------------------------+
| host | user | password |
+--------------+------+-------------------------------------------+
| localhost | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
| % | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E | 表示成功
+--------------+------+-------------------------------------------+
2 rows in set (0.00 sec)
如果还是提示远程登录有问题 可暂时关闭远程登录表跳过权限验证,启动mysql时不启动授权表:
mysqld_safe --skip-grant-tables &
配置免密码登陆,每个节点都需要
ssh-keygen -t rsa(三次回车)
ll /usr/local/soft/
cloudera-manager-el6-cm5.4.3_x86_64.tar.gz
ll /usr/local/soft/
CDH-5.4.3-1.cdh5.4.3.p0.6-el6.parcel
CDH-5.4.3-1.cdh5.4.3.p0.6-el6.parcel.sha
manifest.json
重命名:(mv CDH-5.4.3-1.cdh5.4.3.p0.6-el6.parcel.sha1 CDH-5.4.3-1.cdh5.4.3.p0.6-el6.parcel.sha)
安装cloudera-manager-5.4.3
解压cm-5.10.2到/opt下
tar -zxvf /usr/local/soft/cloudera-manager-el6-cm5.4.3_x86_64.tar.gz -C /opt/
创建scm用户(在每个节点上都要)
useradd --system --home=/opt/cm-5.10.2/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
vim /opt/cm-5.10.2/etc/cloudera-scm-agent/config.ini
设置server_host=s1 (每个节点)
cp /usr/local/soft/mysql-connector-java-5.1.34-bin.jar /opt/cm-5.10.2/share/cmf/lib/
创建cm数据库
/opt/cm-5.10.2/share/cmf/schema/scm_prepare_database.sh mysql cm -hlocalhost -uroot -p123456 --scm-host localhost scm scm scm
#复制CDH到/opt/cloudera/parcel-repo/下(只在s1上复制,其他节点不需要)
CDH-5.4.3-1.cdh5.4.3.p0.6-el6.parcel
CDH-5.4.3-1.cdh5.4.3.p0.6-el6.parcel.sha
manifest.json
复制到s2~s6节点
for i in {2..6}; do echo hx${i}; scp -r /opt/c* root@hx${i}:/opt/; done; (中途不可停止,否则删除已拷贝节点文件重新执行)
启动cm server(s1上)
/opt/cm-5.10.2/etc/init.d/cloudera-scm-server start(start|stop|status)
启动cm agent(s1~s6上)
/opt/cm-5.10.2/etc/init.d/cloudera-scm-agent start(start|stop|status)
使用s1:7180中开始配置集群,如下:
登录CDH平台账号admin密码admin

选择需要安装的版本
继续
初次安装需要在 新主机里面搜索主机 例如 hx[1-5] 然后选中所有主机
如图:使用parcel(点击更多选项取消点网络连接地址)选择CDH版本安装(如有其它的parcel 可放置clodera/parcel/parcel-repo/下 [包括:.parcel、.parcel.sha、manifest.json] 文件)
等待各节点下载-分配-解压-激活(如果出现各节点配置失败 提示 主机状态不良,可进行如下操作:
cloudera-scm-agent stop
cloudera-scm-server
搜索 uuid文件 :find / -name uuid 进入对应的目录一般为 /opt/cm-5-10-2/lib/cloudera-scm-agent
删除目录下的 uuid 、response.avro 、cm_guid(每个节点都需要清除)
)
此地的检查可以忽略
查看主机安装信息,可将具体的版本记录以备后期开发参照
更改swappiness: echo 10 > /proc/sys/vm/swappiness
如果有提示 透明大页面压缩根据提示操作即可
选择需要安装的组件 对组件进行相应的分配:
根据前期创建的是数据库填写对应的数据库主机地址-库类型-库名-用户-密码
忽略继续
根据安装进度查看相应的日志:解决相应的问题
同上
安装完成:
安装过程中的问题:
CentOS下MySQL无法正常启动错误
一、非正常关机/退出MySQL时报错:/var/lib/mysql/mysql.sock
删除或重命名:rm -r /var/lib/mysql/mysql.sock或mv /var/lib/mysql/mysql.sock /var/lib/mysql/mysql.sock.err
重启MySQL:service mysqld restart即可解决。
二、告警提示:客户端生成需要激活以下其他parcel :[kafka]
这是安装包里面没有相应的安装包,或者是manifest.json 没有对应的hash密钥
查看cloudera/parcel-repo/manifest.json是否存在对应组件,如果没有就自行下载组件
KAFKA-2.1.0-1.2.10.po.115-e16.parcel、
KAFKA-2.1.0-1.2.10.po.115-e16.parcel.parcel.sha、
manifest.json 将文件内对应版本的hash密钥拷贝到cloudera/parcel-repo/manifest.json下
启动cm服务,检查更新parcel,分配并激活percel包,注意此处一定要激活才能使用
三、hdfs:运行状态问题 NameNode 运行状态 NameNode 检查点状态 爆红
查看日志 可以看到 提示 Can’t open /opt/cm-5.10.2/run/choudera-scm/agent/process/141-hdfs-NAMENODE/config.zip:权限不够以及proc.json 权限不够。
赋权限:chmod 777 config.zip proc.json 即可
四、告警提示:permission denied : user=root ,access =write , inode=”user”:hdfs:supergroup:drwxr-xr-x
查看hdfs目录权限:hadoop fs –ls /
更改权限 sduo –u hdfs hadoop fs –chmod -R 777 /user /tmp
五Hadoop0.20.203.0在关机重启后,namenode启动报错(org.apache.hadoop.hdfs.server.common.InconsistentFSStateException: Directory /dfs/name is in an inconsistent state: storage directory does not exist or
is not accessible.)
错误原因是因为namenode 的是数据丢失
可以格式化namenode :Hadoop namenode –format(慎用)
六 flume 提示 java.lang.OutOfMemoryError: Java heap space
查看ps –ef |grep flume-ng是fo否有/usr/jdk/bin/java -Xmx20m -Dflume.root.logger=INFO
如果有-Xmx20m 查找一下flume-ng文件
Find / -name flume-ng (查看此文件的位置) 在文中找到 JAVA_OPTS修改为
JAVA_OPTS=“-Xmx1024m”
·