Kubernetes的Ingress 资源是什么?

在Kubernetes中,Ingress资源是一种用于管理集群外部对内部服务访问的API对象,主要用于将不同的外部请求路由到集群内的不同服务,以下是关于它的详细介绍:

定义与作用

  • Ingress资源定义了从集群外部到内部服务的HTTP和HTTPS路由规则。通过Ingress,可以将多个不同域名或不同路径的请求,根据定义的规则,导向到集群内不同的Kubernetes服务,从而实现对集群内服务的统一外部访问管理。

核心组成部分

  • 规则(Rules) :是Ingress资源的核心部分,用于定义具体的路由规则。每个规则可以包含一个主机名(Host)和一个或多个路径(Path)及相关的后端服务配置。例如,可以定义一个规则,当请求的主机名为example.com且路径为/app1时,将请求转发到名为service1的Kubernetes服务。
  • 后端(Backends) :指定了在满足规则条件时,请求应该被路由到的目标服务和端口。一个后端通常由服务名称和端口号组成,例如service1:8080,表示将请求发送到名为service1的服务的8080端口。
  • TLS配置:用于配置Ingress资源的传输层安全(TLS)设置,以确保通信的安全性。可以指定SSL/TLS证书和密钥,用于对通过Ingress的HTTPS流量进行加密和解密。

示例

以下是一个简单的Ingress资源的YAML示例:

yaml 复制代码
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: example-ingress
spec:
  rules:
  - host: example.com
    http:
      paths:
      - path: /app1
        pathType: Prefix
        backend:
          service:
            name: service1
            port:
              number: 8080
      - path: /app2
        pathType: Prefix
        backend:
          service:
            name: service2
            port:
              number: 80

在这个示例中,定义了一个名为example-ingress的Ingress资源。它包含一个规则,当请求的主机名为example.com时,根据不同的路径进行路由。如果路径以/app1开头,请求将被路由到service1的8080端口;如果路径以/app2开头,请求将被路由到service2的80端口。

相关推荐
张洛闻Eren2 小时前
MySQL 维护稳定系统【MySQL第二课】
linux·数据库·mysql·云原生
Linux-18743 小时前
分布式链路追踪系统之skywalking 追踪案例
云原生·skywalking·分布式链路追踪系统·应用程序性能监控·skywalking java agent·skywalking python agent
虎头金猫4 小时前
如何在群晖NAS上通过Docker部署CloudSaver?群晖部署CloudSaver教程|聚合资源搜索并实现远程访问
运维·服务器·网络·python·docker·容器·pandas
mounter6257 小时前
MACsec 全景解析:从技术演进、核心架构到 DPU 硬件卸载与 K8s 大规模调度实战
linux·kubernetes·linux kernel·kernel·macsec
阿里云云原生7 小时前
当拨测遇上 APM:STAROps Agent 如何区分网络问题与后端问题
云原生
fatcoder11 小时前
玩转Docker 08 — 实战:容器化真实后端并编排
后端·docker·容器
皮皮蟹虾饺11 小时前
NCCL 源码解析:通信器从出生到消亡的完整一生
linux·人工智能·ubuntu·语言模型·kubernetes
江湖有缘15 小时前
5款开源wiki知识库工具,支持Docker快速部署!
docker·容器·开源
云烟成雨TD17 小时前
Micrometer 系列【68】统一观测:基于 Spring Boot 的生产级演示案例 | 跨进程场景
spring boot·云原生·链路追踪
云烟成雨TD17 小时前
Micrometer 系列【67】统一观测:基于 Spring Boot 的生产级演示案例 | 跨线程场景
spring boot·云原生·链路追踪