从零搭建完全分布式

从零搭建完全分布式

基于CentOS_64_6.8、jdk1.8、Hadoop2.7.3

一台master节点,3台slave节点

【以下所有windows配置都是为了在同一网络环境下,部署一个windows远程ssh连接集群做操作或测试使用】

文章目录

0.安装前准备(所有节点都做,IP地址、主机名不同)

0.1 设置静态IP

0.1.1 查看子网IP
  1. 【编辑】–>【虚拟网络编辑器】–>

    ​ NET:(VMnet8)中:

    ​ 子网号码(192.168.204.0)【192.168.204 是将要加入的网段】

    ​ 子网掩码(255.255.255.0)

[外链图片转存失败(img-t4PhJxaT-1568690069557)(F:\WDP1808JAVADEV\记录\全日制\note_image\1564582399097.png)]

0.1.2 查看MAC地址是否与eth0匹配

【对比ifconfig中的MAC地址与/etc/udev/rules.d/70-persistent-net.rules中的MAC地址】

[hadoop@localhost ~]$ ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:A9:54:0E
inet6 addr: fe80::20c:29ff:fea9:540e/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:329 errors:0 dropped:0 overruns:0 frame:0
TX packets:348 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:21327 (20.8 KiB) TX bytes:66744 (65.1 KiB)

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:120 errors:0 dropped:0 overruns:0 frame:0
TX packets:120 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:9328 (9.1 KiB) TX bytes:9328 (9.1 KiB)

[hadoop@localhost ~]$

[外链图片转存失败(img-Xzeb7fVi-1568690069560)(F:\WDP1808JAVADEV\记录\全日制\note_image\1564584003966.png)]

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:a9:54:0e", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

[外链图片转存失败(img-sbkSDn4a-1568690069561)(F:\WDP1808JAVADEV\记录\全日制\note_image\1564583012534.png)]

0.1.3 root用户下修改【/etc/sysconfig/network-scripts/ifcfg-eth0】

[hadoop@localhost rules.d]$ cd /etc/sysconfig/network-scripts/
[hadoop@localhost network-scripts]$ vim ifcfg-eth0

修改:

​ BOOTPROTO=“static”

追加:

​ IPADDR=“192.168.204.100”【ip地址,前三位是虚拟网络编辑器中查看到的网段值,第四位任意】

​ NETMASK=“255.255.255.0”【子网掩码,虚拟网络编辑器中查找到的值】

​ NETWORK=“192.168.204.0”【子网号,就是虚拟网络编辑器中的子网号】

​ GATEWAY=“192.168.204.2”【网关,前三位参看虚拟网络编辑器,第四位任意,但不能和ip以及之后要配置的windows虚拟网卡VMnet8中的ip相同】

​ DNS1=“192.168.204.2”【首选DNS服务器,如果是使用本地的DNS,必须和网关ip一致,如果使用公有的DNS(例如:8.8.8.8是谷歌的,114.114.114.114是南京信风的)】

  • ifcfg-eth0文件修改如下:

DEVICE=“eth0”
BOOTPROTO=“static”
HWADDR=“00:0C:29:A9:54:0E”
IPV6INIT=“yes”
NM_CONTROLLED=“yes”
ONBOOT=“yes”
TYPE=“Ethernet”
UUID=“ba80fe09-30f1-408d-bc94-3f3b1b0b8947”

IPADDR=“192.168.204.100”
NETMASK=“255.255.255.0”
NETWORK=“192.168.204.0”
GATEWAY=“192.168.204.2”
DNS1=“192.168.204.2”

0.1.4 重启网络服务

[root@localhost network-scripts]# service network restart

[外链图片转存失败(img-BjnaKdjV-1568690069564)(F:\WDP1808JAVADEV\记录\全日制\note_image\1564583864206.png)]

0.1.5 设置windows主机中的虚拟网卡VMnet8

【控制面板】–>【网络和Internet】–>【网络连接】–>

​ 【右键VMnet8】–>【选择IPv4】–>【属性】

​ 使用下面的IP地址(DNS服务器地址)

​ IP地址: 192.168.204.1 【默认设置为1】

​ 子网掩码: 255.255.255.0 【虚拟网络编辑器中的子网掩码】

​ 默认网关: 192.168.204.2 【末位与IP地址不同即可,但设置的所有网关必须一致】

