简体   繁体   中英

How to remove Traefik 2.0 Middleware and IngressRoute in kubernetes once deployed

I have the following YAML (test.yaml) file that allows me to create ingress router and middleware for traefik 2

apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
  name: test
  namespace: qa
spec:
  entryPoints:
    - web
  routes:
    - match: Host(`my-url.com`) && PathPrefix(`/test`)
      kind: Rule
      services:
        - name: test
          port: 8000
      middlewares:
        - name: testmiddle
---
apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
  name: testmiddle
  namespace: qa
spec:
  stripPrefix:
    prefixes:
      - /test

Following files works. However, when I try to remove it using the following command:

kubectl delete -f test.yaml

Traefik complains that middleware and ingress router is not preset. Example of error as follows:

time="2021-07-09T18:15:12Z" level=error msg="middleware \"qa-test@kubernetescrd\" does not exist" routerName=qa-test-29c010046e0ec473d890@kubernetescrd entryPointName=web 
time="2021-07-09T18:15:25Z" level=error msg="middleware \"qa-test@kubernetescrd\" does not exist" entryPointName=web routerName=qa-test-29c010046e0ec473d890@kubernetescrd 
time="2021-07-09T18:15:25Z" level=error msg="middleware \"qa-test@kubernetescrd\" does not exist" entryPointName=web routerName=qa-test-29c010046e0ec473d890@kubernetescrd 
time="2021-07-09T18:31:44Z" level=error msg="middleware \"qa-test@kubernetescrd\" does not exist" entryPointName=web routerName=qa-test-29c010046e0ec473d890@kubernetescrd

Do you know how to remove middleware and ingress routers without error?

Try editing the IngressRoute to remove Middleware from IngressRoute first and then delete the Middleware and then the IngressRoute.

kubectl edit ingressroute test -n qa; 
kubectl delete middleware testmiddle -n qa; 
kubectl delete ingressroute test -n qa

since these are crd's, API-server won't delete them in the right order when deleting from a file and you would see error messages in the logs.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM