大数据--Hadoop环境部署(3)JDK和ZooKeeper环境配置

Linux环境搭建:https://www.cnblogs.com/Studywith/p/16946297.html

免密连接:https://www.cnblogs.com/Studywith/p/16946310.html

在完成了Linux虚拟机的基础配置后,接下来进行JDK和ZooKeeper相关环境的配置

一.部署JDK

1.官网下载JDK

https://www.oracle.com/java/technologies/downloads/archive/

选择需要的版本即可,这里我使用的是jdk-8u161-linux-x64.tar.gz(PS:老师要求)

image

2.创建相关文件夹便于记忆

(工作中,每当要部署一台新机器的时候,就意味着有一堆目录需要创建。例如要创建目录“/usr/local/bin”,就需要此次创建“/usr”、“/usr/local”以及“/usr/local/bin”。好在,Linux下mkdir提供了强大的“-p”选项,只要一条命令“mkdir -p /usr/local/bin”就能自动创建需要的上级目录。)

mkdir -p /export/servers/    #软件安装路径
mkdir -p /export/data/      #数据存储路径
mkdir -p /export/software/  #安装包存放路径

3.上传JDK安装包

使用远程连接工具连接虚拟机Node_01,将压缩包上传到/export/software/

4.安装JDK

通过解压缩的方式安装JDK,将JDK安装到存放应用的目录/export/servers/

tar -zxvf /export/software/jdk-8u161-linux-x64.tar.gz -C /export/servers/

image

5.配置JDK环境变量

执行   vi /etc/profile   命令编辑系统环境变量文件profile

export JAVA_HOME=/export/servers/jdk1.8.0_161
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

image

6.JDK环境验证

执行   java –version   命令查看JDK版本

image

7.分发JDK相关文件

通过分发虚拟机node01的JDK安装目录和系统环境变量文件至虚拟机node02和node03的方式,在这两台虚拟机上安装JDK(提前在两个虚拟机上创建相关文件夹)

scp -r /export/servers/jdk1.8.0_161/ root@node02:/export/servers/
scp -r /export/servers/jdk1.8.0_161/ root@node03:/export/servers/

scp /etc/profile root@node02:/etc/profile
scp /etc/profile root@node03:/etc/profile

image

8.验证

image

二.部署ZooKeeper

ZooKeeper是一个分布式应用程序协调服务。一个ZooKeeper集群可以存在多个Follower和Observer服务器,但只允许存在一台Leader服务器。如果Leader服务器宕机,那么ZooKeeper集群的其它服务器会投票选举出一个新的Leader服务器,为防止投票数不过半,从而无法选举出新的Leader服务器现象,通常将ZooKeeper集群中服务器的数量规划为2n+1台,即奇数个。

1.官网下载JDK

https://zookeeper.apache.org/releases.html#download

旧版本,这里我选择的是zookeeper-3.4.10.tar.gz(老师要求)

image

2.上传ZooKeeper安装包

同样将压缩包上传到/export/software/

3.安装ZooKeeper

同样通过解压缩的方式安装ZooKeeper,将ZooKeeper安装到存放应用的目录/export/servers/

tar -zxvf /export/software/zookeeper-3.4.10.tar.gz -C /export/servers/

4.配置ZooKeeper

避坑博客:https://blog.csdn.net/u011328843/article/details/84190285

(1)创建zookeeper配置文件

在虚拟机node01中,进入ZooKeeper安装目录下的conf目录,复制ZooKeeper的配置文件模板“zoo_sample.cfg”并命名为“zoo.cfg”

cd /export/servers/zookeeper-3.4.10/conf/
cp zoo_sample.cfg zoo.cfg

(2) 修改zookeeper配置文件

编辑ZooKeeper配置文件zoo.cfg,修改参数“dataDir”配置存储快照文件的目录,添加参数“server.x”指定ZooKeeper集群包含的服务器。

dataDir=/export/data/zookeeper/zkdata
server.1=node01:2888:3888
server.2=node02:2888:3888
server.3=node03:2888:3888

image

(3) 创建存储快照文件的目录

在虚拟机中创建参数dataDir配置存储快照文件对应的目录 。

mkdir -p /export/data/zookeeper/zkdata

(4)创建myid文件

在虚拟机node01、node02和node03 的/export/data/zookeeper/zkdata目录中创建myid文件,在虚拟机node01的myid文件中写入值1,在虚拟机node02的myid文件中写入值2,在虚拟机node03的myid文件中写入值3。

mkdir -p /export/data/zookeeper/zkdata
cd /export/data/zookeeper/zkdata
echo 1 > myid  #node01
echo 2 > myid  #node02
echo 3 > myid  #node03

image

(5) 编辑文件profile

在虚拟机node01,执行“vi /etc/profile”命令编辑系统环境变量文件profile,配置ZooKeeper环境变量。

export ZK_HOME=/export/servers/zookeeper-3.4.10
export PATH=$PATH:$ZK_HOME/bin
image

(6)分发配置文件

为了便于快速配置集群中其它服务器,需要将虚拟机node01中的ZooKeeper安装目录和系统环境变量文件分发到虚拟机node02和node03。

#将ZooKeeper安装目录分发到虚拟机node02和node03
scp -r /export/servers/zookeeper-3.4.10/ node02:/export/servers/
scp -r /export/servers/zookeeper-3.4.10/ node03:/export/servers/
#将系统环境变量文件分发到虚拟机node02和node03
scp /etc/profile root@node02:/etc/
scp /etc/profile root@node03:/etc/
image

完成分发操作,分别在虚拟机node01,node02和node03中执行“source /etc/profile”命令初始化系统环境变量。

5.ZooKeeper集群的启动与关闭

(1)检查系统防火墙

关闭系统防火墙

#查看防火墙服务启动状态
systemctl status firewalld
#关闭防火墙服务(临时)
systemctl stop firewalld
#禁止防火墙开机启动(永久)
systemctl disable firewalld

(2)启动ZooKeeper集群

分别在虚拟机node01、node02和node03中执行“zkServer.sh start”命令启动ZooKeeper服务。

(如果出现command not found说明是环境变量没有配置好,可以重新检查配置或者直接使用./zkServer.sh start等命令)

(推荐:启动不成功可以查看zookeeper.out文件,里面有具体的报错信息,仔细查看进行解决)

(3)查看ZooKeeper服务状态

分别在虚拟机node01、node02和node03中执行“zkServer.sh status”命令查看ZooKeeper服务状态。

(4)关闭ZooKeeper集群

Zookeeper集群的关闭比较简单,只需要在虚拟机中分别执行“zkServer.sh stop”命令即可关闭当前虚拟机的Zookeeper服务。

image

image

image

注意点:

status错误参考:http://t.zoukankan.com/fushengliuyi-p-12971263.html

a.由于zookeeper是集群管理工具,又部署在每个节点上,所以启动的时候一定将每个节点的zkService.sh都差不多同时启动。这样查看status时才不会出错

b.虚拟机的防火墙必须关闭

c.查看ZooKeeper的配置文件中的端口号是否被占用

image

netstat -apn | grep 2181
kill -9 端口号

image

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值