У меня есть KongIngress
атрибуты конфигурации объекта, относящиеся к ресурсу Ingress, которые вызывают kong как контроллер Ingress. У меня фактически есть эта конфигурация:
apiVersion: configuration.konghq.com/v1
kind: KongIngress
metadata:
name: echo-site-ingress
namespace: hello-world
annotations:
kubernetes.io/ingress.class: "kong"
proxy:
protocols:
- http
- https
# path: /
route:
methods:
- POST
- GET
strip_path: true
preserve_host: true
---
#My Ingress resource
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
kubernetes.io/ingress.class: kong
plugins.konghq.com: helloworld-customer-acceptance-basic-auth, hello-world-customer-acceptance-acl
name: echo-site-ingress
namespace: hello-world
spec:
rules:
- host: hello-world.bgarcial.me
http:
paths:
- backend:
serviceName: echo
servicePort: 80
path: /
tls:
- hosts:
- hello-world.bgarcial.me
secretName: letsencrypt-prod
Вопросы:
Что делают в моем kind:KongIngress
объектном ресурсе атрибуты strip_path
и preserve_host
?
Я прочитал документацию здесь , но мне не ясно:
Относительно strip_path
Я вижу это:
При сопоставлении маршрута через один из путей удалите соответствующий префикс из URL-адреса вышестоящего запроса. По умолчанию true. но, как мы видим, я не использую атрибут path внутри моего объекта KongIngress (я прокомментировал в целях иллюстрации мой вопрос)
Итак, как здесь применяется значение атрибута strip_path
?
Это потому, что я использую в своем ресурсе Ingress атрибут path: /
, а мои ресурсы Ingress и KongIngress работают вместе?
У меня действительно нет ни малейшего понятия об этом, но я бы хотел хотел бы знать, как это за кулисами.