Centos 7+CDH5.7.2一律署流程
来源:故事你真的zai听吗     阅读:874
曹雨灵
发布于 2018-07-21 23:28
查看主页

Centos 7+CDH5.7.2一律署流程

一、前期准备

1、虚拟机配置

这个配置是我在网上看到的,我就借使用了这个配置:

主节点:8g内存、硬盘80g

从节点:2g内存、硬盘80g

安装系统的时候,我建议将IP和主机名都给配置好,这样就省的在系统中进行配置了,当然下面也有在系统中配置的方法。虚拟机系统安装可以参见:虚拟机:CentOS 7系统安装

所以假如你要用虚拟机来完成这个配置的话,那么,你的主机的配置内存就不能低于16G了。而且还要找一个盘符较大的磁盘空间,不然到后面操作CDH的时候会很尴尬,我第一次就被卡在了硬盘空间不足上,而后又重新找了一个较大的盘符进行了重新安装,包括虚拟机系统。

2、软件版本

1.JDK版本:jdk-8u131-linux-x64.tar.gz

2.Scala版本:scala-2.11.0.tgz

以上两个包建议用rpm或者者yum安装,这样可以省点事,不过我是用的这两个包。

3.jdbc连接包:mysql-connector-java-5.1.38-bin.jar

4.MySQL相关包:

MySQL-client-5.6.29-1.linux_glibc2.5.x86_64.rpm

MySQL-server-5.6.29-1.linux_glibc2.5.x86_64.rpm

5.CDH安装相关的包:

cloudera manager包:cloudera-manager-centos7-cm5.7.2_x86_64.tar.gz

CDH包:

CDH-5.7.2-1.cdh5.7.2.p0.11-el7.parcel

CDH-5.7.2-1.cdh5.7.2.p0.11-el7.parcel.sha1

manifest.json

注意centos要下载el7的。

6.系统用Linux的CentOS 7版本,CentOS 7和CentOS 6.5在命令上有少量区别,这里会进行说明。

3、集群的规划

IP地址

主机名

说明

192.168.75.41

cdh01

主节点、从节点

192.168.75.42

cdh02

从节点

192.168.75.43

cdh03

从节点

二、开始安装前配置和预装软件

1、服务器配置

修改每台节点服务器的有关配置,包括IP、hostname、selinux,防火墙。

假如你在安装CentOS7系统的时候已经指定了主机名和IP地址,那么IP修改和hostname修改即可以省略。但是这里面要强调一点的是,假如你想用yum安装,那么DNS肯定要配置。

1.IP修改

这里要用固定IP,而centOS 7已经没有setup命令,所以图形界面的设置已经没有了,这里只能修改配置文件,而且配置文件的名称还不固定,每个人的都可能不一样,这里我说一下位置,IP配置文件的位置:/etc/sysconfig/network-scripts/,如下图:

Centos 7+CDH5.7.2一律署流程

这里我的配置文件名称叫做ifcfg-ens33。而CentOS 7系统竟然连vim也没有了,只有vi,所以就是如下:

Centos 7+CDH5.7.2一律署流程

如上图:BOOTPROTO、ONBOOT是需要修改的,剩下四项是需要手动增加的。由于后面要用yum安装,所以这里必需配置DNS,测试环境可以将DNS配置成网关的地址。

Centos 7+CDH5.7.2一律署流程

如上图,重启网络服务,这个命令没有更改,而后查看ip。

每台都进行这样的配置。

2.hostname修改

分别对三台都进行更改,并且注意每台名称和ip,每台都要配上。

[root@hodoop1~] vi /etc/sysconfig/network

#配置内容

NETWORKING=yes

HOSTNAME=cdh01

此处修改完成需要重启才能生效,也可以用如下方法,立即生效:

[root@hodoop1~] hostname cdh01

[root@hodoop1~] hostname

cdh01

3.关闭防火墙

CentOS 7.0默认用的是firewall作为防火墙,相关操作变动很大,和6.5版本的一点也不一样,操作如下:

[root@hadoop1~]firewall-cmd --state #查看防火墙状态

running

