k8s를 설치 하고 test 하다 보면 모니터링을 할 필요성이 당연히 생기고 rancher를 깔아서 관리를 하고 싶어진다.
rancher 설치해도 기본 cpu,mem 은 안보인다. 물론 프로메테우스 깔아야 되는데 기본적으로 metric 서버를 깔면 된다.
kubectl top nodes 를 할때 바로
metric API 없다고 하니
아래 깃에서 버전에 맞게 설치 하면 된다.
https://github.com/kubernetes-sigs/metrics-server
온프레미스 형태로는
몇몇 오류가 있으니 아래와 같이 해결 하면 된다.
metrics-server 가 설치가 되면 상기와 같이 kube-system namespcase 에 설치 되서 pod 정보를
확인해 보면 서버는 running 인데 0/1 컨테이너가 안올라와 있다 그래서 저걸
describe 해보면
$kc describe pod metrics-server-6594d67d48-rdtz8 -n kube-system
상기와 같이 describe 제일 하단 events 에 500 에러가 나온다 물론 해당 이벤트 cli 에서 확인도 되지만
rancher event에도 아래와 같이 나온다...rancher는 정말 편하다
해결 방법은 deploy에 아래 구문을 추가하여 tls 오류를 해결하면 된다. 물론 edit 는 아래와 같이
$kubectl edit deploy metrics-server -n kube-system
- --kubelet-insecure-tls
그리고 추가로 kubectl top nodes 에 아래와 같이
Error from server (ServiceUnavailable): the server is currently unable to
handle the request (get nodes.metrics.k8s.io)
이렇게 난다면
spec.template.spec 라인에 hostNetwork: true 추가하면 된다고 한다.
2대의 k8s 클러스터 중에 한대는 해주고 하나는 안해줫다 오류 있을때 하면 된다.
'k8s' 카테고리의 다른 글
k8s pod 내부 파일 밖으로 kubectl cp 명령어 사용법 (0) | 2023.01.03 |
---|---|
ctr 로 사설 저장소(harbor) image push (0) | 2022.11.14 |
폐쇄망 k8s 업그레이드 docker 제거시 rancher agent 문제 (0) | 2022.08.18 |
k8s docker -> containerd 변경시 기존 이미지 pull 시에 archive/tar: invalid tar header: unknown (0) | 2022.08.18 |
k8s crd,cr (0) | 2022.03.24 |