hadoop完全分布式搭建

1.关闭防火墙

  service iptables status 查看防火墙状态

  service iptables stop 关闭防火墙

  service iptables start 开启防火墙

  chkconfig iptables off 永久关闭防火墙

2.开启网络 (连接外网)

  ping www.baidu.com 测试

  vim /etc/sysconfig/network

3.修改主机名

  vim /etc/sysconfig/network

5.配置ip与主机名之间的映射

  vim /etc/hosts

  例:192.168.118.101 hadoop101

  192.168.118.102 hadoop102

  192.168.118.103 hadoop103

6.创建新用户(用户名设为hadoop)

  useradd 用户名(hadoop)

7.修改密码

  passwd hadoop

8.在root用户下给hadoop用户设置权限

  vim /etc/sudoers

9.切换至hadoop用户

  su hadoop

10.在hadoop(~)用户下创建文件夹software

  mkdir software

11.安装jdk

  卸载原有jdk yum remove *openjdk*

  从Windows上传jdk压缩包到linux上

  解压jdk压缩包

  tar -zxvf jdk压缩包名

  创建软链接

  ln -s jdk解压后名 软连接名

12.配置环境变量

  vim ~/.bash_profile

  export JAVA_HOME=jdk路径

  export PATH=$PATH:$JAVA_HOME/bin

13.将jdk分别传到另外两台虚拟机上

  scp -r jdk路径 hadoop102:/home/hadoop/software

  将环境变量文件发送至另外两台虚拟机

  scp -r ~/.bash_profile hadoop102:/home/hadoop/.bash_profile

14.环境变量立即生效

  source ~/.bash_profile

15.上传hadoop

  解压 创建软链接 配置环境变量

  export HADOOP_HOME=路径

  export PATH=$PATH:$HADOOP_HOME/bin

  export PATH=$PATH:$HADOOP_HOME/sbin

16.配置文件

  cd /home/hadoop/software/hadoop/etc/hadoop

  vim core-site.xml

<configuration>
    <property>
        <!--指定hdfs的namenode节点的地址-->
        <name>fs.defaultFS</name>
        <value>hdfs://hadoop101:9000</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/home/hadoop/software/hadoop/data/tmp</value>
    </property>
</configuration> 

 

  vim hdfs-site.xml

<property>
    <!--指定副本数为3-->
    <name>dfs.replication</name>
    <value>3</value>
</property>
<!--指定secondarynamenode节点-->
<property>
    <name>dfs.namenode.secondary.http-address</name>
    <value>hadoop103:50090</value>
</property>
</configuration>

 

  vim yarn-site.xml

<configuration>
<!-- Site specific YARN configuration properties -->
<property>
    <!--设置shuffle流程-->
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
</property>
<property>
    <!--设置resourcemanager的是哪个节点-->
    <name>yarn.resourcemanager.hostname</name>
    <value>hadoop102</value>
</property>
</configuration>

  vim mapred-site.xml

<configuration>
<!--指定mr运行在yarn-->
<property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
</property>
</configuration>

 

步骤二:修改JAVA_HOME

  vim hadoop-env.sh

  vim mapred-env.sh

  vim yarn-env.sh

17.分发

  将hadoop101上的hadoop分发到  hadoop102  hadoop103机器

  scp -r 路径 hadoop102:/home/hadoop/software/

  创建软连接

  ln -s hadoop-2.7.3/ hadoop

  远程分发环境变量文件 ~/.bash_profile

  scp ~/.bash_profile hadoop102:/home/hadoop/

  立即生效:  source ~/.bash_profile

 

18.格式化

  第一次使用的时候一定要格式化

   hadoop namenode –format

  注意:如果再次格式化  需要将三台机器上的data  logs全都删除

  启动:单个启动namenode

  hadoop-daemon.sh start namenode

  在hadoop101 hadoop102  hadoop103 启动datanode

  hadoop-daemon.sh start datanode

  启动secondarynamenode

  hadoop-daemon.sh start secondarynamenode

  在hadoop102 启动resourcemanager

  yarn-daemon.sh start resourcemanager

  Hadoop101 102 103 启动nodemanager

  yarn-daemon.sh start nodemanager

19.ssh配置

  群起完全分布式: Ssh的无密登陆

  解压创建软链接配置环境变量

  export HADOOP_HOME=路径

Hadoop101  hadoop102 hadoop103 三台机器

 

生成公钥私钥对:

ssh-keygen -t rsa

ssh-keygen -t rsa

ssh-keygen -t rsa

三个回车

[hadoop@hadoop101 .ssh]$ ll

 

将公钥拷贝到其他机器:

ssh-copy-id hadoop101

ssh-copy-id hadoop102

ssh-copy-id hadoop103

 

Hadoop 102  hadoop3 机器上执行相同操作

 

authorized_keys

授权列表

id_rsa

私钥

id_rsa.pub

公钥

known_hosts

记录的是ssh访问的记录

 配置slavaes文件

vim slaves

posted @ 2019-09-02 09:32  小怪兽他爹爹  阅读(379)  评论(0编辑  收藏  举报