[root@hadoop1~]systemctl stop firewalld #中止防火墙的服务

[root@hadoop1~]systemctl disable firewalld #禁止开机启动

rm '/etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service'

rm '/etc/systemd/system/basic.target.wants/firewalld.service'

4.selinux关闭

所有节点都需要关闭,这是官方文档要求的。

[root@hadoop1~]vi /etc/sysconfig/selinux

SELINUX=disabled

重启才能生效,重启后检查。

[root@cdh01~]sestatus -v

SELinux status: disabled #表示已经关闭了。

5.免密登录配置

安装过程中master需要各个节点的root免登录密码,先在master上生成公钥:

ssh-keygen

ssh-copy-id root@192.168.75.41

ssh-copy-id root@192.168.75.42

ssh-copy-id root@192.168.75.43

分别对每台节点进行以上操作,操作完了可以通过ssh ip进行验证能否可以无需输入密码就能直接登录到节点服务器上去。

6.ip和主机名映射关系

操作如下:

[root@hadoop1~]vi /etc/hosts

#内容如下

127.0.0.1 localhost

::1 localhost

192.168.75.41 cdh01

192.168.75.42 cdh02

192.168.75.43 cdh03

内容如上,保存退出,而后可以用scp命令将这个配置拷贝给其余主机。

scp /etc/hosts root@192.168.75.42:/etc/hosts

7.NTP服务器设置

网上很多博客都提到这个配置,说是让各个节点统一时间,但是我没有配置,我也将这个配置放到这里:

[root@cdh01~]yum -y install ntp #更改master的节点

[root@cdh01~]vi /etc/ntp.conf

注释掉所有server *.*.*的指向,新增一条可连接的ntp服务器(百度一下ntp服务器)

server ntp.sjtu.edu.cn iburst

在其余节点上把ntp指向master服务器地址就可(/etc/ntp.conf下)

server 192.168.160.130 iburst 所有节点。

2、第三方依赖包

1.其余依赖

针对这个步骤,你可以看网上很多的博客都是将这个步骤放到了MySQL安装的后面,但是经过本人的测试,这一步还是放在前面比较好,由于后面安装的软件,凡是有依赖的,你在这里已经做好了,所以在这里操作安装依赖包,并且是所有节点都安装。

yum install chkconfig python bind-utils psmisc libxslt zlib sqlite fuse fuse-libs redhat-lsb cyrus-sasl-plain cyrus-sasl-gssapi

注意这个地方依赖包肯定要安装完整了,会经过三个y/N的过程,一律选择Y,这个安装的过程完全看你的网速了,基本敲完这个命令你即可以休息一会了。

2.MySQL jar包

这个环节只要要在主节点上进行就可。

在cdh01上准备mysql的jar包:

mkdir -p /usr/share/java

修改jar包的名字,并拷贝到/usr/share/java/目录:

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

注意上述操作,是修改了jar包的名字,由于后面有操作会寻觅这个jar包的这个固定的名字,所以这里要修改一下名字。

3、安装jdk

这个是所有服务的基础,每个节点都需要安装。

1.卸载jdk

安装之前首先检查一下,你的服务器能否默认安装了OpenJDK,假如系统自带了,就需要卸载,步骤如下:

#检查能否安装

[root@cdh01~]java -version

java version "1.7.0_75"

OpenJDK Runtime Environment (rhel-2.5.4.2.el7_0-x86_64 u75-b13)

OpenJDK 64-Bit Server VM (build 24.75-b04, mixed mode)

#查看需要卸载的包

[root@cdh01~]rpm -qa | grep jdk

java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64

java-1.7.0-openjdk-headless-1.7.0.75-2.5.4.2.el7_0.x86_64

#卸载

[root@cdh01~]yum -y remove java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64

[root@cdh01~]yum -y remove java-1.7.0-openjdk-headless-1.7.0.75-2.5.4.2.el7_0.x86_64

#再次检查

[root@cdh01~]java -version

bash: /usr/bin/java: No such file or directory

假如没有安装,则可以跳过此步骤,我的系统没有自带jdk。

2.安装

