当前位置: 首页 > 知识库问答 >
问题:

LXC和Ingress上Kubernetes的迷人分布

宗政子辰
2023-03-14

我正试图从本地LXC容器上托管的Kubernetes集群中获得一个体面的解决方案来公开我的服务。

设置如下所示:

主机:运行LXC集群的Ubuntu 18.04。

在LXC内部,有一个运行我的应用程序的Kubernetes分发版和另一个运行NGINX反向代理的容器。

我还在kubernetes内部安装了Metallb负载平衡器,并使用了所有需要internet公开的k8s服务,如负载平衡器

apiVersion:v1种类:服务元数据:命名空间:blazedesk名称:blazedesk SDEWB服务器标签:应用程序:blazedesk规范:端口:-端口:80目标端口:80名称:“http”-端口:443目标端口:443名称:“https”选择器:应用程序:blazedesk层:SDEWB服务器类型:负载平衡器

到目前为止,我是如何将所有到达主主机的http和https流量重定向到NXGINX反向代理的:

lxc-config-device-add-proxy-myport80-proxy-listen=tcp:0.0。0.0:80连接=tcp:127.0。0.1:80代理_协议=真

lxc-config-device-add-proxy-myport443-proxy-listen=tcp:0.0。0.0:443连接=tcp:127.0。0.1:443代理_协议=真

然后将Nginx配置为将匹配DNS地址的流量重定向到k8s服务外部ips:

NAME                               TYPE           CLUSTER-IP       EXTERNAL-IP     PORT(S)                      AGE
service/blazedesk-sdeweb-server    LoadBalancer   10.152.183.215   10.190.26.240   80:31476/TCP,443:31055/TCP   17d

proxy\u passhttps://10.190.26.240;

可以想象,此设置意味着大量的手动工作,尤其是当k8s服务重新启动并且metallb loadbalancer分配了新的IP时。

有没有一种更简单的方法可以直接将流量从主机重定向到kubernetes入口,以某种方式绕过LXC层?


共有1个答案

申屠新觉
2023-03-14

实际上,我让它与作为负载平衡器服务公开的NGINX入口控制器一起工作,并使用iptables将http和https流量从主机重定向到入口外部ip。

 类似资料:
  • Kong Ingress Controller for Kubernetes Use Kong for Kubernetes Ingress.Configure plugins, health checking,load balancing and more in Kongfor Kubernetes Services, all usingCustom Resource Definitions(C

  • 我在EKS上运行服务已经有一段时间了,今天无意中删除了nginx入口。现在,当我尝试使用以下url中的入口控制器模板设置入口时,只需稍加修改: https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v0.34.1/deploy/static/provider/aws/deploy-tls-termination.

  • 我通过玩迷你库贝来学习库伯内特。 如何与Minikube一起使用ingress?或者如何将minikube ip与ingress服务绑定--这样就可以在不使用nodeport的情况下将应用程序公开到外部

  • Application Gateway Ingress Controller Application Gateway Ingress Controller (AGIC) is a Kubernetes application, which makes it possible for Azure Kubernetes Service (AKS) customers to leverage Azure

  • 我们正在GKE上的k8s集群上运行一个应用程序。 我们正在使用一个nginx入口控制器作为外部负载平衡器服务,比如说,https://12.345.67.98 . 我们面临的一个问题是,当我们直接访问上述URL上的负载平衡器时,我们会收到一个证书警告,因为使用了自签名的“Kubernetes入口控制器假证书”。 我们只有将我们的域(例如app.our company.com)映射到Kubernet

  • 堆栈:Azure Kubernetes服务 NGINX Ingress Controller-https://github.com/Kubernetes/ingress-nginx AKS LoadBalancer Docker容器 我的目标是创建一个K8s集群,它将允许我在一个IP下使用多个POD,创建一个微服务架构。在使用了大量的教程和文档之后,我的EndGoal没有任何运气。我已经到了能够使