当前位置: 代码迷 >> 综合 >> CDH6.2.0搭建教程
  详细解决方案

CDH6.2.0搭建教程

热度:86   发布时间:2024-02-07 14:50:44.0

1.集群准备

1 首先准备三台虚拟机,虚拟机ip地址可以ping通。

ip 名称
192.168.25.120 cdh1
192.168.25.121 cdh2
192.168.25.122 cdh3

2.修改IP和主机名

选择centos7来进行集群部署,克隆三台虚拟机 全部是在root 权限下执行

1.修改主机名

hostnamectl set-hostname cdh1

2 .修改IP地址

cd /etc/sysconfig/network-scripts/

vim ifcfg-ens33

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=cdbe8b2a-8792-43cc-b66e-fe176a3803bd
DEVICE=ens33
ONBOOT=yes
DNS1=8.8.8.8
IPADDR=192.168.25.120
NETMASK=255.255.255.0
GATEWAY=192.168.25.2

重启网卡: service network restart

3.reboot 重启虚拟机

4.重新登录root 用户

查看IP地址和主机名是否更改成功

ifconfig

5.ping www.baidu.com 能否ping成功

6.Centos7 切换 yum 源

yum install lrzsz(rz上传 lz下载)
修改CentOS默认yum源为mirrors.aliyun.com
1、首先备份系统自带yum源配置文件/etc/yum.repos.d/CentOS-Base.repo

[root@localhost ~]# mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

2、下载ailiyun的yum源配置文件到/etc/yum.repos.d/

[root@localhost ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

3、运行yum makecache生成缓存

yum makecache

yum -y update

7.其他两台主机重复上面操作。

3 系统环境搭建

三台虚拟机上 进行网络配置, 免密登录、防火墙关闭、selinux关闭

1.修改Hosts 域名映射

vim /etc/hosts
192.168.25.120   cdh1
192.168.25.121   cdh2
192.168.25.122   cdh3

2.SSH免密登录

1.Linux下生成密钥
生成linux下的密钥要用到 ssh-keygen 命令,一般执行完这个命令公钥和私钥会生成到 .ssh 的隐藏目录。在执行这个命令之前我们先检查一下这个目录是否存在,因为有些linux如果没有这个目录的话是不会生成key的。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bt4huPS2-1596723064618)(C:\Users\Lvli\AppData\Roaming\Typora\typora-user-images\1594626358330.png)]

2.执行 ssh-keygen -t rsa 直接回车回车就OK

3.拷贝公钥到其他两台机器:

ssh-copy-id -i .ssh/id_rsa.pub root@192.168.25.121
ssh-copy-id -i .ssh/id_rsa.pub root@192.168.25.122

3.防火墙关闭

yum  install -y lrzsz
yum install -y iptables-services
systemctl stop firewalld
systemctl disable firewalld

4.SELINUX 关闭

1 永久方法 – 需要重启服务器
修改/etc/selinux/config文件中设置
SELINUX=disabled
然后重启服务器。
2 临时方法 – 设置系统参数
使用命令 setenforce 0

5.JDK安装

 三台机器都装所有软件的安装路径mkdir -p /export/servers   所有软件压缩包的存放路径mkdir -p /export/softwares

上传jdk到/export/softwares路径下去,并解压

tar -zxvf jdk-8u141-linux-x64.tar.gz -C ../servers/

配置环境变量

vim /etc/profile

export JAVA_HOME=/export/servers/jdk1.8.0_141
export PATH=:$JAVA_HOME/bin:$PATH

修改完成之后记得 source /etc/profile生效

javac -version 查看是否安装成功

vim /etc/profile

启动Jar

nohup java -jar ruoyi.jar ->log.file &

查看jar包进程

ps aux|grep xxx.jar
ps -ef | grep java

停止jar包
也就是杀死进程
找到jar的pid,杀掉命令为:

kill -9 pid
pkill 进程名

6 安装NTP

yum install -y ntp 

(1)修改ntp.conf 配置文件 vi /etc/ntp.conf

(2)先注释 四个server 然后添加server主机ip

img

(3)

vi /etc/sysconfig/ntpd

img

(4) 启动ntp 服务

?

 systemctl start ntpd.servicesystemctl enable ntpd.serviceservice ntpd status

img

7 修改系统参数

  sysctl vm.swappiness=10echo 'vm.swappiness=10' >> /etc/sysctl.confecho never > /sys/kernel/mm/transparent_hugepage/defragecho never > /sys/kernel/mm/transparent_hugepage/enabledecho 'echo never > /sys/kernel/mm/transparent_hugepage/defrag'  >> /etc/rc.localecho 'echo never > /sys/kernel/mm/transparent_hugepage/enabled'  >> /etc/rc.local

