一、简单介绍

CM:Cloudera Manager,Cloudera公司编写的一个CDH的管理后台,类似各CMS的管理后台。

CDH:Cloudera’s distribution,including Apache Hadoop,Cloudera公司制作的一个Hadoop发行版,集成了Hadoop及Hive等与Hadoop关系紧密的工具。

也经常直接用CM指代其本身和CDH。CM最大的好处是通过自动化的部署大大降低了Hadoop集群的部署工作量。

二、下载

本教程CM采用离线形式安装版本为当前最新的5.11.0,CDH也以离线形式安装

CM相关软件集:http://archive.cloudera.com/cm5/repo-as-tarball/5.11.0/cm5.11.0-centos6.tar.gz(根据自己操作系统下载)

CDH:http://archive.cloudera.com/cdh5/parcels/latest/(下载manifest.json及自己系统相应的.parcel和.sha1文件)

三、安装前的配置

3.1主机环境介绍

主机名 hadoop1 ip 192.168.220.136
内存 8G 用户 root

3.2修改主机名(root执行)

修改主机名为hadoop1,执行:hostname hadoop1
永久修改主机名,编缉/etc/sysconfig/network:将HOSTNAME值修改为hadoop1
写入/etc/hosts文件,在/etc/hosts追加行:192.168.220.136 hadoop1

3.3配置静态IP

本教程使用的是VM虚拟机,一般而言VM默认是DHCP但分配给各虚拟机的IP还是固定的,但在具体的安装实验中发现主机或CM重启后IP漂移,导致CM不能成功启动的现象。

编缉/etc/sysconfig/network-scripts/ifcfg-eth0,将BOOTPROTO由dhcp改为static,然后追加IP/网关IP/掩码三项内容(具体值根据自己情况修改):

IPADDR=192.168.220.136
GATEWAY=192.168.220.2
NETMASK=255.255.255.0
DNS1=114.114.114.11

然后重启网卡:service network restart

重启时可能会出现错误:Bringing up interface eth0:  Error: No suitable device found: no device found for connection 'System eth0'

首先可能使用的网卡不是eth0,使用ifconfig命行查看当前使用网卡(比如叫eth1)然后把配置文件名ifcfg-eth0改为ifcfg-eth1,把文件内的DEVICE值也改为eth1

然后可能mac地址也不对,用ifconfig命令查到的HWaddr值替换配置文件中的HWADDR的值。最后再重启即可

3.4关闭防火墙

CM会使用大量端口,这里选择直接关闭防火墙,如果你觉得防火墙配置没有问题可以不关

停止防火墙服务:service iptables stop

禁止开机自启动:chkconfig --level 35 iptables off

查看是否设置成功:chkconfig --list iptabels

3.5关闭selinux

selinux配置设置太严格,可能会与CM需要的功能相冲突,我们选择直接关掉

编缉/etc/selinux/config,将SELINUX的值修改为disabled(默认为enforcing)

重启操作系统生效(这里发须重启操作系统setenforce 0 CM是不承认的)

3.6安装配置MySQL

yum -y install mysql mysql-server mysql-devel    #安装MySQL
chkconfig mysqld on #开机自启动
service mysqld start #启动MySQL
mysql_secure_installation #配置数据库用户名密码
mysql -u root -p #登录MySQL
create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
grant all on *.* to root@"%" Identified by "toor" with grant option;
grant all on *.* to 'root'@'hadoop1' identified by 'toor' with grant option;
grant all privileges on *.* to 'root'@'hadoop1' identified by 'toor' with grant option;
flush privileges;

3.7配置ssh

su - hadoop
ssh-keygen -t rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

3.8配置时间同步

编缉/etc/ntp.conf,追加:

server .cn.pool.ntp.org
server .cn.pool.ntp.org
server .cn.pool.ntp.org
server .cn.pool.ntp.org
service ntpd restart
ntpdate -u .cn.pool.ntp.org
ntpq -p
ntpdc -np #如果有*开头的表示已同步

四、安装CM

tar -zxf cm5.11.0-centos6.tar.gz    #解压软件包
cd cm/5/RPMS/x86_64
yum localinstall --nogpgcheck *.rpm

4.2修正MySQL

下载mysql-connector-java:https://dev.mysql.com/downloads/connector/j/

cp mysql-connector-java-5.1.42-bin.jar /usr/share/cmf/lib
/usr/share/cmf/schema/scm_prepare_database.sh mysql scm -hhadoop1 -uroot -ptoor --scm-host hadoop1 scm scm scm
cp CDH-5.11.0-1.cdh5.11.0.p0.34-el6.parcel /opt/cloudera/parcel-repo/
cp CDH-5.11.0-1.cdh5.11.0.p0.34-el6.parcel.sha1 /opt/cloudera/parcel-repo/CDH-5.11.0-1.cdh5.11.0.p0.34-el6.parcel.sha
cp manifest.json /opt/cloudera/parcel-repo/
service cloudera-scm-agent stop
service cloudera-scm-server stop
service cloudera-scm-server start
service cloudera-scm-agent start
echo  > /proc/sys/vm/swappiness
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled

编缉/etc/profile,追加:

export JAVA_HOME=/usr/java/jdk1..0_67-cloudera
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

4.3开始安装

登录http://192.168.220.136:7180/cmf,默认用户名密码:admin/admin

