一、机子分配

注意,本安装教程是在真机上进行,而非虚拟机。另,此次搭建主要的目的是搭建测试环境,让Hadoop各组件能够运作起来即可,完成搭建后,将用小数据量进行相关数据的计算与测试。线上环境将会使用阿里云主机。

以下是四台真机配置:

机子内网IP地址

主机名

内存大小

磁盘大小

CPU

192.168.0.29

bigdata01(主)

8GB

2T

1个物理CPU,4核

192.168.0.133

bigdata02(从)

8GB

500GB

1个物理CPU,2核

192.168.0.135

bigdata03(从)

8GB

500GB

1个物理CPU,2核

192.168.0.115

bigdata04(从)

8GB

500GB

1个物理CPU,2核

根据机子的配置,建议Hadoop的NameNode放在29这台机子上,配置高可用的话,NameNodeStandby放在除29以外任意一台机子均可,DataNode四台机子都要配。其它组件如何放置,后续会说到。

Tips:

在linux系统环境下,查看机子的内存大小命令:cat /proc/meminfo |grep MemTotal

查看机子的硬盘大小:fdisk -l | grep Disk

查看机子的CPU情况:

有两个公式可以记一下:总核数 = 物理CPU个数 * 每颗物理CPU的核数;

总逻辑CPU数 = 物理CPU个数 * 每颗物理CPU的核数 * 超线程数

查看物理CPU个数:cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l

查看每个物理CPU的核数:cat /proc/cpuinfo| grep "cpu cores"| uniq

查看逻辑CPU的个数:cat /proc/cpuinfo| grep "processor"| wc -l

二、下载相关文件
1、ubuntu系统

http://old-releases.ubuntu.com/releases/16.04.3/ubuntu-16.04.4-server-amd64.iso

关于操作系统的选择,其实区别不大,这种级别的问题,对我这种水平的人,不太能够感知得到,当然会继续努力,去感知操作系统级别的问题。

2、cloudera manager相关下载

先下载好来,然后传到各个节点上去,不然安装过程中下载,速度慢得让你分分钟想砸键盘。

tar包下载:

https://archive.cloudera.com/cm5/cm/5/cloudera-manager-xenial-cm5.15.2_amd64.tar.gz

parcles下载:

http://archive.cloudera.com/cdh5/parcels/5.15.2/CDH-5.15.2-1.cdh5.15.2.p0.3-xenial.parcel

http://archive.cloudera.com/cdh5/parcels/5.15.2/CDH-5.15.2-1.cdh5.15.2.p0.3-xenial.parcel.sha1

http://archive.cloudera.com/cdh5/parcels/5.15.2/manifest.json

下载的tar包,包含了cloudera manager server,cloudera manager daemons,cloudera manager agents。

parcles包则是CM特有的包格式,安装的各个组件就是从parcles里面取出来的。

三、系统环境的设置
1、root用户的设置(四个节点都要)

ubuntu系统在刚安装完成后,root用户默认不被启用,也没有密码,因此需要给root用户设置一个登陆密码,还要设置root用户允许ssh登陆,这样会方便我们进行软件的安装。

给root用户设置密码:sudo passwd root

开启root用户ssh远程登陆权限:sudo vi /etc/ssh/sshd_config,将文件中的PermitRootLogin prohibit-password 改为 PermitRootLogin yes

要使修改的配置生效,需要重启ssh服务:service ssh restart

设置好了之后,登录root用户,后面都是用root用户操作了:su root

2、修改hosts文件(四个节点都要)

命令:vim /etc/hosts

将ip和主机名添加到文件末尾:

注意ip和主机名修改为你自己的。

3、免密登录ssh设置(四个节点都要)

这一步很重要,不然在安装CM的过程中会出错,一定要完成这一步。

首先,在每个节点上分别生成密钥

命令:ssh-keygen -t rsa

一路回车,结束后,在/root/.ssh文件夹中,会有id_rsa,id_rsa.pub两个文件。

每个节点都生成密钥成功后,然后我们把每个节点的id_rsa.pub文件中的内容,集中到一个名为authorized_keys文件中,然后把这个文件分别传送到各节点的.ssh文件夹中,这样我们就可以在任意节点使用ssh命令免密登录到别的节点上去。

