Centos mini系统下的Hadoop集群搭建

3.相关命令
ping www.baidu.com //用于查看网络是否连接
service network restaet //重启网络

su //切换root用户
vi /etc/sysconfig/network-scripts/ifcfg-ens33 //配置静态网络

systemctl stop firewalld.service //停止防火墙
systemctl disable firewalld.service //禁止防火墙开机启动
systemctl status firewalld.service //查看防火墙,下面显示(dead)为普通颜色则关闭,绿色则启动状态。
firewall-cmd --state //查看防火墙状态(关闭显示:not running,开启后显示:running)

service iptables status //查看当前系统是否安装防火墙
yum install -y iptables //安装防火墙
yum install iptables-services //安装防火墙服务
iptables -L -n //查看防火墙现有规则
systemctl enable iptables //设置防火墙开机自启
service iptables save //保存设置

service iptables start //启动防火墙,之后须重启虚拟机生效
service iptables restart //重启防火墙,之后须重启虚拟机生效
reboot //重启虚拟机

ip addr //查看当前机器IP
ifconfig //查看当前机器IP

hostnamectl set-hostname 本机名称 //修改本机名称
hostname //查看本机名称

ls //查看目录
cd //返回主master目录
cd … //返回上级目录

yum install lrzsz -y //安装rz工具
yum install rsync //安装拷贝文件工具

