首页 > 系统相关 >openEuler Linux 部署 Zookeeper 集群

openEuler Linux 部署 Zookeeper 集群

时间:2023-04-11 21:57:32浏览次数:41  
标签:opt zookeeper Zookeeper etc systemctl ssh Linux openEuler soft

openEuler Linux 部署 Zookeeper 集群

openEuler Linux 部署 Zookeeper 集群

主机名 IP地址
spark01 192.168.28.11
spark02 192.168.28.12
spark03 192.168.28.13

升级操作系统和软件

yum -y update 

升级后建议重启

安装常⽤软件

 yum -y install gcc gcc-c++ autoconf  automake cmake make rsync vim man zip unzip net-tools  zlib zlib-devel openssl openssl-devel pcre-devel tcpdump  lrzsz tar wget 

修改主机名

hostnamectl set-hostname spark01
# 或者
vim /etc/hostname 
spark01 
Reboot

修改IP地址

vim /etc/sysconfig/network-scripts/ifcfgens160 

⽹卡 配置⽂件示例

TYPE=Ethernet 
PROXY_METHOD=none
BROWSER_ONLY=no 
BOOTPROTO=none 
DEFROUTE=yes 
IPV4_FAILURE_FATAL=no
IPV6INIT=yes IPV6_AUTOCONF=yes 
IPV6_DEFROUTE=yes 
IPV6_FAILURE_FATAL=no 
NAME=ens160 
UUID=943779e9-249c-44bb-b272-d49ea5831ed4 
DEVICE=ens160 
ONBOOT=yes 
IPADDR=192.168.226.11 
PREFIX=24 
GATEWAY=192.168.226.2 
DNS1=192.168.226.2

关闭防⽕墙

systemctl stop firewalld 
systemctl disable firewalld 
vim /etc/selinux/config  
# This file controls the state of SELinux on the system. 
# SELINUX= can take one of these three values: 
# 	enforcing - SELinux security policy is enforced. 
# 	permissive - SELinux prints warnings instead of  enforcing. 
# 	disabled - No SELinux policy is loaded. 
# SELINUX=enforcing 
# SELINUXTYPE= can take one of three two values: 
# 	targeted - Targeted processes are protected, 
# 	minimum - Modification of targeted policy. Only  selected processes are protected.  
# 	mls - Multi Level Security protection. 
# SELINUXTYPE=targeted 

SELINUX=disabled 

执⾏这条命令

setenforce 0 

或者

sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
setenforce 0

创建软件安装目录并上传软件,配置环境变量

mkdir -p /opt/soft
cd /opt/soft
# 上传jdk zookeeper
tar -zxvf jdk-8u361-linux-x64.tar.gz
mv jdk1.8.0_361 jdk8
tar -zxvf apache-zookeeper-3.7.1-bin.tar.gz
mv apache-zookeeper-3.7.1-bin zookeeper

vim /etc/profile
	
export JAVA_HOME=/opt/soft/jdk8
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export ZOOKEEPER_HOME=/opt/soft/zookeeper

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

编辑完成后使用source命令使文件/etc/profile生效执行以下命令
source /etc/profile
检查环境变量
printenv

修改域名映射

vim /etc/hosts
192.168.226.11 spark01
192.168.226.12 spark02
192.168.226.13 spark03

修改后建议重启

配置ssh免密钥登录

创建本地秘钥并将公共秘钥写入认证文件

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
# 或者
ssh-copy-id spark01
ssh-copy-id spark02
ssh-copy-id spark03
scp -rv  ~/.ssh root@spark02:~/
scp -rv  ~/.ssh root@spark03:~/
# 远程登录自己
ssh spark01
# Are you sure you want to continue connecting (yes/no)? 此处输入yes
# 登录成功后exit或者logout返回
exit

拷贝配置文件分发到其它服务器或者使用脚本分发

