如何创建 Ingress?

· 约 3 分钟读完 · 第 97 / 192 章

推荐答案

在 Kubernetes 中,创建 Ingress 的步骤如下:

  1. 编写 Ingress YAML 文件:

  2. 应用 Ingress 配置:

  3. 验证 Ingress 是否创建成功:

本题详细解读

Ingress 的作用

Ingress 是 Kubernetes 中用于管理外部访问服务的 API 对象,通常用于 HTTP 和 HTTPS 流量的路由。它可以将外部请求路由到集群内部的服务,并且支持基于主机名和路径的路由规则。

Ingress 的核心字段

  • apiVersion: 指定 API 版本,通常为 networking.k8s.io/v1。
  • kind: 资源类型,这里为 Ingress。
  • metadata: 元数据,包括名称和注解(annotations)。
  • spec: Ingress 的规格,定义了路由规则。
    • rules: 定义路由规则,可以基于主机名和路径进行路由。
      • host: 指定域名。
      • http: 定义 HTTP 路由规则。
        • paths: 定义路径规则。
          • path: 请求路径。
          • pathType: 路径匹配类型,如 Prefix 或 Exact。
          • backend: 定义后端服务,指定服务名称和端口。

注解(Annotations)

注解用于配置 Ingress 控制器的行为。例如,nginx.ingress.kubernetes.io/rewrite-target: / 表示将请求路径重写为根路径。

应用 Ingress 配置

使用 kubectl apply -f ingress.yaml 命令将 Ingress 配置应用到 Kubernetes 集群中。

验证 Ingress

使用 kubectl get ingress 命令可以查看 Ingress 的状态,确认是否创建成功。

通过以上步骤,您可以在 Kubernetes 中成功创建并配置 Ingress,实现外部流量的路由和管理。