Cloudera(CDH) 简介和在线安装

实验背景

笔者需要维护线上的hadoop集群环境,考虑在本地搭建一套类似的hadoop集群,便于维护与管理。

Cloudera 简介

经过搜索发现Cloudera产品很适合笔者当前需求,于是开始研究Cloudera(CDH)的安装与使用,参考:

CDH是Apache Hadoop和相关项目的最完整,经过测试的流行发行版。 CDH提供了Hadoop的核心元素 - 可扩展的存储和分布式计算 - 以及基于Web的用户界面和重要的企业功能。 CDH是Apache许可的开放源码,是唯一提供统一批处理,交互式SQL和交互式搜索以及基于角色的访问控制的Hadoop解决方案。

Cloudera作为一个强大的商业版数据中心管理工具,提供了各种能够快速稳定运行的数据计算框架,如Apache Spark;使用Apache Impala做为对HDFS,HBase的高性能SQL查询引擎;也带了Hive数据仓库工具帮助用户分析数据; 用户也能用Cloudera管理安装HBase分布式列式NoSQL数据库;Cloudera还包含了原生的Hadoop搜索引擎以及Cloudera Navigator Optimizer去对Hadoop上的计算任务进行一个可视化的协调优化,提高运行效率;同时Cloudera中提供的各种组件能让用户在一个可视化的UI界面中方便地管理,配置和监控Hadoop以及其它所有相关组件,并有一定的容错容灾处理;Cloudera作为一个广泛使用的商业版数据中心管理工具更是对数据的安全决不妥协!

CDH 提供:

  • 灵活性 - 存储任何类型的数据,并使用各种不同的计算框架进行处理,包括批处理,交互式SQL,自由文本搜索,机器学习和统计计算。
  • 集成 - 在一个可与广泛的硬件和软件解决方案配合使用的完整Hadoop平台上快速启动并运行。
  • 安全 - 过程和控制敏感数据。
  • 可扩展性 - 启用广泛的应用程序并进行扩展和扩展,以满足您的需求。
  • 高可用性 - 充满信心地执行关键业务任务。
  • 兼容性 - 利用您现有的IT基础设施和资源。

上述描述来自:https://www.cloudera.com/documentation/enterprise/latest/topics/cdh_intro.html

Cloudera Manager 介绍

Cloudera Manager可以轻松管理任何生产规模的Hadoop部署。通过直观的用户界面快速部署,配置和监控群集 - 完成滚动升级,备份和灾难恢复以及可定制警报。 Cloudera Manager作为Cloudera Enterprise的集成和支持部分提供。

参考:https://www.cloudera.com/documentation/enterprise/latest/topics/cm_intro_primer.html#concept_wfj_tny_jk

  • 如下所示,Cloudera Manager的核心是Cloudera Manager Server。服务器托管管理控制台Web服务器和应用程序逻辑,负责安装软件,配置,启动和停止服务以及管理运行服务的集群。

Cloudera Manager Server与其他几个组件一起工作:

  • agent - 安装在每台主机上。代理负责启动和停止进程,解包配置,触发安装和监视主机。
  • 管理服务 - 由一组执行各种监视,警报和报告功能的角色组成的服务。
  • 数据库 - 存储配置和监视信息。通常,多个逻辑数据库在一个或多个数据库服务器上运行。例如,Cloudera Manager Server和监视角色使用不同的逻辑数据库。
  • Cloudera存储库 - 由Cloudera Manager分发的软件存储库。
  • 客户端 - 是与服务器交互的接口:
    • 管理控制台 - 管理员用于管理集群和Cloudera Manager的基于Web的用户界面。
    • API - 与开发人员创建自定义Cloudera Manager应用程序的API。

安装Cloudera Manager和CDH

系统环境:CentOS6.9
软件环境:Oracle JDK、Cloudera Manager Server 和 Agent 、数据库、CDH各组件

  • 系统初始化(每个服务器都要做)
# 关闭iptables、禁用selinux

/etc/init.d/iptables stop && chkconfig iptables off
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config && setenforce 0

# 每台服务器之间设置免密认证
# CM
192.168.1.137 cdh.master.aniu.so master
192.168.1.148 cdh.node1.aniu.so node1
192.168.1.149 cdh.node2.aniu.so node2
192.168.1.150 cdh.node3.aniu.so node3
## 注:在每台服务器配置hosts,master和node1/2/3代表服务器的主机名