如下两个方法,任选其一,不要都做。

1>rpm或者yum安装

直接用命令进行安装就可,这里不做过多解释。

2>用压缩包安装

将准备的好的安装包上传,我习惯的目录是:/home/software,上传完成,进行解压:

tar -zxvf jdk-8u131-linux-x64.tar.gz

mv jdk-1.8.0 jdk1.8

假如你还要安装spark,可以将环境变量和Scala一起配置。

配置环境变量:

vi /etc/profile

在文件中追加一下内容:

#java

export JAVA_HOME=/home/software/jdk1.8

export PATH=$PATH:$JAVA_HOME/bin

保存退出之后,这里还需要设置一个软连接:

mkdir /usr/java

ln -s /home/software/jdk1.8 /usr/java/default

假如你用的是yum或者者rpm安装的jdk那么这些步骤即可以省略。由于CDH平台安装的时候默认寻觅的jdk路径为/usr/java。

4、安装Scala

假如你要安装Spark肯定不能省略Scala的安装,否则,你在web端操作CDH的时候,会给你报错,网上的处理方法,基本都是说的jdk没人说到Scala。

这个操作同样也是在所有的节点上。

目录还是在/home/software。操作如下:

tar -zxvf scala-2.11.0.tgz

mv scala-2.11.0 scala2.11

而后配置环境变量:

vi /etc/profile

同样在末尾追加以下内容:

export SCALA_HOME=/home/software/scala2.11

export PATH=$PATH:$SCALA_HOME/bin

5、安装mysql

MySQL的安装只要要在主节点进行就可。

1.卸载

安装MySQL也同样需要检查,系统能否自带了,centos7自带的是mariadb,首先检查,命令如下:

[root@cdh01]rpm -qa | grep mariadb

mariadb-libs-5.5.41-2.el7_0.x86_64

如上的情况是存在,假如存在就用以下命令进行卸载:

[root@cdh01]rpm -e --nodeps mariadb-libs-5.5.41-2.el7_0.x86_64

2.安装

将下载好的MySQL rpm包拷贝到服务器上,而后解压、安装。

1>创立使用户及使用户组

#添加使用户组mysql:

groupadd mysql

#添加使用户mysql,加入mysql使用户组:

useradd -r -g mysql mysql

2>安装MySQL

#安装server:

rpm -ivh MySQL-server-5.6.29-1.linux_glibc2.5.x86_64.rpm

#安装client:

rpm -ivh MySQL-client-5.6.29-1.linux_glibc2.5.x86_64.rpm

3>增加随机启动

将mysqld加入系统服务,并随机启动,命令如下:

cp /usr/share/mysql/mysql.server /etc/init.d/mysqld

4>启动MySQL

启动mysqld的命令如下:

service mysqld start

5>修改密码

首先获取mysql安装时root使用户的随机密码:

vim /root/.mysql_secret

也可用cat命令查看:

cat /root/.mysql_secret

此密码只能使用来修改密码用。

必需要修改root使用户的密码才可以用mysql,否则只能连接不能操作

mysqladmin -u root -p password root

6>测试

#连接进入mysql,命令如下:

mysql -u root -p

root

#查看mysql的安装运行路径,命令如下:

ps -ef|grep mysql

7>MySQL相关问题

假如出现没有权限的问题,在mysql受权(在安装mysql的机器上执行),执行下面的语句,进行受权:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;

FLUSH PRIVILEGES;

*.*:所有库下的所有表。

%:任何IP地址或者主机都可以连接。假如%配置不生效,就配置具体的主机名称。

3.创立数据库

如下命令是创立部署各个服务所需的数据库,我本人倾向使用不使用先创立好,使用的时候即可以直接部署服务了,不必再来数据库进行创立。

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;

三、安装Cloudera-Manager

将Cloudera相关的四个包,如下:

cloudera-manager-centos7-cm5.7.2_x86_64.tar.gz

CDH-5.7.2-1.cdh5.7.2.p0.11-el7.parcel

CDH-5.7.2-1.cdh5.7.2.p0.11-el7.parcel.sha1

manifest.json

