原创不易,感连谢关注与点赞,记得三么么哒
大数据平台搭建
就目前而言,学习大数据需要搭建各种平台,zookeeper、hadoop、hbase、hive、
flume、spark、Flink、kafka、等等,今天我们来搭建大数据的管理平台zookeeper
什么是zookeeper
Zookeeper 是一个开源的分布式应用程序协调服务,提供了一个分布式环境下的高效管理和协调机制。它主要用于解决分布式系统中的一致性问题,如配置管理、命名服务、分布式锁、分布式协调等。Zookeeper 提供了一个简单的文件系统命名空间和对应的 API,使得客户端可以通过类似于文件操作的方式访问和操作分布式系统中的各种信息。它的设计目标包括高可用性、高性能、严格的顺序访问控制以及可靠的数据存储。Zookeeper 最初由雅虎公司开发,后来成为 Apache 顶级项目,得到了广泛的应用和支持。
搭建zookeeper前提
这里我为大家提供了所有的安装包,但是只有夸克网盘,希望大家见谅
我用夸克网盘分享了「大数据软件包」,点击链接即可保存。打开「夸克APP」,无需下载在线播放视频,畅享原画5倍速,支持电视投屏。
链接:https://pan.quark.cn/s/7cb7d5253bf3
提取码:sfgp
在搭建zookeeper之前
在前两章中,我们完成了linux的配置网络以及xshell的连接,连接在这
接下来我们需要做一些处理
关闭防火墙,避免免密的时候主机之间无法互通
在三台主机分别执行关闭防火墙命令,master,slave1,slave2
查看防火墙状态:
systemctl status firewalld.service
绿的running表示防火墙开启
执行关闭命令:
systemctl stop firewalld.service
再次执行查看防火墙命令:
systemctl status firewalld.service
执行开机禁用防火墙自启命令 :
systemctl disable firewalld.service
为什么两两免密
两两免密通常指的是在两个节点之间建立安全的通信连接,并允许它们在不需要每次通信都进行身份验证的情况下进行通信。这通常用于提高系统的效率和便利性,特别是在分布式系统中。
实现两两免密的原因:
提高效率: 在分布式系统中,节点之间可能需要频繁地进行通信。如果每次通信都需要进行身份验证和密钥交换,将会增加通信的开销和延迟。通过建立两两免密,可以避免这种开销,提高系统的效率。
简化管理: 在拥有大量节点的系统中,管理和维护每对节点之间的密钥可能会变得非常繁琐。通过实现两两免密,可以简化密钥管理的复杂性,减少管理成本。
降低风险: 身份验证和密钥交换可能会成为安全漏洞的来源。如果实施不当,可能会导致安全问题,如中间人攻击。通过两两免密,可以减少这些安全风险,使通信更加安全可靠。
用户体验: 对于需要频繁进行交互的应用程序或服务,要求用户每次通信都进行身份验证可能会降低用户体验。通过两两免密,可以提供更流畅和便捷的用户体验。
开始两两免密
在三台主机上使用ssh-keygen -t rsa enter4次
ssh-keygen -t rsa
结果如下:
在三台机器执行完后,每一台节点执行ssh-copy-id master,将id copy到主机master上,大家都把东西给master,然后让master分发id,就实现两两免密了
ssh-copy-id master
输入这个指令后,要输入对方主机的密码,我这里都是123456,所以无伤大雅,注意master节点也需要执行一遍
使用ssh-copy-id 提示没有命令???
这个报错很简单,是因为我们没有ssh这个文件,我们需要去链接任意节点创建文件,我们去使用ssh连接任意节点(主机),输入密码(注意没做免密之前是需要数输入密码的,传文件很麻烦,做了免密之后就很方便)
ssh master
ctrl +d 退出登录master
然后cd .ssh目录
继续操作ssh-copy-id master(建议手动输入,有时候从文章里面复制代码可能有隐藏空格之类的)
回到我们master节点
进去.ssh目录后发现有这个aythorized_keys的文件,用scp命令分发给其他节点slave1,slave2
scp ./authorized_keys slave1:`pwd`
发现报错
说不知道主机名,这时候肯定就是映射问题了。进入/etc/hosts 目录下发现ip一开始写错了,都写的master的ip,将其更改过来
这样就好了,保存退出
在执行命令,输一次密码123456
成功了,同理继续发送给slave2
验证是否免密
ssh slave1
ssh slave2
分别执行,不需要输入密码的话就成功了
ctrl +d 退出即可
正式搭建zookeeper
我们为了整洁美观,我们在/opt下去安转zookeeper
cd /opt
点击上面绿色图标,建立文件传输
将安装包中的jdk与zookeeper安装包拖过去
安装jdk
安装jdk有助于我们使用jps命令去查看进程是否启动
此时ll
解压这个两个安装包,tab可以补全代码
tar -zxvf 对应包名 (-C 指定目录)不指定默认在当前文件夹
修改名称
mv 原包名 现包名
jdk我们mv 为java zookeeper的包我们重新mv 为zookeeper
配置环境变量,为了方便后续平台搭建,我直接把大数据全部环境变量配置了
我们执行yum install vim ,然后输入y,y,vim编辑器去编写,有颜色比较方便看自己写错没
进入环境变量文件中
vim /etc/profile
shift+g进入文件末尾i进去编辑模式写下
export JAVA_HOME=/opt/java
export PATH=$PATH:$JAVA_HOME/bin
export ZOOKEEPER_HOME=/opt/zookeeper
export PATH=$PATH:$ZOOKEEPER_HOME/bin
export HADOOP_HOME=/opt/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export KAFKA_HOME=/opt/kafka
export PATH=$PATH:$KAFKA_HOME/bin
export SPARK_HOME=/opt/spark
export PATH=$PATH:$SPARK_HOME/bin
export FLUME_HOME=/opt/flume
export PATH=$PATH:$FLUME_HOME/bin
export FLINK_HOME=/opt/flink
export PATH=$PATH:$FLINK_HOME/bin
export HBASE_HOME=/opt/hbase
export PATH=$PATH:$HBASE_HOME/bin
export HIVE_HOME=/opt/hive
export PATH=$PATH:$HIVE_HOME/bin:$HIVE_HOME/sbin
export SCALA_HOME=/opt/scala
export PATH=$PATH:$SCALA_HOME/bin
保存退出
使用scp分发给slave1,slave2
cd /etc/
scp ./profile slave1:`pwd`
scp ./profile slave2:`pwd`
然后刷新环境变量(三台都要执行)
source /etc/profile
当然也要将java全部分发给slave1,slave2了
scp -r /opt/java/ slave1:`pwd`
scp -r /opt/java/ slave2:`pwd`
此时jps,就能看见进程了,
配置zookeeper
开始进入zookeeper搭建了,进入zookeeper目录
进入conf
修改或复制zoo.cfg 文件
把这个_sample去掉就行
mv zoo_sample.cfg zoo.cfg
然后
vim zoo.cfg
修改datadir,让他保存在我们指定目录/opt/zookeeper/zkdata下方便管理
dataDir=/opt/zookeeper/zkdata
在文件末尾加上zookeeper通信与选举端口
server.1=master:2888:3888
server.2=slave1:2888:3888
server.3=slave2:2888:3888
这里的.1 , .2 , .3要记住对应的那个主机,1是master,2是slave1,3是slave2
并检查文件末添加的那些文件有没有空格,不能有空格!!!(这个报错是很不好找的)
vim myid
保存退出,先启动看看
zkServer.sh start
回到我们zookeeper下,发现多了个zkdata,就是我们前面datadir生成的,进去zkdata
cd zkdata
创建一个myid文件并写入master节点对应的1
vim myid
写下1,保存退出
然后使用scp分发给slave1与slave2
scp -r ./zookeeper/ slave1:`pwd`
scp -r ./zookeeper/ slave2:`pwd`
进入slave1里面,修改/opt/zookeeper/zkdata/myid,将1修改成2,修改成对应的,slave2同理将1改成3(两台要安装vim哦,yum install vim)
三台机器分别启动zookeeper
zkServer.sh restart
三台机器分别jps,slave1、2没有起来就在执行一遍启动命令
查看进程master
slave1
slave2
感谢关注,有问题感谢评论,后面会继续出其他平台搭建教程
标签:opt,zookeeper,干死,export,master,HOME,PATH,搭建 From: https://blog.csdn.net/qq_74016034/article/details/137134684