hadoop2 环境的搭建(手动HA)

1、手工切换ha的环境的搭建(比hadoop1多出来journalnode的配置)

namenode:hadoop110和hadoop111

datanode:hadoop112、hadoop113、hadoop114

journalnode:hadoop110、hadoop111、hadoop112

resourcemanager:hadoop110

nodemanager:hadoop112、hadoop113、hadoop114

1.1、配置文件(hadoop-env.sh、core-site.xml hdfs-site.xml yarn-site.xml mapred-site.xml)

1.1.1、hadoop-env.sh

export JAVA_HOME=/usr/jdk

上面是我本机的路径,需要改成真实的jdk路径

export JAVA_HOME=JDK的路径

1.1.2、core-site.xml

<configuration>

<property>

<name>fs.defaultFS</name>

<value>hdfs://cluster1</value>

</property>

设置默认的HDFS路径,有多个HDFS集群同时工作时,默认值在这里指定

<property>

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

<value>/usr/hadoop/tmp</value>

</property>

设置NameNode DataNode JournalNode等存放数据的公共目录,也可以单独指定

</configuration>

1.1.3、hdfs-site.xml

<configuration>

<property>

<name>dfs.replication</name>

<value>2</value>

</property>

<!-- 集群中文件的副本数 -->

<property>

<name>dfs.nameservices</name>

<value>cluster1</value>

</property>

<!-- 使用federation时,这里填写所有集群的别名,用逗号分隔 -->

<property>

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

<value>hadoop110,hadoop111</value>

</property>

<!-- 配置集群的NameNode几点,这里是NameNode 的别名,需要对每个NameNode再进行详细的配置-->

<property>

<name>dfs.namenode.rpc-address.cluster1.hadoop110</name>

<value>hadoop110:9000</value>

</property>

<!-- 配置NameNode的RPC地址 -->

<property>

<name>dfs.namenode.http-address.cluster1.hadoop110</name>

<value>hadoop110:50070</value>

</property>

<!-- 配置NameNode的HTTP地址 -->

<property>

<name>dfs.namenode.rpc-address.cluster1.hadoop111</name>

<value>hadoop111:9000</value>

</property>

<property>

<name>dfs.namenode.http-address.cluster1.hadoop111</name>

<value>hadoop111:50070</value>

</property>

<property>

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

<value>qjournal://hadoop110:8485;hadoop111:8485;hadoop112:8485/cluster1</value>

</property>

<!-- 指定集群(cluster1)的两个NameNode共享edits文件目录时使用的JournalNode集群信息 -->

<property>

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

<value>false</value>

</property>

<!-- 指定集群(cluster1)是否启动自动故障恢复,即当NameNode出故障事,是否自动切换到另一台NameNode -->

<property>

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

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

</property>

<!-- 指定集群(cluster1)出故障时,哪个实现类负责执行故障切换 -->

<property>

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

<value>/usr/hadoop/tmp/journal</value>

</property>

<!-- 指定JournalNode集群在对NameNode的目录进行共享时,自己存储数据的磁盘路径 -->

<property>

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

<value>sshfence</value>

</property>

<!-- 一旦需要NameNode切换,使用ssh方式进行切换 -->

<property>

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

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

</property>

</configuration>

1.1.4、yarn-site.xml

<configuration>

<property>

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

<value>hadoop110</value>

</property>

<property>

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

<value>mapreduce_shuffle</value>

</property>

</configuration>

1.1.5、mapred-site.xml

<configuration>

<property>

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

<value>yarn</value>

</property>

</configuration>

1.1.6、slaves

hadoop112

hadoop113

hadoop114

1.2、启动journalnode集群

在hadoop110、hadoop111、hadoop112上分别执行:

sbin/hadoop-daemon.sh start journalnode

扩展

停止journalnode

sbin/hadoop-daemon.sh stop journalnode

  

1.3、格式化namenode、启动namenode

在hadoop110或者hadoop111上执行:

bin/hdfs namenode -format

sbin/hadoop-daemon.sh start namenode

在hadoop111上执行

bin/hdfs namenode -bootstrapStandbysbin/hadoop-daemon.sh start namenode

*hadoop111的格式化,操作是关键是是把hadoop110上面的tmp/dfs下的fsimage和edit拷贝过去

把其中一个NameNode切换为active状态

bin/hdfs haadmin -failover --forceactive hadoop110 hadoop111

1.4、启动datanode

sbin/hadoop-daemons.sh start datanode

  

1.5、启动resourcemanager和nodemanager

在hadoop110或者hadoop111上执行

sbin/yarn-daemon.sh start resourcemanager

sbin/yarn-daemons.sh start nodemanager

  

1.6、启动

遇到的问题:

1、Linux 环境变量的配置解决(-bash: jps: command not found)问题:需要把jdk的bin目录也配置到环境变量中(是jdk/bin)

2、无法访问namenode(访问一直超时)

2.1、在centos7下关闭防火墙:

systemctl disable firewalld

systemctl mask firewalld

yum remove firewalld -y

2.2、关闭selinux

2.2.1、临时关闭

setenforce 0

2.2.2、通过修改配置文件永久关闭

可以修改配置文件/etc/selinux/config,将SELINU置为disabled

2.2.3、通过命令永久关闭