最终,.ssh文件夹中,我们可以看到以下几个文件:

试试效果:

可以看到,这里并没有提示要求我们输入密码登录到bigdata02机子上。

4、安装jdk1.8(四个节点都要)

安装包已经下载好了,就在之前已经下载好的cm6.3.0-ubuntu1604.tar.gz这个包里。

将包上传到机子上,之后使用命令:tar -zxvf cm6.3.0-ubuntu1604.tar.gz,解压。

java安装包在路径:/cm6.3.0/pool/contrib/o/oracle-j2sdk1.8

注意这里是一个deb包,我们需要使用dpkg命令进行包的安装。

命令:dpkg -i oracle-j2sdk1.8_1.8.0+update181-1_amd64.deb

默认的安装路径为:/usr/lib/jvm/java-8-oracle-cloudera。

接下来配置jdk的全局环境变量

编辑 /etc/profile文件:vim /etc/profile

在文件末尾加上下面的代码:

export JAVA_HOME=/usr/lib/jvm/java-8-oracle-cloudera

export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib

export PATH=${JAVA_HOME}/bin:$PATH

加入完成后,要使全局变量生效,使用命令:source /etc/profile

之后,输入:java -version,出现下面的提示,则说明安装成功了:

5、安装ntp(四个节点都要)

安装ntp包的目的是,为了保障各节点的时间能够同步,否则安装CDH过程中,会出现时间不同步的错误。

使用命令:apt-get install ntp 进行安装

使用命令:service ntp start 启动服务

6、安装mysql数据库(主节点需要,其它节点不需要安装)

使用命令安装:apt-get install mysql-server

安装完成后,修改一下配置文件:vim /etc/mysql/mysql.conf/mysqld.cnf

在【mysqld】下,添加:

lower_case_table_names=1

default-time_zone = '+8:00'

skip_ssl

重启mysql:service mysql restart

7、将下载的parcle文件放到主节点的目录下

将parcle文件上传到主节点目录,可以方便后续CM安装parcle,提高安装速度。

8、修改swappniness的值(四个节点都要)

根据cloudera manager的建议,将值设定为10

命令:echo 10 > /proc/sys/vm/swappiness

四、测试配置好的环境
1、测试各节点是否网络通畅

ping bigdata01

ping bigdata02

ping bigdata03

ping bigdata04

2、测试各节点免密登录

ssh bigdata01

ssh bigdata02

ssh bigdata03

ssh bigdata04

都不需要输入密码,直接能够登录上,说明此项配置成功

五、安装Cloudera Manager并启动Server以及Agent
1、文件操作(主节点上操作)

首先解压到/opt/文件夹下:

tar zxvf ~/cloudera-manager-xenial-cm5.15.2_amd64.tar.gz -C /opt/

然后在opt文件夹下,再创建以下几个文件夹:

mkdir /opt/cloudera /opt/cloudera/parcels /opt/cloudera/parcel-repo

剪切过去:

mv ~/CDH-5.15.2-2.cdh5.15.2.p0.3-xenial.parcel.sha1 /opt/cloudera/parcel-repo/CDH-5.15.2-1.cdh5.15.2.p0.3-xenial.parcel.sha

剪切过去:

mv ~/CDH-5.15.2-2.cdh5.15.2.p0.3-xenial.parcel /opt/cloudera/parcel-repo/CDH-5.15.2-1.cdh5.15.2.p0.3-xenial.parcel

剪切过去:

mv ~/manifest.json /opt/cloudera/parcel-repo/manifest.json

删除压缩包:

rm -rf ~/cloudera-manager-xenial-cm5.15.2_amd64.tar.gz

2、添加Mysql驱动(主节点上操作)

cp /usr/share/java/mysql-connector-java.jar /opt/cm-5.15.2/share/cmf/lib/mysql-connector-java.jar

3、创建数据库(主节点上操作)

这里创建的数据库,是用来存放各个大数据组件的元数据的。

这里数据库已经配置好了远程root可以登录,因此在windows电脑上,使用Navicate连接数据库。在Navicate里之行下面的数据库创建语句:

CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

GRANT ALL ON scm.* TO 'scm'@'%' IDENTIFIED BY '123456';

CREATE DATABASE amon DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

GRANT ALL ON amon.* TO 'amon'@'%' IDENTIFIED BY '123456';

