CDH5.16.2单机安装(开启kerberos验证)

 

前言:

公司需求,之前做的impala单机安装并不满足需求,负责人叙述需求没有说清楚,还要过kerberos验证,导致最后需要单独在部署CDH并开启kerberos验证,当然,不装CDH独立部署也能够开启kerberos,不过那个麻烦一点,就不弄麻烦的那个方案了,就从新搞个CDH,弄一弄简单的,以后有时间可以给大家单独出一个教程,独立安装的impala集成kerberos

CDH()是什么:

CDH是Cloudera的100%开放源代码平台发行版,包括Apache Hadoop,是专门为满足企业需求而构建的。CDH可立即提供企业使用所需的一切。通过将Hadoop与十几个其他关键的开源项目集成在一起,Cloudera创建了功能先进的系统,可以帮助您执行端到端的大数据工作流程。
CDH解决了什么问题:一个对Apache Hadoop的集成环境的封装,可以使用Cloudera Manager进行自动化安装。也就是说让部署变得更容易,并且组件也更好管理了,大家想一下,如果你有1000个节点需要部署hadoop环境,那么你是不是要一台一台弄呢,那很麻烦,也很容易出问题,版本的问题杂七杂八的问题,很费时间,有的同学说,我可以,但是时间就1天呢?你有没有想过这个问题呢,是hadoop、zookeeper、spark、hbase、impala等等组件一起哦,显然是有很大问题的,那么cdh就出现了,方便了我们的部署,也方便了组件版本管理

kerberos(三个头的地狱犬)简介:

这里还是简单的介绍一下kerberos是什么,他其实就是一种认证机制,主要用于计算机网络的身份鉴别,它使用了一个由两个独立的逻辑部分:认真服务器、票据授权服务器,这两个组成了“可依赖的第三方”,我们术语说的KDC密钥分发中心,就是这东西。kerberos工作在于证明用户身份的“票据”。这里就不继续往深说了,还是说部署的事情吧。

环境:

系统:centos 7

cdh版本:cdh 5.16.2

mysql:mysql5

jdk:java8

准备:

1、cm的安装包(这里多说一句,除了压缩包的方式还有rpm包的方式可以安装,我这里因为习惯就用压缩包了)

https://archive.cloudera.com/cm5/cm/5/

CDH5.16.2单机安装(开启kerberos验证)_第1张图片

2、parcels文件(三个文件需要下载)

https://archive.cloudera.com/cdh5/parcels/5.16.2/

CDH5.16.2单机安装(开启kerberos验证)_第2张图片

别下错了哈,下错了会出问题的,这里的包就是不同系统选择的包是不一样的我们就选el7,因为是centos7嘛

3、MySQL(我们这里使用的是rpm安装,方便)

CDH5.16.2单机安装(开启kerberos验证)_第3张图片

mysql的多一点,不过都不算大,大家可以网上找找,这些都很容易找到的,这里就不叙述在哪下了,当然如果已经有了mysql当然更好了,方便就完事了

4、JDK

我是压缩包解压,然后在配置环境变量的,下载就不说了,这个大家都知道,版本确定一下是8哦,大家一定要把虚拟机自带的openjdk给卸载了哈

rpm -qa | grep jdk

如果是openjdk 就

rpm -e --nodeps  加上返回的结果名进行卸载

环境部署

  • 节点服务器配置

    vi /etc/sysconfig/network  添加

NETWORKING=yes 
HOSTNAME=master

我这里是master哈,大家跟自己的哈

   vi /etc/hostname   删除文件内容添加如下内容(当前主机名)

master

   vi /etc/hosts  添加

192.168.1.106 master

vi /etc/sysconfig/selinux   修改(这里内容别搞错了哈,搞错了就启动不了机子了)

SELINUX=disabled

重启服务器

reboot

更改防火墙配置

依次执行命令如下:

systemctl stop firewalld 

systemctl disable firewalld

systemctl status firewalld

安装时间同步服务(单机可安可不安,万一以后加节点可能有用就加上咯)

yum -y install ntp
vi /etc/ntp.conf  

注释掉所有server *.*.*的指向,新添加一条可连接的ntp服务器(百度上很多)参考服务器

server time1.aliyun.com

server time2.aliyun.com

server time3.aliyun.com

server time4.aliyun.com

server time5.aliyun.com

server time6.aliyun.com

server time7.aliyun.com

server 2.cn.pool.ntp.org

server 1.asia.pool.ntp.org

server 2.asia.pool.ntp.org

执行命令

service ntpd start
ntpdate -u 1.asia.pool.ntp.org
service ntpd restart

在执行

ssh-keygen -t rsa    一直使用默认

查看是否已经安装MYSQL执行命令如下

rpm -qa | grep mariadb

如果存在那么就卸载

yum remove mariadb-libs  或者yum remove mariadb

安装MYSQL依赖:

yum install -y perl-Module-Install.noarch 
yum install -y MySQL-python
yum remove mariadb-libs

rpm安装mysql的所有rpm文件

rpm -ivh **.rpm

修改配置文件路径:

cp /usr/share/mysql/my-default.cnf /etc/my.cnf

在配置文件中增加以下配置并保存:

vi /etc/my.cnf 
default-storage-engine = innodb
innodb_file_per_table
collation-server = utf8_general_ci
init-connect = 'SET NAMES utf8'
character-set-server = utf8

初始化数据库执行

/usr/bin/mysql_install_db

开启MYSQL服务:

service mysql restart

查看mysql root初始化密码:

cat /root/.mysql_secret

