现在的位置: 首页 > 云计算 > 正文

Kubernetes Ingress Controller是什么意思

2020年01月01日 云计算 ⁄ 共 933字 ⁄ 字号 评论关闭

  Ingresscontroller是一个典型的部署在集群中的代理服务,它只是暴露给服务的Kubernetes部署。以下是可用于Kubernetes的IngressController:

NginxIngressController

  Traefik

  HAproxy

  Contour

GKEIngressController

  目前,Nginx是大多数企业的选择。以下是NginxIngressController的工作原理:

  在Nginxcontrollerpod内部的nginx.conf文件是一个go模板,它可以与KubernetesIngressAPI通信并实时获得流量路由的最新值。

  Nginxcontroller与KubernetesingressAPI通信以检查是否为流量路由创建了规则。

  如果它发现了任何ingress规则,它将应用到NginxController配置,也就是使用go模板在pod内的nginx.conf文件。

  如果你使用exec连接到pod并检查/etc/nginx/nginx.conf文件,则可以看到在conf文件中应用的ingress对象中指定的所有规则。

  前期准备

  一个Kubernetes集群

  安装好的kubectl并已对Kubernetes集群进行身份验证

  Kubernetes集群的管理员访问权限

  指向ingresscontroller负载均衡器的有效域

  如果你在谷歌云上,请为你的账户分配管理员权限以启用集群角色。

  设置NginxIngressController

  我们将使用Kubernetes社区的nginxcontroller。

  Ingresscontroller需要特定的命名空间、服务账户、集群角色绑定、configmap等。因此,你需要使用官方ingressrepo中的yaml文件来创建所提到的Kubernetes对象。

  检查ingresscontrollerpod以确保它是否正确设置:

  kubectlgetpods-ningress-nginx

  结束语:以上就是关于KubernetesIngressController是什么意思的全部内容,更多内容请关注学步园。

抱歉!评论已关闭.