sed -i ‘/SELINUX/s/enforcing/disabled/‘ /etc/selinux/config

3、配置hosts文件时,不能遗留有localhost的配置

时间: 2024-10-11 01:36:27

hadoop2 环境的搭建(手动HA)的相关文章

hadoop2 环境的搭建(自动HA)

zookeeper:hadoop112.hadoop113.hadoop114 namenode:hadoop110和hadoop111 datanode:hadoop112.hadoop113.hadoop114 journalnode:hadoop110.hadoop111.hadoop112 resourcemanager:hadoop110 nodemanager:hadoop112.hadoop113.hadoop114 1.搭建zk集群,并启动 1.1.搭建zookeeper 1.1

Spark1.2集群环境搭建(Standalone+HA) 4G内存5个节点也是蛮拼的

准备工作: 1.笔记本4G内存 ,操作系统WIN7 2.工具VMware Workstation 3.虚拟机:CentOS6.4共五台 4.搭建好Hadoop集群( 方便Spark可从HDSF上读取文件,进行实验测试) 实验环境: Hadoop HA集群: Ip hostname role 192.168.249.130 SY-0130 ActiveNameNode 192.168.249.131 SY-0131 StandByNameNode 192.168.249.132 SY-0132 D

Linux下Hadoop2.7.1集群环境的搭建(超详细版)

本文旨在提供最基本的,可以用于在生产环境进行Hadoop.HDFS分布式环境的搭建,对自己是个总结和整理,也能方便新人学习使用. 一.基础环境 在Linux上安装Hadoop之前,需要先安装两个程序: 1.1 安装说明 1. JDK 1.6或更高版本(本文所提到的安装的是jdk1.7); 2. SSH(安全外壳协议),推荐安装OpenSSH. 下面简述一下安装这两个程序的原因: 1. Hadoop是用Java开发的,Hadoop的编译及MapReduce的运行都需要使用JDK. 2. Hadoo

Hadoop2.4.1 64-Bit QJM HA and YARN HA + Zookeeper-3.4.6 + Hbase-0.98.8-hadoop2-bin HA Install

Hadoop2.4.1 64-Bit QJM HA and YARN HA Install + Zookeeper-3.4.6 + Hbase-0.98.8-hadoop2-bin HA(Hadoop2.4.1(QJM方式的HDFS NameNode HA,YARN ResourceManager HA)集群+Zookeeper3.4.6集群+Hbase-0.98.8(Master HA)集群搭建) HostName            IP                Soft      

开发环境——基于RHEL 6.8开发环境的搭建

开发环境--基于RHEL 6.8开发环境的搭建 本文讲述了基于RHEL 6.8操作系统搭建开发环境,主要安装了GCC 4.9.3.Qt 5.7.Apache 2.4.25.MySQL 5.6.35.本文同时适用于在Linux主机无互联网环境下搭建开发环境,只需要将所需安装包下载后拷贝到Linux主机即可. 一.RHEL6.8安装 1.RHEL 6.8下载 下载RHEL 6.8安装包:rhel-server-6.8-x86_64-dvd.iso 2.RHEL 6.8安装 安装过程中选择Develo

CentOS上Hadoop环境的搭建与管理

please down load the attachment 编辑日期:2015年9月1日 实验要求:完成Hadoop平台安装部署.测试Hadoop平台功能和性能,记录实验过程,提交实验报告.1)    掌握Hadoop安装过程2)    理解Hadoop工作原理3)    测试Hadoop系统的可扩展性4)    测试Hadoop系统的稳定性一.先决条件确保在集群中的每个节点上都安装所有必需软件:JDK ,ssh,Hadoop (2.6.0).1)JDK,必须安装(版本1.7以上),建议选择

Perl开发环境的搭建--windows

Steps Summary: 1. 下载安装文件 2. 点击文件进行安装 3. 设置环境变量 4. 测试安装是否成功 以在win8上安装Active perl 5.22 为例 Details: 1. 下载安装文件 1) way1: 自己安装编译器,再安装Perl模块,再进行编译,安装. 这种方法的好处是可以编译安装所有的模块 2) way2: 下载已经编译好的perl模块直接进行安装 只能安装定义好的模块.但是编译好的模块一般包含了日常所需的功能.初学者最好使用第二种方法进行安装 以active

原生态hadoop2.6平台搭建

 hadoop2.6平台搭建 一.条件准备 软件条件: Ubuntu14.04 64位操作系统,jdk1.7 64位,Hadoop 2.6.0 硬件条件: 1台主节点机器,配置:cpu 8个,内存32G,硬盘200G 5台从节点机器,配置均为:cpu 4个,内存16G,硬盘200G 各个节点IP如下: 服务器名字 Ip地址 备注(为方便操作将hostname改为如下) Hd-Name Node 192.168.0.10 master Hd-Data Node 1 192.168.0.16 sla

linux+django+apache+mod_wsgi+eclipse+python2.7 环境的搭建

首先,说明下环境: linux:fedora14: IDE:eclipse: python:python2.7 python框架:django web服务器:apache web服务器的python模块:mod_wsgi 写在前面: 之前用的windows下面的xampp,写的php后台,现在想转向linux下面的python,跟以前一样,选择apache和eclipse作为自己的开发工具. eclipse的python配置, 参见之前的博客:http://blog.csdn.net/zy416