设为首页 收藏本站
查看: 1497|回复: 0

[经验分享] 33-hadoop

[复制链接]

尚未签到

发表于 2017-12-17 18:21:50 | 显示全部楼层 |阅读模式
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、Hive、Spark等服务的安装配置管理做了极大简化。

目前集群的乱象:
  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版本主要区别如下:  

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

  
(
2)CDH3版本是基于Apache  hadoop  0.20.2改进的,并融入了最新的patch,CDH4版本是基于Apache hadoop 2.X改进的,CDH总  
是并应用了最新Bug修复或者Feature的Patch,并比Apache hadoop同功能版本提早发布,更新速度比Apache官方快。
  

  
(
3)安全 CDH支持Kerberos安全认证,apache hadoop则使用简陋的用户名匹配认证  

  
(
4)CDH文档清晰,很多采用Apache版本的用户都会阅读CDH提供的文档,包括安装文档、升级文档等。  

  
(
5)CDH支持Yum/Apt包,Tar包,RPM包,CM安装,Cloudera Manager三种方式安装,Apache hadoop只支持Tar包安装。  http://www.aboutyun.com/thread-9225-1-1.html
  


cdh结构图:
DSC0000.png


cdh优点:
  版本清晰
  版本更新速度快
  支持Kerberos认证
  文档清晰
  支持多种安装方式 (Cloudera manager)
  简单来说, cdh是为了简化集群部署, 最优升级方案,
  http://www.aboutyun.com/thread-6788-1-1.html

2, Cloudera manager
  是一个管理cdh端到端的应用, 作用: 管理, 监控, 诊断, 集成
DSC0001.png

  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>=.:$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 依赖包
DSC0002.png


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

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

vim /etc/security/limits.conf  

  
# 添加如下内容
  

*           soft  nproc  65535  
*           hard  nproc  63535
  
*           soft  nofile  65535
  
*           hard  nofile  65535
  

  然后
  

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

  
# 修改为:
  

*          soft    nproc     65535  
root       soft    nproc     unlimited
  


2, 修改内核参数
  

# echo 0 > /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.26-bin.jar /usr/share/java/mysql-connector-java.jar  

  创建支撑库:
  

grant all on *.* to 'scm'@'%'>
  /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-- 1 root root 1272629458 Mar  5 17:26 CDH-5.4.0-1.cdh5.4.0.p0.27-el6.parcel  

-rw-r--r-- 1 root root         41 Mar  5 17:03 CDH-5.4.0-1.cdh5.4.0.p0.27-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.0-1.cdh5.4.0.p0.27-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.3/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
DSC0003.png

  2, 选择版本
DSC0004.png

  3, 继续, 继续, 选择本地源的版本, 5.4.0
  4, 选择安装的主机
DSC0005.png

DSC0006.png

  5, 集群安装
DSC0007.png

  6, 检验正确性,
DSC0008.png

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

echo 0 > /proc/sys/vm/swappiness  

  7, 选择需要的服务
DSC0009.png

  8, 集群设置, 默认即可
  9, 数据库设置, 需要提前创建 hive库和 Oozie库
DSC00010.png

  建库脚本:
  

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

  最后等待安装结束
  关于安装错误, 卸载的: http://blog.csdn.net/wulantian/article/details/42706777

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-425088-1-1.html 上篇帖子: 【大数据系列】hadoop核心组件 下篇帖子: Hadoop学习笔记一(HDFS架构)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表