简体   繁体   English

是否在群集中部署了Kubernetes Ingress对象

[英]Are Kubernetes Ingress objects deployed in cluster

When a Kubernetes service is exposed via an Ingress object, is the load balancer "phisically" deployed in the cluster, ie as some pod controller inside the cluster nodes, or is just another managed service provisioned by the given cloud provider? 当Kubernetes服务通过Ingress对象公开时,负载均衡器是否“集中”部署在集群中,即作为集群节点内的某个pod控制器,还是仅由给定云提供商提供的另一个托管服务?

Are there cloud provider specific differences. 云提供商是否存在具体差异。 Is the above question true for Google Kubernetes Engine and Amazon Web Services? 对于Google Kubernetes Engine和Amazon Web Services,上述问题是否属实?

By default, a kubernetes cluster has no IngressController at all. 默认情况下,kubernetes集群根本没有IngressController This means that you need to deploy one yourself if you are on premise. 这意味着如果您是本地人,则需要自己部署一个。

Some cloud providers do provide a default ingress controller in their kubernetes offer though, and this is the case of GKE. 一些云提供商确实在他们的kubernetes提供中提供了默认的入口控制器,这就是GKE的情况。 In their case the ingress controller is provided "As a service" but I am unsure about where it is exactly deployed. 在他们的情况下,入口控制器提供“作为服务”,但我不确定它的确切部署位置。

Talking about AWS, if you deploy a cluster using kops you're on your own (you need to deploy an ingress controller yourself) but different deploy options on AWS could include an ingress controller deployment. 谈到AWS,如果使用kops部署集群,则您自己(您需要自己部署入口控制器),但AWS上的不同部署选项可能包括入口控制器部署。

I will answer with respect to Google Cloud Engine. 我将回答Google Cloud Engine的问题。

Yes, everytime, you deploy a new ingress resource, a Load balancer is created which you can view from the section: 是的,每次部署新的入口资源时,都会创建一个负载均衡器,您可以从以下部分查看:

GCP Console --> Network services --> LoadBalancing

Clicking on the respective Loadbalancer id gives you all the details, for example the External IP, the backend service, ecc 单击相应的Loadbalancer id可为您提供所有详细信息,例如外部IP,后端服务,ecc

I would like to make some clarification concerning the Google Ingress Controller starting from its definition: 我想从其定义开始对Google Ingress控制器做一些澄清:

An Ingress Controller is a daemon, deployed as a Kubernetes Pod, that watches the apiserver's /ingresses endpoint for updates to the Ingress resource. Ingress Controller是一个守护程序,部署为Kubernetes Pod,它监视apiserver的/ ingresses端点以更新Ingress资源。 Its job is to satisfy requests for Ingresses. 它的工作是满足对Ingress的要求。

First of all if you want to understand better its behaviour I suggest you to read the official Kubernetes GitHub description of this resource. 首先,如果你想更好地理解它的行为,我建议你阅读这个资源的官方Kubernetes GitHub 描述

In particular notice that: 特别注意:

  • It is a Daemon 这是一个守护进程

  • It is deployed in a pod 它部署在一个pod中

  • It is in kube-system namespace 它位于kube-system名称空间中

  • It is hidden to the customer 它对顾客来说是隐藏

However you will not be able to "see" this resource for example running : kubectl get all --all-namaspaces , because it is running on the master and not showed to the customer since it is a managed resource considered essential for the operation of the platform itself. 但是,您将无法“看到”此资源,例如运行: kubectl get all --all-namaspaces ,因为它在主服务器上运行而不向客户显示,因为它是一个被认为对于操作而言必不可少的受管资源。平台本身。 As stated in the official documentation: 官方文件中所述:

GCE/Google Kubernetes Engine deploys an ingress controller on the master GCE / Google Kubernetes Engine在主服务器上部署入口控制器

Note that the master itself of any the Google Cloud Kubernetes clusters is not accessible to the user and completely managed. 请注意,用户无法访问任何Google Cloud Kubernetes群集的主服务器并且已完全管理。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 部署到 kubernetes 集群的 Kibana 返回 404 - Kibana deployed to kubernetes cluster returns 404 无法删除在 AWS 上使用 Kops 部署的 Kubernetes 集群 - Can't delete Kubernetes cluster deployed with Kops at AWS 在AWS托管的kubernetes集群中的KOPS部署主节点上拒绝连接 - Connection refused on KOPS deployed master node in kubernetes cluster hosted on AWS 无法访问在 AWS 上运行的 Kubernetes 集群上通过 nginx 入口控制器公开的 Spring Boot 微服务 - Unable to access Spring Boot microservice exposed via nginx ingress controller on Kubernetes cluster running on AWS 具有现有 AWS HTTPS 负载均衡器的 K3S Kubernetes 集群中 Traefik Ingress Controller 的 AWS 证书解析器 - AWS certificate resolver for Traefik Ingress Controller in K3S Kubernetes Cluster with existing AWS HTTPS Load Balancer AWS中的Kubernetes入口 - Kubernetes ingress in AWS Kubernetes SSL 重定向入口 - Kubernetes SSL Redirect Ingress 运行/卷曲简单的 Java 应用程序部署并暴露给 AWS 上托管的 Kubernetes 集群 - Run/curl simple Java application deployed and exposed to Kubernetes cluster hosted on AWS Ingress资源与Kubernetes上的NGINX入口控制器 - Ingress resource vs NGINX ingress controller on Kubernetes 单个集群中的 AWS ALB 入口和 Nginx 入口 - AWS ALB ingress and Nginx ingress in a single cluster
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM