我正在尝试i)对一个简单的onyx-kafka作业进行故障排除,而不是写入主题。此处提供了更多详细信息。您可以在这个示例项目中尝试一下。我认为原因是因为只有一个 kafka 节点。
所以我尝试了ii)以 swarm mode启动运行 docker (17.09.0-ce, build afdb6d4)的kafka confluentinc/cp-kafka:3.3.1
(with zookeeper ) 。但后来我得到了这个错误。confluentinc/cp-zookeeper:3.3.1
Warning: space is running low in /dev/shm (shm) threshold=167,772,160 usable=58,716,160
A)使用 docker compose,我可以通过配置选项(请参阅此处/dev/shm
)将已安装的磁盘配置为具有更多容量。shm_size: 1G
docker swarm 是否有等价物?我只需要控制磁盘卷的大小。deploy
但我在 docker compose 的配置中没有看到这样的选项(请参见此处)。而且该docker service --mount
选项似乎无法解决问题。这里有什么选择吗?
B)我不太了解这里描述Memory
的卷安装。所以不知道这是否是一个可行的选择。
C)感谢来自devops-engineers
Slack 频道的 Andrew Mulholland (@itwasntandy),我可以通过--mount type=tmpfs,dst=/dev/shm,tmpfs-size=768000000
作为选项传入来伪造它docker service create ...
(参见此处)。
但是官方文档说不支持tmpfs选项。此选项仅适用于 docker compose 的服务配置。它不适用于 docker 的 swarm 模式。docker stack deploy
总结。那么有没有办法在 swarm 配置中将该选项放入我现有的 docker-compose.yml文件中?
我很想能够跑步docker stack deploy --compose-file docker-compose.yml my-app
。详情在这里。示例项目在这里。最终,我想:
- i)运行一个 docker 堆栈,其服务具有 onyx-kafka 写入主题(请参见此处)。为此,我想我需要...
- ii)以 swarm 模式启动 docker (17.09.0-ce, build afdb6d4),使用图像 kafka
confluentinc/cp-kafka:3.3.1
(with zookeeperconfluentinc/cp-zookeeper:3.3.1
)。但我遇到了这个内存错误问题。