赞
踩
环境 | 版本 | 下载地址 |
---|---|---|
CentOS:7.9 | CentOS-7-x86_64-Everything-2009.iso | https://mirrors.tuna.tsinghua.edu.cn/centos/7/isos/x86_64/ |
Ambari | ambari-2.7.5.0-centos7.tar.gz | Ambari Repositories - Hortonworks Data Platform (cloudera.com) |
HDP | HDP-3.1.5.0-centos7-rpm.tar.gz | HDP 3.1.5 Repositories - Hortonworks Data Platform (cloudera.com) |
HDP-GPL | HDP-GPL-3.1.5.0-centos7-gpl.tar.gz | HDP 3.1.5 Repositories - Hortonworks Data Platform (cloudera.com) |
HDP-UTILS | HDP-UTILS-1.1.0.22-centos7.tar.gz | HDP 3.1.5 Repositories - Hortonworks Data Platform (cloudera.com) |
MySQL | mysql-5.7.27-1.el7.x86_64.rpm-bundle.tar | 补充:mysql-connector-java-5.1.37.jar |
JDK | jdk-8u121-linux-x64.tar.gz |
Hostname | IP(static) | 内存 | 磁盘 |
---|---|---|---|
manager.bigdata | 192.168.121.100 | 16G | 1T |
master.bigdata | 192.168.121.101 | 16G | 500G |
worker.bigdata | 192.168.121.102 | 16G | 500G |
# 关闭防火墙:systemctl stop firewalld
# 查看防火墙的状态:systemctl status firewalld
# 设置开机不启动:systemctl disable firewalld
# 查看防火墙服务是否设置开机启动:systemctl is-enabled firewalld
# 编辑配置文件:vim /etc/sysctl.conf,添加如下配置:
vm.swappiness=1
vm.min_free_kbytes=4194304
vm.zone_reclaim_mode=0
# 使修改生效:sysctl -p
# 编辑配置文件:vim /etc/security/limits.conf,添加如下配置:
* soft nofile 655350
* hard nofile 655350
* soft nproc 204800
* hard nproc 204800
# 查看Selinux状态:sestatus
# 编辑配置文件:vim /etc/sysconfig/selinux,修改为以下配置:
SELINUX=disabled
# 重启服务器后才生效:等关闭透明大页之后一并重启
# 查看透明大页情况:
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
# 修改所有节点的 hosts文件,配置如下:
192.168.121.100 manager.bigdata
192.168.121.101 master.bigdata
192.168.121.102 worker.bigdata
# 配置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 # 输入密码
# 配置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 # 输入密码
# 把安装包上传到 /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
# 挂载系统镜像 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
# 安装服务
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
# 挂载系统镜像
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
# 解压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
# 解压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
# 解压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
# 解压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
# 加压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 ./
# 前提是把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
# 集群所有节点,安装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服务的联通性
# 删除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
# 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
# 查询
rpm -qa | grep mariadb
# 删除
rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64
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
CREATE DATABASE ambari CHARACTER SET utf8;
CREATE USER 'ambari'@'%'IDENTIFIED BY 'bigdata123';
GRANT ALL PRIVILEGES ON ambari.* TO 'ambari'@'%';
FLUSH PRIVILEGES;
创建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;
# 安装服务 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.
mysql -uambari -p
mysql> use ambari
mysql> source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql
# 启动:ambari-server start
# 查看:ambari-server status
# 停止:ambari-server stop
# 安装
yum -y install ambari-agent
# 启动
ambari-agent start
用户名:admin,密码:admin
开始安装集群:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。