Hadoop系列之(三):使用Cloudera部署,管理Hadoop集群
1. Cloudera介绍
Hadoop是一个开源项目,Cloudera对Hadoop进行了商业化,简化了安装过程,并对hadoop做了一些封装。
根据使用的需要,Hadoop集群要安装很多的组件,一个一个安装配置起来比较麻烦,还要考虑HA,监控等。
使用Cloudera可以很简单的部署集群,安装需要的组件,并且可以监控和管理集群。
CDH是Cloudera公司的发行版,包含Hadoop,Spark,Hive,Hbase和一些工具等。
Cloudera有两个版本:
Cloudera Express 版本是免费的
Cloudera Enterprise (60天试用期)需要购买注册码
2. 安装Cloudrea Manager,部署Hadoop集群
2.1 安装方法
先安装Cloudrea Manager,再通过Cloudrea Manager在节点上安装Cloudrea Manager客户端,CDH,管理工具。
官方文档:
https://www.cloudera.com/documentation/manager/5-1-x.html
环境需求:
1. 关闭selinux
2. 各节点可以SSH登陆
3. 在/etc/hosts中添加各节点的主机名
2.2 安装Cloudrea Manager
可以通过官方的一键安装包,也可以通过yum或rpm安装。
下面介绍用官方的一键安装包安装。
本次安装环境为CnetOS 7,在3台机器上进行安装
test165 (cloudera manager server)
test166 (cloudera manager agent)
test167 (cloudera manager agent)
2.2.1 下载一键安装包
http://archive.cloudera.com/cm5/installer/latest/
下载最新版: cloudera-manager-installer.bin
2.2.2 安装cloudera manager
在test165上安装cloudera manager server,启动安装向导
# chmod a+x cloudera-manager-installer.bin
# ./cloudera-manager-installer.bin
出现下面画面
一路选择< Next > 和 < Yes >,开始安装。
需要下载JAVA和Cloudrea Manager,共600多MB,根据网络情况,会花一些时间。
出现下面页面,安装完成。
安装完成后,访问Cloudrea Manager的页面,用户名密码都是admin
http://IP或主机名:7180/
2.2.3 安装cloudera manager agent
登录Cloudrea Manager页面,选择要安装的版本,本次安装的是Cloudera Express
选择要安装CDH的主机,用主机名或IP搜索,本次是在三个节点上安装CDH
选择使用Parcel安装,选择CDH版本
选择安装JDK
提供SSH登录信息
开始安装JDK和cloudera manager agent
如果安装过程中,下载安装jdk 或 cloudera-manager-agent失败,可以在节点上手动安装,然后再在Cloudrea Manager上继续安装
# yum -y install jdk
# yum -y install oracle-j2sdk1.7
# yum -y install cloudera-manager-agent
下载Parcel并分配Parcel到各节点
Parcel包1.5G左右,需要一段时间,为了提高安装速度,可以先把包下载到Cloudrea Manager本地,配置本地源
parcel下载地址:
http://archive.cloudera.com/cdh5/parcels/5.5.1/
将下面文件拷贝到/opt/cloudera/parcel-repo/文件夹下
CDH-5.5.1-1.cdh5.5.1.p0.11-el7.parcel
CDH-5.5.1-1.cdh5.5.1.p0.11-el7.parcel.sha
manifest.json
安装完成后,点继续,到检查结果的页面
检查主机正确性时出现 “Cloudera 建议将 /proc/sys/vm/swappiness 设置为 0。当前设置为 30。” 的警告,进行如下设定
# vi /etc/sysctl.conf
vm.swappiness = 0
# sysctl –p
检查主机正确性时出现 “已启用“透明大页面”,它可能会导致重大的性能问题。” 的警告,进行如下设定
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag # vi /etc/rc.local
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag
2.3 安装集群,包括Hadoop,YARN,Hive等
检查主机正确性后,点击完成,进入集群配置
选择要安装的服务,可以选择组合或自定义
配置各节点间如何分配
注意: HDFS的Data Node 最少3个。
测试数据库连接
开始安装
3. 确认,测试
确认集群状态正常,动作正常
1. 在集群页面确认,所有服务状态正常
2. 在主机页面确认,各节点的Heartbeat状态正常,并且时间小于15秒
3. 运行任务进行测试
登陆到集群中任意一台主机,执行下面任务(用Hadoop计算PI值,圆周率)
后面2个数字参数的含义: 10指的是要运行10次map任务,10000指的是每个map任务,要投掷多少次,2个参数的乘积就是总的投掷次数。
# sudo -u hdfs hadoop jar /opt/cloudera/parcels/CDH/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar pi 10 10000
执行结果如下:
任务的执行情况可以在YARN页面上进行确认
群集 -> Cluster 1 -> YARN -> 应用程序
4. 其他
在Cloudrea Manager页面上,可以向集群中添加/删除主机,添加服务到集群等。
Cloudrea Manager页面开启了google-analytics,因为从国内访问很慢,可以关闭google-analytics
管理 -> 设置 -> 其他 -> 允许使用情况数据收集 不选
5. 后记
工欲善其事必先利其器,管理Hadoop 集群,Cloudrea 是个不错的选择。
Hadoop系列之(三):使用Cloudera部署,管理Hadoop集群的更多相关文章
- 三、Linux部署MinIO分布式集群
MinIO的官方网站非常详细,以下只是本人学习过程的整理 一.MinIO的基本概念 二.Windows安装与简单使用MinIO 三.Linux部署MinIO分布式集群 四.C#简单操作MinIO 一. ...
- Hadoop 系列(三)Java API
Hadoop 系列(三)Java API <dependency> <groupId>org.apache.hadoop</groupId> <artifac ...
- K8S部署Redis Cluster集群(三主三从模式) - 部署笔记
一.Redis 介绍 Redis代表REmote DIctionary Server是一种开源的内存中数据存储,通常用作数据库,缓存或消息代理.它可以存储和操作高级数据类型,例如列表,地图,集合和排序 ...
- Docker系列之(二):使用Mesos管理Docker集群(Mesos + Marathon + Chronos + Docker)
1. Mesos简介 1.1 Mesos Apache Mesos 是一个分布式系统的管理软件,对集群的资源进行分配和管理. Mesos主要由以下几部分组成: Master: 管理各Slave节点 S ...
- 使用Cloudera Manager搭建MapReduce集群及MapReduce HA
使用Cloudera Manager搭建MapReduce集群及MapReduce HA 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.通过CM部署MapReduce On ...
- 使用Docker构建持续集成与自动部署的Docker集群
为什么使用Docker " 从我个人使用的角度讲的话 部署来的更方便 只要构建过一次环境 推送到镜像仓库 迁移起来也是分分钟的事情 虚拟化让集群的管理和控制部署都更方便 hub.docke ...
- VLAN 模式下的 OpenStack 管理 vSphere 集群方案
本文不合适转载,只用于自我学习. 关于为什么要用OpenStack 管理 vSphere 集群,原因可以有很多,特别是一些传统企业,VMware 的使用还是很普遍的,用 OpenStack 纳管至少会 ...
- [转帖]Ansible管理windows集群
Ansible管理windows集群 http://www.cnblogs.com/Dev0ps/p/10026908.html 写的挺好的 我关注点还是不够好呢 最近公司新项目需要安装400+win ...
- 厉害—Ansible管理windows集群
最近公司新项目需要安装400+windows server 2012系统的工作站,想着怎么能像linux下运用ansible批量管理,linux就很简单了有ssh服务 但是下却没这么简单,但还是有办法 ...
- 001.Ansible部署RHCS存储集群
一 前期准备 1.1 前置条件 至少有三个不同的主机运行monitor (MON)节点: 至少三个直接存储(非外部SAN硬件)的OSD节点主: 至少两个不同的manager (MGR)节点: 如果使用 ...
随机推荐
- js调试系列: 调试基础与技巧
js调试系列目录: - 昨天我们见识到了断点的强悍,在断点的配合下进行动态调试,让读代码变的轻松不少,特别是ajax之类的.在昨天的课后练习中,确实增加了不少难度,因为 提交评论 按钮是用 jQuer ...
- 从字节码的角度看Java内部类与外部类的互相访问
Java中non-static内部类为何可以访问外部类的变量?Java中外部类又为何可以访问内部类的private变量?这两个问题困扰过我一段时间,查了一些网上的答案,大多从“闭包”概念入手,理解起来 ...
- CodeForces Contest #1114: Round #538 (Div. 2)
比赛传送门:CF #1114. 比赛记录:点我. 又 FST 了. [A]Got Any Grapes? 题意简述: 有三个人,第一个人需要吃绿色葡萄至少 \(a\) 个,第二个人需要吃绿色和紫色葡萄 ...
- Flask源码解析:Flask应用执行流程及原理
WSGI WSGI:全称是Web Server Gateway Interface,WSGI不是服务器,python模块,框架,API或者任何软件,只是一种规范,描述服务器端如何与web应用程序通信的 ...
- WCF开发中将net.tcp协议寄宿到IIS的方法
1 部署IIS 1.1 安装WAS IIS原本是不支持非HTTP协议的服务,为了让IIS支持net.tcp,必须先安装WAS(Windows Process Activation Service),即 ...
- Java 基本语法---流程控制
Java 基本语法---流程控制 0. 概述 三大流程控制语句:顺序.选择.循环. 选择结构: if 结构,if - else结构: 多重 if - else 语句 ; 嵌套 if - else 语句 ...
- maven dependencies 报错
maven配置的环境变量有问题: 用最新的maven替换系统默认的setting.xml文件即可
- 4.自定义数据《jquery实战》
4.4 元素中的存储自定义数据 data([key],[value]) 在元素上存放数据,返回jQuery对象. key (String) 存储的数据名. key,value (String,Any) ...
- IdentityServer4 And AspNetCore.Identity Get AccessToken 问题
结合 AspNetCore.Identity 主要就是下载 官方的IdentityServer4.AspNetIdentity 这个包 下面来看下源码 里面帮助我们处理了 IUserClaimsPr ...
- read命令
read命令从键盘读取变量的值,通常用在shell脚本中与用户进行交互的场合. 该命令可以一次读取多个变量的值,变量和输入的值都需要使用空格隔开.在read命令后面,如果没有指定变量名,读取的数据将被 ...