CREATE DATABASE rman DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

GRANT ALL ON rman.* TO 'rman'@'%' IDENTIFIED BY '123456';

CREATE DATABASE hue DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

GRANT ALL ON hue.* TO 'hue'@'%' IDENTIFIED BY '123456';

CREATE DATABASE sentry DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

GRANT ALL ON sentry.* TO 'sentry'@'%' IDENTIFIED BY '123456';

CREATE DATABASE metastore DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

GRANT ALL ON metastore.* TO 'hive'@'%' IDENTIFIED BY '123456';

CREATE DATABASE nav DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

GRANT ALL ON nav.* TO 'nav'@'%' IDENTIFIED BY '123456';

CREATE DATABASE navms DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

GRANT ALL ON navms.* TO 'navms'@'%' IDENTIFIED BY '123456';

CREATE DATABASE oozie DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

GRANT ALL ON oozie.* TO 'oozie'@'%' IDENTIFIED BY '123456';

4、创建SCM数据库(主节点上操作)

命令:/opt/cm-5.15.2/share/cmf/schema/scm_prepare_database.sh mysql scm scm

5、修改Agent配置(主节点上操作)

命令:vim /opt/cm-5.15.2/etc/cloudera-scm-agent/config.ini

修改server_host=localhost,改为server_host=192.168.0.29

6、复制到从节点(主节点上操作)

将整个Cloudera Manager的文件从主节点复制到其他三个从节点上:

scp -r /opt/cm-5.15.2 bigdata02:/opt/

scp -r /opt/cm-5.15.2 bigdata03:/opt/

scp -r /opt/cm-5.15.2 bigdata04:/opt/

7、创建cloudera-scm用户(四个节点都要)

命令:

useradd --system --home=/opt/cm-5.15.1/run/cloudera-scm-server --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm

bigdata01:

bigdata02:

bigdata03:

bigdata04:

我这里之前已经创建过了,所有会提示用户已经存在。

8、更改文件夹所属用户和用户组(四个节点都要)

命令:

mkdir /opt/cloudera /opt/cloudera/parcels /opt/cloudera/parcel-repo

chown -R cloudera-scm:cloudera-scm /opt/cloudera/parcels

chown -R cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo

chown -R cloudera-scm:cloudera-scm /opt/cm-5.15.2

更改前:

更改后:

9、启动Cloudera Manager Server(主节点)和Agent(四个节点都要)

在bigdata01节点上输入命令:

/opt/cm-5.15.2/etc/init.d/cloudera-scm-server start

在bigdata02、bigdata03、bigdata04上输入命令:

/opt/cm-5.15.2/etc/init.d/cloudera-scm-agent start

六、进入图形化界面安装CM和CDH
1、访问CM的图形化界面管理页面

当启动cloudera-scm-server成功后,等待几分钟之后,访问主节点的7180端口,就可以进入到图形化安装界面。刚开始启动完成之后,不能立马访问,因为程序还在数据库创建响应的表:

创建完成后,scm数据库中会有47张表格,之后再访问7180端口,就能看到登录页面了。

初始登录的账号密码为:admin admin

2、安装过程可能会出现的问题

