在Linux系统安装Kafka

注意:我的是在云服务器上基于Docker配

在防火墙上放行端口号 2181(Zookeeper) 9092(Kafka)

一、先配置 Docker 守护进程(daemon)的镜像加速器(registry mirrors)

sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<EOF

{

"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"

]

}

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://hub.uuuadc.top/ "https://hub.uuuadc.top")", "[https://docker.anyhub.us.kg](https://docker.anyhub.us.kg/ "https://docker.anyhub.us.kg")", "[https://dockerhub.jobcher.com](https://dockerhub.jobcher.com/ "https://dockerhub.jobcher.com")", "[https://dockerhub.icu](https://dockerhub.icu/ "https://dockerhub.icu")", "[https://docker.ckyl.me](https://docker.ckyl.me/ "https://docker.ckyl.me")", "[https://docker.awsl9527.cn](https://docker.awsl9527.cn/ "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了,欢迎大家讨论

相关推荐
阿米亚波23 分钟前
【EVE-NG 实战】防火墙基础(VLAN · VRRP · NAT · ACL · 静态路由)
运维·网络·笔记·网络协议·计算机网络·网络安全·运维开发
SizeTheMoment29 分钟前
Spring Cloud 微服务认证体系深度解析:从架构设计到安全实践
安全·spring cloud·微服务
日取其半万世不竭1 小时前
云服务器迁移怎么少停机?DNS 切换前后的完整清单
运维·服务器
FREEDOM_X1 小时前
Linux 多线程编程——总结
java·linux·运维·ubuntu
名字还没想好☜1 小时前
Docker 多阶段构建:把镜像从 1.2GB 砍到 15MB
运维·docker·容器·多阶段构建·镜像优化
祸心依旧2 小时前
Visual Studio 五月更新 —— 计划、评审、优化
运维·人工智能·visual studio
Web4Browser2 小时前
Headless 浏览器自动化适合哪些任务?巡检、截图和提交动作要分级
运维·前端·自动化
難釋懷2 小时前
Nginx浏览器强制缓存
运维·nginx·缓存
大博士.J2 小时前
视频号主体违规与认证上限?正确的解决方式
运维·python·自动化
山东点狮信息科技有限公司2 小时前
企业级应用双模式部署架构设计:从单体到微服务的平滑演进
运维·微服务·架构