일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- TSK
- AWS Elasticsearch
- AWS EKS
- AWS 쿠버네티스
- 모의해킹
- k8s
- hacking case
- ISMS-P 인증심사원
- The Sleuth Kit
- AWS Opensearch
- Autopsy
- 해킹
- AWS
- 정보보안
- 정보보안기사 실기
- 포렌식
- iam
- 정보보안기사
- 쿠버네티스
- artifacts
- 보안
- isms-p
- 보안기사
- SMS-P 인증 기준 안내서 요약
- forensic
- 실습
- AWS EKS Udemy
- ISMS
- CFReDS
- kubernetes
- Today
- Total
Always-Try(정보보안 및 일상)
EKS Starter - 6. 쿠버네티스 Dashboard 본문
https://www.udemy.com/course/amazon-eks-starter-kubernetes-on-aws/ 참고
쿠버네티스에 대한 상세한 현황을 GUI로 보기 위해 Kubernetes Dashboard를 사용해보자. Dashboard에서 명령을 실행할수 있다. 관련 github는 다음과 같다. https://github.com/kubernetes/dashboard
Kubernetes Dashboard의 구성은 대략 다음과 같다. (참고로 heapster 대신 metrics-server를 사용한ㄷ. 그림은 대략 참고만)
먼저 클러스터 정보들을 수집하기 위한 Metrics Server를 설치해보자.
sudo install jq curl
DOWNLOAD_URL=$(curl --silent "https://api.github.com/repos/kubernetes-sigs/metrics-server/releases/latest" | jq -r .tarball_url)
DOWNLOAD_VERSION=$(grep -o '[^/v]*$' <<< $DOWNLOAD_URL)
curl -Ls $DOWNLOAD_URL -o metrics-server-$DOWNLOAD_VERSION.tar.gz
mkdir metrics-server-$DOWNLOAD_VERSION
tar -xzf metrics-server-$DOWNLOAD_VERSION.tar.gz --directory metrics-server-$DOWNLOAD_VERSION --strip-components 1
kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml
설치되었는지 확인하기 위해 아래와 같이 kube-system 네임스페이스에서 metrics-server 검색
kubectl get deployment metrics-server -n kube-system
이제 dashboard를 배포하고 관리자 서비스 계정을 만들어보자.
우선 다음 사이트에서서 최신 버전의 dashboard 버전 및 호환 가능한 k8s 버전을 확인해보자. https://github.com/kubernetes/dashboard/releases
최신 버전의 dashboard를 적용해보자.
export DASHBOARD_RELEASE=v2.3.1
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/$DASHBOARD_RELEASE/aio/deploy/recommended.yaml
이제 dashboard 관리자 계정을 생성하자.
vi admin-service-account.yaml
kubectl apply -f admin-service-account.yaml
이제 생성한 계정으로 dashboard에 접근해보자. 그러기 위해 먼저 생성한 계정의 Security Token을 얻어야 한다.
kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep eks-course-admin | awk '{print $1}')
그리고 대시보드에 접근하기 위해 kube proxy를 실행시키자.
kubectl proxy
이후 kubectl proxy를 실행시킨 서버에서 아래 URL로 대시보드에 접속 할 수 있다.
필자는 리눅스에 kubectl을 설치해서 사용중이고 해당 리눅스에 GUI 환경을 설치하지 않았으므로 접근할 수 없다. 혹시나해서 외부에서 공인IP로 접근하면 안되는지 찾아봤지만 공식 쿠버네티스 홈페이지에 'UI는 커맨드가 실행된 머신에서오직접근 가능' 이라고 나와있는 것을 봐서는 불가능한 것으로 보인다.
대시보드에서는 클러스터, 네임스페이스, 노드, 파드, deployment 등등 다양한 정보를 확인할 수 있으며 오토스케일링 및 deploymen 도 다 가능하다.
끝.
'AWS' 카테고리의 다른 글
EKS Starter - 7. steteless sample app 배포하기 (0) | 2021.09.06 |
---|---|
EKS Starter - 9. Fargate on EKS (0) | 2021.09.05 |
EKS Starter - 5. EKS in depth (0) | 2021.09.04 |
EKS Starter - 4. 사용자 관리 및 RBAC (0) | 2021.09.01 |
EKS Starter - 3. Helm Package Manager (0) | 2021.09.01 |