Ubuntu安装Cloudera Manager以及CDH5.15.2的更多相关文章

  1. 通过Cloudera Manager部署CDH5.15.1的webUI界面详解

    通过Cloudera Manager部署CDH5.15.1的webUI界面详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客CDH的部署完全通过Cloudera Mana ...

  2. 离线安装Cloudera Manager 5和CDH5(最新版5.1.3) 完全教程

    关于CDH和Cloudera Manager CDH (Cloudera's Distribution, including Apache Hadoop),是Hadoop众多分支中的一种,由Cloud ...

  3. 离线安装 Cloudera Manager 5 和 CDH5.10

    关于CDH和Cloudera Manager CDH (Cloudera's Distribution, including Apache Hadoop),是Hadoop众多分支中的一种,由Cloud ...

  4. Cloudera Manager和CDH5.8离线安装

    https://blog.csdn.net/zzq900503/article/details/52982828 简介 我们在上篇文章中已经了解了CDH,为了后续的学习,我们本章就来安装CDH5.8. ...

  5. [转]Cloudera Manager和CDH5.8离线安装

    https://blog.csdn.net/zzq900503/article/details/52982828 https://www.cnblogs.com/felixzh/p/9082344.h ...

  6. 离线安装Cloudera Manager 5和CDH5(最新版5.9.3) 完全教程(六)CM的安装

    一.角色分配 Cloudera Manager Agent:向server端报告当前机器服务状态. Cloudera Manager Server:接受agent角色报告服务状态,以视图界面展现,方便 ...

  7. 离线安装Cloudera Manager 5和CDH5

    关于CDH和Cloudera Manager CDH (Cloudera's Distribution, including Apache Hadoop),是Cloudera 完全开源的Hadoop  ...

  8. hadoop基础----hadoop实战(七)-----hadoop管理工具---使用Cloudera Manager安装Hadoop---Cloudera Manager和CDH5.8离线安装

    hadoop基础----hadoop实战(六)-----hadoop管理工具---Cloudera Manager---CDH介绍 简介 我们在上篇文章中已经了解了CDH,为了后续的学习,我们本章就来 ...

  9. CDH构建大数据平台-使用自建的镜像地址安装Cloudera Manager

    CDH构建大数据平台-使用自建的镜像地址安装Cloudera Manager 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.   一.搭建CM私有仓库 详情请参考我的笔记: http ...

随机推荐

  1. Linux服务器定时脚本

    crontab -e 进入编辑模式,同vi编辑器操作. 用户所建立的crontab文件中,每一行都代表一项任务,每行的每个字段代表一项设置,它的格式共分为六个字段,前五段是时间设定段,第六段是要执行的 ...

  2. C#数据结构与算法系列(二十一):希尔排序算法(ShellSort)

    1.介绍 希尔排序是希尔(Donald Shell)于1959年提出的一种排序算法.希尔排序也是一种插入排序,它是简单插入排序经过改进之后的一个更高效的版本,也称为缩小增量排序. 2.基本思想 希尔排 ...

  3. Python优秀开源项目Rich源码解析

    这篇文章对优秀的开源项目Rich的源码进行解析,OMG,盘他.为什么建议阅读源码,有两个原因,第一,单纯学语言很难在实践中灵活应用,通过阅读源码可以看到每个知识点的运用场景,印象会更深,以后写代码的时 ...

  4. rsync+inotify 备份

    一,服务端安装(备份服务器): #安装rsync cd /usr/local/src/ wget http://rsync.samba.org/ftp/rsync/src/rsync-3.0.9.ta ...

  5. BZOJ3573 米特运输 题解

    题目 米特是D星球上一种非常神秘的物质,蕴含着巨大的能量.在以米特为主要能源的D星上,这种米特能源的运输和储存一直是一个大问题.D星上有N个城市,我们将其顺序编号为1到N,1号城市为首都.这N个城市由 ...

  6. MySQL常规操作

    数据库的相关概念 一.数据库的好处 1.可以持久化数据到本地 2.结构化查询 二.数据库的常见概念 ★ 1.DB:数据库,存储数据的容器 2.DBMS:数据库管理系统,又称为数据库软件或数据库产品,用 ...

  7. 5.scrapy过滤器

    scrapy过滤器 1. 过滤器 当我们在爬取网页的时候可能会遇到一个调转连接会在不同页面出现,这个时候如果我们的爬虫程序不能识别出 该链接是已经爬取过的话,就会造成一种重复不必要的爬取.所以我们要对 ...

  8. Springboot下实现阿里云短信验证功能(含代码)

    Springboot下实现阿里云短信验证功能 一 开通阿里云短信服务 阿里云官网注册登录 找到短信服务并开通 打开短信服务的管理台 在国内消息那栏中添加签名管理和模板管理(按照格式要求去写) 在右上角 ...

  9. Python3笔记027 - 6.2 参数传递

    第6章 函数 6.2 参数传递 在理解形参和实参的基础上,理解位置参数.关键字参数.可变参数这三种情形,以及这三种的混合情形. 6.2.1 形式参数和实际参数 形式参数:在定义函数时,函数名后面括号中 ...

  10. java 面向对象(三十一):异常(四) 自定义异常类

    如何自定义一个异常类?/* * 如何自定义异常类? * 1. 继承于现的异常结构:RuntimeException .Exception * 2. 提供全局常量:serialVersionUID * ...