상현
개발 덕후

Traefik

( 업데이트: )

개인 서버에서 여러개의 docker container로 애플리케이션을 배포하고있다. 그래서 점점 docker ps 로 컨테이너를 살펴보고 하기 어려워져서 모니터링, k8s, kind 등등 여러가지를 살펴보다가

Traefik, prometheus, grafana, portainer 및 oauth2_proxy 이러한 조합을 알게되어서 traefik이 무엇인가 살펴보려한다.

Traefik는 오픈소스 Edge Router입니다. 시스템을 대신하여 요청을 수신하고 처리하는 구성요소를 찾습니다.

Traefik은 기본적으로 Kubernetes, Docker, Docker Swarm, AWS, Mesos, Marathon과 같은 모든 주요 클러스터 기술을 준수합니다. 동시에 많은 것을 처리 할 수 있습니다.

그러면 여기서 궁금한게 나는 nginx로 리버스 프록시 구성을 해왔었는데 nginx와 차이점은 무엇일까 궁금했다.

nginx vs Traefik

Nginx: 고성능 무료 오픈소스 웹 서버이고 nginx [engine x]는 Igor Sysoev가 작성한 HTTP 및 역방향 프록시 서버이자 메일 프록시 서버입니다.

Traefik: 마이크로 서비스용 로드 밸런서 마이크로 서비스를 쉽게 배포 할 수 있도록 만들어진 최신 HTTP 역방향 프로식 및 로드밸런서. 구성을 자동 및 동적으로 관리하기 위해 여러 백엔드를 지원

Traefik를 선택하는 주요 원인으로 “Kubernetes 통합”이 가장 큰 이유라고 합니다.

Nginx보다 Traefik를 왜 선택할까 +

  • Traefik 내장 Let’s Encrypt 및 자동 갱신 지원
  • 자동으로 HTTP/2를 활성화
  • Traefik 구성을 통해 Prometheus를 간단하게 지원