본문 바로가기
[Cloud]/Rancher1

rancher1.6 설치 와 운영 (Traefik - ingress 설치 )

by journes 2018. 11. 1.

 


Rancher 1.6설치 와 운영 (Traefik - Ingress 설치 )

Traefik 

      • Træfik은 마이크로 서비스를 쉽게 배치 할 수있게 해주는 HTTP Reverse Proxy 및 로드 밸런서입니다. Træfik은 기존 인프라 구성 요소

        (Docker, Swarm 모드, Kubernetes, Marathon, Consul, Etcd, Rancher, Amazon ECS 등)와 통합되며 동적으로 구성됩니다. Træfik은 서비스 레

        지스트리 / 오케 스트레이터 API를 청취하여 추가 경로없이 즉시 마이크로 서비스를 외부 세계에 연결할 수 있도록 경로를 생성합니다.


    • Architecture

      • API-Gateway







    • Architecture

      • HTTP request를 HTTPS로 Redirect 및 SSL 인증 처리.
      • Backend와는 HTTP로 통신.







Rancher 1.6 + Traefik 적용

  • Service Flow

    •  클러스터 내부 Service를 Traefik을 통해 도메인기반으로 외부와 연결  (with LB)

    • Install (traefik 설치)

      • Rancher1.6의 [CATALOG]에 포함된 Traefik 설치 함.


  • Traefik 설치를 위한 Config 설정.

    • 사전에 설치대상 Node에 Label ( traefik_lb=true ) 지정 할 것.

    • 배포 대상 Node에  80, 443으로  Public Open된 컨테이너가 있으면 안됨.    

    • Config 적용전에, 아래 내용을 한번씩 읽어보면 도움이 됩니다.



  • 기본 Config 설정 
    • Choose rancher integration :  metadata 
    • Host label :  traefik_lb=true  
      • Label Name 은 Node쪽 label 과  동일하게 맞춰만 주면 됩니다. (변경 가능)
    • Http port : 80  (default : 8080 )
    • Https port : 443 (default : 8443)
    • Admin port : 8000  



  • Traefik 설치 완료
    • Traefik이 설치된 Node에는 "80","443"  Public  Port를 사용 할 수 없음.



  • 설치 후 [TACK] 정보를 확인해 보면 "80","443","8000" Public Port가 Open되어 있는걸 확인 할수 있습니다.


  • 8000포트  부분을 클릭해 보면 아래와 같은 "Traefik Dashboard" 로 이동합니다.  
    • 차후  모둔 적용이 완료 되면,  Frontend 와 Backend 정보가 표시 됩니다. 





서비스 적용 - 서비스용 Stack설정 추가 (default 설정)

  • Traefik을 적용할 대상 Container (ex web.등)에 아래 설정을 추가 
    • Label  추가 
      • Traefik.backend : test_web
        • backend 네임 정의
      • Traefik.port : 80
        • 사용할 포트 
      • Traefik.frontend.rule : Host:test.com
        • frontend 정책 적용 (사용할 도메인 등록)
      • Traefik.enable  : enable