​ 首选DNS服务器:192.168.204.2 【本地的必须使用网关地址】

[外链图片转存失败(img-zw6ZyTTr-1568690069565)(F:\WDP1808JAVADEV\记录\全日制\note_image\1564584231492.png)]

[外链图片转存失败(img-fSiJPft9-1568690069567)(F:\WDP1808JAVADEV\记录\全日制\note_image\1564584272965.png)]

0.1.6 在windows上ping 192.168.204.100

[外链图片转存失败(img-Ks0WPvsI-1568690069568)(F:\WDP1808JAVADEV\记录\全日制\note_image\1564584374327.png)]

0.1.7 在linux中ping 192.168.204.1,而不是物理机的IP地址

[外链图片转存失败(img-2ahhTimv-1568690069571)(F:\WDP1808JAVADEV\记录\全日制\note_image\1564584514652.png)]

0.1.8 步骤6、7都ping通,且linux可以ping通外网(如:www.baidu.com)则完成静态IP设置

[外链图片转存失败(img-3kPuDReN-1568690069572)(F:\WDP1808JAVADEV\记录\全日制\note_image\1564584597588.png)]

0.1.9 注意事项:
  1. 物理机的虚拟网卡VMnet8中的IP末位可以任意设置,网关的末位也可以任意设置,但是两者不可以相同。
  2. linux中的IP末位也可以任意设置,但是不可以与物理机虚拟网卡VMnet8以及网关的地址相同。
  3. 子网掩码一般都是255.255.255.0,也有其他情况,具体就看虚拟网络编辑器中的,或者在虚拟网络编辑器中自定义。
  4. 子网网段参看虚拟网络编辑器,也可以在虚拟网络编辑器中修改成自己想要的网段,都是虚拟的没什么不可以。但是,设定以后,所有相关的IP、网关、DNS前三位都要与其一致。
  5. DNS服务器使用本地的,必须使用网关地址。使用在线的可以有(114.114.114.114是南京信风的)

0.2 修改主机名

0.2.1 进入系统后的默认机器名都是localhost

​ [用户名@机器名 路径信息] $

​ 【用户名,是通过Terminal登录的用户名】

​ 【机器名,可以理解为IP映射地址】

​ 【用户名,是通过Terminal登录的用户名】

​ 【GUI登录名,是通过图形界面登录的用户名,实际上没有用到的时候】

0.2.2 root下修改【/etc/sysconfig/network】文件
  • 【[root@localhost etc]# vim /etc/sysconfig/network
  • 将HOSTNAME属性localhost.localdomain修改为【master】

[外链图片转存失败(img-J17QLQ3s-1568690069574)(F:\WDP1808JAVADEV\记录\全日制\note_image\1564585461729.png)]

0.2.3 重启系统

[root@localhost etc]# reboot

0.2.4 修改windows中的【C:\Windows\System32\drivers\etc\hosts】文件

【如果没有,手动创建。如果有,同步骤2】

[外链图片转存失败(img-HesKW8Ev-1568690069578)(F:\WDP1808JAVADEV\记录\全日制\note_image\1564585698429.png)]

[外链图片转存失败(img-jJaKgb7I-1568690069585)(F:\WDP1808JAVADEV\记录\全日制\note_image\1564585762337.png)]

0.2.5 测试

【命令行下输入>ping master】

[外链图片转存失败(img-qMHGH9Fd-1568690069586)(F:\WDP1808JAVADEV\记录\全日制\note_image\1564585886596.png)]

0.3 在linux的hosts文件添加各节点IP地址和别名(主机名)

别名就是:给这个节点的IP地址起一个名字,便于记忆与使用。这里设置的与主机名一致,可以不一致,便于记忆与使用尽量设置为一致的。

0.3.1 root下修改【/etc/hosts】文件
  • 【[root@localhost etc]# vim /etc/hosts】

  • 在文件末尾追加:

    192.168.204.100 master

    192.168.204.101 slave01
    192.168.204.102 slave02
    192.168.204.103 slave03

[外链图片转存失败(img-zPERd0tr-1568690069587)(F:\WDP1808JAVADEV\记录\全日制\note_image\1564617095188.png)]

【该IP地址需先设定静态IP,否则设置会随动态IP失效】

【用master指向IP地址:192.168.204.100】

0.4 关闭防火墙

