注意:我的是在云服务器上基于Docker配
在防火墙上放行端口号 2181(Zookeeper) 9092(Kafka)
一、先配置 Docker 守护进程(daemon)的镜像加速器(registry mirrors)
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<EOF
{
"registry-mirrors": [
"https://docker.anyhub.us.kg",
"https://dockerhub.jobcher.com",
]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
注意:
-
sudo mkdir -p /etc/docker:
- 使用
sudo
权限创建一个目录/etc/docker
,如果该目录已存在则不会报错,-p
参数表示递归创建目录。
- 使用
-
sudo tee /etc/docker/daemon.json <<EOF:
- 使用
sudo
权限执行tee
命令,它会从标准输入接收数据并将其写入文件中。 /etc/docker/daemon.json
是一个配置文件,该命令会将下面的内容写入这个文件中。
- 使用
-
{ "registry-mirrors": [ "https://hub.uuuadc.top", "https://docker.anyhub.us.kg", "https://dockerhub.jobcher.com", "https://dockerhub.icu", "https://docker.ckyl.me", "https://docker.awsl9527.cn" ] }:
- 这是一个 JSON 格式的配置内容,用来配置 Docker 守护进程使用的镜像加速器(registry mirrors)。镜像加速器用于加快 Docker 镜像的拉取速度,尤其是在国内访问国外 Docker Hub 时。
-
EOF:
- 表示输入数据的结束标记,这里用来结束
tee
命令的输入。
- 表示输入数据的结束标记,这里用来结束
-
sudo systemctl daemon-reload:
- 使用
sudo
权限重新加载systemd
的守护进程配置,以便它可以识别到新的或更改的服务文件。
- 使用
-
sudo systemctl restart docker:
- 使用
sudo
权限重新启动 Docker 守护进程,使之应用新的配置(即上面添加的镜像加速器列表)。
- 使用
综上所述,这段命令和操作的目的是配置 Docker 守护进程的镜像加速器,以提高 Docker 镜像的下载速度。
二、设置网络
app-tier:网络名称 # --driver:网络类型为bridge
docker network create app-kafka --driver bridge
三、拉取镜像(因为zookeeper是Kafka的强依赖,所以需要安装)
docker pull bitnami/zookeeper:latest
四、编写启动脚本(我是放在cd /usr/local/docker/zookeeper里面)
vim startZK.sh
脚本内容:
docker run -d --name zookeeper-server \
-p 2181:2181 \
--network app-kafka \
-e ALLOW_ANONYMOUS_LOGIN=yes \
bitnami/zookeeper:latest
五、给脚本赋予权限
chmod -R 700 startZk.sh
六、启动脚本
./startZk.sh
七、拉取Kafka镜像
docker pull bitnami/kafka:latest
八、编写启动脚本(我是放在cd /usr/local/docker/Kafka里面)
vim startKafka.sh
脚本内容:(IP是你买的服务器IP)
docker run -d --name kafka-server \
--network app-kafka \
-p 9092:9092 \
-e ALLOW_PLAINTEXT_LISTENER=yes \
-e KAFKA_ADVERTISED_HOST_NAME=IP \
-e KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper-server:2181 \
-e KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://IP:9092 \
-e KAFKA_HEAP_OPTS="-Xmx256M -Xms256M" \
bitnami/kafka:latest
九、给脚本赋予权限
chmod -R 700 startKafka.sh
十、启动脚本
./startKafka.sh
以上就是在云服务器上配置zookeeper和Kafka了,欢迎大家讨论