第 5 章 为 MicroShift 节点使用入口控制
使用 MicroShift 配置文件中的 ingress 控制器选项,使 pod 和服务可在节点外访问。
5.1. 在 MicroShift 中使用入口控制 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
在创建 MicroShift 节点时,节点上运行的每个 pod 和服务都会分配一个 IP 地址。默认情况下,这些 IP 地址可以被其他 pod 和服务访问,但外部客户端无法访问。MicroShift 使用 OpenShift Container Platform IngressController API 的最小实现来启用对节点服务的外部访问。
通过更多配置选项,您可以微调 ingress 来满足特定的需求。要使用增强的入口控制,请更新 MicroShift 配置文件中的参数并重启该服务。
Ingress 配置以多种方式很有用,例如:
- 适应服务器响应速度
-
如果您的应用程序开始处理来自客户端的请求,但连接可以在响应前关闭,您可以将配置文件中的
ingress.tuningOptions.serverTimeout参数设置为更高的值,以容纳来自服务器的响应速度。
-
如果您的应用程序开始处理来自客户端的请求,但连接可以在响应前关闭,您可以将配置文件中的
- 关闭路由器连接
-
如果路由器打开了很多连接,因为节点上运行的应用程序没有正确关闭连接,您可以将
ingress.tuningOptions.serverTimeout和spec.tuningOptions.serverFinTimeout参数设置为较低值,强制这些连接更早。
-
如果路由器打开了很多连接,因为节点上运行的应用程序没有正确关闭连接,您可以将
- 验证客户端证书
-
如果需要配置 ingress 控制器以验证客户端证书,您可以使用
ingress.clientTLS参数设置 clientCA 值,这是对配置映射的引用。配置映射包含 PEM 编码的 CA 证书捆绑包,用于验证客户端的证书。另外,您还可以配置证书主题过滤器列表。
-
如果需要配置 ingress 控制器以验证客户端证书,您可以使用
- 配置 TLS 安全配置集
-
如果需要为入口控制器配置 TLS 安全配置集,您可以使用
ingress.tlsSecurityProfile参数指定默认或自定义单独的 TLS 安全配置集。TLS 安全配置集定义入口控制器的 TLS 连接的最低 TLS 版本和 TLS 密码。如果没有配置 TLS 安全配置集,则默认值基于为 API 服务器设置的 TLS 安全配置集。
-
如果需要为入口控制器配置 TLS 安全配置集,您可以使用
- 为新路由声明创建策略
-
如果需要定义处理新路由声明的策略,您可以使用
routeAdmission参数在命名空间间允许或拒绝声明。设置routeAdmission参数,以描述如何在命名空间间处理主机名声明,并描述入口控制器如何使用通配符策略处理路由。
-
如果需要定义处理新路由声明的策略,您可以使用
- 自定义错误页面
- 如果您希望多个默认错误页面(通常为空,且只返回 HTTP 状态代码),请配置自定义错误页面。
- 捕获 HTTP 标头或 Cookie
- 如果要包含 HTTP 标头或 Cookie 的捕获,请在访问日志中配置它们。