카샤의 만개시기

Ingress configuration-snippet vs server-snippet 본문

DevOps/Docker & K8S

Ingress configuration-snippet vs server-snippet

SKaSha 2021. 4. 19. 00:44

쿠버네티스를 실무에서 사용하다 보면, Kubernetes annotations을 이용하여 nginx ingress에 커스터마이즈한 행동을 지정하곤 한다.
그 중에 configuration-snippetserver-snippet 설정이 유사하게 사용되는것 같은데 정확히 어떤 차이가 있는지 궁금하여 정리해보았다.

nginx.ingress.kubernetes.io/configuration-snippet: |
    ...
nginx.ingress.kubernetes.io/server-snippet: |
    ...

configuration-snippet

도큐먼트

NGINX location에 redirect/rewrite를 포함한 다양한 설정을 추가적으로 지정해줄수 있다.

server-snippet

도큐먼트

Attention
This annotation can be used only once per host.

도큐먼트에서는 해당 설정에 대하여 주의사항을 다음과 같이 적어 놓았다.
configuration-snippet과 유사하게 사용되지만 configuration의 경우 location 블럭에 지정되는 설정이고, server-snippet의 경우에는 server 블럭에 지정되는 설정이다.
그로인해 설정의 effect가 server wide이므로 해당 설정이 각 호스트마다 하나만 사용될수 있다는 의미이다.

동일 호스트에 대하여 ingress 설정이 여러개로 나뉘어져 있을 경우, server-snippet을 중복적으로 사용할 경우 의도하지 않은 방식으로 동작될수 있으니 해당 부분에 대하여 유의하여 사용하는것이 좋겠다!

Comments