**
伪分布式集群、完全分布式搭建步骤详情
4.1 伪分布式模式介绍
1.特点
- 在一台机器上安装,使用的是分布式思想,即分布式文件系统,非本地文件系统。
- Hdfs涉及到的相关守护进程(namenode,datanode,secondarynamenode)都运行在一台机器上,都是独立的java进程。
2. 用途
比Standalone mode 多了代码调试功能,允许检查内存使用情况,HDFS输入输出,以及其他的守护进程交
互。
4.2 平台软件说明
- 操作系统: win10/win7
- 虚拟软件: VMware14
- 虚拟机: CentOS_7.7_64_master 192.168.10.200
- 软件包存储路径: /opt/software/
- 软件安装路径: /opt/apps/
- Jdk: jdk-8u221-linux-x64.tar.gz
- Hadoop: hadoop-2.7.6.tar.gz
- 用户: root
4.3 伪分布式环境需求及搭建:
4.3.1 环境需求:
--1. 确保防火墙是关闭的.
--2. NAT模式和静态IP的确定 (192.168.10.200)
--3. 确保/etc/hosts文件里 ip和hostname的映射关系
--4. 确保免密登陆localhost有效
--5. jdk和hadoop的环境变量配置
4.3.2 防火墙关闭确认
[root@master ~]# systemctl stop firewalld
[root@master ~]# systemctl disable firewalld
#最好也把selinux关闭掉,这是linux系统的一个安全机制,进入文件中将SELINUX设置为disabled
[root@master ~]# vi /etc/selinux/config
.........
SELINUX=disabled
.........
4.3.3 配置/etc/hosts文件
-- 进入hosts文件,配置一下ip和hostname
[root@master ~]# sudo vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.81.200 master <=添加本机的静态IP和本机的主机名之间的映射关系
4.3.4 确保ssh对localhost的免密登陆认证有效
-1. 使用rsa加密技术,生成公钥和私钥。一路回车即可
[root@master ~]# ssh-keygen -t rsa
-2. 进入~/.ssh目录下,将id_rsa.pub复制一份文件,文件名为authorized_keys。保证此文件的权限是600
[root@master ~]# cd ~/.ssh
[root@master .ssh]# cp id_rsa.pub authorized_keys
或者使用ssh-copy-id命令
[root@master .ssh]# ssh-copy-id -i id_ras.pub root@master
-3. 进行验证:
[hadoop@master .ssh]# ssh localhost
#输入yes后,不提示输入密码就对了
4.3.5 安装Jdk和Hadoop,配置相关环境变量
-1. 上传和解压两个软件包
[root@master ~]# cd /opt/software/
[root@master software]# tar -zxvf jdk-8u221-linux-x64.tar.gz -C /opt/apps/
[root@master software]# tar -zxvf hadoop-2.7.6.tar.gz -C /opt/apps/
-2. 进入apps里,给两个软件更名
[root@master software]# cd /opt/apps/
[root@master apps]# mv jdk1.8.0_221/ jdk
[root@master apps]# mv hadoop-2.7.6/ hadoop
-3. 配置环境变量
[hadoop@master apps]# vi /etc/profile
.....省略...........
#java environment
export JAVA_HOME=/opt/apps/jdk
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
#hadoop environment
export HADOOP_HOME=/opt/apps/hadoop
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
4.4 伪分布式相关文件的配置
4.4.1 core-site.xml的配置
[root@master ~]# cd $HADOOP_HOME/etc/haoop
[root@master hadoop]# vi core-site.xml
<configuration>
<!-- 配置分布式文件系统的schema和ip以及port,默认8020-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost/</value>
</property>
</configuration>
扩展: hadoop1.x的默认端口是9000,hadoop2.x的默认端口是8020,使用哪一个都可以
4.4.2 hdfs-site.xml的配置:
[root@master hadoop]# vi hdfs-site.xml
<configuration>
<!-- 配置副本数,注意,伪分布模式只能是1。-->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration</