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)节点: 如果使用 ...
随机推荐
- artTemplate
1.http://www.cnblogs.com/jiqiyoudu/p/4588042.html
- javascript数组赋值操作
最近在司徒正美的<javascript框架设计>,在里面发现了一个段代码 ...... var _len = arr1.length; while (_len) { arr2[--_len ...
- python中的 __repr__和__str__
__repr__,被内置函数repr用于把一个对象用"官方"的字符串形式表示出来(终端友好) 1.值传给eval()来返回一个对象的字符串表示形式 2.否则返回一个尖括 ...
- Nessus扫描策略
本篇将简单介绍下Nessus的扫描策略设置.选用plugins及如何使用定制的策略来进行扫描任务. Step 1: 启动Nessus服务 root@kali:~# /etc/init.d/nessus ...
- inux系统用户名和全名有什么区别
问:linux系统安装完毕,进入系统,创建用户的时候,要填入用户名和全名,请问用户名和全名有什么区别,登录的时候,是用户名还是全名? ================================= ...
- Net::HTTP 一次添加 cookie, body 发送post请求
use Net::HTTP::Request; use Net::HTTP::URL; use Net::HTTP::Transport; my $url = Net::HTTP::URL.new(& ...
- 解决getJSON跨域登录Session丢失的问题
最近在做项目中发现,我用下面的代码异步请求到login.ashx: var memberUrl = rooturl + 'member.ashx?r=' + Math.random() + '& ...
- win7下iis中配置php.ini文件
将php.ini-development配置文件重命名为php.ini配置文件即可. 接着做如下配置操作: 1.修改php.ini配置文件 打开php.ini配置文件,找到 12 ; On windo ...
- 一个无锁消息队列引发的血案(三)——地:q3.h 与 RingBuffer
目录 (一)起因 (二)混合自旋锁 (三)q3.h 与 RingBuffer (四)RingQueue(上) 自旋锁 (五)RingQueue(中) 休眠的艺术 (六)RingQueue(中) 休眠的 ...
- 小白学习安全测试(四)——扫描工具-Vega
WEB扫描工具-Vega 纯图形化界面,Java编写的开源web扫描器.两种工作模式:扫描模式和代理模式[主流扫描功能].用于爬站.处理表单,注入测试等.支持SSL:http://vega/ca.cr ...