上传到所有的服务器上,在所有的服务器上执行以下操作。

1、安装CM

解压cm tar包到指定目录,先创立目录,命令操作如下:

[root@cdh01 ~]mkdir /opt/cloudera-manager

[root@cdh01 ~]tar -zxvf cloudera-manager-centos7-cm5.7.2_x86_64.tar.gz -C /opt/cloudera-manager

创立cloudera-scm使用户

#创立

[root@cdh01 ~]useradd -r -d /opt/cloudera-manager/cm-5.7.2/run/cloudera-scm-server -M -c "Cloudera SCM User" cloudera-scm

#查看

[root@cdh01 ~]id cloudera-scm

2、配置

1.配置从节点的老大

配置从节点cloudera-manger-agent指向主节点服务器,我现在的集群规划,是需要在每台服务器上都进行如下配置:

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

将server_host改为CMS所在的主机名即cdh01

server_host=cdh01

2.配置仓库目录

此操作只要在主节点进行就可,在主节点中创立parcel-repo仓库目录,命令如下:

[root@cdh01 ~]mkdir -p /opt/cloudera/parcel-repo

[root@cdh01 ~]chown cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo

[root@cdh01 ~]cp CDH-5.7.2-1.cdh5.7.2.p0.18-el7.parcel CDH-5.7.2-1.cdh5.7.2.p0.18-el7.parcel.sha1 manifest.json /opt/cloudera/parcel-repo

注意:其中CDH-5.7.2-1.cdh5.7.2.p0.18-el5.parcel.sha1 后缀要把1去掉,操作如下:

mv CDH-5.7.2-1.cdh5.7.2.p0.18-el7.parcel.sha1 CDH-5.7.2-1.cdh5.7.2.p0.18-el7.parcel.sha

3.配置CDH从节点目录

在所有的节点上创立parcels目录,操作如下:

mkdir -p /opt/cloudera/parcels

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

解释:Clouder-Manager将CDH从主节点的/opt/cloudera/parcel-repo目录中抽取出来,分发解压激活到各个节点的/opt/cloudera/parcels目录中。

4.初始化数据库

此操作在主节点上进行,初始脚本配置数据库scm_prepare_database.sh,操作命令如下:

[root@cdh01 ~]/opt/cloudera-manager/cm-5.7.2/share/cmf/schema/scm_prepare_database.sh mysql -hcdh01 -uroot -proot --scm-host cdh01 scmdbn scmdbu scmdbp

说明:这个脚本就是使用来创立和配置CMS需要的数据库的脚本。各参数是指:

mysql:数据库使用的是mysql,假如安装过程中使用的oracle,那么该参数就应该改为oracle。

-hcdh01:数据库建立在cdh01主机上面。也就是主节点上面。

-uroot:root身份运行mysql。-proot:mysql的root密码是root。

--scm-host cdh01:CMS的主机,一般是和mysql安装的主机是在同一个主机上。

最后三个参数是:数据库名,数据库使用户名,数据库密码。

执行完成命令正常如下:

Centos 7+CDH5.7.2一律署流程

在这个地方即可以解释上面为什么要改jar名了。

3、启动服务

1.启动server

此命令只要在主节点执行就可。

进入/opt/cloudera-manager/cm-5.7.2/etc/init.d/目录中,执行如下命令:

./cloudera-scm-server start

#或者者直接执行以下命令:

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

2.启动agent

启动cloudera-scm-agent,需要在所有的从节点上启动。

进入/opt/cloudera-manager/cm-5.7.2/etc/init.d/目录中,执行如下命令:

./cloudera-scm-agent start

#或者者直接执行以下命令:

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

启动如下图所示:

Centos 7+CDH5.7.2一律署流程

这里要说明一下,基本上上述两项启动都会配置随机启动,但是我试验了很多个随机启动的方式,都不论使用,这里暂时不做,后期我找到可以随机启动的方式再补充。

注:以上环节只需操作的没有问题,以下的步骤将不会出现任何疑问。

四、服务安装

1、web登录

在浏览器中输入192.168.75.41:7180。