0.4.1 查看防火墙状态

[root@master etc]# service iptables status

[root@master etc]# chkconfig iptables --list
iptables 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[root@master etc]#

0.4.2 关闭防火墙【root用户下】

[root@master etc]# service iptables stop

【关闭防火墙】

[root@master etc]# chkconfig iptables off

【关闭开机启动防火墙】

[root@master etc]# chkconfig iptables --list
iptables 0:off 1:off 2:off 3:off 4:off 5:off 6:off
[root@master etc]#

0.5 设置ssh无密登录

[hadoop@master ~]$ ssh localhost
hadoop@localhost’s password: 【输入密码】

0.5.1 生成密钥

[hadoop@master ~]$ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

[hadoop@master hadoop]$ ssh-keygen -t rsa -P ''
Generating public/private rsa key pair.
Enter file in which to save the key (/home/hadoop/.ssh/id_rsa):

【这里直接回车,问你是否保存在默认的位置】

Your identification has been saved in /home/hadoop/.ssh/id_rsa.
Your public key has been saved in /home/hadoop/.ssh/id_rsa.pub.
The key fingerprint is:
2a:ef:8b:3b:9d:8c:ee:28:0d:9d:a1:f9:d3:32:be:1c hadoop@master
The key’s randomart image is:
±-[ RSA 2048]----+
| |
| |
| |
| . |
| + o S |
|+ o . |
| +E…+… |
|…*o+++ |
| o=B=++. |
±----------------+

【ssh-keygen】生成密钥
【-t rsa】加密方式是rsa
【-P ‘’】密码为空
【-f ~/.ssh/id_rsa】在该地址下创建id_rsa文件【不配也是默认该地址】

[hadoop@master ~]$ cd ~/.ssh
[hadoop@master .ssh]$ ls -l
总用量 20
-rw-------. 1 hadoop hadoop 1675 7月 29 13:44 id_rsa
-rw-r–r--. 1 hadoop hadoop 395 7月 29 13:44 id_rsa.pub
-rw-r–r--. 1 hadoop hadoop 391 7月 29 13:36 known_hosts

0.5.2 生成公钥库

[hadoop@master .ssh]$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

0.5.3 修改公钥库权限

[hadoop@master .ssh]$ chmod 0600 ~/.ssh/authorized_keys

【必须修改,否则系统将无法识别该文件的权限,该文件就失效了】

【拷贝到其他节点上时,也必须检查该权限是否为600】

0.5.4 测试ssh登录

[hadoop@master .ssh]$ ssh master
The authenticity of host ‘master (192.168.204.110)’ can’t be established.
RSA key fingerprint is 15:10:37:43:13:e5:a6:a5:90:0e:89:fb:27:f9:3b:98.
Are you sure you want to continue connecting (yes/no)? yes

【首次ssh到某个节点,会校验一次,以后不会再出现】

Warning: Permanently added ‘master,192.168.204.110’ (RSA) to the list of known hosts.
[hadoop@master ~]$

[hadoop@master ~]$ ssh master
Last login: Mon Jul 29 13:56:06 2019 from master
【master | localhost】一个意思,都是代表IP地址

0.6 创建一个目录用于安装程序

$>mkdir /home/hadoop/soft

0.7 注意

  • 为所有主机配置静态IP

    • 192.168.204.100 master

      192.168.204.101 slave01
      192.168.204.102 slave02
      192.168.204.103 slave03

  • 修改机器名

    • master

      slave01
      slave02
      slave03

  • 给每个IP地址起别名(通常为机器名)

    • 192.168.204.100 master

      192.168.204.101 slave01
      192.168.204.102 slave02
      192.168.204.103 slave03

  • 关闭所有防火墙及开机启动

    • service iptables stop

      chkconfig iptables off

  • 设置ssh无密登录

    • 仅为master做ssh-keygen,获取公钥库

      ssh-keygen -t rsa -P ''

      cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

      chmod 0600 ~/.ssh/authorized_keys

      将master的公钥库authorized拷贝到所有的slave节点上,

      只要对应节点拥有master节点的公钥库,master节点就可以无密登录该节点。

1. 安装集群环境

1.1 为每个节点安装JDK(安装配置完全一致)

