网络
Redis Enterprise for Kubernetes 支持多种方式将外部流量路由到您的 RedisEnterpriseCluster:
- Ingress 控制器 HAProxy 和 NGINX 需要一个
ingress
API 资源。 - Istio 需要
Gateway
和VirtualService
API 资源。 - OpenShift 使用 routes 来路由外部流量。
- RedisEnterpriseActiveActiveDatabase (REAADB) 需要在 RedisEnterpriseCluster (REC) 中使用
ingressOrRouteSpec
字段配置上述任何路由方法。
使用Redis Enterprise for Kubernetes进行外部路由
每次创建RedisEnterpriseDatabase(REDB)、Redis Enterprise Active-Active数据库(REAADB)或Redis Enterprise集群(REC)时,Redis Enterprise操作员会自动创建一个服务,以允许请求路由到该资源。
Redis Enterprise 支持三种类型的服务用于访问数据库:ClusterIP
、headless
或 LoadBalancer
。
默认情况下,操作符会创建一个ClusterIP
类型的服务,该服务会暴露一个集群内部的IP,并且只能从K8s集群内部访问。为了使请求能够从K8s集群外部路由,你需要一个Ingress(如果你使用的是OpenShift,则需要route)。有关Ingress和Ingress controllers的更多详细信息,请参见kubernetes.io。
- 要使用NGINX或HAProxy Ingress控制器,请参阅Ingress路由。
- 要使用OpenShift路由,请参阅OpenShift路由。
- 要将 Istio 用作 Ingress 控制器,请参阅 Istio Ingress routing
ingressOrRouteSpec
用于 Active-Active 数据库
Kubernetes 上的 Redis Enterprise 6.4.2 或更高版本包含一个用于入口配置的功能。ingressOrRouteSpec
字段在 RedisEnterpriseCluster 规范中可用,用于自动为该 REC 上的 API 服务和数据库(REAADB)创建入口(或路由)。有关更多详细信息,请参阅 REC 外部路由。
此功能仅支持通过RedisEnterpriseActiveActiveDatabase(REAADB)自定义资源创建和管理的Active-Active数据库的自动Ingress创建。目前不支持与标准Redis Enterprise数据库(REDB)一起使用。
REC 域名
RedisEnterpriseCluster 不支持自定义域名。REC 的域名格式如下:
。