美文网首页
第二步:hadoop 完全分布式集群安装

第二步:hadoop 完全分布式集群安装

作者: 微生命 | 来源:发表于2018-12-21 17:42 被阅读0次

    1.下载hadoop zookeeper-3.4.7.tar

    上传到 /home底下

    2.tar -zxvf  zookeeper-3.4.7.tar

    3.配置 hadoop环境变量

    vim  /etc/profile

    因为hadoop依赖java环境 必须先配置JAVA_HOME

    加入环境变量

    export HADOOP_HOME=/home/hadoop-2.7.1/

    export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

    4.添加hadoop 数据存储目录

    cd /home/hadoop-2.7.1/

    mkdir tmp

    cd tmp

    mkdir data

    mkdir journal

    mkdir name

    5.配置hadoop集群的配置文件

    1> 配置hadoop环境变量

    cd /home/hadoop-2.7.1/etc/hadoop

    vim hadoop-env.sh

    export JAVA_HOME=/home/jdk1.8.0_131

    :wq

    2>配置hadoop核心的配置 core.site.xml

    <configuration>

    <!-- 指定hdfs的nameservice为ns -->

    <property>

    <name>fs.defaultFS</name>

    <value>hdfs://ns</value>

    </property>

    <!--指定hadoop数据临时存放目录-->

    <property>

    <name>hadoop.tmp.dir</name>

    <value>/home/hadoop-2.7.1/tmp</value>

    </property>

    <!--指定hdfs操作数据的缓冲区大小 可以不配-->

    <property>

    <name>io.file.buffer.size</name>

    <value>4096</value>

    </property>

    <!--指定zookeeper地址-->

    <property>

    <name>ha.zookeeper.quorum</name>

    <value>hadoop1:2181,hadoop2:2181,hadoop3:2181,hadoop4:2181,hadoop5:2181</value>

    </property>

    </configuration>

    <configuration>

    <!-- 指定hdfs的nameservice为ns -->

    <property>

    <name>fs.defaultFS</name>

    <value>hdfs://ns</value>

    </property>

    <!--指定hadoop数据临时存放目录-->

    <property>

    <name>hadoop.tmp.dir</name>

    <value>/home/hadoop-2.7.1/tmp</value>

    </property>

    <!--指定hdfs操作数据的缓冲区大小 可以不配-->

    <property>

    <name>io.file.buffer.size</name>

    <value>4096</value>

    </property>

    <!--指定zookeeper地址-->

    <property>

    <name>ha.zookeeper.quorum</name>

    <value>hadoop1:2181,hadoop2:2181,hadoop3:2181,hadoop4:2181,hadoop5:2181</value>

    </property>

    </configuration>

    3>配置hadoop hdfs数据存储方式 hdfs-site.xml

    <configuration>

    <!--指定hdfs的nameservice为ns,需要和core-site.xml中的保持一致 --> <property>

    <property>

    <name>dfs.nameservices</name>

    <value>ns</value>

    </property>

    <!-- ns下面有两个NameNode,分别是nn1,nn2 -->

    <property>

    <name>dfs.ha.namenodes.ns</name>

    <value>nn1,nn2</value>

    </property>

    <!-- nn1的RPC通信地址 -->

    <property>

    <name>dfs.namenode.rpc-address.ns.nn1</name>

    <value>hadoop1:9000</value>

    </property>

    <!-- nn1的http通信地址 -->

    <property>

    <name>dfs.namenode.http-address.ns.nn1</name>

    <value>hadoop1:50070</value>

    </property>

    <!-- nn2的RPC通信地址 -->

    <property>

    <name>dfs.namenode.rpc-address.ns.nn2</name>

    <value>hadoop2:9000</value>

    </property>

    <!-- nn2的http通信地址 -->

    <property>

    <name>dfs.namenode.http-address.ns.nn2</name>

    <value>hadoop2:50070</value>

    </property>

    <!-- 指定NameNode的元数据在JournalNode上的存放位置 -->

    <property>

    <name>dfs.namenode.shared.edits.dir</name>

    <value>qjournal://hadoop3:8485;hadoop4:8485;hadoop5:8485/ns</value>

    </property>

    <!-- 指定JournalNode在本地磁盘存放数据的位置 -->

    <property>

    <name>dfs.journalnode.edits.dir</name>

    <value>/home/hadoop-2.7.1/tmp/journal</value>

    </property>

    <!-- 开启NameNode故障时自动切换 -->

    <property>

    <name>dfs.ha.automatic-failover.enabled</name>

    <value>true</value>

    </property>

    <!-- 配置失败自动切换实现方式 -->

    <property>

    <name>dfs.client.failover.proxy.provider.ns</name>

    <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>

    </property>

    <!-- 配置隔离机制 -->

    <property>

    <name>dfs.ha.fencing.methods</name>

    <value>sshfence</value>

    </property>

    <!-- 使用隔离机制时需要ssh免登陆 -->

    <property>

    <name>dfs.ha.fencing.ssh.private-key-files</name>

    <value>/root/.ssh/id_rsa</value>

    </property>

    <!-- namenode存储位置 -->

    <property>

    <name>dfs.namenode.name.dir</name>

    <value>/home/hadoop-2.7.1/tmp/name</value>

    </property>

    <!-- dataode存储位置 -->

    <property>

    <name>dfs.datanode.data.dir</name>

    <value>/home/hadoop-2.7.1/tmp/data</value>

    </property>

    <!-- 副本数量根据自己的需求配置,这里配置2个 -->

    <property>

    <name>dfs.replication</name>

    <value>2</value>

    </property>

    <!-- 在NN和DN上开启WebHDFS (REST API)功能,不是必须 -->

    <property>

    <name>dfs.webhdfs.enabled</name>

    <value>true</value>

    </property>

    </configuration>

    4>配置mapred  mapred-site.xml

    cp mapred-site.xml.template mapred-site.xml

    <configuration>

    <property>

    <name>mapreduce.framework.name</name>

    <value>yarn</value>

    </property>

    </configuration>

    5>配置yarn yarn-site.xml

    <configuration>

    <!-- 指定nodemanager启动时加载server的方式为shuffle server -->

    <property>

    <name>yarn.nodemanager.aux-services</name>

    <value>mapreduce_shuffle</value>

    </property>

    <!-- 指定resourcemanager地址 -->

    <property>

    <name>yarn.resourcemanager.hostname</name>

    <value>hadoop1</value>

    </property>

    </configuration>

    6>配置数据解读 salves

    vim salves

    hadoop3

    hadoop4

    hadoop5

    7.scp 到 其他4台服务器上

    scp -r hadoop-2.7.1 root@hadoop2:/home

    scp -r hadoop-2.7.1 root@hadoop3:/home

    scp -r hadoop-2.7.1 root@hadoop4:/home

    scp -r hadoop-2.7.1 root@hadoop5:/home

    8.统一在5台机器上启动 zk

    cd /home/zookeeper-3.4.7/bin

    ./zkServer.sh start

    9.启动jn journalnode 节点

    cd /home/hadoop-2.7.1/sbin

    ./hadoop-daemons.sh start journalnode  [注意是daemons sss]

    10.首次启动 格式化干干净净一下 后期启动千万千万不要执行这些命令

    hdfs zkfc -formatZK

    hadoop namenode -fromat

    11.启动namenode 有两台 分别启动

    hadoop1: hadoop-daemon.sh start namenode

    hadoop2:

    hdfs namenode -bootstrapStandby #这个命令把namenode 的数据同步到hadoop2

    hadoop-daemon.sh start namenode #启动备份的namenode

    12.启动datanode

    hadoop-daemons.sh start datanode  [注意daemons ssssss]

    13.启动 yarn

    start-yarn.sh

    14.在hadoop1 hadoop2上分别启动 zkfc

    hadoop-daemon.sh start zkfc

    hadoop-daemon.sh start zkfc

    15.所有启动

    jps 查看 hadoop 1 2 3 4 5

    相关文章

      网友评论

          本文标题:第二步:hadoop 完全分布式集群安装

          本文链接:https://www.haomeiwen.com/subject/wljvkqtx.html