scp -v  ~/.bashrc root@spark02:~/
scp -v  ~/.bashrc root@spark03:~/
scp -rv /opt/soft/hadoop3/etc/hadoop/* root@spark02:/opt/soft/hadoop3/etc/hadoop/
scp -rv /opt/soft/hadoop3/etc/hadoop/* root@spark03:/opt/soft/hadoop3/etc/hadoop/

在各服务器上使环境变量生效

编辑配置文件

cd /opt/soft/zookeeper/conf
vim zoo.cfg
# 心跳单位,2s
tickTime=2000
# zookeeper初始化的同步超时时间,10个心跳单位,也即20s
initLimit=10
# 普通同步:发送一个请求并得到响应的超时时间,5个心跳单位也即10s
syncLimit=5
# 内存快照数据的存储位置
dataDir=/home/zookeeper/data
# 事务日志的存储位置
dataLogDir=/home/zookeeper/datalog
# 当前zookeeper节点的端口 
clientPort=2181
# 单个客户端到集群中单个节点的并发连接数,通过ip判断是否同一个客户端,默认60
maxClientCnxns=1000
# 保留7个内存快照文件在dataDir中,默认保留3个
autopurge.snapRetainCount=7
# 清除快照的定时任务,默认1小时,如果设置为0,标识关闭清除任务
autopurge.purgeInterval=1
#允许客户端连接设置的最小超时时间,默认2个心跳单位
minSessionTimeout=4000
#允许客户端连接设置的最大超时时间,默认是20个心跳单位,也即40s,
maxSessionTimeout=40000
#zookeeper 3.5.5启动默认会把AdminService服务启动,这个服务默认是8080端口
admin.serverPort=9001
#集群地址配置
server.1=spark01:2888:3888
server.2=spark02:2888:3888
server.3=spark03:2888:3888
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/zookeeper/data
dataLogDir=/home/zookeeper/datalog 
clientPort=2181
maxClientCnxns=1000
autopurge.snapRetainCount=7
autopurge.purgeInterval=1
minSessionTimeout=4000
maxSessionTimeout=40000
admin.serverPort=9001
server.1=spark01:2888:3888
server.2=spark02:2888:3888
server.3=spark03:2888:3888

保存后根据配置文件创建目录

mkdir -p /home/zookeeper/data
mkdir -p /home/zookeeper/datalog

echo 1 > /home/zookeeper/data/myid
more /home/zookeeper/data/myid

编写zookeeper开机启动脚本

在/etc/systemd/system/文件夹下创建一个启动脚本zookeeper.service

cd /etc/systemd/system
vim zookeeper.service

内容如下:

[Unit]
Description=zookeeper
After=syslog.target network.target

[Service]
Type=forking
# 指定zookeeper 日志文件路径,也可以在zkServer.sh 中定义
Environment=ZOO_LOG_DIR=/home/zookeeper/datalog
# 指定JDK路径,也可以在zkServer.sh 中定义
Environment=JAVA_HOME=/opt/soft/jdk8
ExecStart=/opt/soft/zookeeper/bin/zkServer.sh start
ExecStop=/opt/soft/zookeeper/bin/zkServer.sh stop
Restart=always
User=root
Group=root

[Install]
WantedBy=multi-user.target

粘贴如下:

[Unit]
Description=zookeeper
After=syslog.target network.target

[Service]
Type=forking
Environment=ZOO_LOG_DIR=/home/zookeeper/datalog
Environment=JAVA_HOME=/opt/soft/jdk8
ExecStart=/opt/soft/zookeeper/bin/zkServer.sh start
ExecStop=/opt/soft/zookeeper/bin/zkServer.sh stop
Restart=always
User=root
Group=root

[Install]
WantedBy=multi-user.target
# 重新加载服务
systemctl daemon-reload

# 启动zookeeper
systemctl start zookeeper

# 开机自启动
systemctl enable zookeeper

# 查看zookeeper状态
systemctl status zookeeper

systemctl daemon-reload
systemctl start zookeeper
systemctl enable zookeeper
systemctl status zookeeper

其它节点按照上面的配置再配置一遍后修改对应的myid

标签:opt,zookeeper,Zookeeper,etc,systemctl,ssh,Linux,openEuler,soft
From: https://www.cnblogs.com/dream-come-true/p/17307893.html

相关文章

  • openEuler 单机部署 Hadoop SingleNode 模式
    openEuler单机部署HadoopSingleNode模式升级操作系统和软件yum-yupdate升级后建议重启安装常用软件yum-yinstallgccgcc-c++autoconfautomakecmakemakersyncopenssh-servervimmanzipunzipnet-toolszlibzlib-developensslopenssl-develpcre-devel......
  • Linux mount命令
    Linuxmount命令这个命令很重要,但是个人OS没使用过,都是在项目部署的时候弹性云主机上挂载数据盘Linuxmount命令是经常会使用到的命令,它用于挂载Linux系统外的文件。语法mount[-hV]mount-a[-fFnrsvw][-tvfstype]mount[-fnrsvw][-ooptions[,...]]device|dirmoun......
  • Linux操作系统基础的常用命令
    1,Linux简介Linux是一种自由和开放源码的操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、台式计算机。1.1Linux介绍Linux出现于1991年,是由芬兰赫尔辛基大学学生LinusTorvalds和后来加入的众多爱好者......
  • Linux操作系统进程的状态和转换(五态模型)
    1、进程的状态和装换1.1进程的三态模型按进程在执行过程中的不同情况至少要定义三种状态:运行(running)态:进程占有处理器正在运行的状态。进程已获得CPU,其程序正在执行。在单处理机系统中,只有一个进程处于执行状态;在多处理机系统中,则有多个进程处于执行状态。就绪(ready)态:进程具......
  • Linux mkdir 命令
    Linuxmkdir命令mkdir-p/data01/openresty/lua/logs运维常用命令,例如把lua日志软连接到nas盘,一次到位创建目录Linuxmkdir(英文全拼:makedirectory)命令用于创建目录。语法mkdir[-p]dirName参数说明:-p确保目录名称存在,不存在的就建一个。实例在/目录下,建立一个......
  • Linux dir命令
    Linuxdir命令dir-alLinuxdirs命令用于显示目录记录。显示目录堆叠中的记录。和ls的区别在于,这个玩意只显示目录语法dirs[pathname]参数:-a显示隐藏目录-l列表形式显示实例root@jdit:~#dir-l/usrtotal96drwxr-xr-x2rootroot36864Apr622:07bi......
  • 52 openEuler搭建PostgreSQL数据库服务器-管理数据库角色
    52openEuler搭建PostgreSQL数据库服务器-管理数据库角色52.1创建角色可以使用CREATEROLE语句或createuser来创建角色。createuser是对CREATEROLE命令的封装,需要在shell界面执行,而不是在数据库界面。CREATEROLErolename[[WITH]option[...]];createuserrolename......
  • linux CentOS 7上安装Chrome浏览器
    目录linuxCentOS7上安装Chrome浏览器添加Chrome浏览器的官方存储库,使用以下命令:安装Chrome浏览器:确认Chrome浏览器是否安装成功:linuxCentOS7上安装Chrome浏览器在CentOS7上安装Chrome浏览器可以按照以下步骤操作:添加Chrome浏览器的官方存储库,使用以下命令:$sudotee/etc......
  • Linux ftp命令
    Linuxftp命令ftp后续作为一个专题整理操作,工作常用与文件转储Linuxftp命令设置文件系统相关功能。FTP是ARPANet的标准文件传输协议,该网络就是现今Internet的前身。语法ftp[-dignv][主机名称或IP地址]参数:-d详细显示指令执行过程,便于排错或分析程序执行的情形。-i关......
  • linux急救包
    大概是OI赛场上的常用指令太不会用Linux了。在省选之前进行了一个恶补。简单整理一下发出来了()。g++g++-orp++-fsanitize=address,undefined-O2-std=c++14-Wall-Wextra-Werror-lm(数学函数)rp++.cpp\time考场自带用法\time./rp++(可能的输入输出<>)会得到一个......