Rancher Desktop의 Traefik 사용 시 Dashboard 활성화하기
Traefik Dashboard 소개
Traefik Dashboard는 Traefik에서 처리하는 정보를 보여주는 web UI 화면을 제공해 준다.
https://doc.traefik.io/traefik/operations/dashboard/
Rancher Desktop을 사용하면 traefik을 사용할 수 있는 옵션을 제공해 주어서 별도의 설치를 하지 않아도 간단하게 사용이 가능하다.
traefik deploy 설정을 확인해 보면
kubectl -n kube-system describe deploy traefik
Traefik의 Dashboard가 활성화되어 있는 것을 확인할 수 있다.
Args:
--global.checknewversion
--global.sendanonymoususage
--entrypoints.metrics.address=:9100/tcp
--entrypoints.traefik.address=:9000/tcp
--entrypoints.web.address=:8000/tcp
--entrypoints.websecure.address=:8443/tcp
--api.dashboard=true
--ping=true
--metrics.prometheus=true
--metrics.prometheus.entrypoint=metrics
--providers.kubernetescrd
--providers.kubernetesingress
--providers.kubernetesingress.ingressendpoint.publishedservice=kube-system/traefik
하지만 외부 접근이 처리되어 있지 않아 앞서 소개한 dashboard를 볼 수 없다.
dashboard 활성화 방법 1
FAQ | Rancher Desktop Docs
This FAQ is a work in progress designed to answer the questions our users most frequently ask about Rancher Desktop.
docs.rancherdesktop.io
파워쉘에서 port-forward를 다음과 같이 지정한다.
kubectl port-forward -n kube-system $(kubectl -n kube-system get pods --selector "app.kubernetes.io/name=traefik" --output=name) 9000:9000
이렇게 하면 바로 dashboard를 접근할 수 있지만 매번 pc를 재부팅하고 rancher desktop을 사용할 때마다 해당 명령을 실행해야 하는 번거로움이 있다.
dashboard 활성화 방법 2
해당 deployment에 접근할 service와 ingress를 설정하는 방법이다.
내 경우 다음과 같이 설정하였다.
apiVersion: v1
kind: Service
metadata:
name: traefik-service
namespace: kube-system
spec:
selector:
app.kubernetes.io/name: traefik
ports:
- protocol: TCP
name: traefik-dashboard-port
port: 9000
targetPort: 9000
- protocol: TCP
name: traefik-metrics-port
port: 9100
targetPort: 9100
type: LoadBalancer
----
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: traefik-ingress
namespace: kube-system
spec:
rules:
- host: traefik.bluesky.local
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: traefik-service
port:
number: 9000
- path: /metrics
pathType: Prefix
backend:
service:
name: traefik-service
port:
number: 9100
해당 설정을 하면 dashboard와 prometheus의 metric 정보를 확인할 수 있다.
(rancher desktop의 traefik 사용 시 metric 설정이 기본 활성화 되어 있다.)