金歌 发表于 2024-5-15 12:12:06

常见的Ingress annotations及其作用

Ingress annotations在Kubernetes中饰演着重要角色,特别是当与Ingress控制器(如Nginx, Traefik等)联合利用时。Annotations允许用户在Ingress资源上附加额外的配置信息,这些信息可以被Ingress控制器用来修改负载平衡器、署理服务器或其他网络设备的举动。
以下是一些常见的Ingress annotations及其作用:

[*]kubernetes.io/ingress.class:

[*]指定应该利用哪个Ingress控制器来处理此Ingress资源。例如,假如你集群中有多个Ingress控制器(如Nginx和Traefik),你可以利用这个annotation来指定利用哪一个。

[*]nginx.ingress.kubernetes.io/rewrite-target:

[*]对于Nginx Ingress控制器,此annotation用于重写URL的路径部门。例如,假如你希望将所有到达/app路径的请求重定向到/,你可以利用这个annotation。

[*]nginx.ingress.kubernetes.io/ssl-redirect:

[*]指示Nginx Ingress控制器将所有HTTP请求重定向到HTTPS。通常用于逼迫HTTPS。

[*]nginx.ingress.kubernetes.io/affinity:

[*]设置客户端IP的会话保持策略,以确保来自同一客户端的请求被路由到同一个后端Pod。

[*]nginx.ingress.kubernetes.io/configuration-snippet:

[*]允许你在Nginx的配置文件中插入自定义的片段。这可以用于实现Nginx的某些高级功能,这些功能不能通过标准的Ingress资源字段或annotations来实现。

[*]nginx.ingress.kubernetes.io/force-ssl-redirect:

[*]类似于ssl-redirect,但更为严格。它会逼迫将所有HTTP请求重定向到HTTPS,并拒绝任何非HTTPS的请求。

[*]traefik.ingress.kubernetes.io/router.entrypoints:

[*]对于Traefik Ingress控制器,此annotation用于指定入口点(即监听的网络地址和端口)。

[*]traefik.ingress.kubernetes.io/router.middlewares:

[*]允许你在Traefik Ingress上附加中心件,以处理诸如重定向、重写、认证等任务。

[*]cert-manager.io/cluster-issuer:

[*]当利用cert-manager来主动管理TLS证书时,此annotation指定了应该利用哪个ClusterIssuer来签发证书。

[*]haproxy.org/ingress.class:

[*]对于HAProxy Ingress控制器,类似于kubernetes.io/ingress.class,用于指定Ingress类。

[*]haproxy.org/path-rewrite:

[*]在HAProxy Ingress控制器中,用于重写请求的路径。

这些annotations的详细可用性和举动可能因Ingress控制器的版本和配置而异。在利用之前,发起查阅相应Ingress控制器的官方文档以获取最准确的信息。别的,随着Kubernetes和Ingress控制器生态系统的不断发展,新的annotations可能会不断被引入。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 常见的Ingress annotations及其作用