登陆mysql

mysql -uroot -p复制上一条命令打印出来的密码

改密码

SET PASSWORD=PASSWORD('123456');

退出

exit

开启开机启动

chkconfig mysql on

拷贝mysql-connector-java-5.1.25-bin.jar到/usr/share/java/mysql-connector-java.jar   :如果没有/usr/share/java这个目录需先创建

cp mysql-connector-java-5.1.25-bin.jar /usr/share/java/mysql-connector-java.jar

创建相关数据库

mysql -uroot -p123456
create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci; 
create database amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci; 
create database hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci; 
create database monitor DEFAULT CHARSET utf8 COLLATE utf8_general_ci; 
create database oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

开启MySQL远程访问

use mysql;
grant all on *.* to root@'master' Identified by '123456'; 
flush privileges;

MYSQL OK

CM(Cloudera-Manager)部署

cd /opt/
tar -zxvf /mydata/cloudera-manager-centos7-cm5.16.2_x86_64.tar.gz 

修改 cloudera-scm-agent/config.ini中的server_host为主节点主机名

vi /opt/cm-5.16.2/etc/cloudera-scm-agent/config.ini

server_host=cdh.master

创建cm用户

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

如果没有安装psmisc 需要安装一下 (否则会报:cloudera-scm-agent:行109: pstree: 未找到命令)

yum install -y psmisc

这个我之前也没管,也去装,好像也没问题

初始化数据

cd /opt/cm-5.16.2/share/cmf/schema
#scm_prepare_database.sh [-数据库类型] [-h主机名 [-u用户名] [-p密码]      [主机地址] [创建的数据库名] [用户] [密码]
./scm_prepare_database.sh mysql -hmaster -uroot -p123456 --scm-host master scm root 123456

把parcel包放到/opt/cloudera/parcel-repo  总共三个文件

修改文件名,这个不能忘

mv CDH-5.16.2-1.cdh5.16.2.p0.8-el7.parcel.sha1 CDH-5.16.2-1.cdh5.16.2.p0.8-el7.parcel.sha

chown cloudera-scm:cloudera-scm -R /opt/cloudera/parcel-repo/ #修改权限属性

然后就启动了瑟

/opt/cm-5.16.2/etc/init.d/cloudera-scm-server start
/opt/cm-5.16.2/etc/init.d/cloudera-scm-agent start
如果是单机那两个都启动 ,如果是集群 ,那么除了主节点要两个都启动,其他只需要启动agent

CDH各个文件所在位置

/etc/hadoop/conf   #配置文件所在
/opt/cm-5.16.2/log   #日志所在位置
/opt/cm-5.16.2/etc/cloudera-scm-server   #数据库与日志相关配置文件在目录:

登录web界面 进行配置安装cdh

http://ip:7180
账号:admin
密码:admin

CDH5.16.2单机安装(开启kerberos验证)_第4张图片

CDH5.16.2单机安装(开启kerberos验证)_第5张图片

CDH5.16.2单机安装(开启kerberos验证)_第6张图片

继续往下

选择主机了,这个我们是单机,那么就选自己那台了

选择需要安装的clouderamanager版本 要选择与之前下载好的CDH的版本一致(我之前就下载错了一次,那么就没有显示出来parcel包,贼尴尬)

CDH5.16.2单机安装(开启kerberos验证)_第7张图片

继续,这一步就是安装parcel包,并且分发安装到各节点(时间消耗还可以,我单机,集群慢一点)

CDH5.16.2单机安装(开启kerberos验证)_第8张图片

这里安装好了

CDH5.16.2单机安装(开启kerberos验证)_第9张图片

出了两个问题,我是没有去管它的,也可以弄一弄,随意

然后就是集群设置和安装组建了,我就不一一叙述了(比较简单,配置-安装-启动)

开启kerberos安装验证

我们服务器上面是没有这个的,那么我们得装一个通过yum直接安装,还是比较方便的,如果yum不能用,那就下载rpm包的方式安装哈,都可以

1、安装

yum -y install krb5-server krb5-libs krb5-auth-dialog krb5-workstation

2、修改/etc/krb5.conf配置

CDH5.16.2单机安装(开启kerberos验证)_第10张图片

因为我是把kerberos交给CDH在管理的,所以我之前改的配置都让cdh给改了哈

3、修改/var/kerberos/krb5kdc/kadm5.acl配置

4、修改/var/kerberos/krb5kdc/kdc.conf配置

CDH5.16.2单机安装(开启kerberos验证)_第11张图片

5、创建Kerberos数据库

kdb5_util create –r CDH.COM -s

要输密码

创建Kerberos的管理账号

kadmin.local
addprinc admin/[email protected]     #也是要输密码的
exit

把kerberos加入开机启动

chkconfig krb5kdc on
chkconfig kadmin on
service krb5kdc start
service kadmin start

然后剩下就是CDH页面配置了

CDH5.16.2单机安装(开启kerberos验证)_第12张图片

我这已经是开启了哈

管理->安全

CDH5.16.2单机安装(开启kerberos验证)_第13张图片

启用,然后往后配置,到了一个页面的时候注意

CDH5.16.2单机安装(开启kerberos验证)_第14张图片

我是直接交给CM管理的

时间那个默认就行,后期再改都可以

CDH5.16.2单机安装(开启kerberos验证)_第15张图片

然后重启嘛,卸载的话CDH和关闭kerberos改天再说,先这样吧。

大家有疑问也可以留言和私信

 

你可能感兴趣的:(Hadoop安装,cloudera)