Cloudera’s Distribution Including Apache Hadoop,简称“CDH”,基于Web的用户界面,支持大多数Hadoop组件,包括HDFSMapReduceHiveSparkHbaseZookeeperSqoop等,简化了大数据平台的安装、使用难度。本文档将演示CDH6.0.1的部署,该版本是目前最新版本,该版本Hadoop生态组件版本可以查看manifest.json文件,相关文件下载地址如下:

  • https://archive.cloudera.com/cdh6/6.0.1/parcels/
  • https://archive.cloudera.com/cm6/6.0.1/redhat7/yum/RPMS/x86_64/
  • 实施环境说明
  • 基础环境配置
  • 搭建本地yum源
  • 安装Mariadb数据库
  • 安装Cloudera-manager-server
  • 安装配置Cloudera-manager-client
  • Web UI指南操作部署集群

实施环境说明

主机名 IP 配置 操作系统 角色
c1.heboan.com 9.110.187.120 2核/8G CentOS Linux release 7.2.1511 cm-server、cm-agent、mariadb5.5
c2.heboan.com 9.110.187.121 2核/8G CentOS Linux release 7.2.1511 cm-agent
c3.heboan.com 9.110.187.122 2核/8G CentOS Linux release 7.2.1511 cm-agent

环境说明:

  该环境配置非生产环境配置,是本人虚拟机的配置,一般企业大数据平台资源配置可如下参考:

  测试集群环境:

    机器数量: 5-10台

    机器配置: 硬盘(4TB)、内存(24G-32G)、CPU(6核)、网卡(万兆)

  生产集群环境:

    小型集群: 20台以下

    中型集群: 50台以下

    大型集群: 50台以上

准备软件包放到/root/toos/目录下:

基础环境配置(所有机器进行的操作)

设置主机名

绑定主机名与ip的关系

# vim /etc/hosts
...
9.110.187.120 c1.heboan.com
9.110.187.121 c2.heboan.com
9.110.187.122 c3.heboan.com

/etc/hosts

配置NTP时间同步, 点我查看配置ntp服务器

设置ssh免密

//一路回车

# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
:ca::3a:1c::5e::::5c:e8:::a2:b1 root@c3.heboan.com
The key's randomart image is:
+--[ RSA ]----+
|+. ..oo=+. |
|oo. .Oo |
|E +oo |
| .. |
| . o S |
| . = o o |
| + o |
| . |
| |
+-----------------+

生成密钥对

ssh-copy-id -i ~/.ssh/id_rsa.pub c1.heboan.com
ssh-copy-id -i ~/.ssh/id_rsa.pub c2.heboan.com
ssh-copy-id -i ~/.ssh/id_rsa.pub c3.heboan.com

设置互信

配置文件打开数

#vim /etc/security/limits.conf
//末尾加上
* soft nofile
* hard nofile
* soft nproc
* hard nproc unlimited
* hard memlock ulimited
* soft memlock unlimited

/etc/security/limits.conf

关闭防火墙

systemctl stop firewalld.service
systemctl disable firewalld.service

firewalld

关闭selinux

//临时关闭,重启后失效
# setenforce //修改配置文件
# vim /etc/sysconfig/selinux
...
SELINUX=disabled

selinux

设置swap

# echo vm.swappiness =  >> /etc/sysctl.conf
# sysctl -p

/etc/sysctl.conf

设置透明大页面

# echo never > /sys/kernel/mm/transparent_hugepage/defrag
# echo never > /sys/kernel/mm/transparent_hugepage/enabled 将如下脚本添加到/etc/rc.d/rc.local文件中
if test -f /sys/kernel/mm/transparent_hugepage/enabled; then echo never > /sys/kernel/mm/transparent_hugepage/enabled fi if test -f /sys/kernel/mm/transparent_hugepage/defrag; then echo never > /sys/kernel/mm/transparent_hugepage/defrag fi

设置透明大页面

安装jdbc驱动

# mkdir -p /usr/share/java/
# cp mysql-connector-java-5.1..jar /usr/share/java/
# cd /usr/share/java/
# chmod mysql-connector-java-5.1..jar
# ln -s mysql-connector-java-5.1..jar mysql-connector-java.jar

装jdbc驱动

安装jdbc

# yum install -y oracle-j2sdk1.-1.8.+update141-.x86_64.rpm 

安装jdbc

配置环境变量

# cat /etc/profile.d/java.sh
export JAVA_HOME=/usr/java/jdk1.8.0_141-cloudera
export JAVA_BIN=/usr/java/jdk1.8.0_141-cloudera/bin
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME JAVA_BIN PATH CLASSPATH

/etc/profile.d/java.sh

搭建本地yum源(c1.heboan.com)

安装httpd服务

yum install -y httpd
systemctl start httpd

制作repo