scp /etc/opt/package/*.gz root@192.168.6.11:/etc/opt/package //文件拷贝复制

ssh-keygen –t rsa –P ‘’ //生成⽆密码密钥对
ssh-keygen -b 1024 -t rsa //生成⽆密码密钥对
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys //追加公钥
ssh-copy-id //追加公钥
passwd root //改密码
rm -fr package //删除目录
tail- //查看日志
4.开始搭建
期间可能遇到的一些问题解决办法可以参考这篇博客:https://blog.csdn.net/weixin_46311020/article/details/113180767?spm=1001.2014.3001.5502 ,这里面类容中可能有你遇到的问题及解决办法。
以下是所用软件及虚拟机安装完成后Hadoop集群具体搭建步骤。
注意: 在进行相关配置时 按 A 键进入编辑模式才能向文件里面添加内容,配置完成后先按 Esc 键退出编辑模式后再次输入 :wq(保存并退出) 后回车退出,这个内容我下面不会再提及。

4.1网络配置(下面内容两台机子步骤一样)
(1)静态网络配置
​ 配置需要root用户,如果不是就输入 su 会要你输入密码后进入root用户:

[root@192 ~]#su //切换root用户
​ 接下来按以下命令进行网络配置:

[root@192 ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33
​ 打开虚拟机上的虚拟网络编辑器,先点击更改设置,然后点击VMnet8,向文件配置里面按VMnet8里面的内容填写ip地址(注意:ip地址只设置最后位数,自己随便设置数,比如我设置的为10),子网掩码(不变)默认网关(不变),dns(注意:可设置一个,也可设置两个,你可以设置为自己本机电脑的dns,也可设置网上的dns),

​ 配置内容如下:

IPADDR="" //IP地址
NETMASK="" //子网掩码
GATEWAY="" //默认网关
DNS1="" //DNS
DNS2="" //DNS
​ 结果:(注意: 配置完成后先别急着保存,要先虚拟网络编辑器中窗口都 确定 后再文件保存退出,下面图片中的网关中的31 应该是30)

​ 之后重启网络,ping 百度,看能通吗,通了则成功,最好再ping下自己设置的IP

service network restaet //重启启网络
ping www.baidu.com /看能否ping通

(2)关闭防火墙
systemctl stop firewalld.service //停止防火墙
systemctl disable firewalld.service //禁止防火墙开机启动
firewall-cmd --state //查看防火墙状态(关闭显示:not running,开启后显示:running)

(3)修改当前机器名
​ 在以下命令后面添加想要改的名称,我改的名为 :master.Hadoop

hostnamectl set-hostname master.hadoop //修改主机名
reboot //重启虚拟机查看成功没
hostname //查看本机名称

(4)编辑hosts文件
hostname -i //查看你本机的IP,并记住
vi /etc/hosts //进入hosts文件
​ 需要添加的内容:(本机IP 本机名称),(从机IP 从机名称 )

192.168.6.10 master.hadoop
192.168.6.11 slave1.hadoop

​ 检验: 互相ping一下看是否成功

master机:ping slave1.hadoop
slave1机:ping master.hadoop

4.2.必要安装(slave步骤一样)
以下的安装后面需要用到
​ SSH服务:用于免密登录及后面Xshell连接虚拟机可能需要用到,及其它用处

[root@master ~]# rpm -qa | grep ssh //查看有没有安装SSH服务,如果没有就执行下面命令
[root@master ~]# yum install openssh-server -y //安装SSH服务
[root@master ~]# yum install openssh-clients -y //安装SSH客户
[root@master ~]# rpm –qa | grep openssh 查看是否安装成功
​ Service服务:用于启动SSH服务,及其它用处

[root@master ~]# service sshd restart //安装srevice
[root@master ~]# service sshd restart //启动SSH
[root@master ~]# yum install net-tools //网络配置工具
​ vim编辑器:使编辑文件更方便

[root@master ~]# yum install vim -y
​ 安装远程数据同步工具:可用于拷贝等

[root@master ~]# yum install rsync //安装
[root@master ~]# rpm –qa | grep rsync //查看
​ 安装rz工具:用于后面的文件传输

[root@master ~]# yum install lrzsz -y
​ 安装passwd工具,用于更该密码

yum install passwd
4.3Xshell操作虚拟机
Xshell连接虚拟机

步骤我这就不概述了,自己可以百度,也可以参考这篇博文:https://blog.csdn.net/weixin_40928253/article/details/80621724

连接时遇到问题可参考这篇博文,里面可能有和你一样的问题的解决方法可以参考:https://blog.csdn.net/weixin_46311020/article/details/113180767
特别注意:接下来的操作中使用的命令,记得注意看命令前的这部分 [root@master ~]# 通过它可以看见我在哪个目录下使用的该命令。

(1)文件传输(slave步骤一样)
​ 这里需要将刚我们开始下载的jdk与Hadoop包 传入虚拟机,为了文件不混乱及今后方便查找,我们需要自己在系统中新建存放相应文件的目录,可以自己选则,一般选在opt 或home目录下,我选择opt目录下创建:

​ 注意:我这次在opt目录下创建了个 package 目录用于存放 jdk 与 hadoop,由于后面以后需要解压安装两个包,所以我顺便在 opt 目录下再建了个 module 目录备用,用于作为以后两个包解压的目录。

​ 传输文件需要输入 rz 命令: 输入命令后如果显示未找到命令,则是因为没有安装该工具,则需要安装;如果弹出本机文件夹,则说明有该工具,不需要安装

[root@master ~]# rpm -qa |grep lrzsz //检查是否安装rz
[root@master ~]# sudo mkdir /opt/package //opt目录下创建存放jdk与hadoop包的目录
[root@master ~]# sudo mkdir /opt/module //opt目录下创建解压jdk与hadoop包的目录
/*
查看创建的目录
[root@master ~]# cd /opt
[root@master opt]# ls
/
/

传输文件
[root@master ~]# cd /opt/package //进入package目录
[root@master package]# rz //开始传输本地文件,选中自己要传输的文件
[root@master package]# ls //完成后进入package目录查看,有以下两个文件
– hadoop-2.7.7.tar.gz jdk-8u171-linux-x64.tar.gz –
*/

(2)SSH免密登录
这个主机从机一起做
​ 用于节点之间的访问不需要每次输入密码,而且集群操作的时候需要访问许多节点,可每个节点访问需要输入密码,但当集群运行的时候不会每次都弹出输入密码,容易造成卡顿,导致集群运行不通畅,所以就设置所有节点之间的免密码访问权限。