出现下图登录界面,默认使用户名和密码:admin

Centos 7+CDH5.7.2一律署流程

出现这个界面说明CM已经安装成功了,下面就在这个web界面中部署各种服务了。

2、web引导安装

此过程中没有提到的界面,默认选择继续。

1.先择express版本

当登录之后,会进当选择express版本的界面,在此界面选择免费就可,而后继续。

Centos 7+CDH5.7.2一律署流程

2.配置主机

在服务器的各个从节点已经安装并启动了agent,还在各个节点都配置了server指向,所以各个节点的agent就会给server发消息报告,这里可以在“当前管理的主机”中看到三个主机,一律勾选并继续。

注意假如cloudera-scm-agent没有设为开机启动,假如以上有重启这里可能会检测不到其余服务器。之前配置的时候,我就没有配置随机启动。

Centos 7+CDH5.7.2一律署流程

3.选择CDH版本

这里选择自己需要的版本就可。这里我选择了两项,其一选择方式用Parcel;其二CDH版本选择的是CDH-5.7.2-1 cdh5.7.2p0 18;其余均选择无。

Centos 7+CDH5.7.2一律署流程

4.安装Parcel

此步是分发parcels到各个节点,上一步继续,这一步是自动进行的不需要什么操作,唯一需要的就是等待。当一律完成点击继续。

Centos 7+CDH5.7.2一律署流程

5.配置校验

此步是对主机配置的正确性进行检测。

Centos 7+CDH5.7.2一律署流程

这个地方要注意这个地方有两项没有检查通过,但是我没做解决,我在网上找到了一个方法,但是不知道具体能否管使用,方式如下:

可以在集群中用以下命令

echo 0 > /proc/sys/vm/swappiness

echo never > /sys/kernel/mm/transparent_hugepage/defrag

而后再点击上面的重新运行会发现这次一律检查通过了。

Centos 7+CDH5.7.2一律署流程

我没有做上面的解决,但是后面的安装也没有影响。

6.选择服务

重头戏来了,这里要选择要安装用的服务,CDH5默认提供了如图的六种搭配,当然那也可以选择则自己设置,这里我选择的就是自己设置。

Centos 7+CDH5.7.2一律署流程

7.角色分配

这里就是进行各个服务角色分配给那个节点的,可以默认,也可以自己做选择。

Centos 7+CDH5.7.2一律署流程

8.数据库设置选择

这里就使用到了前面创立的各个数据库,根据你选择的服务,这里会让你填写每个服务使用到的数据库,以及使用户名和密码。

Centos 7+CDH5.7.2一律署流程

9.集群审核

这里就都是默认的就好,除非你有规划,可以在这里进行更改。

Centos 7+CDH5.7.2一律署流程

10.开始安装

假如web引导安装会出问题,那么问题都是出在这一步,这里会出现的问题,我遇到的问题,基本都在前面做了详情,就是安装jdk和Scala的时候。基本上其余的不会出什么问题。

Centos 7+CDH5.7.2一律署流程

11.安装完成

Centos 7+CDH5.7.2一律署流程

Centos 7+CDH5.7.2一律署流程

这个时候安装完成了,点击完成,就会进入如下界面。

查看集群情况,我这里有挺多报警,大概查看下基本都是内存或者者存储空间用阈值的报警,因为我是本地虚拟机的,所以这些条件都有限,这里暂时不解决这些报警。

Centos 7+CDH5.7.2一律署流程

以上就是安装的一律过程。

需要大数据视频学习资料的 可以私信回复“大数据”

免责声明:本文为用户发表,不代表网站立场,仅供参考,不构成引导等用途。 系统环境 Linux
相关推荐
初学JS,if与else判断语句实例
Ubuntu 16.04安装ROS Kinetic详细教程 | Tutorial to Install and Configure ROS Kinetic on Ubuntu 16.04
Mycat数据库分库分表中间件(实现读写分离)
阅读以下程序员写代码的真相,大部分程序员都中枪了
张三这小子的电脑又崩了,喊我给他重装系统,我教会他了,而后他……
首页
搜索
订单
购物车
我的