资讯专栏INFORMATION COLUMN

CDH5.5.1环境部署

IT那活儿 / 644人阅读
CDH5.5.1环境部署
点击上方“IT那活儿”公众号,关注后了解更多内容,不管IT什么活儿,干就完了!!!

  

Hadoop采用的是Cloudera公司(hadoop的分发商)的CDH5版本。操作系统为Centos 6.5版本。

Hadoop安装采用YUM安装的方式。由于大多数安装hadoop的设备都在内网环境中,所以需要配置自定义的YUM软件源。



 版本说明


操作系统版本:Centos 6.5   64位
hadoop版本:Cloudera的CDH5



 部署规划


Hadoop是一个分布式的系统,由多台设备共同提供服务。

每台设备上需要安装不同的hadoop服务。部署规划阶段根据hadoop服务特点和设备配置情况,对hadoop服务的安装情况作出整体规划,将hadoop相应的服务安装在合适的设备上。

上图展示了hadoop的服务以及运行过程中需要的系统服务。

  • 安装服务器:安装过程采用CDH自动安装的方式,该方式需要设置自定义YUM软件源。安装服务器是自定义YUM软件源服务器,在设备上需要启动http服务,其他设备从该设备通过yum安装的方式获取安装介质。只在安装或者升级的过程中使用安装服务器。安装服务器上需要有磁盘空间存放安装介质,安装介质大约需要4G的磁盘空间。
  • 管理监控服务:在安装时控制安装的过程;hadoop运行时负责hadoop维护管理和系统监控。
  • NameNode:hadoop分布式文件系统的主控服务。该服务需要较大的内存配置的设备。
  • SecondaryNameNode或者Standby NameNode:SecondaryNameNode是NameNode节点元数据合并服务,可以和NameNode安装在一台设备上也可以在多带带的设备上安装;Standby NameNode是NameNode在HA方式下的主备服务,需要安装在与NameNode不同的设备上。Standby NameNode需要与NameNode同样的设备配置。
  • ResourceManager:Hadoop计算任务的控制服务。需要在cpu配置较好的设备上运行。
  • Standby ResourceManager:在ResourceManager的HA的模式下作为ResourceManager的主备服务,需要安装在与ResourceManager不同的设备上。需要和ResourceManager同样的设备配置。
  • DataNode:hadoop分布式文件系统存储数据的服务;分布式计算任务中执行计算任务的服务。是hadoop的实际工作节点。该节点需要挂载多个大容易的磁盘用来存储数据文件。
  • NFS Server:为了防止NameNode元数据的损坏而导致的数据丢失,将元数据在NFS中进行备份存储。NFS不是必须,如果将元数据在NFS上备份存储会防止数据丢失。
  • DNS Server:hadoop使用主机名进行通信,需要实现主机名到IP地址的映射。可以使用DNS Server完成该功能;也可以编辑/etc/hosts文件进行配置。
  • NTP Server:各个安装hadoop服务设备的系统时间需要保持一致。使用时钟同步服务完成该功能。

 设备使用方式:

  • NFS Server和DNS Server可以不使用,不使用不会影响hadoop正常运行。NFS Server会防止数据丢失;DNS Server会降低配置的复杂度,尤其在设备数量较多的时候。
  • DataNode所在设备需要挂载多个磁盘,提高数据写入和读取数据。DataNode不要和NameNode、SecondaryNameNode、ResourceManager、Standby NameNode、Standby ResourceManager安装在同一台设备上。
  • NameNode、SecondaryNameNode、ResourceManager可以安装在一台设备上。这样会消耗设备较多的硬件资源。
  • 使用NameNode的HA方式就不需要安装SecondaryNameNode。Standby NameNode不能和NameNode安装在一台设备上。
  • ResourceManagerHA方式中Standby ResourceManager不能和ResourceManager安装在一台设备上。
  • 安装服务器和管理监控服务可以和其他服务共享一台设备。
此时应该对hadoop的安装情况作出规划。hadoop一旦被部署完成,结构的调整将会很难进行而且有一定的风险。



 环境准备


1. 安装操作系统

在运行hadoop服务的每台设备上安装linux操作系统。操作系统使用Centos6.5的64位操作系统。所有设备的操作系统要求一致。
操作系统安装完成后,对设备进行网络配置,使得各个设备之间的网络通畅。使用IPv4的IP地址格式。
在设备上挂载磁盘。在DataNode设备上挂载大容量的磁盘,最好一个设备上挂载多块磁盘。最好能够在NameNode、SecondaryNameNode设备挂载NFS磁盘系统。管理监控服务也许一定的磁盘空间,大约需要50G的磁盘空间。
操作的设备:

操作系统的介质包需要部署人员去下载,介质包是:

2. 设置主机名称

Hadoop服务是通过主机名称进行网络通讯的。安装hadoop服务的设备都需要设置主机名称。
编辑/etc/sysconfig/network文件的HOSTNAME设置主机名。
主机名中不能使用下划线(_)
操作的设备:

3. 时钟同步设置

hadoop服务的设备之间要保持时间一致。设置统一时钟同步服务。
每个设备上要启动ntpd服务,启动ntpd之前,每个设备先做一次手动的同步操作。
操作的设备:

4. 关闭防火墙

hadoop服务安装的所有设备上都要关闭防火墙设置。
service iptables stop
chgconfig iptables off
操作的设备:

5. 关闭SeLinux

hadoop服务的所有设备上关闭SeLinux。
编辑/ect/selinux/config文件。
操作的设备:

6. 设置主机路由

在hadoop服务的设备上设置主机名与IP地址路由,确保任意两个设置之间能够通过主机名能够进行访问。
编辑/etc/hosts文件。
或者可以选择设置设备的DNS为指定的DNS Server。建议使用DNS Server设置设备的DNS路由。
操作的设备:

7. 设置root密码

安装过程中使用root用户安装,需要设置所有设备root用户的密码为相同的密码。该密码是在安装的过程中使用,如果结束后可以修改该密码。
操作的设备:

8. 设置自定义YUM软件源服务

在安装服务器上设置自定义YUM软件源。以下操作在安装服务器上进行:

  • 安装系统组件:createrepo。在操作系统安装介质中的Packages目录下找到createrepo-0.9.9-18.el6.noarch安装包使用rpm命令安装。
  • 将安装介质中cdh5目录复制到设备的/var/www/html目录下面。
  • 将安装介质中的cmd5目录复制到设备的/var/www/html目录下面。
  • 将操作系统安装介质的Packages目录复制到/var/www/html/os目录下面。Packages目录是操作系统的介质包CentOS-6.5-x86_64-bin-DVD1.iso 中的Packages:
  • 进入/var/www/html/cdh5目录,执行命令
    createrepo
  • 进入/var/www/html/cm5目录,执行命令
    createrepo 
  • 进入/var/www/html/os目录,执行命令
    createrepo
  • 启动http服务:service httpd start

9. 设置自定义YUM软件源

在hadoop所有服务设备上设置安装服务器为自定义YUM软件源。
1)进入/etc/yum.repos.d目录,创建hadoop.repo文件,编辑该文件:
2)将/etc/yum.repos.d目录中的其它的.repo文件(hadoop.repo之外的文件)删除或者后缀名改为.bak
操作的设备:

10. 重启设备

将所有进行设置的设备重新启动,让设置生效。
如果安装服务器上的http服务没有设置开机启动,还需要在安装服务器上启动http服务:service httpd start



 Hadoop部署


1. 安装Cloudera Manager

将介质中cloudera-manager-installer.bin文件复制到安装监控服务器的/opt目录中,然后执行下面的命令:
./cloudera-manager-installer.bin --skip_repo_package=1
执行命令后,会出现Cloudera Manager的安装向导:
选择进行安装:
Cloudera Manager安装结束后,出现提示界面。记下提示中的URL。

2. 安装部署CDH

在浏览器地址栏中输入Cloudera Manager提示界面中的URL:http://192.168.XX.35:7180
使用admin用户登录Cloudera Manager,admin用户的初始密码为:admin
选择Cloudera Express,继续。
指定集群中hadoop使用的所有主机。输入主机名或者IP地址,每行一个,然后点击搜索:
选择安装介质包。
  • 选择方法:使用数据包。
  • CDH版本:自定义存储库,输入自定义YUM软件源的cdh的url。
  • Clouera Manager Agent:自定义存储库,输入自定义YUM软件源的cm的url。
