http://www.aboutyun.com/thread-9219-1-1.html  非常强大的博客 ! ! !

1, cdh简介

CDH (Cloudera’s Distribution, including Apache Hadoop),是hadoop众多分支中的一种,由Cloudera维护,基于稳定版本的Apache Hadoop构建,并集成了很多补丁,可直接用于生产环境。 
Cloudera Manager则是为了便于在集群中进行Hadoop等大数据处理相关的服务安装和监控管理的组件,对集群中主机、Hadoop、HiveSpark等服务的安装配置管理做了极大简化。

目前集群的乱象:

  1, 版本管理混乱

  2, 部署升级复杂

  3, 兼容性差

  4, 安全性低

Hadoop的发行版:

   apache hadoop

  CDH: 是hadoop分支的一种, 由Cloudera维护, 基于web的用户界面

  HDP: 一个虚拟机

  MapR: linux指令

  EMR: 集群脱管方案, 应用较少

Cloudera的CDH和Apache的Hadoop的区别

  目前而言,不收费的Hadoop版本主要有三个(均是国外厂商),分别是:Apache(最原始的版本,所有发行版均基于这个版本进行改进)、Cloudera版本(Cloudera’s Distribution Including Apache Hadoop,简称CDH)、Hortonworks版本(Hortonworks Data Platform,简称“HDP”),对于国内而言,绝大多数选择CDH版本,CDH和Apache版本主要区别如下:  

() CDH对Hadoop版本的划分非常清晰,只有两个系列的版本,分别是cdh3和cdh4,分别对应第一代Hadoop(Hadoop 1.0)和第二代Hadoop(Hadoop 2.0),相比而言,Apache版本则混乱得多;比Apache hadoop在兼容性,安全性,稳定性上有增强。  

()CDH3版本是基于Apache  hadoop  0.20.2改进的,并融入了最新的patch,CDH4版本是基于Apache hadoop .X改进的,CDH总
是并应用了最新Bug修复或者Feature的Patch,并比Apache hadoop同功能版本提早发布,更新速度比Apache官方快。 ()安全 CDH支持Kerberos安全认证,apache hadoop则使用简陋的用户名匹配认证 ()CDH文档清晰,很多采用Apache版本的用户都会阅读CDH提供的文档,包括安装文档、升级文档等。 ()CDH支持Yum/Apt包,Tar包,RPM包,CM安装,Cloudera Manager三种方式安装,Apache hadoop只支持Tar包安装。
http://www.aboutyun.com/thread-9225-1-1.html

cdh结构图:

cdh优点:

  版本清晰

  版本更新速度快

  支持Kerberos认证

  文档清晰

  支持多种安装方式 (Cloudera manager)

简单来说, cdh是为了简化集群部署, 最优升级方案,

http://www.aboutyun.com/thread-6788-1-1.html

2, Cloudera manager

是一个管理cdh端到端的应用, 作用: 管理, 监控, 诊断, 集成

server功能:

  客户端服务器和应用服务器键的逻辑

  软件安装和配置

  各项服务的管理, 启动停止, 监控整个集群

agent:

  每个服务进程管理

  监控主机

  数据库, 为region-server提供数据库支撑

management_server:

  监控集群状态

  生成报表

3, cdh搭建前期准备

1, 准备3台虚拟机

  master占用会非常大, 建议6g内存以上, 其他2台2g内存即可

  修改主机名: /etc/sysconfig/network,   为 node1, node2, node3

2, 设置3台机器的免密码登录

  3台机器分别设置, 同时对自己免密码登录

  http://www.cnblogs.com/wenbronk/p/6628993.html

3, 防火墙关闭

  service iptables stop
  chkconfig iptables off

4, 安装jdk, 这儿使用的 jdk1.7

  JDK一定要解压到/usr/java/default下面,即JAVA_HOME= /usr/java/default, 否则CDH的后续安装将会报错

环境变量配置:

export JAVA_HOME=/usr/java/default
export JRE_HOME=/usr/java/default/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$PATH

5, 设置3台机器的时间同步   

ntpdate -u ntp.api.bz

6, 设置selinux关闭, 重启生效

  vim /etc/selinux/config
  SELINUX=disabled (原始值为: enforcing)

7, 安装mysql ( 本次安装node1, 可搭建专门mysql服务器, 版本5.5 , 版本对应关系可查官网 )

  http://www.cnblogs.com/wenbronk/p/6840484.html

8, 安装3rd 依赖包

3, 内核修改:  (所有节点)

1, 句柄设置

  通过 ulimit -n 查看文件句柄,

vim /etc/security/limits.conf

# 添加如下内容
* soft nproc
* hard nproc
* soft nofile
* hard nofile

