文件下载

  • Cloudera Manager

    地址:http://archive.cloudera.com/cm5/cm/5/

    这里下载的是5.13.1的版本,https://archive.cloudera.com/cm5/cm/5/cloudera-manager-el6-cm5.13.1_x86_64.tar.gz

  • CDH安装包

地址:http://archive.cloudera.com/cdh5/parcels

本文基于CentOS6,下载的parcels包及manifest文件对应的版本为el6:

CDH-5.13.1-1.cdh5.13.1.p0.2-el6.parcel

CDH-5.13.1-1.cdh5.13.1.p0.2-el6.parcel.sha1

        manifest.json

   将.sha1修改为.sha

  • JDBC

地址:https://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.17/mysql-connector-java-5.1.17.jar

    这里用的jdbc驱动版本是:mysql-connector-java-5.1.17.jar

我这3台机器node1,node2,node3。系统为centos6.5

配置静态IP(可不配)

vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
HWADDR=08:00:27:BA:1A:B9
TYPE=Ethernet
UUID=27ccadb3-93ce-4a0a-8e5c-9bf7709931a0
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
DNS1=192.168.1.1
IPADDR=192.168.1.6
NETMASK=255.255.255.0
GATEWAY=192.168.1.1

如果是克隆虚拟机导致配置失败的话:

rm -rf /etc/udev/rules.d/70-persistent-net.rules //去除克隆之后的网络适配器

reboot //生成新的网络适配器

ifconfig //查看自己新生成的HWaddr,复制!

vi /etc/sysconfig/network-scripts/ifcfg-eth0 //编辑这个文件,替换刚刚复制的HWaddr

service network restart

一.网络配置(所有节点)

1.修改主机名

  vi /etc/sysconfig/network修改hostname :
    NETWORKING=yes
    HOSTNAME=node1

  通过service network restart重启网络服务生效

  临时修改主机名hostname node1

2. 修改ip与主机名的对应关系

  vi /etc/hosts
    192.168.101.71 node1
    192.168.101.72 node2
    192.168.101.73 node3

3.设置SSH无密码访问(所有节点)

1.生成公钥私钥,每一台都要生成
   ssh-keygen -t rsa
2.node1上将id_rsa.pub公钥内容拷贝到机器A的authorized_keys文件中
   cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
3.其他主机的id_rsa.pub拷贝到同一台机器node1的authorized_keys
  ssh-copy-id root@node1
  如果没有ssh-copy-id 执行sudo yum -y install openssh-clients
4.复制机器node1的authorized_keys文件拷贝到其它主机
  scp /root/.ssh/authorized_keys root@node2:/root/.ssh
5.如果启动无效果,需要修改ssh配置vim /etc/ssh/sshd_config
  RSAAuthentication yes #启用 RSA 认证
  PubkeyAuthentication yes #启用公钥私钥配对认证方式
  AuthorizedKeysFile .ssh/authorized_keys #公钥文件路径(和上面生成的文
  StrictModes no设置完之后记得重启SSH服务,才能使刚才设置有效。service sshd restart

4.安装Oracle Java(所有节点)

Linux可能自带OpenJDK,但运行CDH5需要使用Oracle的JDK,需要Java 7以上版本的支持
卸载自带的OpenJDK** 使用下述命令查询相关的java包
  rpm -qa | grep java
使用-e选项填入包名卸载
  rpm -e --nodeps packageName
安装oracle jdk

  配置环境变量 vi /etc/profile

    JAVA_HOME=/opt/modules/jdk1.8.0_11/
    export PATH=\$PATH:\$JAVA_HOME/bin:\$JAVA_HOME/sbin

  source  /etc/profile 使其生效

5.安装配置MySQL(主节点)

  通过yum install mysql-server安装mysql服务器。

  chkconfig mysqld on设置开机启动

  service mysqld start启动mysql服务
  设置root的初试密码:mysqladmin -u root password '123456'

  mysql -uroot -p123456进入mysql命令行,创建以下数据库:
    #为hive建库hive
      create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
    #activity monitor
      create database amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
    #为oozie建库oozie
      create database oozieDEFAULT CHARSET utf8 COLLATE utf8_general_ci;
    #为hue建库hue
      create database hueDEFAULT CHARSET utf8 COLLATE utf8_general_ci;

  #授权root用户在主节点拥有所有数据库的访问权限
    grant all privileges on *.* to 'root'@'node1' identified by '123456' with grant option;
    flush privileges;