# yum install createrepo

# cd /root/tools/cm/
# createrepo . # cd /root/tools/cdh
# createrepo .

将cm目录移动到/var/www/html目录下,使得用户可以http访问这些rpm包

# cd /root/tools
# mv cm/ /var/www/html/

配置repo源(所有机器执行此操作)

# vim /etc/yum.repos.d/cm.repo
[cmrepo]
name = cm_repo
baseurl = http://c1.heboan.com/cm
enable = true
gpgcheck = false # yum repolist

配置数据(c1.heboan.com)

安装Mariadb

# yum install mariadb mariadb-server mariadb-devel
# systemctl start mariadb
# systemctl enable mariadb

初始化数据库设置root密码

mysql_secure_installation

使用root用户登录数据库创建相应的库和用户授权

create database cm default character set utf8;  CREATE USER 'cm'@'%' IDENTIFIED BY '';
GRANT ALL PRIVILEGES ON cm. * TO 'cm'@'%'; create database hive default character set utf8; CREATE USER 'hive'@'%' IDENTIFIED BY '';
GRANT ALL PRIVILEGES ON hive. * TO 'hive'@'%'; create database am default character set utf8; CREATE USER 'am'@'%' IDENTIFIED BY '';
GRANT ALL PRIVILEGES ON am. * TO 'am'@'%'; create database hue default character set utf8; CREATE USER 'hue'@'%' IDENTIFIED BY '';
GRANT ALL PRIVILEGES ON hue. * TO 'hue'@'%'; create database oozie default character set utf8; CREATE USER 'oozie'@'%' IDENTIFIED BY '';
GRANT ALL PRIVILEGES ON oozie. * TO 'oozie'@'%'; FLUSH PRIVILEGES;

数据库创建授权

安装Cloudera-manager-server(c1.heboan.com)

通过yum安装

yum -y install cloudera-manager-server

初始化cm数据库

/opt/cloudera/cm/schema/scm_prepare_database.sh mysql cm cm password

启动Cloudera Manager Server

systemctl start cloudera-scm-server

温馨提示:

  1、机器配置低的情况下,该服务启动时间较长

  2、启动过程可查看日志:/var/log/cloudera-scm-server/cloudera-scm-server.log

  3、该服务会启动两个端口: 7180(提供web界面给我们操作,7182用于和agent通信)

拷贝cdh包到/opt/cloudera/parcel-repo/

cp /var/www/html/cdh/CDH-6.0.-.cdh6.0.1.p0.-el7.parcel* /opt/cloudera/parcel-repo/

cd /opt/cloudera/parcel-repo/
mv CDH-6.0.-.cdh6.0.1.p0.-el7.parcel.sha256 CDH-6.0.-.cdh6.0.1.p0.-el7.parcel.sha

重启Cloudera Manager Server

systemctl restart cloudera-scm-server

安装Cloudera-manager-agent(所有机器)

通过yum安装

# yum -y install cloudera-manager-agent

修改agent配置文件

# vim /etc/cloudera-scm-agent/config.ini
...
server_host=c1.heboan.com #指向c1.heboan.com

启动

systemctl start cloudera-scm-agent

浏览器访问http://c1.heboan.com:7180进行web界面操作

账号密码:admin/admin

接受条款协议

选择免费版

选择集群主机

选择Parcel,点击“更多选项”, 把远程Parcel存储库URL都删除

sha1sum   CDH-6.0.1-1.cdh6.0.1.p0.590678-el7.parcel   #计算出值

然后创建 CDH-6.0.1-1.cdh6.0.1.p0.590678-el7.parcel.sha , 里面的内容为上面计算的值

