伪分布式+分布式安装Hadoop(两个节点)

  1. 准备一个新的Linux系统,我这里从之前安装好的Linux中克隆一个
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  2. 更改新系统的设备参数设置,参考本地硬件设置合理参数
    在这里插入图片描述
  3. 启动Linux,更改主机名为master
		[zhao@localhost ~]$ su #切换至root用户下
		[root@localhost zhao]# vim /etc/hostname #修改主机名

在这里插入图片描述

		[root@localhost zhao]# reboot   #重启Linux系统使更改生效

在这里插入图片描述
4. 配置网络环境

	[zhao@master ~]$ nmtui  #配置网卡信息,图形化工具

在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

		[zhao@master ~]$ ifconfig #查看网卡信息

在这里插入图片描述

	[zhao@master ~]$ ping www.baidu.com     #ping 百度,测试是否成功, ctrl+c 结束测试

在这里插入图片描述
在这里插入图片描述

5.使用Xshell远程连接Linux(这样就不需要进入Vmware虚拟机中操作Linux,提高了工作效率)

在这里插入图片描述
在这里插入图片描述

6. 安装JDK(Java环境)

步骤如下:

  • 上传jdk安装包到Linux的/home/zhao目录下
  • 解压jdk压缩包
  • 重命名解压后的文件名(便于后续配置时书写命令)
  • 配置jdk环境变量
    (1)利用xshell上传下载的 jdk-8u162-linux-x64.tar.gz到/home/zhao目录下
    在这里插入图片描述
    (2)解压压缩包
		[zhao@master ~]$ tar -zxvf jdk-8u162-linux-x64.tar.gz

在这里插入图片描述
(3)将文件夹jdk1.8.0_162重命名(为了方便后续配置书写命令,也可以不修改)
[zhao@master ~]$ mv jdk1.8.0_162/ jdk #将原文件名jdk1.8.0_162更改为jdk
在这里插入图片描述
(4)配置jdk环境变量

      	[zhao@master ~]$ vim ./.bash_profile
      	在文件中追加,然后保存退出
      	export JAVA_HOME=/home/zhao/jdk
   		export JRE_HOME=$JAVA_HOME/jre
   		export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
   		export PATH=$PATH:$JAVA_HOME/bin

在这里插入图片描述

  	[zhao@master ~]$ source ./.bash_profile  #立即生效
  	[zhao@master ~]$ java -version   #查看Java版本信息

在这里插入图片描述
– 注意:
如果显示的版本号不是自己安装的版本时,说明Linux系统自带了jdk,且是全局的,此时有两种解决方案。
①将自己的jdk环境变量配置到/etc/profile中,形成全局环境变量
②卸载掉系统自带的jdk

			[zhao@master ~]$ rpm -qa|grep java 
			[zhao@master ~]$ sudo yum remove java-1.7.0-openjdk-headless.x86_64 -y  # java-1.7.0-openjdk-headless.x86_64 为上述过滤中显示的后两项之一
			[zhao@master ~]$ sudo yum remove java-1.8.0-openjdk-headless.x86_64 -y	#java-1.8.0-openjdk-headless.x86_64 为上述过来中显示的后两项之一

③ 再次使用 source ~/.bash_profile
④ 使用 java -version 查看版本是否正确
至此jdk安装完毕

6.安装Hadoop

(一)伪分布安装步骤


  • 修改/etc/hosts文件
  • 配置ssh免密钥登录
  • 上传Hadoop的压缩包到/home/zhao
  • 解压Hadoop压缩包
  • 重命名解压后文件(与jdk重命名作用相同)
  • 配置Hadoop环境变量(与jdk配置类似)
  • 修改Hadoop的配置文件
  • 格式化namenode
  • 启动集群测试伪分布式是否安装成功

(二)分布式安装步骤

  • 关闭集群
  • 克隆Linux
  • 修改主机名为slave
  • 修改ip地址为 192.168.241.131
  • 在/etc/hosts中添加slave(master、slave都需要做)
  • 配置ssh免密登录
  • 修改配置文件slaves
  • 启动集群

伪分布式安装详情如下

(1) 修改/etc/hosts文件

	[zhao@master ~]$ sudo vim /etc/hosts
	[zhao@master ~]$ ping master