6.关闭防火墙和SELinux(所有节点)

注意: 需要在所有的节点上执行,因为涉及到的端口太多了,临时关闭防火墙是为了安装起来更方便,安装完毕后可以根据需要设置防火墙策略,保证集群安全。

关闭防火墙:

service iptables stop (临时关闭)
chkconfig iptables off (重启后生效)
关闭SELINUX(实际安装过程中发现没有关闭也是可以的,不知道会不会有问题,还需进一步进行验证):

setenforce 0 (临时生效)
vi /etc/selinux/config :

  SELINUX=disabled (重启后永久生效)

7.配置NTP服务(所有节点)

集群中所有主机必须保持时间同步,如果时间相差较大会引起各种问题,例如主机运行状态不良等。 具体思路如下:

master节点作为ntp服务器与外界对时中心同步时间,随后对所有datanode节点提供时间同步服务。

所有datanode节点以master节点为基础同步时间。

所有节点安装相关组件:yum install ntp。配置开机启动:chkconfig ntpd on,检查是否设置成功:chkconfig --list ntpd其中2-5为on状态就代表成功。

主节点配置

在配置之前,先使用ntpdate手动同步一下时间,免得本机与对时中心时间差距太大,使得ntpd不能正常同步。这里选用103.226.213.30作为对时中心,ntpdate -u 103.226.213.30。
vi /etc/ntp.conf

  #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

    server 103.226.213.30 prefer

配置文件完成,启动服务:service ntpd start

配置ntp客户端(所有子节点)

  同上 ,不过这里是主节点的主机名或者ip

    server node5

  启动服务:service ntpd start

检查是否成功,用ntpstat命令查看同步状态,出现以下状态代表启动成功:

synchronised to NTP server () at stratum 2

time correct to within 74 ms

polling server every 128 s

这里可能出现同步失败的情况,一般需要等待5-10分钟才可以正常同步。

二,Cloudera Manager安装与集群配置

1,主节点安装CM

解压:tar xzvf cloudera-manager*.tar.gz将解压后的cm-5.13.1和cloudera目录放到/opt目录下。

建立数据库:

  将下载好的mysql-connector-java-5.1.17.jar放到/opt/cm-5.13.1/share/cmf/lib/

初始化数据库:

   /opt/cm-5.13.1/share/cmf/schema/scm_prepare_database.sh mysql cm -hnode1 -uroot -p123456 --scm-host node1 scm scm scm

  参数分别是:数据库类型 数据库名称 -h数据库主机名 -u数据库用户名 -p数据库密码--scm-host cmserver主机名 scm scm scm

2.agent配置

vi /opt/cm-5.13.1/etc/cloudera-scm-agent/config.ini

  server_host为主节点的主机名。

同步Agent到其他所有节点: scp -r /opt/cm-5.13.1 root@node2:/opt/

在所有节点创建cloudera-scm用户

  useradd --system --home=/opt/cm-5.13.1/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm

3.准备Parcels,用以安装CDH5

将CHD5相关的Parcel包放到主节点的/opt/cloudera/parcel-repo/目录中

4.启动

主节点:/opt/cm-5.13.1/etc/init.d/cloudera-scm-server start启动服务端。

所有节点:/opt/cm-5.13.1/etc/init.d/cloudera-scm-agent start启动Agent服务。

我们启动的其实是个service脚本,需要停止服务将以上的start参数改为stop就可以了,重启是restart。

5.CDH5安装配置

这时可以通过浏览器访问主节点的7180端口测试一下了,默认的用户名和密码均为admin:

各个Agent节点正常启动后,可以在当前管理的主机列表中看到对应的节点。选择要安装的节点,点继续

继续,如果配置本地Parcel包无误,那么下图中的已下载,应该是瞬间就完成了,然后就是耐心等待分配过程就行了,这个过程的速度就取决于节点之间的传输速度。

下一步主机检查,遇到以下问题:

第一个警告:

Cloudera 建议将 /proc/sys/vm/swappiness 设置为 10。当前设置为 60。

   echo 10 > /proc/sys/vm/swappiness

这样操作重启机器还是还原,要永久改变

  vim   /etc/sysctl.conf
    vm.swappiness=10

第二个警告,提示执行命令:

   echo never > /sys/kernel/mm/transparent_hugepage/defrag

    echo never > /sys/kernel/mm/transparent_hugepage/enabled

执行完毕,重启后,警告依然,暂时不处理

安装服务

注意:一般选择自定义服务,手动在CM管理页面一个一个添加

分步安装服务步骤为:

点击页面上Cloudera MANAGER,回到主节点页面

出现cluster1群集1,点击下拉,选择“添加服务” 

HDFS,Hive, HUE,Oozie, YARN, ZOOKEEPER是核心Hadoop的几个服务,分别安装,由于这些节点存在依赖关系,需注意先后顺序(当然,安装时CM会警告),顺序是: 
Zookeeper, hdfs, yarn, hive, oozie, hue

注意:在安装hive, hue和oozie时,要将MySQL驱动jar拷贝到相应位置

 cp /home/hadoop/mysql-connector-java-5.1.17.jar  /opt/cloudera/parcels/CDH-5.13.0-1.cdh5.13.1.p0.34/lib/hive/lib
 cp /home/hadoop/mysql-connector-java-5.1.17.jar  /var/lib/oozie

查看日志

CM虽然配置麻烦,但日志齐全,每个操作,都能找到相应的运行日志,日志对于配合、调试和查看任务进度都有很大的帮助

6.Q&A

hdfs

1,Hadoop Datanode节点无法启动(All directories in dfs.data.dir are invalid)

这是data目录没有权限
解决:chmod -R 777 dfs

2.执行 hadoop jar时候  输出目录可能需要手动添加和设置权限,否则执行时候会提示

NFS service is already running on this host. Please stop the NFS service running on this host before attempting to start the NFS Gateway role
解决:
  service nfs stop
  service nfs status

3.Permission denied: user=root, access=WRITE, inode="/":hdfs:supergroup:drwxr-xr-x

权限问题,需要修改目标操作的权限,或者修改操作的用户。
可以用 hdfs dfs -ls /     查看各个目录的所属用户
解决:如果目录或文件所属用户不对,需要修改: hdfs dfs -chown -R  user:group   目标文件
hive

1,Version information not found

解决:
打开页面>hive.metastore.schema.verification 设置为false 去掉勾选

2,javax.jdo.JDODataStoreException: Required table missing : "`VERSION`" in Catalog "" Schema "". DataNucleus requires this table to perform its persistence operations. Either your MetaData is incorrect, or you need to enable "datanucleus.autoCreateTables"

解决:
打开页面>datanucleus.autoCreateSchema 设置为true就是勾选就可以
hue 

Unexpected error. Unable to verify database connection

 查看日志报错是:ImportError: libxslt.so.1: cannot open shared object file: No such file or directory
原因是centos缺少库文件,执行如下命令即可
解决:
yum install krb5-devel cyrus-sasl-gssapi cyrus-sasl-deve libxml2-devel libxslt-devel mysql mysql-devel openldap-devel python-devel python-simplejson sqlite-devel