img

8 安装httpd

yum -y install httpdservice httpd start service httpd status

直接用ip地址登录,验证一下

img

9 下载第三方依赖包

在root 权限下,选择三个窗口同时安装一下依赖包

img

yum -y install bind-utils
yum -y install chkconfig
yum -y install cyrus-sasl-gssapi
yum -y install cyrus-sasl-plain
yum -y install fuse
yum -y install fuse-libs
yum -y install gcc
yum -y install libxslt
yum -y install mod_ssl
yum -y install MySQL-python
yum -y install openssl
yum -y install openssl-devel
yum -y install perl
yum -y install portmap
yum -y install postgresql-server
yum -y install psmisc
yum -y install python-devel
yum -y install python-psycopg2
yum -y install python-setuptools
yum -y install sed
yum -y install sqlite
yum -y install swig
yum -y install zlib

9 Mysql 安装

数据库只在cdh3 上面进行安装,将下面6个rpm包上传到集群中 rpm包自己百度云提取

链接:https://pan.baidu.com/s/1oO_38Wj5Ut1xcy9_EW7dOA
提取码:2bnw

上传集群截图如下:

img

(1) 首先查看自己的集群中是否安装mysql数据库

rpm -qa | grep mysql // 这个命令就会查看该操作系统上是否已经安装了mysql数据库

(2)要是安装了 通过 yum -y remove mysql 进行卸载

(3)依次安装6个rpm包 安装命令如下:

rpm -ivh mysql-community-common-5.7.19-1.el7.x86_64.rpm --nodeps --force  
rpm -ivh mysql-community-libs-5.7.19-1.el7.x86_64.rpm --nodeps --force  
rpm -ivh mysql-community-libs-compat-5.7.19-1.el7.x86_64.rpm --nodeps --force  
rpm -ivh mysql-community-devel-5.7.19-1.el7.x86_64.rpm --nodeps --force  
rpm -ivh mysql-community-client-5.7.19-1.el7.x86_64.rpm --nodeps --force  
rpm -ivh mysql-community-server-5.7.19-1.el7.x86_64.rpm --nodeps --force

(4)启动mysql

 systemctl start mysqld

(5) 设置开机自启动mysql

 systemctl enable mysqld

(6) 安装成功后 首先将数据库设置成无密码状态,需要修改配置

 vi /etc/my.cnf 

添加 skip-grant-tables 可保证为无密码状态(题外话 如果想要左边有行号 输入 :set nu 就可以显示 )

img

(7) 重启mysql服务器,保证生效 systemctl restart mysqld

(8)进入数据库 mysql -u root -p 按enter 键进入

img

(9) 选择数据库 use mysql;

img

(10) 修改密码为123456 修改命令

update user set authentication_string=password("123456") where user='root';

img

(11、12) 刷新:flush privileges; 退出 quit;

img

(13) 在此进入数据库 ,并建几个数据库

mysql -u root -p 密码123456

use mysql; 会报错, 说让你重新设置密码

mysql> set password = PASSWORD(‘123456’);
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

这个其实与validate_password_policy的值有关。

执行下面命令 修改 即可

mysql> set global validate_password_policy =0;
Query OK, 0 rows affected (0.04 sec)

mysql> set global validate_password_length = 6;
Query OK, 0 rows affected (0.00 sec)

然后重新 执行命令
mysql>SET PASSWORD = PASSWORD(‘your new password’);

Query OK, 0 rows affected (0.00 sec)

2.ALTER USER ‘root’@‘localhost’ PASSWORD EXPIRE NEVER
3.flush privileges;
4.quit

重新登录 mysql -u root -p 123456

use mysql;

img

create database cmf default character set = 'utf8'; 
create database amon default character set = 'utf8'; 
create database hue default character set = 'utf8'; 
create database oozie default character set = 'utf8'; 
create database lyz default character set = 'utf8';

(14) 设置允许外网访问当前的mysql

https://www.cnblogs.com/wangjinyu/p/11679696.html

1.查看目前防火墙是否对外开发了3306端口

firewall-cmd --list-all

img

2.查看3306端口是否开放

firewall-cmd --query-port=3306/tcp

img

no 表示没有开放

3.开放3306端口

firewall-cmd --permanent --add-port=3306/tcp

img

4.重启防火墙

service firewalld restart

5再次.查看3306端口是否开放

firewall-cmd --query-port=3306/tcp

6.查看目前防火墙

firewall-cmd --list-all

img

10 mysql-connector-java-5.1.39 上传整理

在三个对话框中都执行

(1) mkdir /usr/share/java

(2) 将 mysql-connector-java-5.1.39.jar 上传到 /usr/share/java 目录下

jar包自取