然后

vim /etc/security/limits.d/-nproc.conf

# 修改为:
* soft nproc
root soft nproc unlimited

2, 修改内核参数

# echo  > /proc/sys/vm/swappiness
# echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag

3, 修改编码集

# vim /etc/sysconfig/i18n
LANG="en_US.UTF-8"
SYSFONT="latarcyrheb-sun16"

4, cloudera manager的安装

1, 解压安装包 (3台机器)

mkdir /opt/cloudera-manager
tar -zxvf cloudera-manager*.tar.gz -C /opt/cloudera-manager

2, 创建用户 (所有节点)

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

3, 配置CM Agent (所有 agent 端)

cd /opt/cloudera-manager/cm-5.4.3/etc/cloudera-scm-agent
vim ./config.ini # 修改 server_host=node1

4, 配置 CM server 数据库(master 或者单独的服务器)

默认到 usr/share/java/ 目录下寻找jar, 包名一定为  mysql-connector.jar

 cp ~/cloudera-manager/mysql-connector-java-5.1.-bin.jar /usr/share/java/mysql-connector-java.jar

创建支撑库:

grant all on *.* to 'scm'@'%' identified by 'scm' with grant option;

/opt/cloudera-manager/cm-5.4.3/share/cmf/schema/scm_prepare_database.sh mysql temp -h 192.168.208.110 -uroot -p123 --scm-host 192.168.208.110 scm scm scm

格式: 数据库类型, 数据库名, host,  用户名, 密码, cm Server 服务器, 最后3个: 默认账户及数据库名

5, 修复安装包 bug, BUG会导致在集群安装YARN时失败 ( 所有节点)

# vim /opt/cloudera-manager/cm-5.4.3/lib64/cmf/agent/src/cmf/util.py    --该文件第365行
pipe = subprocess.Popen(['/bin/bash','-c',". %s; %s; env"%(path, command)],
stdout=subprocess.PIPE, env=caller_env)
改成
pipe = subprocess.Popen(['/bin/bash','-c',". %s; %s; env | grep -v { | grep -v }"%(path, command)],
stdout=subprocess.PIPE, env=caller_env)

6, 创建 Parcel 目录

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

因为安装时 需要存放 cdh的安装目录, 默认分发目录就是 parcels

6, 制作 CDH 本地源, 不制作需要从云下载, 非常非常慢...

-rw-r--r--  root root  Mar   : CDH-5.4.-.cdh5.4.0.p0.-el6.parcel
-rw-r--r-- root root Mar : CDH-5.4.-.cdh5.4.0.p0.-el6.parcel.sha
-rw-r--r-- 1 root root      42625 Mar  5 17:02 manifest.json

将其拷贝到 /opt/cloudera/parcel-repo

cp -v ~/cloudera-manager/CDH-5.4.-.cdh5.4.0.p0.-el6.parcel* /opt/cloudera/parcel-repo/

cp -v ~/cloudera-manager/manifest.json /opt/cloudera/parcel-repo/

注意文件名:!!!!!!!!!!!!!!!!!!!!!!

7, 启动 server, agent,

cd /opt/cloudera-manager/cm-5.4./etc/init.d
# 先启动server, 等server启动后, 在启动agent
./cloudera-scm-server start ./cloudera-scm-agent start

启动成功后, 在网页可访问: cdh-01:7180

8, 日志查看

在 /opt/cloudera-manager/cm-5.4.3/log 下可看

注意, 如果启动过程中终止, 需要把前面的重新来一遍

5, 界面设置

1, 网页访问: 192.168.208.110:7180

2, 选择版本

3, 继续, 继续, 选择本地源的版本, 5.4.0

4, 选择安装的主机

5, 集群安装

6, 检验正确性,

此步如果没有之前的内核数据修改, 会报错, 修改了即可

echo  > /proc/sys/vm/swappiness

7, 选择需要的服务

8, 集群设置, 默认即可

9, 数据库设置, 需要提前创建 hive库和 Oozie库

建库脚本:

create database hive default character set utf8;
grant all on hive.* to 'hive'@'%' identified by 'hive'; create database oozie default character set utf8;
grant all on oozie.* to 'oozie'@'%' identified by 'oozie';

最后等待安装结束

关于安装错误, 卸载的: http://blog.csdn.net/wulantian/article/details/42706777

