#traefik #traefik-ingress
Вопрос:
Я учусь traefik
и ingressroute
. Одна вещь смутила меня больше всего-это то, как эти две части связаны друг с другом.
После развертывания traefik
и моей собственной службы я могу просто создать следующее ingressroute
, чтобы заставить ее работать:
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
name: my-service-ir
namespace: my-service-ns
spec:
entryPoints:
- web
routes:
- match: Path(`/`)
kind: Rule
services:
- name: my-service
port: 8000
Но ingressroute
у него нет ничего общего с traefik
: нет в том же пространстве имен, нет селектора и т. Д.. Мне кажется, что это ingressroute
может волшебным образом найти traefik
и применить дальше traefik
. Мне любопытно, что за этим стояло.
Спасибо
Ответ №1:
При развертывании traefik в кластере kubernetes вы используете манифесты rbac-k8s, как здесь. Если вы используете шлем, то все это присутствует под этим капюшоном.
Эти RBAC фактически создают новые типы ресурсов, т. е. IngressRoute
Здесь. Они применяются на уровне кластера, как вы видите по ссылке ClusterRole
. Это дает им привилегии на уровне кластера. По этой причине вы не видите ничего особенного в пространстве имен.
Вы можете ознакомиться с образцом задания здесь, который прольет немного больше света на этот вопрос.