cd /opt/cloudera/parcel-repo/chown -R cloudera-scm:cloudera-scm ./*

选择CDH6.0.1

执行到这一步,出现异常,老是回滚,进行不下去

查看日志

修改属主

# cd /opt/cloudera/parcel-repo
# chown -R cloudera-scm:cloudera-scm ./*

然后就顺利进行下去了,^_^

检查主机

这里因为我虚拟机配置低,就选择Essentials,当然你在实际工作中更具需求来选择

分配角色到不同的主机,均衡分配即可

测试数据库连接

集群设置,根据实际情况设置,如数据目录位置等等

完成集群设置

是不是很激动

安装完成

解决CDH的web界面使用nginx代理一些静态文件无法加载

vim /opt/cm-5.13./share/cmf/webapp/WEB-INF/spring/mvc-config.xml
....
注释此行
<bean class="com.cloudera.server.web.cmf.csrf.CsrfRefererInterceptor" />

重启cloudera-scm-server

CentOS7部署CDH6.0.1大数据平台的更多相关文章

  1. 部署开启了Kerberos身份验证的大数据平台集群外客户端

    转载请注明出处 :http://www.cnblogs.com/xiaodf/ 本文档主要用于说明,如何在集群外节点上,部署大数据平台的客户端,此大数据平台已经开启了Kerberos身份验证.通过客户 ...

  2. 红象云腾CRH 一键部署大数据平台

    平台: arm 类型: ARM 模板 软件包: azkaban hadoop 2.6 hbase hive kafka spark zeppelin azkaban basic software bi ...

  3. cloudera cdh6.3 离线安装 经典大数据平台视频教程(含网盘下载地址)

    cdh6.3企业级大数据视频教程 链接:https://pan.baidu.com/s/1bLGrIwzpFQB-pQRb6KOmNg 提取码:i8h8 系统和软件版本1,操作系统:Centos7.6 ...

  4. CDH构建大数据平台-Kerberos高可用部署【完结篇】

    CDH构建大数据平台-Kerberos高可用部署[完结篇] 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.  一.安装Kerberos相关的软件包并同步配置文件 1>.实验环境 ...

  5. 从0到N建立高性价比的大数据平台(转载)

    2016-07-29 14:13:23 钱曙光 阅读数 794 原文链接:https://blog.csdn.net/qiansg123/article/details/80124521 声明:本文为 ...

  6. 大数据 -- Cloudera Manager(简称CM)+CDH构建大数据平台

    一.Cloudera Manager介绍 Cloudera Manager(简称CM)是Cloudera公司开发的一款大数据集群安装部署利器,这款利器具有集群自动化安装.中心化管理.集群监控.报警等功 ...

  7. CDH 大数据平台搭建

    一.概述 Cloudera版本(Cloudera’s Distribution Including Apache Hadoop,简称“CDH”),基于Web的用户界面,支持大多数Hadoop组件,包括 ...

  8. HDP 大数据平台搭建

    一.概述 Apache Ambari是一个基于Web的支持Apache Hadoop集群的供应.管理和监控的开源工具,Ambari已支持大多数Hadoop组件,包括HDFS.MapReduce.Hiv ...

  9. HDP 企业级大数据平台

    一 前言 阅读本文前需要掌握的知识: Linux基本原理和命令 Hadoop生态系统(包括HDFS,Spark的原理和安装命令) 由于Hadoop生态系统组件众多,导致大数据平台多节点的部署,监控极其 ...

随机推荐

  1. windows Apache ab安装及压力测试

    一:安装 ab是Apache自带的网站压力测试工具.使用起来非常的简单和方便.不仅仅是可以Apache服务器进行网站访问压力测试,还可以对其他类型的服务器进行压力测试.比如nginx,tomcat,I ...

  2. 大哥带的Orchel数据库的盲注入bool型

    0X01判断闭合 ?username=SMITH' 错误 ?username=SMITH'' 正确 ?username=SMITH' and ascii(substr((select user fro ...

  3. 【Python】Python读取文件报错:UnicodeDecodeError: 'gbk' codec can't decode byte 0x99 in position 20: illegal multibyte sequence

    环境描述 text.txt 今天的天气不错 是个皻的选择 读取文件的代码 #!/usr/bin/python #-*- coding:UTF-8 -*- f = open(r'D:\Python\Py ...

  4. 【Python】学习笔记五:缩进与选择

    Python最具特色的用缩进来标明成块的代码 缩进 i = 4 j = 2 if i > j: i = i+1 print(i) 这是一个简单的判断,Python的if使用很简单,没有括号等繁琐 ...

  5. spring cloud:gateway-eureka-filter

    Spring Cloud Gateway 的 Filter 的生命周期不像 Zuul 的那么丰富,它只有两个:“pre” 和 “post”. PRE: 这种过滤器在请求被路由之前调用.我们可利用这种过 ...

  6. 第五周总结&实验报告三

    第五周总结&实验报告三 实验报告 1.已知字符串:"this is a test of java".按要求执行以下操作:(要求源代码.结果截图.) ① 统计该字符串中字母s ...

  7. What is 'typeof define === 'function' && define['amd']' used for?

    What is 'typeof define === 'function' && define['amd']' used for? This code checks for the p ...

  8. MFC ATL STL概要

    MFC-----应用程序框架     ATL-----写COM的利器     STL-----用来写逻辑部分 MFC:   MFC的目标是桌面应用,当然也有网络部分但很不充分.MFC是一套APP   ...

  9. 转:C语言inline详细讲解

    本文介绍了GCC和C99标准中inline使用上的不同之处.inline属性在使用的时候,要注意以下两点:inline关键字在GCC参考文档中仅有对其使用在函数定义(Definition)上的描述,而 ...

  10. Python学习之==>Excel操作

    一.简介 使用Python读.写.修改excel分别需要用到xlrd.xlwt以及xlutils模块,这几个模块使用pip安装即可. 二.读excel import xlrd book = xlrd. ...