1.1.1 解压JDK
  • 在自建用户【hadoop】家目录下创建【soft】目录
  • 【将JDK安装包拷贝到/home/hadoop/soft目录下】
  • 使用命令解压JDK
    • [hadoop@master soft]$ tar zxvf jdk-8u121-linux-x64.tar.gz
1.1.2 创建jdk软链接
  • [hadoop@master soft]$ ln -s jdk1.8.0_121/ jdk

    [外链图片转存失败(img-kDhdW8Dn-1568690069588)(F:\WDP1808JAVADEV\记录\全日制\note_image\1564586443216.png)]

1.1.3 设置JDK环境变量
  • 修改【~/.bash_profile】文件,追加如下:

  • 【[hadoop@master soft]$ vim ~/.bash_profile

  • export JAVA_HOME="/home/hadoop/soft/jdk"
    export PATH= J A V A H O M E / b i n : JAVA_HOME/bin: JAVAHOME/bin:PATH

    [外链图片转存失败(img-rUR7jzt4-1568690069592)(F:\WDP1808JAVADEV\记录\全日制\note_image\1564587087732.png)]

  • [hadoop@master soft]$ source ~/.bash_profile

    【环境变量配置立即生效】

  • 测试配置是否成功

    echo J A V A H O M E 【 出 现 路 径 则 成 功 】 [ h a d o o p @ m a s t e r s o f t ] JAVA_HOME【出现路径则成功】 [hadoop@master soft] JAVAHOME[hadoop@mastersoft] echo $JAVA_HOME
    /home/hadoop/soft/jdk

    在任意路径下,输入jp

    然后按下超过2次tab键

    出现jsp命令,则配置成功

    [hadoop@master soft]$ jp
    jpegtran jps

1.2 为每个节点安装Hadoop(安装配置完全一致)

1.2.1 解压Hadoop
  • 【将Hadoop安装包拷贝到/home/hadoop/soft目录下】

  • 使用命令解压Hadoop

    • [hadoop@master soft]$ tar zxvf hadoop-2.7.3.tar.gz

1.2.2 创建软链接
  • [hadoop@master soft]$ rm hadoop-2.7.3.tar.gz

    [外链图片转存失败(img-KNnO3qIf-1568690069595)(F:\WDP1808JAVADEV\记录\全日制\note_image\1564587851759.png)]

1.2.3 配置Hadoop环境变量
  • 修改【~/.bash_profile】文件,追加如下:

  • 【[hadoop@master soft]$ vim ~/.bash_profile

  • export HADOOP_HOME="/home/hadoop/soft/hadoop"
    export PATH= H A D O O P H O M E / b i n : HADOOP_HOME/bin: HADOOPHOME/bin:HADOOP_HOME/sbin:$PATH

    [外链图片转存失败(img-DiT5WMTq-1568690069599)(F:\WDP1808JAVADEV\记录\全日制\note_image\1564588105924.png)]

  • [hadoop@master soft]$ source ~/.bash_profile

    【环境变量配置立即生效】

  • 测试配置是否成功

    echo H A D O O P H O M E 【 出 现 路 径 则 成 功 】 [ h a d o o p @ m a s t e r s o f t ] HADOOP_HOME【出现路径则成功】 [hadoop@master soft] HADOOPHOME[hadoop@mastersoft] echo $JAVA_HOME
    /home/hadoop/soft/hadoop

    在任意路径下,输入start

    然后按下超过2次tab键

    出现start-dfs.sh命令,则配置成功

    [hadoop@master soft]$ start
    start start-dfs.cmd start_udev
    start-all.cmd start-dfs.sh startx
    start-all.sh start-pulseaudio-x11 start-yarn.cmd
    start-balancer.sh start-secure-dns.sh start-yarn.sh

1.2.4 修改Hadoop基础配置文件
1.2.4.1 修改【$HADOOP_HOME/ect/hadoop】文件夹下的core-site.xml
  • 也就是:/home/hadoop/soft/hadoop-2.7.3/etc/hadoop目录下的core-site.xml文件
    [hadoop@master hadoop]$ vim core-site.xml

    【在中添加如下:】

    <property>
           <name>fs.defaultFS</name>
              <value>hdfs://master:9000</value>
      </property>
      <property>
              <name>hadoop.tmp.dir</name>
              <value>/home/hadoop/tmp/hadoop-${user.name}</value>
      </property>
    
