1-0 三台PC集群的搭建(noHA)

本文档详细介绍了如何在三台PC上搭建无高可用(HA)的Hadoop-Hbase-Zookeeper集群。包括了从LINUX基础环境的配置,如JDK、hosts、hostname、ssh、防火墙和selinux、时间同步,到Zookeeper、Hadoop和Hbase的集群安装步骤,包括各组件的部署、环境变量配置、配置文件修改、同步和启动等全过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


1.部署

搭建方案(no_HA):

project

hadoop

hadoop

Hbase

zookeeper

主机

master1

Namenode

datanode(NM)

HMaster

HRegionServer

zk

slave1

SNM,JHS

datanode(NM)

HMaster

HRegionServer

zk

slave2

RM

datanode(NM)

HRegionServer

zk

 

2.LINUX基础环境搭建

(1) JDK

安装JDK(jdk-7u40-linux-i586.tar.gz);(此步所有机子都要做)

部署目录  /opt/ jdk1.7.0_45

配置环境变量

(1) vi/etc/profile.d/java.sh  (编辑文件)

(2) 添加

#set java environment

export JAVA_HOME=/opt/jdk1.7.0_45

export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre:$PATH   

export CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar

 (3) 验证是否安装成功:java –version

 

(2) hosts 

修改hosts 

(此步骤所有机子都要做)

vi /etc/hosts

 

修改为:ip自定义

192.168.1.101   master1

192.168.1.102   slave1

192.168.1.103   slave2

(3) hostname

修改hostname此步骤所有机子都要做)

vi/etc/sysconfig/network

修改为:

NETWORKING=yes

HOSTNAME=master1(slave1,slave2)

(4) ssh

配置ssh访问(看说明)

1)在(master1)当前用户(hadoop)主目录下执行

(1)$ ssh-keygen-t rsa  

(2)cat.ssh/id_rsa.pub >> .ssh/authorized_keys

(3)chmod700  .ssh

(4)chmod644  .ssh/authorized_keys

2)master1到slave1,slave2机器的SSH无密码登录

接下来把authorized_keys复制到的slave1,slave2上。

scp~/.ssh/authorized_keys  远程用户名@远程服务器IP:~/

现在是master1可以无密码访问slave1,slave2.

要想实现任意两台机器互访,就在每台机器上都生成id_rsa和id_rsa.pub,然后把每台机器的公钥都添加进authorized_keys,然后把authorized_keys分发到所有机器上

(5) 防火墙和selinux

关闭机器的防火墙和selinux(此步骤所有机子都要做)

关闭防火墙:

#/etc/init.d/iptables stop #关闭防火墙。

#chkconfig iptables off #关闭开机启动。

关闭selinux:

vi/etc/selinux/config,

把SELINUX=enforcing改成SELINUX=disable;需要重启机器

(6) 时间一致

授时服务(此步骤所有机子都要做)

配置时间同步

crontab-e

/usr/sbin/ntpdatecn.pool.ntp.org

手动同步时间

/usr/sbin/ntpdatecn.pool.ntp.org

(7)用户和本地目录

创建用户账号和Hadoop部署目录和数据目录(此步骤所有机子都要做)

#创建hadoop 用户

/usr/sbin/groupaddhadoop

 

#分配hadoop 到 hadoop组中

/usr/sbin/useraddhadoop -g hadoop

 

#创建hadoop,hbase,zookeepr部署目录

opt/hadoop-2.2.0

opt/hbase-0.96.0-hadoop2

opt/zookeeper-3.4.5

#修改目录结构权限为为hadoop

#本地文件系统涉及到的目录

mkdir -p /data/tmp_hadoop  /data/hdfs/dn    /data/hdfs/nn   

/data/log/hadoop-hdfs   /data/log/hadoop-yarn  /data/log/hadoop-mapred

/data/yarn/local /data/yarn/logs

mkdir -p

/data/zookeeper/data/data/zookeeper/datalog

/data/tmp_hbase 

/data/hbase

/data/journal

 

 

3.zookeeper集群安装

(1)部署

部署3个节点的 ZooKeeper,分别部署在master1、slave1、slave2三台机器上。ZooKeeper 部署的节点数为奇数个。

每个 ZooKeeper节点:

部署目录:/opt/zookeeper-3.4.5

创建目录

mkdir –p/data/zookeeper/data

mkdir –p/data/zookeeper/datalog

(2)环境变量

 vi/etc/profile.d/zookeeper.sh 

添加

#set zookeeper environment

export ZOOKEEPER_HOME=/opt/zookeeper-3.4.5

export PATH=$PATH:$ZOOKEEPER_HOME/bin

export ZOO_LOG_DIR=/data/zookeeper/datalog

 

(3)zoo.cfg

#编辑zookeeper-3.4.5 /conf/zoo.cfg

tickTime=2000

initLimit=10

syncLimit=5

dataDir= /data/zookeeper/data

dataLogDir=/data/zookeeper/datalog

clientPort=2181

server.1=master1:

集群规划: 主机名 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进行协调
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值