banner
NEWS LETTER

Helm部署Nginx-Ingress

Scroll down

本文作者:丁辉

Helm 部署 Nginx-Ingress

介绍

Nginx-Ingress 是一个基于 Nginx 的 Ingress 控制器,用于管理外部访问 Kubernetes 集群内部服务的路由规则。它实现了一个配置有规则的反向代理负载均衡器,能够将入站 HTTP 和 HTTPS 请求路由到集群内的相应服务上。

开始部署

官方文档

  1. 添加仓库

    1
    2
    helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
    helm repo update
  2. 编写模版文件

    1
    vi ingress-values.yaml

    内容如下

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    controller:
    # 开启监控
    metrics:
    enabled: true
    serviceMonitor:
    enabled: true

    # 配置镜像加速
    image:
    registry: k8s.dockerproxy.com

    # 使用主机网络时,利用 Kubernetes 集群内的 DNS 解析服务
    dnsPolicy: ClusterFirstWithHostNet

    # 使用本地网络
    hostNetwork: true

    # Pod 使用 DaemonSet 方式运行
    kind: DaemonSet

    # 只允许调度到具有 ingress="true" 的节点上,[ kubectl label node xxx ingress="true" ]
    nodeSelector:
    kubernetes.io/os: linux
    ingress: "true"

    # 禁用后状态字段会报告 Ingress 控制器 Pod 所在节点的 IP 地址或节点列表的 IP 地址
    publishService:
    enabled: false

    # 启用 Kubernetes Service
    service:
    enabled: false

    # 配置镜像加速
    admissionWebhooks:
    patch:
    image:
    registry: k8s.dockerproxy.com

    # 设置为集群默认 ingress 控制器
    ingressClassResource:
    default: true
  3. 配置节点标签

    1
    kubectl label node ${node} ingress="true"
  4. 部署

    1
    2
    3
    helm install ingress-nginx \
    ingress-nginx/ingress-nginx \
    -f ingress-values.yaml

卸载

1
helm uninstall ingress-nginx

I'm so cute. Please give me money.

其他文章
cover
Helm部署Nexus
  • 70/01/01
  • 00:00
  • Kubernetes-Helm
cover
Helm部署Nightingale
  • 70/01/01
  • 00:00
  • Kubernetes-Helm
目录导航 置顶
  1. 1. Helm 部署 Nginx-Ingress
    1. 1.1. 介绍
    2. 1.2. 开始部署
    3. 1.3. 卸载
请输入关键词进行搜索