1.2.4.2 修改【$HADOOP_HOME/etc/hadoop】文件夹下的hdfs-site.xml
  • 也就是:/home/hadoop/soft/hadoop-2.7.3/etc/hadoop目录下的hdfs-site.xml文件
    [hadoop@master hadoop]$ vim hdfs-site.xml

    【在中添加如下:】

    <property>
           <name>dfs.replication</name>
           <value>3</value>
    </property>
    <property>
           <name>dfs.blocksize</name>
           <value>128M</value>
    </property>
    <property>
           <name>dfs.namenode.name.dir</name>
           <value>file://${hadoop.tmp.dir}/dfs/name, /backup-disk/dfs/name</value>
    </property>
    <property>
           <name>dfs.datanode.data.dir</name>
           <value>file://${hadoop.tmp.dir}/dfs/data</value>
    </property>
    
1.2.4.3 修改【$HADOOP_HOME/etc/hadoop】文件夹下的yarn-site.xml
  • 也就是:/home/hadoop/soft/hadoop-2.7.3/etc/hadoop目录下的yarn-site.xml文件
    [hadoop@master hadoop]$ vim yarn-site.xml

    【在中添加如下:】

    <property>
    	<name>yarn.nodemanager.aux-services</name>
    	<value>mapreduce_shuffle</value>
    </property>
    
1.2.4.4 修改【$HADOOP_HOME/etc/hadoop】文件夹下的mapred-site.xml
  • 拷贝mapred-site.xml.template一份为mapred-site.xml

    也就是:/home/hadoop/soft/hadoop-2.7.3/etc/hadoop目录下的mapred-site.xml文件
    [hadoop@master hadoop]$ vim mapred-site.xml

    【在中添加如下:】

    <property>
    	<name>mapreduce.framework.name</name>
    	<value>yarn</value>
    </property>
    
1.2.4.5 修改【$HADOOP_HOME/etc/hadoop】文件夹下的slaves
  • 也就是:/home/hadoop/soft/hadoop-2.7.3/etc/hadoop目录下的slaves文件
    [hadoop@master hadoop]$ vim slaves

    • 方式一、【用如下数据覆盖,只设置3个数据从节点】

      slave01
      slave02
      slave03

      方式二、【追加以上数据,会将master节点也设置为数据节点】

      localhost

      slave01

      slave02

      slave03

1.2.4.6 修改hadoop配置JAVA_HOME路径

$>cd $HADOOP_HOME/etc/hadoop
$>vim hadoop-env.sh

export JAVA_HOME=/home/hadoop/soft/jdk【修改为绝对路径】

【因为在设置HADOOP_HOME时,将HADOOP_HOME放在了JAVA_HOME之前,因此无法识别JAVA_HOME的配置,所以要固定指定JAVA_HOME的路径】

1.3 配置其他节点

1.3.1 安装linux系统,同“安装步骤”,修改IP地址和主机名
1.3.2 将master上的JDK和HADOOP文件拷贝到其他节点

【此时可以利用软链接拷贝,直接就是对应目录名,但还是用软链接的扩展性比较好】

  1. $>cd /home/hadoop

  2. $>scp -r soft hadoop@smaster:~/soft

    $>scp -r soft hadoop@slave01:~/soft

    $>scp -r soft hadoop@slave02:~/soft

    $>scp -r soft hadoop@slave03:~/soft

1.3.3 配置环境变量(同上)

【要么source,要么重启】

2 格式化文件系统

2.1【目的:创建fsimage镜像文件】

[hadoop@master ~]$ hdfs namenode -format

2.2 开启hadoop的HDFS【start-dfs.sh】

【但是在实际使用中少用此方式,因为无法关闭一部分功能,要是全部关闭则又是HDFS系统所不允许的,全关闭的话,整个系统就关了,那就无法进行有效管理】

[hadoop@master hadoop]$ start-dfs.sh
Starting namenodes on [localhost]
localhost: starting namenode, logging to /home/hadoop/soft/hadoop-2.7.3/logs/hadoop-hadoop-namenode-master.out
localhost: starting datanode, logging to /home/hadoop/soft/hadoop-2.7.3/logs/hadoop-hadoop-datanode-master.out
Starting secondary namenodes [0.0.0.0]
The authenticity of host ‘0.0.0.0 (0.0.0.0)’ can’t be established.
RSA key fingerprint is 72:96:2e:5f:bd:ea:b4:7b:27:c1:43:99:a0:6a:01:1b.
Are you sure you want to continue connecting (yes/no)? yes
0.0.0.0: Warning: Permanently added ‘0.0.0.0’ (RSA) to the list of known hosts.
0.0.0.0: starting secondarynamenode, logging to /home/hadoop/soft/hadoop-2.7.3/logs/hadoop-hadoop-secondarynamenode-master.out
[hadoop@master hadoop]$

