Google Kubernetes Engine入口注释

问题描述 投票:0回答:1

我在Google Kubernetes引擎上配置Ingress。我是Ingress的新手,但据我了解,Ingress可以服务于不同的负载均衡器,因此不同的LB应该配置不同。

我已经从GKE上的简单入口配置开始了:

apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
  name: basic-ingress

spec:
  rules:
  - http:
      paths:
      - path: /*
        backend:
          serviceName: web-np
          servicePort: 8080
      - path: /v2/keys
        backend:
          serviceName: etcd-np
          servicePort: 2379

并且运行良好,所以我有2个不同的NodePort服务web-np和etcd-np。但是,现在我需要使用一些重写规则来扩展此逻辑,以便将指向/service1的请求重定向到其他service1-np服务,但必须将/service1/hello.html替换为/hello.html。这就是为什么我有以下问题:

kubernetes google-kubernetes-engine kubernetes-ingress
1个回答
0
投票

Ingress-管理对群集中服务的外部访问的API对象,通常是HTTP。

Ingress可以提供负载平衡,SSL终止和基于名称的虚拟主机。

[Kubernetes.io: Ingress

Kubernetes可以具有多个Ingress控制器。该控制器彼此不同。您在此特定问题中提到的Ingress控制器是:

Ingress配置将使用Ingress-GCE控制器。如果要切换到Ingress-nginx,则需要部署它并设置如下注释:

    kubernetes.io/ingress.class: "nginx"

  • 如何配置入站重写,以及是否可以使用默认的负载均衡器。

    这里有一个正在进行的功能请求,以支持用Ingress-GCE进行重写:Github.com: Ingress-GCE: Rewrite

    您可以使用Ingress-nginx来支持重写。有有关部署它的官方文档:Kubernetes.github.io: Ingress-nginx: Deploy

    有关重写的更多资源,可以使用:

  • Stackoverflow.com: Ingress nginx how to serve assests to application-这是一个答案,显示了有关如何配置游乐场进行重写实验的示例

  • 什么是GKE上的默认负载均衡器。

    如果使用默认的Ingress选项创建Ingress-GCE资源,则将创建L7 HTTP&HTTPS LoadBalancer

    如果在LoadBalancer中创建类型为GKE的服务,则将创建L4 Network Load Balancer

    如果在Ingress-nginx集群中部署GKE控制器,则将创建一个指向Ingress-nginx控制器的L4网络负载均衡器,此控制器随后会将流量路由到Ingress定义。如果您愿意使用Ingress-nginx,则需要指定:

      kubernetes.io/ingress.class: "nginx"
  • 在您的Ingress定义中。

    请看这篇文章:Medium.com: Google Cloud: Kubernetes Nodeport vs Loadbalancer vs Ingress


    我在哪里可以找到所有注释的列表。我以为完整列表在https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/上,但是有一个完全不同的列表,并且没有在Google示例中广泛使用的kubernetes.io/ingress.global-static-ip-name批注。

    您提供的带有注释的链接专门用于Ingress-nginx。此注释不适用于Ingress-GCE

    GCP示例中使用的注释特定于Ingress-GCE

    您可以为Ingress-GCE上的Issuetracker.google.com的可用注释列表创建功能请求。

  • © www.soinside.com 2019 - 2024. All rights reserved.