设置master免密自己,步骤:
/*
生成⽆密码密钥对:
[root@master ~]# ssh-keygen -b 1024 -t rsa //生成⽆密码密钥对,一路回车,直至出现图形
[root@master ~]# ls
– anaconda-ks.cfg –
[root@master ~]# ls -all
[root@master ~]# cd .ssh
[root@master .ssh]# ls //查看有没有生成公钥(id_rsa.pub),私钥(id_rsa)
– id_rsa id_rsa.pub known_hosts –
/
/

设置master.hadoop免密:
[root@master .ssh]# ssh-copy-id master.hadoop //设置master.hadoop免密,期间可能会要你输入一个 yes 和 master密码
[root@master .ssh]# ls //查看,会发现多了个authorized_keys 文件
– authorized_keys id_rsa id_rsa.pub known_hosts –
/
/

修改master.hadoop的 authorized_keys权限:
[root@master .ssh]# chmod 600 ~/.ssh/authorized_keys
[root@master .ssh]# ll //查看
– 总用量 16 –
— rw-------. 1 root root 232 1月 29 13:08 authorized_keys –
*/
/*jie
设置SSH配置:
[root@master .ssh]# cd //回到master节点
[root@master ~]# vim /etc/ssh/sshd_config //进入文件修改配置
(修改类容:
PermitRootLogin prohibit-password禁用
port 22 启动
PermitRootLogin yes #启用
RSAAuthentication yes # 启⽤ RSA 认证
PubkeyAuthentication yes # 启⽤公钥私钥配对认证⽅式
AuthorizedKeysFile .ssh/authorized_keys # 公钥⽂件路径(和上⾯⽣成的⽂件同)

[root@master ~]# service sshd restart //重启SSH服务,使配置生效
*/
[root@master ~]# ssh master.hadoop //验证登录,如果登录不提示输入密码,则表示成功

设置master免密登录slave1,步骤:

​ 这个大概步骤:还是先进入master的钥匙对里面,利用上面步骤中master为自己生成免密的方法,为slave1生成免密,然后进入slave的节点中对authorized_keys权限的设置与SSH配置和上面相同,具体步骤如下:

[root@master ~]# ssh-keygen -b 1024 -t rsa //生成⽆密码密钥对,一路回车,直至出现图形
[root@master ~]# cd ~/.ssh //进入 .ssh文件
/*
设置master对slave1免密:
[root@master .ssh]# ssh-copy-id slave1.hadoop //期间可能会要你输入一个 yes 和slave的密码
*/

​ 进入slave1.Hadoop节点中:

[root@slave1 ~]# ssh-keygen -b 1024 -t rsa 	//生成⽆密码密钥对,一路回车,直至出现图形
[root@slave1 ~]# cd ~/.ssh				//进入 .ssh文件
[root@slave1 .ssh]# ls					//查看,会发现已有authorized_keys文件,因为这是我们在master上为它生成的
-- authorized_keys  id_rsa  id_rsa.pub --
/*
修改slave1.hadoop的 authorized_keys权限:与上面master中步骤一样
*/
/*
设置SSH配置:与上面master中步骤一样
*/
*/
通过master登录slave1,登录成功可以看见: [root@slave1 ~]# 个标志
[root@master ~]#  ssh slave1.hadoop	//验证登录,如果登录不提示输入密码,则表示成功
*/
设置slave1免密登录master,步骤:
[root@slave1 ~]# ssh-keygen -b 1024 -t rsa 
[root@slave1 ~]# cd ~/.ssh
[root@slave1 .ssh]# ssh-copy-id master.hadoop		//免密
(3)解压安装jdk(slave一样)
​ 注意:下面我们将把 /opt/package/ 中的jdk 解压到 /opt/module/ 中,其中module 目录是我再前面已经建的,具体可查看前面内容:文件传输。