33-hadoop-cdh搭建coudemanager安装的更多相关文章

  1. Hadoop环境搭建2_hadoop安装和运行环境

    1 运行模式: 单机模式(standalone):  单机模式是Hadoop的默认模式.当首次解压Hadoop的源码包时,Hadoop无法了解硬件安装环境,便保守地选择了最小配置.在这种默认模式下所有 ...

  2. Ubuntu中Hadoop环境搭建

    Ubuntu中Hadoop环境搭建 JDK安装 方法一:通过命令行直接安装(不建议) 有两种java可以安装oracle-java8-installer以及openjdk (1)安装oracle-ja ...

  3. 2.2、CDH 搭建Hadoop在安装(安装Java Development Kit)

    第2步:安装Java Development Kit 要安装Oracle JDK,您可以使用Cloudera Manager安装Cloudera提供的版本,也可以直接安装Oracle的其他版本. 继续 ...

  4. 虚拟机搭建和安装Hadoop及启动

    马士兵hadoop第一课:虚拟机搭建和安装hadoop及启动 马士兵hadoop第二课:hdfs集群集中管理和hadoop文件操作 马士兵hadoop第三课:java开发hdfs 马士兵hadoop第 ...

  5. 马士兵hadoop第一课:虚拟机搭建和安装hadoop及启动(转)

    马士兵hadoop第一课:虚拟机搭建和安装hadoop及启动 马士兵hadoop第二课:hdfs集群集中管理和hadoop文件操作 马士兵hadoop第三课:java开发hdfs 马士兵hadoop第 ...

  6. CDH搭建Hadoop分布式服务器集群(java新手小白)

    1首先对于一个java还白的小白,先理解CDH与Hadoop的关系 一.Hadoop版本选择. Hadoop大致可分为Apache Hadoop和第三方发行第三方发行版Hadoop,考虑到Hadoop ...

  7. Hadoop集群搭建-05安装配置YARN

    Hadoop集群搭建-04安装配置HDFS  Hadoop集群搭建-03编译安装hadoop Hadoop集群搭建-02安装配置Zookeeper Hadoop集群搭建-01前期准备 先保证集群5台虚 ...

  8. Hadoop集群搭建-04安装配置HDFS

    Hadoop集群搭建-05安装配置YARN Hadoop集群搭建-04安装配置HDFS  Hadoop集群搭建-03编译安装hadoop Hadoop集群搭建-02安装配置Zookeeper Hado ...

  9. Hadoop集群搭建-02安装配置Zookeeper

    Hadoop集群搭建-05安装配置YARN Hadoop集群搭建-04安装配置HDFS  Hadoop集群搭建-03编译安装hadoop Hadoop集群搭建-02安装配置Zookeeper Hado ...

随机推荐

  1. 2018-03-13 HTTP Socket TCP学习

    协议学习: https://www.jianshu.com/p/a5410f895d6b https://www.jianshu.com/p/42260a2575f8 实际例子: nano实际例子,和 ...

  2. leetcode - [6]Binary Tree Postorder Traversal

    Given a binary tree, return the postorder traversal of its nodes' values. For example:Given binary t ...

  3. POJ3692 Kindergarten

    Kindergarten Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 6882   Accepted: 3402 Desc ...

  4. html5 实现qq聊天的气泡效果

    教程:http://m.blog.csdn.net/blog/yhc13429826359/38778337 写的很好.自己实现的时候,由于img float:left,会脱离文档流,导致结构混乱. ...

  5. 工作随笔——elasticsearch数据冷热分离、数据冷备

    概述: 适合日志类型的数据存储方案.即当日数据写入,历史数据只读. 节省部分硬件成本.热数据采用更好的硬件. 环境: 已有6个ES节点,使用docker-compose方式搭建. es1:master ...

  6. idea创建第一个maven web项目

    一.打开idea,File->New->Project.选择Mavne,勾选Create from archtype,选择org.apache.maven.archtypes:maven- ...

  7. .NET Core下开源任务调度框架Hangfire的Api任务拓展(支持秒级任务)

    HangFire的拓展和使用 看了很多博客,小白第一次写博客. 最近由于之前的任务调度框架总出现问题,因此想寻找一个替代品,之前使用的是Quartz.Net,这个框架方便之处就是支持cron表达式适合 ...

  8. StriveEngine-UDP

    文章中的StriveEngine.dll版本为V3.9.0.0,源码下载请到 这里 UDP比TCP通信,就相对简单多了 先上代码,建立2个控制台程序,分别为SEUDP1,SEUDP2,其中SEUDP1 ...

  9. WPF实现窗体中的悬浮按钮

    WPF实现窗体中的悬浮按钮,按钮可拖动,吸附停靠在窗体边缘. 控件XAML代码: <Button x:Class="SunCreate.Common.Controls.FloatBut ...

  10. [leetcode.com]算法题目 - Same Tree

    Given two binary trees, write a function to check if they are equal or not. Two binary trees are con ...