Cloud/k8s

[kubernetes] cheat sheet

jinkwon.kim 2022. 10. 14. 14:31
728x90
반응형

특정 node 스케쥴링 막기

    - kubectl cordon은 지정된 노드에 더이상 포드들이 스케쥴링되서 실행되지 않도록 합니다

1) 설정

#kubectl cordon "node이름"

# kubectl get nodes
NAME     STATUS                                ROLES           AGE      VERSION
master   Ready,SchedulingDisabled   control-plane   21h        v1.25.2
worker   Ready                                    <none>           5h49m    v1.25.3

 

2) 해제

#kubectl uncordon "node이름"

 

특정 node의 pod를 다르 node로 옮기기

#kubectl drain docker-for-desktop --ignore-daemonsets=true

 --ignore-daemonsets=true 은 daemonsets이 있어도 강제로 옮기겠다는뜻.

 

pod안에 있는 container 접속 

1. 개의 container만 Pod에 있는 경우
kubectl exec --stdin --tty shell-demo -- /bin/bash
2.개의 container가 Pod에 있는 경우
kubectl exec -i -t my-pod --container main-app -- /bin/bash
참고: 축약형 옵션인 -i  -t 는 각각 --stdin  --tty 옵션에 대응된다.

master node에 Pod 올리기 

기본적으로 master node(control-plane 열활을 하는 node)에는 pod를 못 올리게 되어있다. 

1) taint 설정 확인

# kubectl describe node jk-server | grep Taints
Taints:             node.kubernetes.io/disk-pressure:NoSchedule

 

2) master node taint 해제 방법

     

#kubectl taint nodes jk-server node.kubernetes.io/disk-pressure:NoSchedule-

Taint & Toleration

  • taint: 노드마다 설정가능하며 설정한 노드에는 pod가 스케줄되지 않습니다.
  • toleration: taint를 무시하고 pod에 설정하면 해당 규칙대로 pod 스케줄링 가능

worker node join 다시 하기 

1) kubeadm init 때 나온 join 주소를 가지고 있는 경우

    그걸 사용

2) kubeadm init 때 나온 join 주소를 까먹은 경우

(1) join 주소형 식 알아내기  

#kubeadm token create --print-join-command --dry-run

(2) 기존 사용중인 token 확인

#kubeadm token list 로 현재 사용중인 token 확인

(3) join 주소 다시 생성

    (1)에서 구한 명령어의 token 정보를  (2)에서구한 token 정보로 교체

    #kubeadm join 1.1.1.1:6443 --token djzaro.kmnpvt9nsj1m16wb --discovery-token-ca-cert-hash sha256:f10bab45b7b34a5f2d3108ddf9f36c051c69eb79aef75b538439b217fcd44003

k8s 삭제 

#kubeadm reset
#apt-get purge kubeadm kubectl kubelet kubernetes-cni
#apt-get autoremove
#rm -rf ~/.kube
#apt-mark unhold kubelet kubeadm kubectl

Pod의 오류 확인 

#kubectl describe pod {pod_name}

Last State 의 Reason을 확인

728x90
반응형