ingress nginx
时间: 2025-01-07 17:51:59 浏览: 6
### 配置和使用 Ingress Nginx
#### 安装 Ingress Nginx 控制器
为了安装 Ingress Nginx 控制器,访问官方部署指南页面[^1]。对于不同的环境(如云提供商或裸金属服务器),有不同的安装选项。例如,在裸金属环境中,可以通过 MetalLB 来提供外部 IP 地址分配。
```bash
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v0.49.0/deploy/static/provider/baremetal/all.yaml
```
此命令会应用一组 YAML 文件来部署 Ingress Nginx 到 Kubernetes 集群中。
#### 创建自定义资源文件
一旦控制器成功运行,则可通过创建 `Ingress` 资源来配置路由规则。下面是一个简单的例子:
```yaml
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: example-ingress
spec:
ingressClassName: "nginx"
rules:
- pathType: Prefix
path: "/"
backend:
service:
name: my-service
port:
number: 80
```
上述配置指定了一个名为 `example-ingress` 的入口资源,它将流量导向到名称为 `my-service` 的服务上,并监听来自 `example.com` 域名下的请求[^3]。
#### 使用多个 Ingress 控制器实例
如果集群中有两个不同版本的 Ingress Nginx 实例共存,那么通过指定特定的 `ingressClassName` 可以让某个 Ingress 对象仅由其中一个处理。比如设置 `ingressClassName` 为 `ingress-nginx-two` 就能确保只有第二个控制器响应这个 Ingress 对象[^4]。
#### 测试配置
完成以上步骤之后,就可以测试新配置是否生效了。通常情况下,这涉及到更新 DNS 记录指向正确的 IP 地址以及验证 Web 请求能否被正确转发给目标 Pod。
阅读全文