15.3. 使用健康检查
建议由外部 HTTP 请求监控健康端点。由于安全措施,从红帽构建的 Keycloak 容器镜像中删除 curl
和其他软件包,本地的监控将无法正常工作。
如果您没有在容器中使用红帽构建的 Keycloak,请使用任何访问健康检查端点的内容。
15.3.1. curl 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
您可以使用简单的 HTTP HEAD 请求来确定红帽构建的 Keycloak 的实时或 就绪状态
。curl
是良好的 HTTP 客户端,用于此目的。
如果红帽构建的 Keycloak 部署在容器中,则必须因为前面提到的安全措施而从它外部运行这个命令。例如:
curl --head -fsS http://localhost:8080/health/ready
curl --head -fsS http://localhost:8080/health/ready
如果命令返回状态为 0,则红帽构建的 Keycloak 处于活动状态或 就绪
,具体取决于您调用的端点。否则会出现问题。
15.3.2. Kubernetes 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
定义 HTTP 探测,以便 Kubernetes 可以外部监控健康端点。不要使用存活度命令。
15.3.3. HEALTHCHECK 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
Dockerfile 镜像 HEALTHCHECK
指令定义了一个命令,它将在容器运行时定期执行。红帽构建的 Keycloak 容器没有安装任何 CLI HTTP 客户端。考虑将 curl
安装为额外的 RPM,如 容器运行红帽构建的 Keycloak 中 详述。请注意,由于此原因,您的容器可能不太安全。