cp mysql-connector-java-5.1.42-bin.jar /var/lib/oozie/mysql-connector-java.jar  #由于安装之前没有这些目录所以到这里才把jar包复制到这些目录
cp mysql-connector-java-5.1.-bin.jar /opt/cloudera/parcels/CDH/jars
cd /opt/cloudera/parcels/CDH/lib/hive/lib
ln -s ../../../jars/mysql-connector-java-5.1.-bin.jar mysql-connector-java-5.1.-bin.jar

CM+CDH安装教程(CentOS)的更多相关文章

  1. CM+CDH安装遇到的问题

    1.实在是在安装CDH的时候无法安装成功的话,只有重新启动了,下面给大家分享一个神器,按照这个脚本应该差不多就能卸载干净,然后重新安装,写一个脚本,内容如下,救命的神器呀: #!/bin/bash s ...

  2. FreeSWITCH1.6安装教程Centos

    介绍 FreeSWITCH是个网络电话转化器,相当与网络转换器,不过这个是用于IP电话,构建公司的电话通讯系统需要用该技术,因为按照官方文档无法成功安装. 本文目的:FreeSWITCH安装步骤 官方 ...

  3. 各种软件的安装教程centos mysql tomcat nginx jenkins jira 等等

    464  Star3,606 Fork 1,460 judasn/Linux-Tutorial 作者: https://github.com/judasn Linux-Tutorial/markdow ...

  4. docker安装教程-centos

    Docker 要求CentOS 系统的内核版本在3.10以上,查看本页面的前提条件来验证你的CentOS 版本是否支持Docker . 1.通过uname -r 命令查看你当前的内核版本 uname ...

  5. Linux+apache+mono+asp.net安装教程

    Linux+apache+mono+asp.net安装教程(CentOS上测试的) 一.准备工作: 1.安装linux系统(CentOS,这个就不多讲了) 2.下载所需软件 http-2.4.4.ta ...

  6. Alex 的 Hadoop 菜鸟教程: 第2课 hadoop 安装教程 (CentOS6 CDH分支 yum方式)

    原帖地址:http://blog.csdn.net/nsrainbow/article/details/36629339 我们这个教程是在 centos  上安装cdh的教程,并且使用的是yum方式. ...

  7. 4 cdh 5.12 centos 6.10三节点安装

    4 cdh 5.12  centos 6.10 三节点安装 [root@hadoop1 opt]# cat /etc/redhat-release CentOS release 6.10 (Final ...

  8. Greenplum 源码安装教程 —— 以 CentOS 平台为例

    Greenplum 源码安装教程 作者:Arthur_Qin 禾众 Greenplum 主体以及orca ( 新一代优化器 ) 的代码以可以从 Github 上下载.如果不打算查看代码,想下载编译好的 ...

  9. CentOS 7.2 安装教程

    1.CentOS 7.2 下载 下载地址: http://www.centoscn.com/CentosSoft/iso/2016/0601/7341.html 下载:CentOS-7-x86_64- ...

随机推荐

  1. Python 学习笔记 多进程 multiprocessing--转载

    本文链接地址 http://quqiuzhu.com/2016/python-multiprocessing/ Python 解释器有一个全局解释器锁(PIL),导致每个 Python 进程中最多同时 ...

  2. React Native 炫酷的动画库 实现任何AE动画 lottie-react-native

    lottie-react-native 传送门 1.npm i --save lottie-react-native 2.react-native link lottie-ios 3.react-na ...

  3. Youtube-dl 配置 使用方法 + 配合aria2 多线程 下载 + 配合 ffmpeg 自动合并分段视频

    首先介绍软件,Youtube-dl可以下载网页的视频,功能很强大. 但遇到分段视频不能合并,遇到视频音频分开播放的网站也没办法合并视频音频,所以 需要用ffmpeg来配合的合并视频.合并过程是无损的, ...

  4. node项目配置成nginx启动

    node项目配置成nginx启动 1.新建ant.conf upstream antNodeJs{ server 127.0.0.1:8000; keepalive 64; } server { li ...

  5. VC异常.简单抛,简单捕获

    1.ZC:始终没有找到,能像Delphi7里面那样能抛 字符串描述 的异常信息.(难道Delphi是这样做的?:在程序的最外围 套了一层异常捕获,然后在获取到异常之后,自己再将异常信息弹出来,我们写的 ...

  6. vue中 父子组件的通讯

    1.父组件可以使用 props 把数据传给子组件. 2.子组件可以使用 $emit 触发父组件的自定义事件 实例: 父组件: layout.vue  子组件:logform.vue 子组件: < ...

  7. 《剑指offer》第五十九题(队列的最大值)

    // 面试题59(二):队列的最大值 // 题目:给定一个数组和滑动窗口的大小,请找出所有滑动窗口里的最大值.例如, // 如果输入数组{2, 3, 4, 2, 6, 2, 5, 1}及滑动窗口的大小 ...

  8. HTML 标记 3 —— CSS

    <style type="text/css">body { background-color: #F00;} p{ color:#0F0; } .自己定义 { colo ...

  9. Qt网络应用开发初步

      应用层的网络协议,如HTTP/FTP/SMTP等简称"应用协议",他们运行在TCP/UDP之上,从Qt5开始,已经不再分别提供QHttp类,QFtp类,应用层的编程使用QNet ...

  10. 06-python-生成器、循环器

    生成器 生成器(generator)的主要目的是构成一个用户自定义的循环对象. 生成器的编写方法和函数定义类似,只是在return的地方改为yield.生成器中可以有多个yield.当生成器遇到一个y ...