在这里插入图片描述在这里插入图片描述
(2)配置ssh免密钥登录

	[zhao@master ~]$ ssh-keygen -t rsa

在这里插入图片描述

	[zhao@master ~]$ cat ./.ssh/id_rsa.pub >> ./.ssh/authorized_keys #将公钥追加到authorized_keys文件。因为免密钥登录时,系统会检索authorized文件
	[zhao@master ~]$ chmod 700 .ssh/  #修改.ssh文件夹权限
	[zhao@master ~]$ chmod 600 .ssh/* #修改.ssh文件夹下文件权限

在这里插入图片描述
(3)上传Hadoop的压缩包到/home/zhao(与上传jdk类似,直接将压缩包拖入到Xshell窗口)
在这里插入图片描述
(4)解压Hadoop压缩包

	[zhao@master ~]$ tar -zxvf hadoop-2.7.1.tar.gz

在这里插入图片描述
(5)重命名解压后文件(与jdk重命名作用相同)

	[zhao@master ~]$ mv hadoop-2.7.1 hadoop


(6)配置Hadoop环境变量

	[zhao@master ~]$ vim ./.bash_profile
	# 追加信息如下
	export HADOOP_HOME=/home/zhao/hadoop
	export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

在这里插入图片描述

	[zhao@master ~]$ source ./.bash_profile    #立即生效

在这里插入图片描述
(7)修改Hadoop配置文件

	[zhao@master ~]$ cd hadoop/etc/hadoop/  # 进入Hadoop配置文件目录
  • 配置core-site.xml
    [zhao@master hadoop]$ vim core-site.xml  #配置信息如下
    
	<configuration>
        <property>
                <name>fs.defaultFS</name> #配置Hadoop默认端口
                <value>hdfs://master:9000</value> 
        </property>
        <property>
                <name>hadoop.tmp.dir</name> #配置Hadoop临时文件保存路径
                <value>file:/home/zhao/hadoop/tmp</value>
        </property>
     </configuration>

在这里插入图片描述

  • 配置hdfs-site.xml
		[zhao@master hadoop]$ vim hdfs-site.xml
# 配置信息如下:
<configuration>
        <property>
                <name>dfs.namenode.secondary.http-address</name> #配置第二名称节点端口号
                <value>master:50090</value>
        </property>
        <property>
                <name>dfs.namenode.name.dir</name> #配置namenode数据保存路径
                <value>file:/home/zhao/hadoop/tmp/dfs/name</value>
        </property>
        <property>
                <name>dfs.datanode.data.dir</name> #配置datanode数据保存路径
                <value>file:/home/zhao/hadoop/tmp/dfs/data</value>
        </property>
        <property>
                <name>dfs.replication</name> #配置数据备份个数,因为现在采用伪分布方式故先设置为1,等配置分布式方式时再修改
                <value>1</value>
        </property>
</configuration>

在这里插入图片描述

  • 配置mapred-site.xml
	[zhao@master hadoop]$ cp  mapred-site.xml.template   mapred-site.xml  #复制模板并重命名

在这里插入图片描述

	[zhao@master hadoop]$ vim mapred-site.xml   
 #  配置信息如下:
  <configuration>
        <property>
                <name>mapreduce.framework.name</name> #mapReduce的资源调度框架采用yarn
                <value>yarn</value>
        </property>
        <property>
                <name>mapreduce.jobhistory.address</name> #jobhistory服务器端地址
                <value>master:10020</value>
        </property>
        <property>
                <name>mapreduce.jobhistory.webapp.address</name> #jobhistory的Web端地址
                <value>master:19888</value>
        </property>
  </configuration>

在这里插入图片描述

  • 配置 yarn-site.xml
	[zhao@master hadoop]$ vim yarn-site.xml
# 配置信息如下:
	<configuration>
        <property>
                <name>yarn.resourcemanage.hostname</name> #配置担当resourcemanage的节点
                <value>master</value>
        </property>
        <property>
                <name>yarn.nodemanager.aux-services</name> #reduce获取数据方式为shuffle
                <value>mapreduce_shuffle</value>
        </property>
</configuration>

在这里插入图片描述

	[zhao@master hadoop]$ vim yarn-env.sh

在这里插入图片描述

  • mapred-env.sh添加jdk路径
	[zhao@master hadoop]$ vim mapred-env.sh

在这里插入图片描述

	[zhao@master hadoop]$ vim hadoop-env.sh

在这里插入图片描述

  • slaves 添加Datanode主机名
	[zhao@master hadoop]$ vim slaves

在这里插入图片描述
(8)格式化NameNode

	[zhao@master hadoop]$ hdfs namenode -format  #格式化NameNode

在这里插入图片描述
(9)启动集群 测试伪分布式是否安装成功

	[zhao@master hadoop]$ start-dfs.sh  #启动HDFS

在这里插入图片描述

	[zhao@master hadoop]$ jps  #查看进程命令

在这里插入图片描述

	[zhao@master hadoop]$ start-yarn.sh  #启动yarn

在这里插入图片描述

分布式安装详情如下

(1)关闭集群

		[zhao@master hadoop]$ stop-all.sh  #同时关闭 HDFS 和 YARN

在这里插入图片描述
(2)关闭master再克隆master,将新得到的Linux当做slave,用于充当DataNode
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

** 开启新克隆的Linux,以下操作在新克隆的Linux上执行,因为新克隆的Linux,两台Linux主机名称一样,注意区分
(3)修改主机名称为slave(在新克隆的Linux上执行)

	[zhao@master ~]$ sudo vim /etc/hostname 

在这里插入图片描述

	[zhao@master ~]$ reboot  #重启系统

在这里插入图片描述
之后执行命令时 先看清是在slave 执行还是在 master执行 ,通过主机名可以区分

(4)修改ip地址

	[zhao@slave ~]$ nmtui  #图形化修改网卡

在这里插入图片描述
在这里插入图片描述

		[zhao@slave ~]$ ifconfig  #查看网卡信息

在这里插入图片描述
在这里插入图片描述
(3)在/etc/hosts中添加slave(master、slave都需要做)

	[zhao@slave ~]$ sudo vim /etc/hosts #在slave端

在这里插入图片描述

	[zhao@master ~]$ sudo vim /etc/hosts #在master端

在这里插入图片描述
(4)配置ssh免密钥(因为slave克隆的master,所以slave可以登陆master,而master不能登录slave,故需要在slave端生成公钥发送给master)

	[zhao@slave .ssh]$ ssh-keygen -t rsa  #生成公钥和私钥。(因为之前克隆的master,故slave上有之前生成的master的公钥和私钥,输入该命令时会询问是否覆盖掉之前的,输入Y,这样就会生成slave的公钥和私钥,替换掉了之前master的公钥和私钥)

在这里插入图片描述

	[zhao@slave ~]$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys  #实现自己免密登录自己

在这里插入图片描述

	[zhao@slave ~]$ scp ~/.ssh/authorized_keys  zhao@master:/home/zhao/.ssh/
	#将salve的authorized_keys远程传送到master,覆盖掉master中的authorized_keys。这样master就可以免密登录slave

在这里插入图片描述
(5)修改Hadoop的配置文件slaves (master,与slave 都需要修改)

	[zhao@slave ~]$ vim ~/hadoop/etc/hadoop/slaves #在slave执行

在这里插入图片描述

	[zhao@master ~]$ vim ~/hadoop/etc/hadoop/slaves #在master执行

在这里插入图片描述
(6)在master上启动集群

	[zhao@master ~]$ start-dfs.sh #启动HDFS	

在这里插入图片描述
在这里插入图片描述

	[zhao@master ~]$ start-yarn.sh  #在master上启动yarn

在这里插入图片描述
在这里插入图片描述
(7)通过window的Web页面查看HDFS

  • 关闭master和slave的防火墙,分别在master与slave执行下列命令
	[zhao@master ~]$ sudo systemctl stop firewalld

在浏览器中输入 192.168.241.130:50070
在这里插入图片描述
在这里插入图片描述

发布了43 篇原创文章 · 获赞 13 · 访问量 4887

猜你喜欢

转载自blog.csdn.net/qq_30693057/article/details/89265329
今日推荐