CDH5.13.1安装的更多相关文章

  1. CDH5.13.3安装手册

    Server端需要打开端口 7180 7182 选址正确的版本,cdh版本不要高于cm版本 CM下载地址 http://archive.cloudera.com/cm5/cm/5/cloudera-m ...

  2. CDH5.11..0安装

    1.参考: http://www.cnblogs.com/codedevelop/p/6762555.html grant all privileges on *.* to 'root'@'hostn ...

  3. centos7.5搭建cdh5.13.0

    序言 本文集群搭建为三台机器,cdh版本为5.13.0,以下是安装过程中所用到的软件包等,可以自行下载.一.前期准备1.安装环境 系统:centos7.5/最小安装版本/64位 内存:主节点 --&g ...

  4. hibench 对CDH5.13.1进行基准测试(测试项目hadoop\spark\)HDFS作HA高可靠性

    使用CDH 5.13.1部署了HADOOP集群之后,需要进行基准性能测试. 一.hibench 安装 1.安装位置要求. 因为是全量安装,其中有SPARK的测试(SPARK2.0). 安装位置在SPA ...

  5. centos 7 cloudera-manager5.16.2,CDH5.16.2安装升级spark2.4.0

    1.在已经安装好系统的linux服务器上关闭selinux和iptables 2.在所有linux服务器上配置ntp服务并设置ntp时间同步 3.在所有linux服务器上安装好cm和cdh版本所需要对 ...

  6. 【7集iCore3基础视频】7-6 Quartus II 13.1安装

    Quartus II 13.1安装:高清源视频:链接:http://pan.baidu.com/s/1csVRMA 密码:lkth 视频勘误:http://pan.baidu.com/s/1mhCIq ...

  7. MySQL-5.6.13免安装版配置方法

    MySQL-5.6.13免安装版配置方法   1. 下载MySQL Community Server 5.6.13 2. 解压MySQL压缩包    将以下载的MySQL压缩包解压到自定义目录下,我的 ...

  8. Ubuntu 13.04安装搜狗输入法

    Ubuntu 13.04安装搜狗输入法 [日期:2013-07-08] 来源:Linux公社  作者:LinuxIDC.com [字体:大 中 小]     目标:在Ubuntu 13.04以及基于U ...

  9. Cloudera Manager和CDH5.8离线安装

    https://blog.csdn.net/zzq900503/article/details/52982828 简介 我们在上篇文章中已经了解了CDH,为了后续的学习,我们本章就来安装CDH5.8. ...

随机推荐

  1. Acer笔记本蓝牙功能不可用

    在电脑运行过程中,本应该如下所存在的蓝牙图标不存在了: 打开设置,本应该可以选择开关的蓝牙开关按钮也不存在了: 电脑的蓝牙功能无法使用: 处理方法: 在C:\windows\sysytem32\文件夹 ...

  2. [Day4] Nginx Http模块一

    之前介绍了Nginx作为静态资源服务器的用法,​除此之外,Nginx更多的场景是作为反向代理服务器,提高网站的并发和可用性.下面几节着重说一下作为反向代理的http模块,并且了解一些Nginx的架构. ...

  3. matlab中disp函数的简单用法

    输出数组类型的数据,也可以把string类型的数据看做数组输出 输出数字 >> num = ; >> disp(num) 输出字符串 >> disp('this i ...

  4. Trees in a Wood UVA - 10214 欧拉函数模板

    太坑惹,,,没用longlong各种WA #include <iostream> #include <string.h> #include <cstdio> #in ...

  5. UVA1416/LA4080 Warfare And Logistics

    题目大意:有N个点,M条路,如果两条路不连通的话,就将这两条路的距离设置为L 现在要求你求出每两点之间的最短距离和 接着要求 求出炸断 给出的M条路中的一条路后,每两点之间的最短距离和的最大值(翻译来 ...

  6. linux下C++遍历文件夹下的全部文件;Windows/Linux下C++批量修改文件名,批量删除文件

    Linux下 C++遍历目录下所有文件 rename(image_path.c_str(), image_path_new.c_str()); remove(image_path_move.c_str ...

  7. bzoj 4241 历史研究——分块(区间加权众数)

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4241 套路:可以大力预处理,如果求区间加权众数,可以预处理i~j块(或 j 位置)的最大值, ...

  8. memcache 拓展

    需要安装Libevent.memcached.memcache. 参考网址:https://www.cnblogs.com/hejun695/p/5369610.html 启动:/usr/local/ ...

  9. nginx 限制ip的请求频率

    需要注意,这个很容易误伤 还需要结合别的办法进行共同配置 总是有人很清闲的扫我的网站 ,所以要限制一下了 先来看看没有限制的时候,并发10 100次 服务器一直在正常响应  限制一下,之后再测试一下 ...

  10. CSS的color属性并非只能用于文本显示

    虽然CSS并不是一种很复杂的技术,但就算你是一个使用CSS多年的高手,仍然会有很多CSS用法/属性/属性值你从来没使用过,甚至从来没听说过. 对于CSS的color属性,相信所有Web开发人员都使用过 ...