使用root用户安装,所有主机的root用户接受相同密码,输入root用户的密码。
介质的安装阶段,时间较长需要等待一段时间。

选择安装的服务类型。自定义服务中选择HDFS和YARN。
选择主机设备将被安装的服务。根据前期的部署规划将hadoop服务安装在对应的主机设备中。其中Cloudera Management Service安装在安装监控服务器中。
使用嵌入式数据库,用来存储Cloudera Manager的元数据。
集群配置的Cloudera Management Service的配置使用默认即可。

HDFS和YARN配置:

  • DataNode数据目录:配置数据的存储目录。如果是多个磁盘,配置多个路径。路径之间使用逗号(,)分隔。
  • NameNode数据目录:是NameNode的元数据的保存目录,可以是多个目录。每个目录中写入相同的数据用于备份。多个目录路劲使用逗号分隔。多个目录中最好有一个是NFS系统的目录用于备份。
  • HDFS检查点目录:是SecondaryNameNode用户合并元数据的工作目录。也可以是多个目录,多个目录路径是有逗号分隔。
  • NodeManager本地目录列表:MapReduce计算的中间结果的存储目录。可以配置多个目录多个目录路径是有逗号分隔。
注意:上述配置的路径会在多个设备上创建相同的目录,需要先在每个设备上创建相同目录,而且创建的目录能够挂载到存储。
集群首次运行启动相关服务。
安装完成。

本文作者:高智飞(上海新炬王翦团队)

本文来源:“IT那活儿”公众号

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/129357.html

相关文章

  • TOP100summit分享实录 | JFrog高欣:Kubernetes is hard!JFro

    摘要:本文内容节选自由主办的第七届,架构师高欣分享的的实践实录。当然,在部署完成后,我们要做一个监测以便掌握它的运行状况。规划配置运行环境在正式部署前,还要考虑如何规划并配置好运行环境。在使用部署时,可以利用这些命令做验证,检验部署是否正常。 showImg(https://segmentfault.com/img/bVblRHj?w=2880&h=1920); 本文内容节选自由msup主办...

    邹强 评论0 收藏0
  • 采用镜像部署LNMP 环境操作步骤

    摘要:下表列出了镜像部署和手动部署两种方式的特点。如果您购买的实例已经开始运行,但是您想使用镜像市场中的镜像重新部署环境,操作步骤如下登录管理控制台。单击镜像市场,然后单击从镜像市场选择含操作系统。您成功使用镜像部署了环境。LNMP分别代表Linux、Nginx、MySQL、PHP。本文介绍如何在ECS实例上使用镜像部署LNMP环境。 您可选用以下几种方式在ECS实例上部署LNMP环境: 镜像...

    Backache 评论0 收藏0
  • walle-瓦力自动化部署工具

    摘要:项目地址瓦力,上线开源两个月,目前已支持超过十家企业线上部署使用,每周更新一个版本,持续带来新特性。支持开放接口支持第三方了解更多项目地址瓦力,官方主页瓦力。 1 Git Flow 一般而言,软件开发模型有常见的瀑布模型、迭代开发模型、以及最近出现的敏捷开发模型等不同的模型。每种模型有各自应用场景,Git Flow是构建在Git之上的一个组织软件开发活动的模型,Git Flow重点解...

    Allen 评论0 收藏0
  • 现代软件开发流程-by 12-Factor

    摘要:将开发环境和生产环境的差异降至最低,并使用持续交付实施敏捷开发。可以在工具架构和开发流程不发生明显变化的前提下实现扩展。我们的初衷是分享在现代软件开发过程中发现的一些系统性问题,并加深对这些问题的认识。 简介 如今,软件通常会作为一种服务来交付,它们被称为网络应用程序,或软件即服务(SaaS)。12-Factor 为构建如下的 SaaS 应用提供了方法论: 使用标准化流程自动配置,从...

    draveness 评论0 收藏0

发表评论

0条评论

IT那活儿

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<