想象一组由 docker compose 文件指定的容器。这些容器在牧场主的帮助下运行。容器设置为使用 fluentd 日志记录驱动程序。日志驱动程序将消息发送到弹性搜索,我们使用 Kabana 来查看我们的日志。
在我们执行牧场主升级之前,此设置工作正常。牧场主升级后,容器名称被设置为容器的 UUID 值。这使得调试变得困难,因为并非所有调试消息都与容器名称过滤器一起使用,因为 UUID 总是不同的。
如果堆栈从 Rancher 中删除,然后重新部署,则恢复容器的原始名称并正常恢复日志记录。为什么容器名称在 Rancher 升级后报告为 UUID 值?我们如何确保在我们的日志中始终正确设置容器名称?