3(全分布式安装)

  NN SNN DN
node0001 *    
node0002   * *
node0003     *
node0004     *

1、环境检查:

4台机器jdk安装完成

date  (检查时间,相差不能超过几秒,主从节点ping不通)

date -s "2020-07-18 23:32:00"    (4台机器设置i相同时间)

cat /etc/sysconfig/network    (查看4台机器别名是否设置好)

cat /etc/hosts   (查看ip/别名映射是否设置好 )

cat /etc/sysconfig/selinux (查询安全机制文件是否关闭   SELINUX=disabled)

检查防火墙是否关闭

2、秘钥分发(主节点)

ll -a   (若没有.ssh文件,则ssh localhost    输入密码 exit)

cd .ssh

node0001:scp  id_dsa.pub   node0002:`pwd`/node0001.pub     (发送到node0002的.ssh文件夹)

node0002:cat .ssh/node0001.pub  >> .ssh/authorized_keys    (公钥追加到认证文件里)

node0001:ssh node0002     (完成免密钥登陆)

重复上面操作,分发到node0003 ode0004

3、备份伪分布式

cp -r hadoop hadoop_pseude   (在hadoop里etc下执行,hadoop_pseude 为伪分布式配置,以后需要可以改成hadoop,以切换)

4、修改配置文件(主节点)

vi core-site.xml     (换个新文件夹,防止和伪分布式的文件冲突)

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://node0001:9000</value>
    </property>
  <property>
        <name>hadoop.tmp.dir</name>
        <value>/var/sxt/hadoop/full</value>
    </property>
</configuration>

vi hdfs-site.xml   (2给DN  使node0002为SNN)

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>node0002:50090</value>
    </property>
</configuration>

vi slaves   (从节点配置   node0002  node0003   node0004)

cd /opt

scp -r sxt/ node0002:`pwd`

scp -r sxt/ node0003:`pwd`

scp -r sxt/ node0004:`pwd`

配置node0002-4  hadoop环境变量并scoure

hdfs namenode -format  (格式化,只有主节点需要node0001)

5、启动集群

start-dfs.sh   (stop-dfs.sh 停集群)

node0001:jps   (只有namenode)

node0002:jps  (datename和secondarynamenode)

node0003/node0004只有datanode

有问题看日志(/opt/sxt/hadoop-2.6.5/logs)

全分布分配方案:
NNSNNDNNODE06*NODE07**NODE08*NODE09*