Rancher中Ingress使用

创建后端服务

创建服务时无需做port映射

创建ingress

在选中namespace后选中上面深色的第一个workload,再选中load balancing,点击后面的add ingress创建一个ingress
逐个添加workload(而不是service),端口选择container内部的端口
可以指定一个域名,然后查看yml文件里ingress的ip地址,将域名解析到该地址(还是所有node的ip都可以?)

troubleshooting

无法访问Nginx

关闭防火墙或者打开防火墙80端口

503

关闭POD所在NODE的防火墙

413 Request Entity Too Large

这个是由于Nginx的上传文件限制在1m引起,直接修改yml文件,在指定位置加上最下面一行

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
	annotations:
		field.cattle.io/creatorId: user-s8kvg
		nginx.ingress.kubernetes.io/proxy-body-size: 1024m

websocket支持

在yaml配置的metadata:annotations:的下一级添加以下配置

    nginx.ingress.kubernetes.io/configuration-snippet: |
  	proxy_set_header Upgrade "websocket";
  	proxy_set_header Connection "Upgrade";

对于websocket的url貌似需要一个专门的ingress

Rancher是一个开源的容器管理平台,用于在Kubernetes集群部署和管理容器。在Rancher部署Ingress后端重写是为了实现流量转发和负载均衡。 在Rancher,可以使用Ingress Controller来实现Ingress后端重写。Ingress Controller是一种可自定义配置的代理服务器,可根据Ingress规则将流量转发到不同的后端服务。 为了实现Ingress后端重写,我们需要进行以下步骤: 1. 首先,在Rancher创建一个Ingress对象。可以使用YAML文件或者Rancher UI进行创建。在Ingress对象,需要指定规则和要转发的后端服务。 2. 接下来,我们需要为Ingress对象创建一个后端服务。后端服务可以是Kubernetes Deployment、Service或者Pod。在后端服务,我们需要定义目标服务的容器端口以及选择器标签。 3. 一旦Ingress和后端服务都创建好了,我们就可以使用Ingress Controller来实现后端重写了。Ingress Controller可以根据Ingress规则定义的路径和主机名,将流量转发到相应的后端服务。 4. 对于后端重写,我们可以在Ingress规则使用NGINX的rewrite指令。这条指令可以定义一个正则表达式,用于重写请求的路径。例如,我们可以将"/api"的请求重写成"/v1/api",以便将请求转发到不同的后端服务。 5. 最后,我们需要在Ingress规则定义负载均衡策略。负载均衡策略可以根据后端服务的负载情况,将流量均匀地分发到不同的后端服务上,提高系统的性能和可靠性。 总之,通过在Rancher部署Ingress后端重写,我们可以实现在Kubernetes集群的流量转发和负载均衡,提高系统的可用性和性能。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值