当前位置:   article > 正文

Ambari2.7.5-HDP3.1.5集群离线搭建_hdp3.1.5搭建

hdp3.1.5搭建

1.集群搭建环境准备

环境版本下载地址
CentOS:7.9CentOS-7-x86_64-Everything-2009.isohttps://mirrors.tuna.tsinghua.edu.cn/centos/7/isos/x86_64/
Ambariambari-2.7.5.0-centos7.tar.gzAmbari Repositories - Hortonworks Data Platform (cloudera.com)
HDPHDP-3.1.5.0-centos7-rpm.tar.gzHDP 3.1.5 Repositories - Hortonworks Data Platform (cloudera.com)
HDP-GPLHDP-GPL-3.1.5.0-centos7-gpl.tar.gzHDP 3.1.5 Repositories - Hortonworks Data Platform (cloudera.com)
HDP-UTILSHDP-UTILS-1.1.0.22-centos7.tar.gzHDP 3.1.5 Repositories - Hortonworks Data Platform (cloudera.com)
MySQLmysql-5.7.27-1.el7.x86_64.rpm-bundle.tar补充:mysql-connector-java-5.1.37.jar
JDKjdk-8u121-linux-x64.tar.gz

在这里插入图片描述

2.集群节点规划

HostnameIP(static)内存磁盘
manager.bigdata192.168.121.10016G1T
master.bigdata192.168.121.10116G500G
worker.bigdata192.168.121.10216G500G

3.操作系统优化设置

3.1 关闭防火墙(所有节点)

# 关闭防火墙:systemctl stop firewalld
# 查看防火墙的状态:systemctl status firewalld
# 设置开机不启动:systemctl disable firewalld
# 查看防火墙服务是否设置开机启动:systemctl is-enabled firewalld
  • 1
  • 2
  • 3
  • 4

3.2 修改Linux系统内核内存参数(所有节点)

# 编辑配置文件:vim /etc/sysctl.conf,添加如下配置:
vm.swappiness=1
vm.min_free_kbytes=4194304
vm.zone_reclaim_mode=0
# 使修改生效:sysctl -p
  • 1
  • 2
  • 3
  • 4
  • 5

3.4 设置最大文件打开数最大进程数(所有节点)

# 编辑配置文件:vim /etc/security/limits.conf,添加如下配置:
* soft nofile 655350
* hard nofile 655350
* soft nproc 204800
* hard nproc 204800
  • 1
  • 2
  • 3
  • 4
  • 5

3.5 关闭Selinux(所有节点)

# 查看Selinux状态:sestatus
# 编辑配置文件:vim /etc/sysconfig/selinux,修改为以下配置:
SELINUX=disabled
# 重启服务器后才生效:等关闭透明大页之后一并重启
  • 1
  • 2
  • 3
  • 4

3.6 关闭透明大页THP(所有节点)

# 查看透明大页情况:
cat /sys/kernel/mm/transparent_hugepage/defrag
cat /sys/kernel/mm/transparent_hugepage/enabled

# 关闭透明大页:vim /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

# 保存退出,然后赋予rc.local文件执行权限:chmod +x /etc/rc.d/rc.local
# 重启服务器才生效:reboot
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

4.集群基础服务安装

4.1 配置集群免密登录(所有节点)

# 修改所有节点的 hosts文件,配置如下:
192.168.121.100 manager.bigdata
192.168.121.101 master.bigdata
192.168.121.102 worker.bigdata
  • 1
  • 2
  • 3
  • 4
# 配置manager对manager、master、worker三个节点的免密登录:
#【因为NameNode、ResourceManager服务需要对其它节点无密访问】
[root@manager ~]# ssh-keygen -t rsa				# 一路回车
[root@manager ~]# ssh-copy-id manager.bigdata	# 输入密码
[root@manager ~]# ssh-copy-id master.bigdata	# 输入密码
[root@manager ~]# ssh-copy-id worker.bigdata	# 输入密码
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
# 配置master对manager、master、worker的免密登录:
#【因为NameNode、ResourceManager服务需要对其它节点无密访问】
[root@master ~]# ssh-keygen -t rsa				# 一路回车
[root@master ~]# ssh-copy-id manager.bigdata	# 输入密码
[root@master ~]# ssh-copy-id master.bigdata		# 输入密码
[root@master ~]# ssh-copy-id worker.bigdata		# 输入密码
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

4.2 配置服务yum源(manager节点)

