多机器安装hadoop集群

1.安装并配置Hadoop

mkdir -p /usr/hadoop  &&  cd /usr/package277/

tar -zxvf hadoop-2.7.7.tar.gz -C /usr/hadoop/

xsync.sh /usr/hadoop/

将Hadoop安装目录配置到环境变量中,方便后续使用:

vim /etc/profile
# hadoop
export HADOOP_HOME=/usr/hadoop/hadoop-2.7.7/
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

xsync.sh /etc/profile
source /etc/profile


安装成功后我们进行Hadoop的基本配置分别编辑core-site.xml以及hdfs-site.xmlyarn-site.xml的配置文件:

cd $HADOOP_HOME/etc/hadoop
1.hadoop-env.sh运行环境 ======================
vim hadoop-env.sh
echo $JAVA_HOME
echo "export JAVA_HOME=/usr/java/jdk1.8.0_221" >> hadoop-env.sh



2.core-site.xml全局参数============================
vim core-site.xml  # 增加如下内容

#namenode 主机为master 端口9000
#临时目录位置为绝对路径 /root/hadoopData/tmp
<configuration>
    <property>
      <name>fs.default.name</name>
       <value>hdfs://master:9000</value>
    </property>
    <property>
      <name>hadoop.tmp.dir</name>
       <value>/root/hadoopData/tmp</value>
    </property>
    <property>
      <name>io.file.buffer.size</name>
       <value>131072</value>
    </property>
    <property>
      <name>fs.checkpoint.period</name>
       <value>60</value>
    </property>
    <property>
      <name>fs.checkpoint.size</name>
       <value>67108864</value>
    </property>

</configuration>

三台机器都创建
mkdir -p /root/hadoopData/tmp


3,hdfs-site.xml配置文件============================
vim hdfs-site.xml  # 增加如下内容
# namenode临时文件所存放的目录
# datanode临时文件所存放的目录
# 关闭权限校验 集群间用hostname通信
<configuration>
   <property>
        <name>dfs.replication</name>
        <value>2</value>
   </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>/root/hadoopData/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>/root/hadoopData/data</value>
    </property>
    
    <property>
       <name>dfs.permissions</name>
       <value>false</value>
    </property>
    <property>
      <name>dfs.datanode.use.datanode.hostname</name>
      <value>true</value>
    </property>
    
    
</configuration>

三台机器都创建
mkdir -p /root/hadoopData/name
mkdir -p /root/hadoopData/data

4,YARN框架运行环境============================
echo "export JAVA_HOME=/usr/java/jdk1.8.0_221" >> yarn-env.sh





5.YARN框架的核心配置============================
vim yarn-site.xml  # 增加如下内容

<configuration>
<!-- 指定ResourceManager的地址-->
<property>
   <name>yarn.resourcemanager.address</name>
   <value>master:18040</value>
</property>

 <property>
   <name>yarn.resourcemanager.scheduler.address</name>
   <value>master:18030</value>
 </property>
 
 <property>
   <name>yarn.resourcemanager.webapp.address</name>
   <value>master:18088</value>
 </property>
 
 <property>
   <name>yarn.resourcemanager.resource-tracker.address</name>
   <value>master:18025</value>
 </property>

<property>
   <name>yarn.resourcemanager.admin.address</name>
   <value>master:18141</value>
 </property>
 
<!-- 指定reducer获取数据的方式-->
<property>
   <name>yarn.nodemanager.aux-services</name>
   <value>mapreduce_shuffle</value>
</property>

<property>
  <name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name>
  <value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property> 

</configuration>

6,拷贝并编辑MapReduce的配置文件:

cp mapred-site.xml.template mapred-site.xml
vim mapred-site.xml  # 增加如下内容

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

7,配置从节点:

echo master > master && echo slave1 > slaves  && echo slave2 >> slaves

8,分发到其它服务器上

cd /usr/hadoop
xsync.sh hadoop-2.7.7

2.格式化Hadoop并启停

在Master中对NameNode进行格式化操作:

hdfs namenode -format

启动集群:

start-all.sh

start-dfs.sh
start-yarn.sh

查看进程:

jps  
# 查看是否有以下几个进程

# Master节点:
6256 Jps
5843 ResourceManager
5413 NameNode
5702 SecondaryNameNode

# Slave节点
6256 Jps
5538 DataNode
5945 NodeManager

访问监控主页:

在浏览器上访问主节点的50070端口:192.168.42.128:50070。可以访问50070端口就代表集群中的HDFS是正常的。

访问主节点的8088端口,这是YARN的web服务端口,例如:192.168.42.128:8088

关闭节点:

stop-dfs.sh
stop-yarn.sh
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
集群规划: 主机名 IP 安装的软件 运行的进程 weekend01 192.168.1.201 jdk、hadoop NameNode、DFSZKFailoverController(zkfc) weekend02 192.168.1.202 jdk、hadoop NameNode、DFSZKFailoverController(zkfc) weekend03 192.168.1.203 jdk、hadoop ResourceManager weekend04 192.168.1.204 jdk、hadoop ResourceManager weekend05 192.168.1.205 jdk、hadoop、zookeeper DataNode、NodeManager、JournalNode、QuorumPeerMain weekend06 192.168.1.206 jdk、hadoop、zookeeper DataNode、NodeManager、JournalNode、QuorumPeerMain weekend07 192.168.1.207 jdk、hadoop、zookeeper DataNode、NodeManager、JournalNode、QuorumPeerMain 说明: 1.在hadoop2.0中通常由两个NameNode组成,一个处于active状态,另一个处于standby状态。Active NameNode对外提供服务,而Standby NameNode则不对外提供服务 仅同步active namenode的状态,以便能够在它失败时快速进行切换。 hadoop2.0官方提供了两种HDFS HA的解决方案,一种是NFS,另一种是QJM。这里我们使用简单的QJM。在该方案中,主备NameNode之间通过一组JournalNode同步元数据 信息,一条数据只要成功写入多数JournalNode即认为写入成功。通常配置奇数个JournalNode 这里还配置了一个zookeeper集群,用于ZKFC(DFSZKFailoverController)故障转移,当Active NameNode挂掉了,会自动切换Standby NameNode为standby状态 2.hadoop-2.2.0中依然存在一个问题,就是ResourceManager只有一个,存在单点故障,hadoop-2.4.1解决了这个问题,有两个ResourceManager,一个是Active,一个 是Standby,状态由zookeeper进行协调

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

醉卧千山下,诗酒趁年华。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值