일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- snmp
- snmp test
- gcc regex
- c3 step graph
- c++ 정규식
- influxdb 설치
- python subprocess
- regex_search
- 정규식 컴파일
- 정규식 활용
- selinux port 등록
- python popen
- c3 축 가리기
- python os
- gcc 업데이트
- CentOS7
- InfluxDB
- c3 second
- c3 축 없애기
- linux시간으로 변경
- subporcess path
- semanage
- 정규식 문자열 출력
- grafana dashboard
- 백준
- g++ 업데이트
- centos pyhon 설치
- c3 초
- telegraf
- 1697
- Today
- Total
리셋 되지 말자
[kubernetes] 대시보드 설치 및 사용 본문
Docker desktop 설치 후 쿠버네티스를 사용하는 법을 간단하게 기록
1. kubernetes enable
도커 데스크톱 화면에서 우측 상단의 톱니바퀴(setting)버튼을 클릭한 뒤, Kubernetes 탭으로 가서 Enable Kubernetes를 체크한뒤 우측 하단의 Apply & Restart를 눌러 쿠버네티스를 활성화 한다. 몇분 정도 소모된다.
설치가 다 되면 도커 데스크톱 창에서 왼쪽 아래부분에 아래 그림처럼 고래옆에 톱니바퀴 로고가 초록색으로 표시된다.
$ kubectl version --output yaml
clientVersion:
buildDate: "2020-10-14T12:50:19Z"
compiler: gc
gitCommit: 1e11e4a2108024935ecfcb2912226cedeafd99df
gitTreeState: clean
gitVersion: v1.19.3
goVersion: go1.15.2
major: "1"
minor: "19"
platform: linux/amd64
serverVersion:
buildDate: "2020-10-14T12:41:49Z"
compiler: gc
gitCommit: 1e11e4a2108024935ecfcb2912226cedeafd99df
gitTreeState: clean
gitVersion: v1.19.3
goVersion: go1.15.2
major: "1"
minor: "19"
platform: linux/amd64
설치가 잘 되었는지 version 명령어로 확인해볼 수 있습니다.
2. 대시보드 설치
kubernetes.io/ko/docs/tasks/access-application-cluster/web-ui-dashboard/
위 공식사이트의 '대시보드 UI 접근'에 있는 방법으로 대시보드를 설치할 수 있다.(쿠버네티스 버전과 대시보드 버전의 차이가 많이나면 안되는것 같다. 아래 명령어도 업데이트가 될 수 있으니 공식 사이트의 방법대로 설치하는걸 추천)
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0/aio/deploy/recommended.yaml
원격지에 정의되어 있는 kubernetes-dashboard.yaml를 통해 대시보드를 설치한다.
3. proxy 실행
$ kubectl proxy
// 결과
Starting to serve on 127.0.0.1:8001
proxy를 실행하여 접속가능하도록 한다.
4. 대시보드 접속
http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/
위의 주소로 로컬에서 접속하면 대시보드로 접속할 수 있다.
5. 계정 생성
jogeum.net/22 이분 블로그를 참고하면서 진행함.(감사합니다.) 각 파일의 의미는 해당 블로그를 참고!
service-accout.yml 파일과 cluster-role-binding.yml파일을 아래와 같이 생성한다.(파일 이름은 상관 없음)
- service-account.yml
$ cat service-account.yml
apiVersion: v1
kind: ServiceAccount
metadata:
name: admin-user
namespace: kube-system
- cluster-role-binding.yml
$ cat cluster-role-binding.yml
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: admin-user
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: admin-user
namespace: kube-system
kubctl로 service-accout.yml 파일과 cluster-role-binding.yml파일을 적용한다.
$ kubectl create -f service-account.yml
$ kubectl create -f cluster-role-binding.yml
생성한 계정을 확인한다.(sa는 service account를 의미한다.)
$ kubectl get sa -n kube-system
NAME SECRETS AGE
admin-user 1 47m
6. 계정 토큰 조회
5. 과정에서 생성한 admin-user의 cluster-admin 권한의 토큰값을 가져온다.
$ kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk '{print $1}')
Name: admin-user-token-plhpd
Namespace: kube-system
Labels: <none>
Annotations: kubernetes.io/service-account.name: admin-user
kubernetes.io/service-account.uid: 2e9e3fcf-df41-4d4e-a181-43b8b4c29708
Type: kubernetes.io/service-account-token
Data
====
ca.crt: 1066 bytes
namespace: 11 bytes
token: eyJhbGciO.....
7. 대시보드 로그인
얻은 토큰값(eyJhbGciO.....)을 입력하여 쿠버네티스 대시보에 접속한다.
접속에 성공하면 아래와 같이 대시보드를 확인할 수 있다.
8. 대시보드 삭제
$ kubectl delete -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0/aio/deploy/recommended.yaml
2.번 과정에서 대시보드 설치시 사용했던 명령어에서 apply를 delete로 변경하여 수행하면 대시보드가 삭제된다.
$ kubectl get svc --all-namespaces
NAMESPACE NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
default kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 3h11m
kube-system kube-dns ClusterIP 10.96.0.10 <none> 53/UDP,53/TCP,9153/TCP 3h11m
대시보드 서비스가 사라진 것을 확인
'오케스트레이션' 카테고리의 다른 글
[docker swarm] swarm을 이용한 클러스터 환경 구성하기 (0) | 2021.03.30 |
---|---|
[kubernetes] 대시보드 설치 및 접속 (0) | 2021.03.25 |
[Docker Swarm] Docker machine, Docker Swarm 심화(?) (0) | 2021.03.25 |
[docker swarm] docker swarm에 node 제약 넣기 (0) | 2021.03.21 |
[kubernetes] Django 서비스하기 (0) | 2021.02.22 |