kafka----Zookeeper-Cluster-Konstruktion

1.准备工作:
##准备3个节点,要求配置好主机名称,服务器之间系统时间保持一致
##注意/etc/hostname 和/etc/hosts 配置主机名称(在这个里我准备Prac-zk-133, Prac-zk-134 , Prac-zk-135二节点)
vim  /etc/hosts #保证可以通过主机名互通 添加格式为IP  主机名称
## 比如
172.16.144.133 Prac-zk-133
172.16.144.134 Prac-zk-134
172.16.144.135 Prac-zk-135
## 测试
ping ip 
ping 主机名
##注意关闭防火墙
# 1. 启动防火墙
systemctl start firewalld
# 2.  关闭防火墙
systemctl stop firewalld
# 3. 重启防火墙
systemctl restart firewalld
# 4.查看防火墙状态
systemctl status firewalld
# 5. 开启禁用的防火墙
systemctl disable firewalld

##特别注意以下操作3个节点要同时进行操作哦!
2.上传zk到三台服务器节点
## 复制到其他机器 暂时测试不好用
#scp zookeeper-3.4. 6. tar.gz 192. 168.11.222: /usr/local /software/ 
## 上传到/usr/local/software
cd /usr/local/software
##注意我这里解压到/usr/local下
## 2.1进行解压: 
tar -zxvf  zookeeper-3.4.6.tar.gz -C /usr/local/
cd /usr/local/
# 2.2重命名: 
mv zookeeper-3.4.6 zookeeper
# 2.3修改环境变量:
vim ~/.bash_profile 

##这里要添加zookeeper的全局变量 jdk如果不会装,可以看之前文章
export JAVA_HOME=/usr/local/jdk1.8
export ZOOKEEPER_HOME=/usr/local/zookeeper
export PATH=.:$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin:$PATH

## 2.4刷新环境变量:
source  ~/.bash_profile  

# 2.5到zookeeper 下修改配置文件:
# 2.5.1首先到指定目录: 
cd /usr/local/zookeeper/conf
# 2.5.2然后复制zoo_sample.cfg文件, 复制后为zoo.cfg:
mv zoo_sample.cfg zoo.cfg
# 2.5.3然后修改两处地方,最后保存退出:
vim /usr/local/zookeeper/conf/zoo.cfg
# (1)修改数据的dir 存储数据的地方
dataDir=/usr/local/zookeeper/data

# (2) 修改集群地址
server.0=Prac-zk-133:2888:3888
server.1=Prac-zk-134:2888:3888
server.2=Prac-zk-135:2888:3888


## 2.5.4 增加服务器标识配置,需要2步骤,第一是创建文件夹和文件, 第二是添加配置内容:
# (1)创建文件夹: 
mkdir /usr/local/zookeeper/data
# (2)创建文件myid路径应该创建在/usr/local/zookeeper/data 下面,如下:
vim /usr/local/zookeeper/data/myid
# 注意这里每台服务 器的myid文件内容不同,分别修改里面的值为0, 1, 2;与我们之前的zoo.cfg配置文件里:
# server.0, server.1, server.2 顺序相对应,然后保存退出;
# 2.7到此为止,Zookeeper集群环境大功告成!启动zookeeper命令
启动路径: cd /usr/local/zookeeper/bin (也可在任意目录,因为配置了环境变量)
执行命令: zkServer.sh start (注意这里3台机器都要进行启动,启动之后可以查看状态)
./zkServer.sh start-foreground   # 有日志的打印的启动
查看状态: zkServer.sh status (在三个节点上检验zk的mode,会看到一个leader和俩个 follower)
关闭 : zkServer.sh stop
## zkCli.sh进入zookeeper客户端
Hostname Ip Wurzel
Prac-zk-133 172.16.144.133 Wurzel
Prac-zk-134 172.16.144.134 Wurzel
Prac-zk-135 172.16.144.135 Wurzel

172.16.144.133 Prac-zk-133
172.16.144.134 Prac-zk-134
172.16.144.135 Prac-zk-135

zkServer.sh start-foreground Verwenden Sie es zum Starten, und die Adresse scheint verwendet zu werden

Zookeeper konnte nicht gestartet werden (java.net.BindException: Adresse wird bereits verwendet

Der Port ist belegt. Ändern Sie einfach den Port 2181 in einen anderen

lsof -i:2181 #查到进程
kill -s 9 2715 #然后杀掉上面的进程

Wenn Sie nur den Stopp von zkServer.sh verwenden, ist der Stopp nicht sauber. Studieren Sie weiter, die Methode ist oben

zoo.cfg Konfigurationsbeschreibung
tickTime: Zeiteinheit
initLimit Follower- und Leader-Synchronisationsdatenzeit (initLimit*tickTime))
Maximale Verzögerungszeit der Synclimit-Heartbeat-Erkennung.
dataDir Standardmäßig werden die Transaktionsprotokolle und Daten-Snapshots von Zookeeper im Verzeichnis dataDir gespeichert.
dataLogDir log Protokollspeicherverzeichnis, standardmäßig dataDir clientPort
Die Portnummer für den Client zum Herstellen einer Verbindung mit dem Server. Der Standardwert ist 2181

Guess you like

Origin blog.csdn.net/weixin_39213232/article/details/132572107