# 设置swap参数
echo never > /sys/kernel/mm/transparent_hugepage/defrag  #建议写到开启启动新里
sysctl -w vm.swappiness=0  # 建议写进sysctl.conf

# 设置ntp同步服务器时间
*/2 * * * * /usr/sbin/ntpdate 0.cn.pool.ntp.org >> /dev/null 2>&1

Cloudera安装步骤
参考:https://www.cloudera.com/documentation/enterprise/latest/topics/installation_installation.html

  • 阶段1:安装JDK(忽略)
[Java SE 8 Downloads](http://www.oracle.com/technetwork/java/javase/downloads/java-archive-javase8-2177648.html)
export JAVA_HOME=/usr/java/jdk.1.8.0_nn
# java -version
java version "1.8.0_144"
Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)
# 注 此处不用安装JDK,因为CM源有封装好的jdk,
  • 阶段2:设置数据库
# 使用mysql数据库,提前安装好mysql
# mysql -u root -ppassword -e "create database cmf DEFAULT CHARACTER SET utf8;"
# mysql -u root -ppassword -e "GRANT ALL PRIVILEGES ON `cmf`.* TO 'cmf'@'localhost' IDENTIFIED BY 'cmfpassword'";"
  • 阶段3:安装Cloudera Manager服务器
# 配置cloudera-cdh源和cloudera-manager源
# cloudera-manager
wget http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/cloudera-manager.repo

# cloudera-cdh
wget https://archive.cloudera.com/cdh5/redhat/6/x86_64/cdh/cloudera-cdh5.repo

# 安装jdk和cloudera-manager
sudo yum install oracle-j2sdk1.7 -y
sudo yum install cloudera-manager-daemons cloudera-manager-server -y
  • 阶段4:启动CM服务并通过浏览器访问
# /etc/init.d/cloudera-scm-server restart
Stopping cloudera-scm-server:                              [  OK  ]
Starting cloudera-scm-server:                              [  OK  ]

# 查看日志是否有报错,根据报错修改,然后再重新启动
tailf /var/log/cloudera-scm-server/cloudera-scm-server.log 

浏览器访问:http://192.168.1.137:7180,用户名密码:admin admin

  • 点击搜索








  • 创建必需的数据库
# 参考:https://www.cloudera.com/documentation/enterprise/latest/topics/install_cm_mariadb.html
# hive hue amon man nas navms oos 

create database metastore DEFAULT CHARACTER SET utf8;
grant all on metastore.* TO 'hive'@'%' IDENTIFIED BY 'Aniuhive123.';

create database amon DEFAULT CHARACTER SET utf8;
grant all on amon.* TO 'amon'@'%' IDENTIFIED BY 'Aniuamon123.';

create database hue DEFAULT CHARACTER SET utf8;
grant all on hue.* TO 'hue'@'%' IDENTIFIED BY 'Aniuhue123.';

create database rman DEFAULT CHARACTER SET utf8;
grant all on rman.* TO 'rman'@'%' IDENTIFIED BY 'Aniurman123.';

create database navms DEFAULT CHARACTER SET utf8;
grant all on navms.* TO 'navms'@'%' IDENTIFIED BY 'Aniunavms123.';

create database nas DEFAULT CHARACTER SET utf8;
grant all on nas.* TO 'nas'@'%' IDENTIFIED BY 'Aniunas123.';

create database oos DEFAULT CHARACTER SET utf8;
grant all on oos.* TO 'oos'@'%' IDENTIFIED BY 'Aniuoos123.';

  • 集群更改设置


系统自带的python不能升级,升级会导致安装CM agent出问题

注意事项

  • 建议使用全新的服务器或者虚拟机安装CM服务,避免其他环境(服务)对安装过程造成影响
  • 系统初始化操作一定要一致,python版本注意用系统自带即可

重要

  • 卸载重装CM服务
# 笔者前期系统初始化部分很多操作都不完善,卸载重装CM步骤

# 安装CDH manager的服务器上面执行
yum remove cloudera-manager-server -y

# 在所有的服务器执行下面操作
/etc/init.d/cloudera-scm-agent stop
yum remove cloudera-manager-agennt-y
find / -name clouder* | xargs rm -rf
find / -name cmf* | xargs rm -rf
# 把使用yum下载的相关包卸载干净。然后通过CDH manager 管理界面安装