2.3 检验【[hadoop@master hadoop]$ jsp】

[hadoop@master hadoop]$ jps
9106 NameNode
9493 Jps
9384 SecondaryNameNode
[hadoop@master hadoop]$

[hadoop@slaver01 hadoop]$ jps
9200 DataNode
[hadoop@slaver01 hadoop]$

2.4 测试连接

打开浏览器:http://master:50070

3. 总结

  • 首先,配置静态IP便于节点之间的连接,修改主机名便于记忆与处理(不用记那么长的IP地址),配置hosts为每个节点注册一个别名便于连接(通常设为主机名),关闭防火墙才可以ssh远程访问(每个守护节点都是通过ssh开启的),所以ssh无密登录也很重要,还要设置无密登录【为master节点做ssh无密登录,将公钥库发送给所有slave节点】。
  • 其次,拷贝或下载jdk,解压并设置软链接,配置环境变量(不重启的情况下,记得source)。拷贝或下载hadoop,解压并设置软链接,配置环境变量,配置hdfs连接为master:9000(core-site.xml),配置副本数replication为3(hdfs-site.xml),配置JAVA_HOME(hadoop-env.sh)设置为绝对路径,修改默认的hdfs存储目录(包括默认主目录,其下的name目录、data目录),设置yarn节点管理器的业务处理为mapreduce_shuffle(yarn-site.xml),设置mapreduce框架名为yarn(mapreduce-site.xml),【dfs.blocksize默认就是128M,不需要显示设置,但要清楚数据是以128M的块结构存储的】。
    • 完全分布式与伪分布式的差别只有:
        1. 另外安装3个一模一样的slave节点,配置不同的IP地址
        2. 修改hdfs连接为master:9000(core-site.xml)
        3. 修改副本数replication为3(hdfs-site.xml)
        4. 设置yarn节点管理器的任务处理为mapreduce_shuffle(yarn-site.xml)
        5. 设置mapreduce框架名为yarn(mapreduce-site.xml)
  • 然后,初始化hdfs文件系统。
  • 【更简单的方式】:
    • 配置所有节点的安装准备
    • 只安装和配置主节点的jdk以及hadoop
    • 然后scp主节点的公钥库给所有从节点(此时需要每台从节点的root密码)
    • 设置无密登录之后,将soft目录scp给所有的从节点,然后配置所有从节点的环境变量
    • 初始化HDFS系统就行

,解压并设置软链接,配置环境变量,配置hdfs连接为master:9000(core-site.xml),配置副本数replication为3(hdfs-site.xml),配置JAVA_HOME(hadoop-env.sh)设置为绝对路径,修改默认的hdfs存储目录(包括默认主目录,其下的name目录、data目录),设置yarn节点管理器的业务处理为mapreduce_shuffle(yarn-site.xml),设置mapreduce框架名为yarn(mapreduce-site.xml),【dfs.blocksize默认就是128M,不需要显示设置,但要清楚数据是以128M的块结构存储的】。

  • 完全分布式与伪分布式的差别只有:
      1. 另外安装3个一模一样的slave节点,配置不同的IP地址
      2. 修改hdfs连接为master:9000(core-site.xml)
      3. 修改副本数replication为3(hdfs-site.xml)
      4. 设置yarn节点管理器的任务处理为mapreduce_shuffle(yarn-site.xml)
      5. 设置mapreduce框架名为yarn(mapreduce-site.xml)
  • 然后,初始化hdfs文件系统。
  • 【更简单的方式】:
    • 配置所有节点的安装准备
    • 只安装和配置主节点的jdk以及hadoop
    • 然后scp主节点的公钥库给所有从节点(此时需要每台从节点的root密码)
    • 设置无密登录之后,将soft目录scp给所有的从节点,然后配置所有从节点的环境变量
    • 初始化HDFS系统就行
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值