Cloudera Manager Free Edition 4.1 和CDH 4.1.2 简易安装教学
转载:http://fenriswolf.me/2012/12/06/cloudera-manager-free-edition-4-1-和-cdh-4-1-2-简易安装教学/
安装及管理一个大的Hadoop cluster 并不是只要下载tar files 解压缩并启动services 这么简单。安装及管理一个大的Hadoop cluster 并不是只要下载tar files 解压缩并启动services 这么简单。 后续有非常多设定、监控等麻烦的事要处理。后续有非常多设定、监控等麻烦的事要处理。 Cloudera Manager 就整合了一系列的功能让系统管理者能更方便的维护Hadoop。 Cloudera Manager 就整合了一系列的功能让系统管理者能更方便的维护Hadoop。 Free Edition 的限制如下 Free Edition 的限制如下
- 只支援50 个nodes只支援50 个nodes
- 没有设定的版本控管没有设定的版本控管
- 没有支援LDAP/Kerberos Authentication没有支援LDAP/Kerberos Authentication
- 没有进阶的services 监控选项,如health check没有进阶的services 监控选项,如health check
- 没有Logs 搜寻功能没有Logs 搜寻功能
更多说明在How to Upgrade the Free Edition to Cloudera Manager可以找到。更多说明在How to Upgrade the Free Edition to Cloudera Manager可以找到。 但是对小型的cluster 或是新手想试试怎么装Hadoop 很有帮助。但是对小型的cluster 或是新手想试试怎么装Hadoop 很有帮助。
1.前置作业 <br />在Requirements for Cloudera Manager里有提到Cloudera Manager所支持的所有作业系统,包括RHEL, CentOS, SUSE, Ubuntu等等。 这篇文章会以CentOS 6.3 为例子。这篇文章会以CentOS 6.3 为例子。
- 官方建议/var 至少要留5G 的空间。官方建议/var 至少要留5G 的空间。 以个人经验,/usr/lib 至少要550M 以上,所有Hadoop 相关的packages 都会装在这个位置以个人经验,/usr/lib 至少要550M 以上,所有Hadoop 相关的packages 都会装在这个位置
- RAM 建议4G,不过本篇所用的VMs 只给了2G RAM 建议4G,不过本篇所用的VMs 只给了2G
- 如果使用Cloudera 所提供的yum repository,要确认网络能通及yum proxy 设定正确如果使用Cloudera 所提供的yum repository,要确认网路能通及yum proxy 设定正确
- DNS 设定要正确,或是用/etc/hosts 的设定来取代DNS。 DNS 设定要正确,或是用/etc/hosts 的设定来取代DNS。 hostname 命名里不能有_字符,不然启动Hadoop services 时会失败。 hostname命名里不能有_字符,不然启动Hadoop services时会失败。 至于要不要给domain name 则见人见智。至于要不要给domain name 则见人见智。 以正式环境来说有设定会比较好。以正式环境来说有设定会比较好。 以下是这个范例所使用的设定以下是这个范例所使用的设定
1 192.168.1.110 hadoop-master
2 192.168.1.111 hadoop-worker01
3 192.168.1.112 hadoop-worker02
- Cloudera Manager Server 可用SSH 连到所有需要安装Hadoop 的机器 Cloudera Manager Server 可用SSH 连到所有需要安装Hadoop 的机器
- 确认防火墙不会阻挡所有的操作。确认防火墙不会阻挡所有的操作。 以internal Hadoop 来说一般会把防火墙关掉或反安装以避免一些使用上的问题。以internal Hadoop 来说一般会把防火墙关掉或反安装以避免一些使用上的问题。 如果对安全性控管有高度要求的话,可以参考Configuring Ports for Cloudera Manager Free Edition来开放需要的ports如果对安全性控管有高度要求的话,可以参考Configuring Ports for Cloudera Manager Free Edition来开放需要的ports
- 确认SELinux 不会阻挡所有的操作,建议是直接关掉确认SELinux 不会阻挡所有的操作,建议是直接关掉
- 确认不会更动到Cloudera 会使用的users/groups 权限。确认不会更动到Cloudera 会使用的users/groups 权限。 可参考Requirements for Cloudera Manager最下方的清单可参考Requirements for Cloudera Manager最下方的清单
2. 安装Cloudera Manager Server 2.安装Cloudera Manager Server
从Cloudera Manager Free Edition Download下载最新版的cloudera-manager-installer.bin 并执行。从Cloudera Manager Free Edition Download下载最新版的cloudera-manager-installer.bin并执行。
cloudera-manager-installer.bin 会需要先安装JDK,如果系统没有的话会自动安装Cloudera 建议的版本Oracle JDK 1.6.0_31。 cloudera-manager-installer.bin 会需要先安装JDK,如果系统没有的话会自动安装Cloudera 建议的版本Oracle JDK 1.6.0_31。 以这篇文章所用的VMs 都已经装了Oracle JDK 1.6.0_37,则此步骤会被省略。以这篇文章所用的VMs 都已经装了Oracle JDK 1.6.0_37,则此步骤会被省略。
接下来就可以用http://cms:7180打开admin console。接下来就可以用http://cms:7180打开admin console。 默认的账号密码是admin/admin。预设的帐号密码是admin/admin。 Cloudera Manager Server 对权限控管并没有做的很好,只有一个admin 的账号。 Cloudera Manager Server 对权限控管并没有做的很好,只有一个admin 的帐号。 如果有安全性考虑请自行修改密码。如果有安全性考虑请自行修改密码。
如果admin console 无法正常运作,请看/var/log/cloudera-scm-server 下的log 讯息。如果admin console 无法正常运作,请看/var/log/cloudera-scm-server 下的log 讯息。 解决问题后重启service解决问题后重启service
1
service cloudera-scm-server restart
3. 安装Hadoop 3.安装Hadoop
- 进入的第一页会显示你正在用Free Edition,直接把这个窗口关掉或点选Just Install the Latest Free Edition进入的第一页会显示你正在用Free Edition,直接把这个视窗关掉或点选Just Install the Latest Free Edition
- 第二页会显示Cloudera Manager Server 会安装的所有packages。第二页会显示Cloudera Manager Server 会安装的所有packages。 这部分除了Impala 之外,其他的packages 无法选择不装,MapReduce 也会装MRv1 及MRv2,所以会吃掉系统至少550M 以上的硬盘空间。这部分除了Impala 之外,其他的packages 无法选择不装,MapReduce 也会装MRv1 及MRv2,所以会吃掉系统至少550M 以上的硬盘空间。 画面上没有显示,但因为package 相依性的关系,Bigtop 和Pig 也是会被装进系统里的。画面上没有显示,但因为package 相依性的关系,Bigtop 和Pig 也是会被装进系统里的。
- 加入要安装的机器名称或IP。加入要安装的机器名称或IP。 可以用pattern来指定多台机器。可以用pattern来指定多台机器。 以这个范例而言会有192.168.1.110、192.168.1.111、192.168.1.112 三台机器。以这个范例而言会有192.168.1.110、192.168.1.111、192.168.1.112 三台机器。
- 确认所有的机器已经在名单中,而且SSH 正常运作确认所有的机器已经在名单中,而且SSH 正常运作
- Cloudera Manager 4.1 可以支持CDH3 或CDH4。 Cloudera Manager 4.1 可以支持CDH3 或CDH4。 这边是直接用最新版。这边是直接用最新版。
Impala 1.0 Beta 已经出了,但是现在的测试并不会用到,所以选None 。 Impala 1.0 Beta已经出了,但是现在的测试并不会用到,所以选None 。 Impala 要求整个Hadoop cluster 一定要在RHEL/CentOS 6 上面执行,cluster 内混用Ubuntu、SuSE 或RHEL/CentOS 5.x 都是不行的,想试用的要注意OS 版本。 Impala 要求整个Hadoop cluster 一定要在RHEL/CentOS 6 上面执行,cluster 内混用Ubuntu、SuSE 或RHEL/CentOS 5.x 都是不行的,想试用的要注意OS 版本。
Yum repository 如果用默认值,Cloudera Manager 会在/etc/yum.repos.d 里新增一个cloudera-cdh4.repo 来安装所有必要的packages。 Yum repository 如果用预设值,Cloudera Manager 会在/etc/yum.repos.d 里新增一个cloudera-cdh4.repo 来安装所有必要的packages。 所以要确认是否连的到archive.cloudera.com 。所以要确认是否连的到archive.cloudera.com 。 在production 的环境不建议直接使用Cloudera 的yum repository,因为Cloudera 版本的变动很快但yum repository 只会放最新版,所以有可能造成机器装的版号不一致。在production 的环境不建议直接使用Cloudera 的yum repository,因为Cloudera 版本的变动很快但yum repository 只会放最新版,所以有可能造成机器装的版号不一致。 例如旧机器装到4.1.1,但新机器装到4.1.2。例如旧机器装到4.1.1,但新机器装到4.1.2。 这有两种解法这有两种解法- 由IT 建立一个private yum repository 并准备好所有需要的packages。由IT 建立一个private yum repository 并准备好所有需要的packages。
- 直接修改cloudera-cdh4.repo 中的baseurl 参数,指定明确的版号,如http://archive.cloudera.com/cdh4/redhat/6/x86_64/cdh/4.1.1/或http://archive.cloudera.com/cdh4/redhat/6/x86_64/cdh/4.1.2/直接修改cloudera-cdh4.repo中的baseurl参数,指定明确的版号,如http://archive.cloudera.com/cdh4/redhat/6/x86_64/cdh/4.1.1/或http://archive. cloudera.com/cdh4/redhat/6/x86_64/cdh/4.1.2/
- 决定SSH 的权限及存取方式。决定SSH 的权限及存取方式。 偷懒一点就可以用root 身份并给密码。偷懒一点就可以用root 身份并给密码。 但比较好的做法是把ssh key 先放到所有的机器上。但比较好的做法是把ssh key 先放到所有的机器上。 如果不用root 账号就要确定指定的user 有不需要打密码就能sudo 的权限。如果不用root 帐号就要确定指定的user 有不需要打密码就能sudo 的权限。
进入安装程序进入安装程序
安装过程中可以点选Details看Cloudera Manager 正在执行的动作。安装过程中可以点选Details看Cloudera Manager正在执行的动作。 每台机器都会先装Cloudera Manager Agent 来设定及监控Hadoop services,再装Oracle JDK 1.6.0_31 和所有Hadoop packages。每台机器都会先装Cloudera Manager Agent 来设定及监控Hadoop services,再装Oracle JDK 1.6.0_31 和所有Hadoop packages。
在安装过程中难免会遇到失败的状况。在安装过程中难免会遇到失败的状况。 这边故意制造了一个会出错的例子。这边故意制造了一个会出错的例子。
点选Details可以看错误讯息点选Details可以看错误讯息
以这个例子而言是Cloudera Manager Agent 启动失败。以这个例子而言是Cloudera Manager Agent 启动失败。 Console 上并没有显示所有的log,log 档案在/var/log/cloudera-scm-agent/cloudera-scm-agent.out Console 上并没有显示所有的log,log 档案在/var/log/cloudera-scm-agent/cloudera-scm-agent.out
- /usr/lib64/cmf/agent/src/cmf/agent.py:24: DeprecationWarning: the sha module is deprecated; use the hashlib module instead
- import sha
- /usr/lib64/cmf/agent/src/cmf/monitor/host/network_interfaces.py:11: DeprecationWarning: the sets module is deprecated
- from sets import Set
- [03/Nov/2012 21:27:37 +0000] 7692 MainThread agent ERROR Could not determine hostname or ip address; proceeding.
- Traceback (most recent call last):
- File "/usr/lib64/cmf/agent/src/cmf/agent.py", line 1204, in parse_arguments
- ip_address = socket.gethostbyname(fqdn)
- gaierror: [Errno -2] Name or service not known
- usage: agent.py [-h] [--agent_dir AGENT_DIR]
- [--agent_httpd_port AGENT_HTTPD_PORT] --package_dir
- PACKAGE_DIR [--supervisord_path SUPERVISORD_PATH]
- [--supervisord_httpd_port SUPERVISORD_HTTPD_PORT]
- [--standalone STANDALONE] [--master MASTER]
- [--environment ENVIRONMENT] [--host_id HOST_ID]
- [--disable_supervisord_events] [--disable_eager_heartbeats]
- --hostname HOSTNAME --ip_address IP_ADDRESS [--use_tls]
- [--client_key_file CLIENT_KEY_FILE]
- [--client_cert_file CLIENT_CERT_FILE]
- [--verify_cert_file VERIFY_CERT_FILE]
- [--client_keypw_file CLIENT_KEYPW_FILE] [--logfile LOGFILE]
- [--optional_token] [--clear_agent_dir]
- agent.py: error: argument --hostname is required
- [03/Nov/2012 21:27:37 +0000] 7692 Dummy-1 agent INFO Stopping agent...
这个错误是因为在/etc/hosts 里IP/hostname 的对应不正确,修好之后再点选Retry 。这个错误是因为在/etc/hosts里IP/hostname的对应不正确,修好之后再点选Retry 。 Cloudera Manager 会先把之前的所有操作rollback,回复到初始状态之后才重装。 Cloudera Manager 会先把之前的所有操作rollback,回复到初始状态之后才重装。
- 三台机器都安装成功三台机器都安装成功
- 接下来会做所有机器的检查,项目包括接下来会做所有机器的检查,项目包括
- 网络设定网路设定
- 各机器的系统时间是否同步。各机器的系统时间是否同步。 这部分容易被忽略但是很重要,如果没同步,Hadoop/HBase/Kerberos Authentication 会发生很多奇怪的状况而且难debug这部分容易被忽略但是很重要,如果没同步,Hadoop/HBase/Kerberos Authentication 会发生很多奇怪的状况而且难debug
- Hadoop users/groups 权限及个数是否相同 Hadoop users/groups 权限及个数是否相同
- HDFS 的设定 HDFS 的设定
- 机器上安装的版本机器上安装的版本
- 显示检查的结果显示检查的结果
- 这是所有机器的列表。这是所有机器的列表。 点选Host Inspector可以重做一次上面所说的检查。点选Host Inspector可以重做一次上面所说的检查。
在View Columns选择Physical Attributes可以切换看CPU/Memory/Disk 的使用状况在View Columns选择Physical Attributes可以切换看CPU/Memory/Disk的使用状况
4. 新增cluster 及启动Hadoop services 4.新增cluster及启动Hadoop services
- 机器都装好之后就可以进Services tab,选择Add Cluster机器都装好之后就可以进Services tab,选择Add Cluster
- 这边选择要加入这个cluster 的机器。这边选择要加入这个cluster 的机器。 因为这个环境是新装的,所以直接用Use Only Currently Managed Hosts就可以了因为这个环境是新装的,所以直接用Use Only Currently Managed Hosts就可以了
- 选择要启动的CDH 版本及services。选择要启动的CDH 版本及services。 为了测试方便,只选了HDFS 和MRv1 两个services。为了测试方便,只选了HDFS 和MRv1 两个services。 决定之后不要急着按Continue ,而是要选Inspect Role Assignments做一些微调决定之后不要急着按Continue ,而是要选Inspect Role Assignments做一些微调
- 这个页面会显示Cloudera Manager 帮你启动services 的详细设定。这个页面会显示Cloudera Manager 帮你启动services 的详细设定。 以这个例子而言,hadoop-master 可以把DataNode 和TaskTracker 的选项拿掉。以这个例子而言,hadoop-master 可以把DataNode 和TaskTracker 的选项拿掉。
- 再来是最基本启动services 会用到的设定,细部设定页面后面会说明。再来是最基本启动services 会用到的设定,细部设定页面后面会说明。
- 因为是新的cluster,会先做HDFS format,启动HDFS services,在HDFS 上建立tmp 目录,启动MapReduce services,及部属client 的设定因为是新的cluster,会先做HDFS format,启动HDFS services,在HDFS 上建立tmp 目录,启动MapReduce services,及部属client 的设定
- 显示所有services 的执行状况显示所有services 的执行状况
- 点选hdfs1>Configuration会列出所有细部的设定,Cloudera Manager 会依机器的规格而给出一些建议值。点选hdfs1>Configuration会列出所有细部的设定,Cloudera Manager会依机器的规格而给出一些建议值。 新手也可以参考这个页面了解有多少参数可以设定,及其意义。新手也可以参考这个页面了解有多少参数可以设定,及其意义。 所有services 的设定方式都是由Configuration tab 进入。所有services的设定方式都是由Configuration tab进入。
执行环境执行环境
CentOS 6.3 CentOS 6.3
JDK 1.6.0_37 JDK 1.6.0_37
Cloudera Manager 4.1 Cloudera Manager 4.1
Cloudera CDH4.1.2 Cloudera CDH4.1.2
参考数据参考资料
Cloudera Manager 4.1 Free Edition Documentation Cloudera Manager 4.1 Free Edition Documentation
Cloudera Manager Free Edition 4.1 和CDH 4.1.2 简易安装教学的更多相关文章
- 离线部署 Cloudera Manager 5 和 CDH 5.12.1 及使用 CDH 部署 Hadoop 集群服务
Cloudera Manager Cloudera Manager 分为两个部分:CDH和CM. CDH是Cloudera Distribution Hadoop的简称,顾名思义,就是cloudera ...
- CDH使用秘籍(一):Cloudera Manager和Managed Service的数据库
背景 从业务发展需求,大数据平台须要使用spark作为机器学习.数据挖掘.实时计算等工作,所以决定使用Cloudera Manager5.2.0版本号和CDH5. 曾经搭建过Cloudera Mana ...
- cloudera manager(CDH)实践
cloudera manager 可以简化 Hadoop 的安装配置过程,自动在集群节点上安 装 hadoop 相关组件,创建用户,并管理各个组件服务.本手册以 cloudera manager 的 ...
- CentOS 7下Cloudera Manager及CDH 6.0.1安装过程详解
目录 一.概念介绍 1.CDH 概览 2.Cloudera Manager 概览 二.环境准备 1.软件版本选择 2.节点准备(四个节点) 3.配置主机名和hosts解析(所有节点) 4.关闭防火墙 ...
- Cloudera Manager和CDH版本的对应关系
来源:https://www.cloudera.com/documentation/enterprise/release-notes/topics/rn_consolidated_pcm.html#c ...
- [How to]Cloudera manager 离线安装手册
2016-01-1910:54:05 增加kafka 1.简介 本文介绍在离线环境下安装Cloudera manager和简单使用方法 2.环境 OS:CentOS 6.7 Cloudera man ...
- hadoop再次集群搭建(4)-Cloudera Manager Installation
决定选择 Cloudera Manager 进行安装,阅读官方文档,掌握大概脉络. Cloudera Manager在集群已经实现ssh免秘钥登录,能够访问网络资源和本地资源的情 ...
- 安装Cloudera manager Server步骤详解
安装Cloudera manager Server步骤详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客主要是针对:https://www.cnblogs.com/yin ...
- Cloudera Manager简介
Hadoop家族 整个Hadoop家族由以下几个子项目组成: Hadoop Common: Hadoop体系最底层的一个模块,为Hadoop各子项目提供各 种工具,如:配置文件和日志操作等. HDFS ...
随机推荐
- 禁止 favicon.ico 请求
favicon.ico 图标用于收藏夹图标和浏览器标签上的显示,如果不设置,浏览器会请求网站根目录的这个图标,如果网站根目录也没有这图标会产生 404.出于优化的考虑,要么就有这个图标,要么就禁止产生 ...
- JSON 学习笔记
学习使用json过程随笔: json数组格式 var employees = [ { "firstName":"Bill" , "lastName&q ...
- Biztalk2010安装及配置问题集
在安装Biztalk2010时,碰到很多问题,有的是粗心有的也是比较bt的,如: 1)在win7 64下引入x86 的cab,有点粗心,幸亏给我报错版本不兼容(呵呵): 2)安装的时候 不知道为什么计 ...
- Linux命令:FREE
FREE(1) Linux User's Manual FREE(1) NAME free - Display a ...
- iPhone6设计自适应布局
http://www.devtalking.com/articles/adaptive-layout-for-iphone6-1/ http://www.devtalking.com/articles ...
- Java坑一
public class Test { public static void main(String[] args) { Integer a = 12; Integer b = 12; System. ...
- cocos2d-x创建工程批处理
cd /d D:\cocos2d-x-2.2.2\cocos2d-x-2.2.2\tools\project-creator create_project.py -project %1 -packag ...
- HTML5学习笔记一:新增主体结构元素
Dreamweaver快捷键: 属性面板:Ctrl+F3 新建文档:Ctrl+N 选择用网页查看:F12 新增的主体结构元素: section元素(例子如下): <!DOCTYPE HTML&g ...
- The kth great number(优先队列)
The kth great number Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65768/65768 K (Java/Oth ...
- information_schema.column_privileges 学习
mysql 的授权是分层次的 实例级 | 库级 | 表级 | 列级 而这些授权信息被保存在了mysql.user | mysql.db | mysql.tables_priv | mysql.colu ...