Kubernetes

[K8s] found a tab character that violates indentation

JuneJoon 2021. 5. 5. 14:12

안녕하세요?

 

한창 K8s 공부한다고 yaml 파일을 이것저것 복붙? 하면서 공부 중에 겪었던 부분을 공유하려고 합니다.

 

내용 추가를 위해 기존 기입된 변수를 Copy&past 한 후 인수값만 바꿔서 적용을 하려고 해도 다음과 같이 tab charater violation이 발생합니다. 

controlplane $ vi test1.yaml 
controlplane $ kubectl apply -f test1.yaml 
error: error parsing test1.yaml: error converting YAML to JSON: yaml: line 55: found a tab character that violates indentation
controlplane $ 

 

조금 찾아보니..tab violation을 확인할 수 있는 방법은.. VI 기준으로, 편집기로 다시 돌아가서 :set list를 적용하면 탭으로 처리된 부분을 확인할 수 있습니다. 

[tab]으로 처리된 부분을 확인 할 수 있었습니다.

문제가 되는 해당 공백 부분을 제거하면..

적용해 보면...!

controlplane $ kubectl apply -f test1.yaml 
Warning: extensions/v1beta1 Ingress is deprecated in v1.14+, unavailable in v1.22+; use networking.k8s.io/v1 Ingress
ingress.extensions/ingress-wear-watch created

잘 적용이 된 것을 확인 할 수 있었습니다. 😄

 

찾아서 수정하거나 Copy&past시 더 좋은 방식이 있을 것 같은데.. 일단은 자주 이런 불상사(?)가 발생하는데 자주 까먹길래 포스팅해봅니다. -_-a

 

좋은 방법이 있으면 공유 부탁드립니다 .. ㅎㅎ 

 

읽어주셔서 감사합니다.

 

반응형