链接:https://pan.baidu.com/s/1kbZ04-Ts6npSpCLCwiqrFA
提取码:c4hk

(3) mv mysql-connector-java-5.1.39.jar mysql-connector-java.jar

img

11 CM组件和节点安装

(1) 组件自提

链接:https://pan.baidu.com/s/1YYtvenDbZKsX1pm8xM0gvw
提取码:qx7l

img

(2) cdh2 cdh3 集群只上传 agent 和 daemons rpm包 cdh1 三个包全部上传

img

img

(3) 全部节点都安装daemons和agent

  yum localinstall -y cloudera-manager-daemons-6.2.0-968826.el7.x86_64.rpm yum localinstall -y cloudera-manager-agent-6.2.0-968826.el7.x86_64.rpm

(4) cdh1 节点 安装server

 yum localinstall -y cloudera-manager-server-6.2.0-968826.el7.x86_64.rpm

12 下载 安装CDH6.2.0

(1)安装包自提

链接:https://pan.baidu.com/s/1qxYYzCTmRCEziK_T6JC9Bg
提取码:34b6

img

(2)下载之后 在CDH1节点上传

img

全部上传之后,将不同的资源移动到对应的目录下

(3)mv CDH-6.2.0-1.cdh6.2.0.p0.967373-el7.parcel* /opt/cloudera/parcel-repo/(4)mv PHOENIX-5.0.0-cdh6.2.0.p0.1308267-el7.parcel* /opt/cloudera/parcel-repo/(5)mv manifest.json /opt/cloudera/parcel-repo/(6)mv PHOENIX-1.0.jar /opt/cloudera/csd/

(7)进入到parcel-repo目录下 效验 黄色框的字符码是否相等,来判断文件上传时是否正确

img

(8)修改server配置文件

  • # cdh1上修改server
  • 2 vi /etc/cloudera‐scm‐server/db.properties
  • 3 # 12行去掉注释把localhost改成cdh3
  • 4 # 15行去掉注释
  • 5 # 18行去掉注释,把cmf改成root
  • 6 # 21行去掉注释,密码那里填写123456
  • 7 # 28行 setupType = EXTERNAL

img

img

(9)修改agent配置文件

? # 全部节点修改agent

 vi /etc/cloudera-scm-agent/config.ini

? # 15行把localhost修改为cdh1

13、启动CM,开始安装CDH集群

? # 在cdh1 上启动server

 systemctl start cloudera-scm-server
  • ? #另开一个窗口,查看相关日志。有异常就解决异常

     tail -200f /var/log/cloudera-scm-server/cloudera-scm-server.log
  • ? # 在全部节点上启动agent

     systemctl start cloudera-scm-agent
  • ? # 当在 cdh1上 netstat ‐tunlp | grep 7180 有内容时,说明我们可以访问web页面了

img

14、操作WEB 界面

img

img

img

起个名字 HK

img

img

img

img

img

选择自定义服务,先安装个zookeeper

img

img

到自定义角色分配 中,

Activity Monitor 我选择的是cdh1节点,zookeeper 我选择的是1-3 节点

img

数据库是在cdh3 上部署,然后主机名称为cdh3 数据库选择amon 用户名为root 密码 123456 然后点击测试连接

img

img

进入到这页之后,先查看自己集群节点的容量大小,输入 df -HT 我的cdh1的节点容量如下:

/dev/mapper/centos-root 系统盘的容量最大,占19个G 但使用15个G 所以 在选择上不选择系统盘

可以选择 /run盘 和 /boot 盘 作为存放的路径

点击继续

img

img

点击继续

img

img

img

接下来 我们选择安装HDFS 文件系统,如下图所示: 点击添加服务

img

img

在选择时,Secondary NameNode 选择cdh2 DataNode 选择所有主机,点击继续

img

对照四个红框进行选择,点击继续

img

等待安装,然后点击继续

img

点击完成

img

点击完成后,进入主页,然后点击HDFS,点击配置,在搜索框输入ec

img

img

输入ec(Erasure Coding 为hadoop3.0 纠删码),我们先不使用它,所以将右边下拉框

往下拉,将RS-6-3-1024k 选为 No Default Erasure Coding Policy., 然后把检查HDFS

权限关闭。然后点击保存更改

img

img

然后返回主页,点击HDFS的重启按钮,进行重启。

img

img

勾选那个对号,然后立即重启

img

点击重启,进行等待,如下图

img

接下来 配置HDFS的High Availability ,进入HDFS中,点击操作按钮

img

修改名字,点击继续

img

img

编辑JournalNode 三台节点存储的目录路径,点击继续。

img

等待安装。然后点击继续,最后点击完成就安装成功。

img

接下来,安装yarn ,操作和之前一样。

img

点击继续,继续点击继续,等待安装。

img

img