美文网首页
Ingress与service的关系

Ingress与service的关系

作者: 木火应 | 来源:发表于2023-12-02 13:41 被阅读0次

    在Kubernetes 中,Ingress 和 Service 是两个不同的概念,但它们通常一起使用以提供对应用程序的外部访问。以下是它们之间的关系:

    1. Service:
      • Service 是 Kubernetes 中一种用于暴露应用程序的网络服务的抽象。
      • Service 可以将 Pod 组织成一个单一的访问点,并提供负载均衡以确保流量被均匀分配到这组 Pod 中。
      • Service 主要用于集群内部的服务发现和负载均衡,通常使用 ClusterIP、NodePort 或 LoadBalancer 类型。
    2. Ingress:
      • Ingress 是 Kubernetes 中用于公开和管理集群中服务的 API 对象。
      • Ingress 允许从集群外部访问集群内部的服务,提供了一种将外部流量路由到集群内 Service 的机制。
      • Ingress 定义了规则,指定了外部流量如何映射到后端服务。这些规则可能包括主机名、路径和后端服务的映射关系。
    3. 关系:
      • Ingress 通常与 Service 一起使用,将外部流量引导到 Service。
      • Ingress 规则中的后端服务通常是指已在集群内定义的 Service。
      • Service 通过 ClusterIP 暴露在集群内,而 Ingress 则负责将流量从集群外部引导到这些 Service 上。

    例子:

    假设有一个 Service 和一个相应的 Ingress:

    apiVersion: v1
    kind: Service
    metadata:
      name: myapp-service
    spec:
      selector:
        app: myapp
      ports:
        - protocol: TCP
          port: 80
          targetPort: 8080
    
    ---
    
    apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
      name: myapp-ingress
    spec:
      rules:
      - host: myapp.example.com
        http:
          paths:
          - path: /app
            pathType: Prefix
            backend:
              service:
                name: myapp-service
                port:
                  number: 80
    

    在这个例子中,myapp-service 是一个 Service,myapp-ingress 是一个 Ingress,规定了将 myapp.example.com/app 的请求路由到 myapp-service Service 中。流量从 Ingress 进入集群,然后被路由到相应的 Service。

    相关文章

      网友评论

          本文标题:Ingress与service的关系

          本文链接:https://www.haomeiwen.com/subject/vcmhgdtx.html