参考链接:

时间: 2024-10-27 15:13:50

Cloudera(CDH) 简介和在线安装的相关文章

安装sentry报错-CDH集群中安装sentry,重启sentry一直起不来

问题描述 CDH集群中安装sentry,重启sentry一直起不来 1.在CDH集群中安装sentry重启时报错,以下是报错信息: Tue Apr 21 09:40:21 CST 2015 JAVA_HOME=/usr/java/jdk1.7.0_45-cloudera using /usr/java/jdk1.7.0_45-cloudera as JAVA_HOME using 5 as CDH_VERSION Debug is true storeKey true useTicketCach

android studio-Android Studio 在线安装Genymotion后,选择路径时不知道它装在哪了

问题描述 Android Studio 在线安装Genymotion后,选择路径时不知道它装在哪了 在整个计算机中都找不到Genymotion的安装路径,无法完成关联. 哪位大神知道?麻烦告诉我下.谢谢! 解决方案 Android Studio体验(二)--创建项目和Genymotion试用 这里有安装过程和目录指定,及使用方法.

在eclipse中在线安装TestNG插件后,没有testng选项,很多方法都试过了

问题描述 在eclipse中在线安装TestNG插件后,没有testng选项,很多方法都试过了 2C 在eclipse中在线安装TestNG插件后,没有testng选项,很多方法都试过了,求大神给解决啊方法,最好有详细过程,或者是安装过程中要注意什么,在线等,谢啦 解决方案 安装TestNG在eclipse中的插件安装TestNG在eclipse中的插件安装TestNG在eclipse中的插件

更新-eclipse 怎样安装sdk,在线安装会不会耗时啊

问题描述 eclipse 怎样安装sdk,在线安装会不会耗时啊 sdk Manager 是怎么用的,那个进度条显示的是什么?,离线安装包可以用吗 ?需要更新时怎么办? 解决方案 离线包可以用,在线更新也可以.http://blog.csdn.net/chinacsharper/article/details/38072711 解决方案二: 是说安卓的sdk吧,最近google被墙的比较严重,用vpn吧 解决方案三: SDK最好是在线安装,也不是 VPN 就可以直接安装的.但注意,SDK 工具需要

通过 itms:services://? 在线安装ipa ,跨过app-store

1.需要一个html文件,引导下载用户在线安装ipa <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html>   <head>     <title>一键安装掌上综调iPhone版</title>   </head>      <body>         <a href='itms-services://?act

magento -- 项目迁移后无法在线安装插件问题的解决

      安装完的magento项目移动位置后再用magento connect在线安装插件会失败,列表中会显示已安装,后台却看不到,检查downloader文件夹会发现文件并不存在,这是怎么回事?       其实原因很简单,magento的在线安装需要有一个配置文件来指定插件的下载路径,新安装magento项目时会自动生成一个针对当前目录的pear.ini文件,里面包含了当前项目所在目录路径信息,当你迁移了一个项目,pear.ini并不会自动修改,这时pear.ini文件里指定的路径已经是

eclipse在线安装aptana报错了

问题描述 eclipse在线安装aptana报错了 解决方案 Eclipse在线安装Aptana.eclipse 报错了Aptana/Spket在Eclipse3.4下在线安装 解决方案二: 把detail的张开再截张图 解决方案三: 我也遇到过..我是将原来的卸载了 然后再重新装一个!

图解Eclipse在线安装ADT插件过程_Android

要想使用Eclipse开发Android应用,首先要安装一个ADT插件,在此记录一下在Eclipse中采用在线安装的方式ADT插件,我使用的Eclipse版本是:eclipse-jee-luna-SR2-win32-x86_64,操作步骤如下:Help --> Install new software,如下图所示: 这种是采用在线安装ADT插件的方式,由于天朝对Google一直都墙着,所以要想使用这种方式在线安装ADT插件,那么需要使用VPN代理服务器去访问ADT插件的网站,我采用的是PGFas

centOS yum在线安装mysql及配置步骤详解

1.检查centOS的自带mysql yum list installed | grep mysql 2.删除centOS的自带mysql # 当结果显示为Complete!即卸载完毕    yum -y remove mysql-libs.x86_64 3.检查yum库中的mysql的版本号 yum list|grep mysql # 或者用 yum -y list mysql* 4.yum 在线安装mysql yum -y install mysql-server mysql mysql-d