我在一家使用 coreos 和 docker 部署集群产品的公司工作,作为部署的一部分,我们自动启动一些 docker 容器来公开一个 Web 界面,供客户端交互。
我目前面临的问题是部署 coreos 的终端(无论是裸机、vmware、virtualbox)(非 ssh)非常冗长。它将各种 systemd 信息以及 docker 守护进程输出直接转储到面向客户端的终端。
我重建了 coreos ISO 以包含一些自动部署的内容,并且希望有一种方法可以在 ISO 级别关闭这种冗长的内容,甚至在启动后不久(通过向 ISO 添加脚本)。
我需要找出为什么使用这个默认终端来转储守护程序输出?
答案1
经过多次谷歌搜索和同事的指导后,发现解决方案是:
创建文件:
/etc/sysctl.d/kp.conf
内容:
kernel.printk = 2 4 1 7
默认 coreos 内核打印参数为 7 4 1 7。最初的 7 使内核将 INFO 级别日志记录到终端。现在它只会打印紧急情况。