链接https://www.cnblogs.com/xiaolong1032/p/5034727.html
工作中一般使用的都是zookeeper和Hbase的分布式集群.
more /etc/profile
cd /usr/local
zookeeper-3.4.5.tar.gz
伪分布式搭建(3个节点):
伪分布式集群,就是在一台pc中,启动多个zookeeper的实例,完全分布式是指每台pc,启动一个zookeeper实例.
1.1 解压缩zookeeper-3.4.5.tar.gz
复制代码
tar -zxvf zookeeper-3.4.5.tar.gz
mv zookeeper-3.4.5 zookeeper
cd zookeeper
rm -rf docs/
rm -rf src/
cd conf/
复制代码
1.2 执行命令:
复制代码
cp zoo_sample.cfg zoo1.cfg
more zoo1.cfg
tickTime=2000:集群中,各个节点通信的单位叫tick,通信时间是2000毫秒.
initLimit=10:10个tick,初始化同步时需要的时间.
syncLimit=5:同步使用的时间.
dataDir=/tmp/zookeeper:存储数据使用的一些目录.
clientPort=2181: 客户端与zookeeper通信所使用的端口.
复制代码
1.3 修改文件conf/zoo1.cfg,修改内容如下:
复制代码
vi zoo1.cfg
dataDir=/usr/local/zookeeper/zoo1/data/
clientPort=2181
#描述zookeeper三个节点之间的关系,
#4:每个节点的标示. hadoop4:标示zookeeper所在的机器.
server.1=hadoop4:2888:3888
server.2=hadoop4:2889:3889
server.3=hadoop4:2890:3890
复制代码
1.4 执行命令:
cp zoo1.cfg zoo2.cfg
1.5 修改文件conf/zoo2.cfg,修改内容如下:
复制代码
vi zoo2.cfg
dataDir=/usr/local/zookeeper/zoo2/data/
clientPort=2182//客户端访问需要使用2182端口,三个不同放入节点,不能都是用同一个端口2181
server.1=hadoop4:2888:3888
server.2=hadoop4:2889:3889
server.3=hadoop4:2890:3890
复制代码
1.6 修改文件conf/zoo2.cfg,修改内容如下:
复制代码
vi zoo2.cfg
dataDir=/usr/local/zookeeper/zoo2/data/
clientPort=2182//客户端访问需要使用2182端口,三个不同放入节点,不能都是用同一个端口2181
server.1=hadoop0:2888:3888
server.2=hadoop0:2889:3889
server.3=hadoop0:2890:3890
cp zoo1 .cfg zoo3.cfg
vi zoo3.cfg
dataDir=/usr/local/zookeeper/zoo3/data/
clientPort=2183//客户端访问需要使用2182端口,三个不同放入节点,不能都是用同一个端口2181
server.1=hadoop4:2888:3888
server.2=hadoop4:2889:3889
server.3=hadoop4:2890:3890
复制代码
1.7 执行命令,产生存储数据的目录:
clear
mkdir -p /usr/local/zookeeper/zoo1/data/
mkdir -p /usr/local/zookeeper/zoo2/data/
mkdir -p /usr/local/zookeeper/zoo3/data/
1.8 产生标记文件:
//myid 标注在这个节点下的数据是输入哪一个节点的.
cd ..
echo '1' > zoo1/data/myid
echo '2' > zoo2/data/myid
echo '3' > zoo3/data/myid
1.9 分别启动节点:
cd zookeeper
bin/zkServer.sh start conf/zoo1.cfg
bin/zkServer.sh start conf/zoo2.cfg
bin/zkServer.sh start conf/zoo3.cfg
1.9.1分别关闭节点
bin/zkServer.sh stop conf/zoo1.cfg
bin/zkServer.sh stop conf/zoo2.cfg
bin/zkServer.sh stop conf/zoo3.cfg
jps 查看节点,多出一个zookeeper进程:QuorumPeerMain
在一个节点上启动三个zookeeper进程,组成的节点就是zookeeper的伪分布.
zookeeper的操作:
复制代码
bin/zkCli.sh
//连接某一个节点
connect hadoop4:2182
//ls 显示zookeeper的目录结构
ls /
ls /zookeeper/quota
//create 创建节点
create /crxy hadoop
//get 读取节点的值
get /crxy
//set 修改节点的值
set /crxy 44444
zookeeper就是一个读写数据的,管理这些数据的时候,就是一个树状结构.
zookeeper最大的特点:保证数据的同步.
复制代码
ip修改和主机名绑定:
复制代码
修改主机名:
vi /etc/sysconfig/network
修改ip:
vi /etc/sysconfig/network-scripts/ifcfg-Auto-eth1
删除硬件地址:HWADDR,UUID
修改ip地址:IPADDR
重启网络:
service netwotk restart
查看ip地址:
ifconfig
添加ip地址和主机名绑定:
vi /etc/hosts
复制代码
===================================
Hbase伪分布式搭建(只有一个节点,使用自己的zookeeper实例):
2.1 解压缩:
复制代码
tar -zxvf hbase-0.94.13-security.tar.gz
mv hbase-0.94.13-security.tar.gz hbase
rm -rf *.gz
cd hbase
rm -rf docs/
rm -rf src/
复制代码
2.2 编辑文件conf/hbase-env.sh,修改内容:
vi conf/hbase-env.sh
export JAVA_HOME=/usr/local/jdk
//告诉HBASE是否应该自己管理自己的zookeeper实例,true 表示zookeeper是hbase自己搭建的,与外部的没有关系.
export HBASE_MANAGES_ZK=true
2.3 编辑文件conf/hbase-site.xml 修改内容:
vi conf/hbase-site.xml
复制代码
rootDir
hdfs://hadoop4:9000/hbase
hbase.cluster.distributed
true
hbase.zookeeper.quorum
hadoop4
复制代码
2.4 启动hbase之前,需要检查hadoop的hdfs是否正常运行的.
启动hbase
cd hbase
bin/start-hbase.sh
2.5 检查,执行jps命令,看到三个新的java进程,分别是:
HQuorumPeer,HMaster,HRegionServer
查看hdfs://hadoop4:60010