我正在尝试使用journalctl的模式匹配SYSLOG_IDENTIFIERS。例如,我有大量消息标记为sshd:
$ journalctl -t sshd | wc -l
987
Run Code Online (Sandbox Code Playgroud)
但是如果我尝试使用模式匹配来找到它们:
$ journalctl -t 'ssh*'
-- No Entries --
$ journalctl -t 'ssh.*'
-- No Entries --
Run Code Online (Sandbox Code Playgroud)
journalctl 手册页说模式应该有效,但我找不到关于如何在 systemd 中使用/定义模式的任何其他信息。
$ man journalctl
....
-t, --identifier=SYSLOG_IDENTIFIER|PATTERN
Show messages for the specified syslog identifier SYSLOG_IDENTIFIER,
or for any of the messages with a "SYSLOG_IDENTIFIER" matched by PATTERN.
Run Code Online (Sandbox Code Playgroud)
我正在运行 ArchLinux:
$ journalctl --version
systemd 225
+PAM -AUDIT -SELINUX -IMA -APPARMOR +SMACK -SYSVINIT +UTMP +LIBCRYPTSETUP
+GCRYPT +GNUTLS …Run Code Online (Sandbox Code Playgroud) 我正在尝试在生产站点上设置 Traefik,但我正在努力解决一些高可用性问题。我认为我们在 Traefik 集群前面仍然需要一个反向代理。以下是我考虑过的潜在设置,以及为什么似乎需要反向代理:
设置 DNS A 记录以指向每个 Traefik 节点以进行负载平衡和故障转移。
根据包括this SO question和this SF question在内的多个站点,不鼓励这种做法。
由于 DNS 缓存和 TTL 问题,即使使用像 DNSMadeEasy 这样的服务似乎也不受欢迎。
将一条 DNS 记录指向运行 Traefik 的节点之一。
该节点成为 SPOF。我的节点在 CoreOS 上运行,每次更新后都会重新启动,因此我们可以保证每周有几分钟的停机时间。
我们可以在预计停机时将 DNS 记录移动到备用节点。这将是手动管理的痛苦。我可以设想一个与 locksmithd 配对的解决方案可以自动处理这个问题,但我真的不想构建它,它也不会处理意外停机时间。
使用 Docker Swarm(或 Kubernetes)的部分理由是使节点可互换。
在 Traefik 集群前面放置一个负载均衡器/反向代理。反向代理可以在所有 Traefik 节点之间提供故障转移,DNS 将指向反向代理。
我是错过了什么还是想多了?