helm으로 traefik 설치 시 Dashboard 노출 방법

Sangwoon Park·2023년 3월 13일
0

배경

helm으로 traefik 설치 시, 9000번 포트가 포워딩되어 있지 않음.
따라서 traefik의 dashboard를 보기 위해 별도의 설정이 필요.

해결 방법

방법1. kubectl로 포트포워딩 설정

kubectl port-forward $(kubectl get pods --selector "app.kubernetes.io/name=traefik" --output=name) 9000:9000

설정 후, http://{traefik의 EXTERNAL-IP}:9000/dashboard/ 를 통해 접속 가능.

방법2. dashboard로 라우팅하는 IngressRoute(CRD) 추가

# dashboard.yaml
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
  name: dashboard
spec:
  entryPoints:
    - web
  routes:
    - match: Host(`FIXME: traefik의 EXTERNAL-IP나 도메인 주소`) && (PathPrefix(`/dashboard`) || PathPrefix(`/api`))
      kind: Rule
      services:
        - name: api@internal
          kind: TraefikService

위와 같은 설정 파일을 생성하고 CLI에서 아래 명령어로 CRD 적용.

kubectl apply -f dashboard.yaml

설정 후, http://{traefik의 EXTERNAL-IP}/dashboard/ 를 통해 접속 가능.

example)

# dashboard.yaml
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
  name: dashboard
spec:
  entryPoints:
    - web
  routes:
    - match: Host(`192.168.228.70`) && (PathPrefix(`/dashboard`) || PathPrefix(`/api`))
      kind: Rule
      services:
        - name: api@internal
          kind: TraefikService


출처

profile
백엔드 개발자입니다.

0개의 댓글