728x90
반응형
Linkerd 대시보드에 접근하려면 ID, Password 정보가 담긴 Secret을 생성하고, Ingress의 auth-secret을 이용하여 Ingress-nginx-controller를 통해 접근해야 한다.
이번 글에서는 기존의 ID, Password를 변경하기 위해 htpasswd 명령도구를 사용하여 ID, Password 저장 파일을 만들고 이를 이용하여 새로운 Secret을 생성하는 실습을 다룬다.
htpasswd란?
- 웹 서버의 인증 시스템에서 사용되는 유저 ID, Password 를 관리하는 도구이다.
먼저 htpasswd 명령을 사용하기 위해 패키지를 설치해야 한다.
패키지 설치
CentOS
$ yum install httpd-tools
Ubuntu
$ apt install apache2-utils
ID, PASSWD 파일 생성
- ID: test / Password : test
$ htpasswd -c auth test
New password: <test>
Re-type new password: <test>
Adding password for user test
생성된 파일 확인
$ ls
auth
$ cat auth
test:$apr1$udTiaDKz$FIxhCJmaUHhMsvwAFG.nf1
생성된 파일로 secret 생성
$ kubectl create -n linkerd-viz secret generic test-auth --from-file=auth
Ingress 수정
## linkerd-viz-ingress.yaml
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: web-ingress
namespace: linkerd-viz
annotations:
nginx.ingress.kubernetes.io/upstream-vhost: $service_name.$namespace.svc.cluster.local:8084
nginx.ingress.kubernetes.io/configuration-snippet: |
proxy_set_header Origin "";
proxy_hide_header l5d-remote-ip;
proxy_hide_header l5d-server-id;
nginx.ingress.kubernetes.io/auth-type: basic
nginx.ingress.kubernetes.io/auth-secret: test-auth
nginx.ingress.kubernetes.io/auth-realm: 'Authentication Required'
spec:
ingressClassName: nginx
rules:
- host: test.example.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: web
port:
number: 8084
- metadata.annotations의 nginx.ingress.kubernetes.io/auth-secret부분에 위에서 생성한 Secret 이름을 입력해야 한다
Ingress 적용
$ kubectl apply -f linkerd-viz-ingress.yaml
대시보드 확인
- test / test로 로그인
반응형
'Service Mesh > Linkerd' 카테고리의 다른 글
Linkerd mTLS 통신 검증 (0) | 2023.04.05 |
---|---|
Linkerd 사이드카 주입 (0) | 2023.04.05 |
Linkerd 대시보드 구성 (0) | 2023.04.04 |
Linkerd 설치 (0) | 2023.04.04 |
Linkerd 란? (0) | 2023.04.04 |
댓글