# 把安装包上传到 /opt 目录下:
[root@manager opt]# ll /opt/
total 22226212
-rw-r--r--. 1 root root  2062874048 Jul 30 11:18 ambari-2.7.5.0-centos7.tar.gz
-rw-r--r--. 1 root root 10200547328 Jul 30 11:00 CentOS-7-x86_64-Everything-2009.iso
-rw-r--r--. 1 root root  9815239567 Jul 30 11:42 HDP-3.1.5.0-centos7-rpm.tar.gz
-rw-r--r--. 1 root root      161804 Jul 30 11:18 HDP-GPL-3.1.5.0-centos7-gpl.tar.gz
-rw-r--r--. 1 root root    90606616 Jul 30 11:19 HDP-UTILS-1.1.0.22-centos7.tar.gz
-rw-r--r--  1 root root   183246769 Jul 30 11:06 jdk-8u121-linux-x64.tar.gz
-rw-r--r--. 1 root root   531056640 Jul 30 11:21 mysql-5.7.27-1.el7.x86_64.rpm-bundle.tar
-rw-r--r--. 1 root root    59142788 Jul 30 11:22 mysql-connector-java-rpm-package.tar.gz
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

4.2.1 配置本地系统yum源(manager节点)

# 挂载系统镜像
mkdir /mnt/cdrom
mount -t iso9660 -o loop CentOS-7-x86_64-Everything-2009.iso /mnt/cdrom/

