前情回顾
在上一篇章中我们配置了虚拟机及克隆了另外两台虚拟机, 并为三台虚拟机都配置了静态IP网络和主机名。同时也为我们的Windows主机和Linux的三台主机都配置了IP映射。
本章将完成集群的搭建
- 我们需要完成的有:
- 关闭防火墙
- 集群之间的免密登录
- 完成集群的时间同步问题
- 安装MySQL
- 安装JDK
- 下章(hadoop集群搭建)预告
- 安装hadoop软件
- 修改hadoop配置文件
- hadoop集群的搭建/启动/关闭与体验
- (选读)介绍hadoop配置文件增加的非常规配置
实际开发中应该配, 但是没有也可以运行, 本文已配置
如果本文对您有帮助, 请点赞或评论支持一下
关闭防火墙
- 打开虚拟机及远程连接工具CRT, CRT打开交互窗口(没安装的可以去看看我上一篇文章)
- 右键选择发送到所有会话
- 关闭防火墙及开机自启
#查看防火墙状态
systemctl status firewalld
#关闭防火墙
systemctl stop firewalld
#关闭防火墙开机自启动
systemctl disable firewalld
操作图示:
- 关闭防火墙
- 关闭开机自启
- 关闭selinux服务(否则会一直提示你要开启防火墙)
vim /etc/selinux/config
SELINUX=disabled
- 操作提示: 修改配置文件, 三台主机都需要!!!, 这里只演示了一台主机:
- 需要重启生效
集群之间的免密登录
- 至少打通qianyu1---->qianyu1 qianyu2 qianyu3 这三个免密登录
- 本博主完成的是三台主机互相免密登录, 操作部分展现其中一台, 其余两台操作相同
- 在qianyu1, qianyu2, qianyu3生成公钥私钥
ssh-keygen
一路回车(Enter键), 在当前用户的home下生成公钥私钥, 隐藏文件
qianyu1的效果图(2,3同):
- 三台主机均配置(分别执行以下命令)
ssh-copy-id qianyu1
ssh-copy-id qianyu2
ssh-copy-id qianyu3
成功后我们先来验证一下免密登录吧!
这样就没问题了
完成集群的时间同步问题
- 我们为什么要配置?
- 答: 分布式软件主从角色之间通常基于心跳时间差来判断角色工作是否正常。
- 查看当前的系统时间 也可以手动指定设置时间 不精准
[root@qianyu1 ~]# date
配置同步阿里云授时器
安装MySQL
- 本教程软件安装目录规范 /export/server #软件安装目录 /export/software #安装包的目录 /export/data #软件运行数据保存的目录 /export/logs #软件运行日志
mkdir -p /export/server
mkdir -p /export/software
mkdir -p /export/data
mkdir -p /export/logs
操作演示:
安装方法千千万, 这里用的是较为原始的安装方式
基于rpm安装MySQL,安装在qianyu1服务器即可
- 卸载Centos7自带的mariadb(如果不卸载会和mysql中的mariadb包发生冲突)
rpm -qa|grep mariadb # 这行代码是查看的
操作演示:
rpm -e mariadb-libs-5.5.64-1.el7.x86_64 --nodeps
创建目标目录:
mkdir /export/software/mysql
- 上传mysql-5.7.29-1.el7.x86_64.rpm-bundle.tar 到上述文件夹下 解压 解压完成:
- 下面输入一行很长的代码来安装:
rpm -ivh mysql-community-common-5.7.29-1.el7.x86_64.rpm mysql-community-libs-5.7.29-1.el7.x86_64.rpm mysql-community-client-5.7.29-1.el7.x86_64.rpm mysql-community-server-5.7.29-1.el7.x86_64.rpm
安装完成:
- mysql初始化设置
初始化
mysqld --initialize
更改所属组
chown mysql:mysql /var/lib/mysql -R
启动mysql
systemctl start mysqld.service
查看生成的临时root密码 (用于第一次登录mysql 我们进入后立即修改密码)
cat /var/log/mysqld.log
- 注意(非常重要!!!非常重要!!!非常重要!!!):
- 在“root@localhost: ”这一段中":"后有一个空格,这个不要复制
- 使用密文输入密码
- 后边换行之前的所有内容都要
- 下面开始演示
mysqld --initialize
chown mysql:mysql /var/lib/mysql -R
systemctl start mysqld.service
cat/var/log/mysqld.log
在这里可以看到我的临时密码是pZyd:Egr?7fp
注意: 每个人生成的密码都不同
- 修改root密码 授权远程访问 设置开机自启动
mysql -u root -p
- 更新root密码 设置为hadoop
alter user user() identified by "hadoop";
- 授权
use mysql;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'hadoop' WITH GRANT OPTION;
FLUSH PRIVILEGES;exit
- mysql的启动和关闭 状态查看 (这几个命令必须记住)
systemctl stop mysqld
systemctl status mysqld
systemctl start mysqld
- 建议设置为开机自启动服务(一般默认开启, 不放心可以自己开启)
systemctl enable mysqld
- 查看是否已经设置自启动成功
systemctl list-unit-files | grep mysqld
到这里我们就安装好MySQL了
安装JDK
- 基本上绝大多数大数据服务都是用java开发的,想要运行该服务,必须在电脑上安装java环境
- 简单:解压即可使用 但是通常配置环境变量,以便于在各个路径下之间使用java。
- 要求:JDK1.8版本。
- 操作演示:
- 上传安装包到/export/software下
- 进入到 /export/software目录下:
cd /export/software
- #解压到server目录下:
tar -zxvf jdk-8u65-linux-x64.tar.gz -C ../server/
- 配置环境变量:
vim /etc/profile
# java环境变量配置
export JAVA_HOME=/export/server/jdk1.8.0_65
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
- 重新source环境变量文件 让配置生效:
source /etc/profile
- 检查配置是否成功
java -version
- 将qianyu1的JDK安装包scp给qianyu2和qianyu3
cd /export/server/
scp -r jdk1.8.0_65/ root@qianyu2:$PWD
scp -r jdk1.8.0_65/ root@qianyu3:$PWD
scp /etc/profile qianyu2:/etc/
scp /etc/profile qianyu3:/etc/
source /etc/profile
- source环境变量三台虚拟机
source /etc/profile
到这里三台虚拟机的jdk就已经配置好了, 也可以自己去另外两台虚拟机检查一下
非常感谢您的观看, 如有帮助麻烦您动动小手点个赞, 对我真的很有帮助, 谢谢!!!
版权归原作者 浅语27 所有, 如有侵权,请联系我们删除。