k8s-第十节-Ingress

Ingress

介绍

  • Ingress 为外部访问集群提供了一个 统一 入口,避免了对外暴露集群端口;
  • 功能类似 Nginx,可以根据域名、路径把请求转发到不同的 Service。
  • 可以配置 https

跟 LoadBalancer 有什么区别?

  • `LoadBalancer`` 需要对外暴露端口,不安全;
  • 无法根据域名、路径转发流量到不同 Service,多个 Service 则需要开多个 LoadBalancer;
  • 功能单一,无法配置 https

Ingress 规则图

使用

  • 要使用 Ingress,需要一个负载均衡器 + Ingress Controller

如果是裸机(bare metal) 搭建的集群,你需要自己安装一个负载均衡插件,可以安装 METALLB
如果是云服务商,会自动给你配置,否则你的外部 IP 会是 "pending" 状态,无法使用。

文档

https://kubernetes.io/zh/docs/concepts/services-networking/ingress/

yaml 复制代码
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: simple-example
spec:
  ingressClassName: nginx
  rules:
  - host: tools.fun
    http:
      paths:
      - path: /easydoc
        pathType: Prefix
        backend:
          service:
            name: service1
            port:
              number: 4200
      - path: /svnbucket
        pathType: Prefix
        backend:
          service:
            name: service2
            port:
              number: 8080
相关推荐
小周学学学31 分钟前
docker安装与简单项目上手
运维·docker·容器
David爱编程39 分钟前
K8s 的 Namespace 到底解决了什么问题?
云原生·容器·kubernetes
小马爱打代码42 分钟前
微服务中token鉴权设计的4种方式
微服务·云原生·架构
婷儿z1 小时前
Kubernetes 架构原理与集群环境部署
容器·架构·kubernetes
曾经的三心草1 小时前
微服务的编程测评系统3-加密-日志-apifox-nacos-全局异常
微服务·云原生·架构
用手手打人1 小时前
springCloud -- 微服务01
微服务·云原生·架构
小诸葛的博客1 小时前
istio如何自定义重试状态码
云原生·github·istio
GOKORURI1 小时前
Podman + Nginx + Affine 踩坑教程
容器·教程·web
岚天start2 小时前
Kubernetes(k8s)中命令行查看Pod所属控制器之方法总结
kubernetes·k8s·pod·daemonset·deployment·statefulset
云途行者2 小时前
使用 docker 安装 openldap
运维·docker·容器