# 删除旧repo文件
cd /etc/yum.repos.d
rm -rf ./*.repo

# 创建系统repo文件
vim local.repo
[centos]
name=centos
baseurl=file:///mnt/cdrom
gpgcheck=0
enabled=1

# 更新yum源
yum clean all
yum update
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

4.2.2 安装httpd服务(manager节点)

# 安装服务
yum install httpd -y
# 启动httpd服务:systemctl start httpd
# 查看httpd状态:systemctl status httpd
# 设置开启启动:systemctl enable httpd

# 安装完毕httpd服务之后,local.repo即可删除
rm -f /etc/yum.repos.d/local.repo
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

4.2.3 配置系统yum源(manager节点)

# 挂载系统镜像
mkdir /var/www/html/CentOS
mount -t iso9660 -o loop /opt/CentOS-7-x86_64-Everything-2009.iso /var/www/html/CentOS

# 配置系统repo文件
vim /etc/yum.repos.d/centos.repo
[CentOS-7.9]
name=CentOS Version - 2009
baseurl=http://manager.bigdata/CentOS
gpgcheck=0
enabled=1
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

4.2.4 配置 Ambari yum源(manager节点)

# 解压Ambari压缩包
tar -zxvf /opt/ambari-2.7.5.0-centos7.tar.gz -C /var/www/html/

# 配置Ambari-repo文件
vim /etc/yum.repos.d/Ambari.repo
[Ambari-2.7.5.0]
name=Ambari Version - Ambari-2.7.5.0
baseurl=http://manager.bigdata/ambari/centos7/2.7.5.0-72/
gpgcheck=1
gpgkey=http://manager.bigdata/ambari/centos7/2.7.5.0-72/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

4.2.4 配置 HDP yum源(manager节点)

# 解压HDP压缩包
tar -zxvf /opt/HDP-3.1.5.0-centos7-rpm.tar.gz -C /var/www/html/

# 配置HDP-repo文件
vim /etc/yum.repos.d/HDP.repo
[HDP-3.1.5.0]
name=HDP Version - HDP-3.1.5.0
baseurl=http://manager.bigdata/HDP/centos7/3.1.5.0-152
gpgcheck=1
gpgkey=http://manager.bigdata/HDP/centos7/3.1.5.0-152/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

4.2.5 配置 HDP-UTILS yum源(manager节点)

# 解压HDP-UTILS压缩包
tar -zxvf /opt/HDP-UTILS-1.1.0.22-centos7.tar.gz -C /var/www/html/

# 配置HDP-UTILS-repo文件
vim /etc/yum.repos.d/HDP-UTILS.repo
[HDP-UTILS-1.1.0.22]
name=HDP-UTILS Version - HDP-UTILS-1.1.0.22
baseurl=http://manager.bigdata/HDP-UTILS/centos7/1.1.0.22
gpgcheck=1
gpgkey=http://manager.bigdata/HDP-UTILS/centos7/1.1.0.22/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

4.2.6 配置 HDP-GPL yum源(manager节点)

# 解压HDP-GPL压缩包
tar -zxvf /opt/HDP-GPL-3.1.5.0-centos7-gpl.tar.gz -C /var/www/html/

# 配置HDP-GPL-repo文件
vim /etc/yum.repos.d/HDP-GPL.repo
[HDP-GPL-3.1.5.0]
name=HDP-UTILS Version - HDP-GPL-3.1.5.0
baseurl=http://manager.bigdata/HDP-GPL/centos7/3.1.5.0-152
gpgcheck=1
gpgkey=http://manager.bigdata/HDP-GPL/centos7/3.1.5.0-152/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

4.2.7 配置MySQL yum源(manager节点)

# 加压MySQL压缩包
mkdir /var/www/html/MySQL
tar -xvf /opt/mysql-5.7.27-1.el7.x86_64.rpm-bundle.tar -C /var/www/html/MySQL/
tar -zxvf /opt/mysql-connector-java-rpm-package.tar.gz -C /var/www/html/MySQL/
# 生成repodata
yum install createrepo -y
cd /var/www/html/MySQL
createrepo ./
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

4.2.8 分发repo文件到其余节点(manager节点)

# 前提是把master和worker节点 /etc/yum.repos.d 目录下的repo文件删除,再进行拷贝:
cd /etc/yum.repos.d
scp ./*.repo master.bigdata:$PWD
scp ./*.repo worker.bigdata:$PWD

# 拷贝完毕之后,登录三个节点,分别执行yum更新:
yum clean all
yum update
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

4.3 安装时间同步服务NTP(所有节点)

# 集群所有节点,安装ntp服务
yum install ntp* -y

# 配置manager节点:vim /etc/ntp.conf
restrict 192.168.120.2 mask 255.255.255.0 nomodify notrap
server ntp1.aliyun.com prefer
server 127.127.1.0
fudge 127.127.1.0 stratum 8
# 备注
192.168.120.2 和 255.255.255.0是集群所在网段的网关和子网掩码
ntp1.aliyun.com 是主时钟源,我选择的是阿里的时钟源,可根据实际情况选择,如果内网没有时钟服务器,配置为:127.127.1.0

# 在master节点修改:vim /etc/ntp.conf
restrict 192.168.120.2 mask 255.255.255.0 nomodify notrap
server manager.bigdata prefer
server 127.127.1.0
fudge 127.127.1.0 stratum 9

# 在worker节点修改:vim /etc/ntp.conf
server manager.bigdata prefer
server master.bigdata

# 在manager启动ntp之后:
systemctl start ntpd
systemctl enable ntpd
# 其余各节点启动ntp服务之前,master和worker节点执行命令,同步manager时间:
ntpdate manager.bigdata

# 启动master、worker节点ntp服务
systemctl start ntpd
systemctl enable ntpd

# 查看ntp状态
ntpq -p
’*’ 表示当前使用的时钟源,’+’ 表示这些源可作为 NTP 源
# ntpstat查看ntp与上层ntp服务的联通性
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36

4.4 删除OpenJDK 安装并配置OracleJDK(所有节点)

# 删除OpenJDK
# 查看openjdk:rpm -qa | grep java
# 删除openjdk:
rpm -e --nodeps java-1.8.0-openjdk-1.8.0.262.b10-1.el7.x86_64
rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.262.b10-1.el7.x86_64
  • 1
  • 2
  • 3
  • 4
  • 5
# manager节点分发jdk包到其余节点
cd /opt
scp jdk-8u121-linux-x64.tar.gz master.bigdata:$PWD
scp jdk-8u121-linux-x64.tar.gz worker.bigdata:$PWD

# 创建jdk目录
mkdir /usr/java
tar -zxvf /opt/jdk-8u121-linux-x64.tar.gz -C /usr/java/

# 配置环境变量:vim /etc/profile
export JAVA_HOME=/usr/java/jdk1.8.0_121
export PATH=$PATH:$JAVA_HOME/bin

# 使环境变量立即生效命令:source /etc/profile
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

4.5 删除Mariadb安装MySQL服务(manager节点)

# 查询
rpm -qa | grep mariadb
# 删除
rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64
  • 1
  • 2
  • 3
  • 4
cd /var/www/html/MySQL
rpm -ivh mysql-community-common-5.7.27-1.el7.x86_64.rpm --force --nodeps
rpm -ivh mysql-community-libs-5.7.27-1.el7.x86_64.rpm --force --nodeps
rpm -ivh mysql-community-devel-5.7.27-1.el7.x86_64.rpm --force --nodeps
rpm -ivh mysql-community-libs-compat-5.7.27-1.el7.x86_64.rpm --force --nodeps
rpm -ivh mysql-community-client-5.7.27-1.el7.x86_64.rpm --force --nodeps
rpm -ivh mysql-community-server-5.7.27-1.el7.x86_64.rpm --force --nodeps

# 启动mysql服务
systemctl start mysqld

# 查看密码
cat /var/log/mysqld.log | grep password

# 修改root密码,密码登录:mysql -u root
# 首次登录必须先修改密码(强密码)
alter user user() identified by "Spark@V123";

SHOW variables LIKE 'validate_password%';
set global validate_password_policy=0;
set global validate_password_length=4;
# 可以修改为弱密码啦
ALTER USER 'root'@'localhost' IDENTIFIED BY "bigdata123";
flush privileges; # 更新权限

use mysql;
update user set host = '%' where user ='root'; # 配置可远程登录
flush privileges; # 更新权限
exit; # 退出

# 修改MySQL配置文件:vim /etc/my.cnf
# 在[mysqld]下添加
collation_server=utf8_general_ci
character_set_server=utf8
default-storage-engine=INNODB

# 在[client]下添加(如果没有[client],则创建)
default_character-set=utf8

# 启动mysql服务
systemctl restart mysqld

# 设置开机启动
systemctl enable mysqld
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44

4.6 创建大数据服务MySQL数据库

4.6.1 创建ambari数据库

CREATE DATABASE ambari CHARACTER SET utf8;
CREATE USER 'ambari'@'%'IDENTIFIED BY 'bigdata123';
GRANT ALL PRIVILEGES ON ambari.* TO 'ambari'@'%';
FLUSH PRIVILEGES;
  • 1
  • 2
  • 3
  • 4

4.6.2 创建其余大数据服务对应的数据库

创建MySQL元数据库,命令类似:

CREATE DATABASE hive CHARACTER SET utf8;
CREATE USER 'hive'@'%'IDENTIFIED BY 'bigdata123';
GRANT ALL PRIVILEGES ON hive.* TO 'hive'@'%';
FLUSH PRIVILEGES;

CREATE DATABASE ranger CHARACTER SET utf8;
CREATE USER 'ranger'@'%'IDENTIFIED BY 'bigdata123';
GRANT ALL PRIVILEGES ON ranger.* TO 'ranger'@'%';
FLUSH PRIVILEGES;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

5.部署Ambari集群

5.1 部署Ambari-Server(manager节点)

# 安装服务
yum install ambari-server -y

[root@manager ~]# ambari-server setup
Using python  /usr/bin/python
Setup ambari-server
Checking SELinux...
SELinux status is 'disabled'
Customize user account for ambari-server daemon [y/n] (n)? y
Enter user account for ambari-server daemon (root):root
Adjusting ambari-server permissions and ownership...
Checking firewall status...
Checking JDK...
[1] Oracle JDK 1.8 + Java Cryptography Extension (JCE) Policy Files 8
[2] Custom JDK
==============================================================================
Enter choice (1): 2
WARNING: JDK must be installed on all hosts and JAVA_HOME must be valid on all hosts.
WARNING: JCE Policy files are required for configuring Kerberos security. If you plan to use Kerberos,please make sure JCE Unlimited Strength Jurisdiction Policy Files are valid on all hosts.
Path to JAVA_HOME: /usr/java/jdk1.8.0_121
Validating JDK on Ambari Server...done.
Check JDK version for Ambari Server...
JDK version found: 8
Minimum JDK version is 8 for Ambari. Skipping to setup different JDK for Ambari Server.
Checking GPL software agreement...
GPL License for LZO: https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html
Enable Ambari Server to download and install GPL Licensed LZO packages [y/n] (n)? y
Completing setup...
Configuring database...
Enter advanced database configuration [y/n] (n)? y
Configuring database...
==============================================================================
Choose one of the following options:
[1] - PostgreSQL (Embedded)
[2] - Oracle
[3] - MySQL / MariaDB
[4] - PostgreSQL
[5] - Microsoft SQL Server (Tech Preview)
[6] - SQL Anywhere
[7] - BDB
==============================================================================
Enter choice (1): 3
Hostname (localhost): manager.bigdata
Port (3306): 3306
Database name (ambari): ambari
Username (ambari): ambari
Enter Database Password (bigdata): 
Re-enter password: 
Configuring ambari database...
Enter full path to custom jdbc driver: /opt/mysql-connector-java-5.1.37.jar
Copying /opt/mysql-connector-java-5.1.37.jar to /usr/share/java
Configuring remote database connection properties...
WARNING: Before starting Ambari Server, you must run the following DDL directly from the database shell to create the schema: /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql
Proceed with configuring remote database connection properties [y/n] (y)? y
Extracting system views...
ambari-admin-2.7.5.0.72.jar
....
Ambari repo file doesn't contain latest json url, skipping repoinfos modification
Adjusting ambari-server permissions and ownership...
Ambari Server 'setup' completed successfully.

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 登录ambari数据库:
mysql -uambari -p
mysql> use ambari
mysql> source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql
  • 1
  • 2
  • 3
  • 启动Ambari-Server服务:
# 启动:ambari-server start
# 查看:ambari-server status
# 停止:ambari-server stop
  • 1
  • 2
  • 3

5.2 部署Ambari-Agent(所有节点)

# 安装
yum -y install ambari-agent
# 启动
ambari-agent start
  • 1
  • 2
  • 3
  • 4

6.部署大数据集群组件

用户名:admin,密码:admin
在这里插入图片描述
开始安装集群:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/712059
推荐阅读
相关标签
  

闽ICP备14008679号