docker kafka启动Error问题及解决
作者:腹黑客
这篇文章主要介绍了docker kafka启动Error问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
Docker CE 安装(基于Centos7版本)
卸载旧版本
yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
安装yum-utils获取yum-config-manager
yum install -y yum-utils device-mapper-persistent-data lvm2
通过yum-config-manager获取docker-ce.repo
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
查看是否将docker的yum源添加进来
ls /etc/yum.repos.d/
开始安装
yum repolist 查看已加载插件 yum list | grep docker-ce 查看安装docker镜像列表 yum -y install docker-ce 开始安装
启动服务
systemctl enable docker 使docker服务自动启动 systemctl start docker 启动docker服务
查看版本
docker version
docker命令
- 查看本地镜像
docker images
- 查找镜像
docker search 镜像名
- 下载镜像
docker pull 镜像名
- 运行镜像
docker (container) run -it --name=c1 本地镜像名(这里用名字和ID都行,只要能唯一标识镜像即可)
具体详细参数可看 docker run --help
docker 安装mysql 并对外开启端口映射
-- 拉取docker镜像 docker pull mysql5.7 -- 启动镜像 docker run --name mysql5 -v /lib/mysql/data:/var/lib/mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=0000 -d mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci –name → image 命名为 mysql5 -p → Docker 端口映射,Docker 容器 3306 映射到宿主机器 3306 (冒号前指代宿主机端口号,冒号后指代 Docker 容器端口号) -e → 运行环境变量 此处为初始化 root 用户密码为 0000(其他可配参数见 Docker Hub mysql 官方文档) -d → 后台运行 mysql → 指定 Mysql 版本号(版本号列表见 Docker Hub mysql 官方文档) docker ps -a // 查询所有容器 id,name docker exec -it mysql5 bash // 进入目标容器并使用 bash 命令控制 mysql -u root -p0000 // 连接上容器内部的 mysql
docker kafka 启动Error
Error: Exception thrown by the agent : java.net.MalformedURLException: Local host name unknown: java.net.UnknownHostException: scpayment11: scpayment11: Name or service not known
解决办法
在/etc/hosts文件下,添加
ipaddress hostname 例如: 192.168.100.10 node1
hostname 可通过hostname命令直接查看
也可在/etc/hostname目录下进行配置
然后重启zookeeper集群
docker restart zk1(zookeeper的name)
再尝试重新启动kafka
docker start kafka1(启动的kafka名字)
kafka 启动后异常结束,查看启动的kafka的log日志
docker inspect --format='{{.LogPath}}' 启动的kafka名字- 将启动日志加载到本地磁盘文件。
查看zookeeper 节点状态
echo mntr | nc ipaddress port | grep zk_server_state
kafka模拟集群搭建
将log日志写入本地
docker inspect --format='{{.LogPath}}' kafka1
查看Kafka节点状态
echo mntr | nc ipaddress port | ?
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