​ 解压:
/*
查看将要解药的文件
[root@master ~]# cd /opt/package	//进入package目录
[root@master package]# ls			//查看
-- hadoop-2.7.7.tar.gz  jdk-8u171-linux-x64.tar.gz --  
*/
/*
解压:
[root@master package]#  tar -zxvf jdk-8u171-linux-x64.tar.gz -C /opt/module/   //解压到 /opt/module/ 目录中
*/
[root@master package]# ls /opt/module		//解压完成后查看module有没有
-- jdk1.8.0_171 --
​ 改名:由于后面操作会大量用到这个文件。而由于这个文件名太长,所以我们把 文件名 jdk1.8.0_171 改为 jdk1.8
[root@master package]# cd 		//回到主目录
[root@master ~]# cd /opt/module		//进入module目录
[root@master module]# mv jdk1.8.0_171/ jdk1.8		//改名
[root@master module]# ls		//查看
-- jdk1.8 --
​

配置JDK环境变量:
/*
获取jdk路径:
[root@master module]# cd jdk1.8		//进入jdk1.8目录
[root@master jdk1.8]# pwd			//查看目录结构,并记住
-- /opt/module/jdk1.8 --
*/
/*
进入profile文件,添加jdk环境变量:
[root@master jdk1.8]# cd 		//回到主目录
[root@master ~]# sudo vim /etc/profile		//进入文件
*/
​ 在 profile 文件末尾添加 JDK 路径,我的添加内容如下:

#JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8    
export PATH=$PATH:$JAVA_HOME/bin

使文件立即生效:
[root@master ~]# source /etc/profile		//使文件立即生效
[root@master ~]# java -version		//测试jdk是否安装成功,即下面出现版本号
-- java version "1.8.0_171" --
(4)Hadoop集群安装搭建(slave1一样)
1.解压和环境变量
解压安装Hadoop:

解压:

/*
查看将要解药的文件
[root@master ~]# cd /opt/package	//进入package目录
[root@master package]# ls			//查看
-- hadoop-2.7.7.tar.gz  jdk-8u171-linux-x64.tar.gz --  
*/
/*
解压:
[root@master package]#  tar -zxvf hadoop-2.7.7.tar.gz -C /opt/module/   //解压到 /opt/module/ 目录中
*/
[root@master package]# ls /opt/module		//解压完成后查看module有没有,可以看见多了个文件
-- hadoop-2.7.7  jdk1.8 --
改名:为了后面操作简单点

[root@master package]# cd 		//回到主目录
[root@master ~]# cd /opt/module		//进入module目录
[root@master module]# mv hadoop-2.7.7/ hadoop2.7		//改名
[root@master module]# ls		//查看
-- hadoop2.7  jdk1.8 --
配置Hadoop环境变量:

/*
获取Hadoop路径:
[root@master module]# cd hadoop2.7		//进入Hadoop2.7目录
[root@master jdk1.8]# pwd			//查看目录结构,并记住
-- /opt/module/hadoop2.7 --
*/
/*
进入profile文件,添加jdk环境变量:
[root@master jdk1.8]# cd 		//回到主目录
[root@master ~]# sudo vim /etc/profile		//进入文件
*/
​ 在 profile 文件末尾添加 Hadoop 路径,我的添加内容如下:

##HADOOP_HOME
export HADOOP_HOME=/opt/module/hadoop2.7
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin

使文件立即生效:

[root@master ~]# source /etc/profile		//使配置文件立即生效
[root@master ~]# hadoop version		//测试Hadoop是否安装成功,即下面出现版本号
-- Hadoop 2.7.7 --
2.Hadoop目录结构
首先查看一下我没在Hadoop中需要了解的目录结构:
[root@master ~]# ll /opt/module/hadoop2.7	//查看解压的 Hadoop包生成的目录下的结构
Wooden Speakers  https://www.zeshuiplatform.com/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值