본문 바로가기
  • 오늘처럼

소프트웨어 아키텍처/Kubernetes34

[Kubernetes] 1-20. 클러스터 업그레이드 및 클러스터 조인 클러스터에 속해 있지 않는 노드(worker2번이라고 가정) 의 버전을 확인하고 해당 노드를 클러스터에 join 해본다 먼저 현재 클러스터의 상태를 확인한다. kubectl get node NAME STATUS ROLES AGE VERSION master1 Ready control-plane,master 116m v1.23.1 worker1 NotReady 112m v1.23.1 현재 master, worker1 번 노드의 kubernetes 버전이 v1.23.1 이고, 아직 worker2 번 노드가 join 되지 않은 것을 확인한 후에 worker2번으로 이동한다. ### 해당 노드로 이동 ssh cluster3-worker2 ### kubernetes (kubeadm / kubectl / kubele.. 2022. 5. 11.
[Kubernetes] 1-19. Secret 생성 후 파드에 마운트 하기 Secret 을 생성하고 해당 Secret을 사용하는 파드를 생성한 후에 파드에서 secret 정보를 확인한다. 상세 조건은 다음과 같다. Secret name : secret1 Secret name : secret2 하단의 특정 값을 환경변수로 지정 user=user1 pass=1234 Pod name : secret-pod secret1 사용 : Readonly 모드로 /tmp/secret1 경로에 마운트 secret2 사용 : APP_USER (user=user1 사용), APP_PASS (pass=1234 사용) 먼저 test-namespace를 생성한다. kubectl create ns test-namespace yaml 파일을 통해 1번째 Secret 을 생성한다. apiVersion: v1 .. 2022. 5. 10.
[Kubernetes] 1-18. Kubelet 수정하기 특정 노드의 kubelet이 정상적으로 동작하지 않는 경우에 대하여 원인을 분석하고 수정하여 노드가 정상(Ready status)상태가 되도록 조치한다. 먼저 Node의 상태를 확인한다. kubectl get node NAME STATUS ROLES AGE VERSION master1 Ready master 27h v1.23.1 worker1 NotReady 26h v1.23.1 문제가 발생하여 노드의 상태가 NotReady 로 되어 있는 노드에 접속하여 kubelet 프로세스를 확인한다. ssh worker1 root@worker1:~# ps aux | grep kubelet root 29294 0.0 0.2 14856 1016 pts/0 S+ 11:30 0:00 grep --color=auto kub.. 2022. 5. 10.
[Kubernetes] 1-17. 파드의 컨테이너 정보 확인하기 다음의 정보를 갖는 파드를 생성한 뒤에 해당 파드가 어느 노드에 구동되었는지 확인하고, 해당 노드에서 crictl 명령어를 사용하여 파드의 정보를 확인한다. name : test-pod namespace : test-namespace image : httpd:2.4.41-alpine lable : pod=container container=pod 먼저 파드를 생성한다. kubectl run -n test-namespace test-pod --image=nginx:1.18.0 --labels 'pod=container,container=pod' 다음의 명령어 중 하나를 사용하여 노드가 구동된 파드를 확인한다. ### 방법 1 root@master:~/# kubectl get po -n test-namesp.. 2022. 5. 10.
[Kubernetes] 1-16. 네임스페이스와 API 리소스 확인하기 별도의 네임스페이스를 생성한 후에 해당 네임스페이스에 속하는 API 리소스를 확인한다. kubectl create ns test-namespace 다음으로 하단의 명령어를 사용하여 네임스페이스 하위의 리소스를 확인한다. kubectl api-resources --namespaced -o name bindings configmaps endpoints events limitranges persistentvolumeclaims pods podtemplates replicationcontrollers resourcequotas secrets serviceaccounts services controllerrevisions.apps daemonsets.apps deployments.apps replicasets.a.. 2022. 5. 10.
[Kubernetes] 1-15. 클러스터 이벤트 확인하기 이번에는 클러스터의 이벤트를 확인해본다. 추가로 특정 파드와 파드 안의 컨테이너를 kill 명령어로 제거하여 어떤 이벤트가 발생하는지를 확인한다. 먼저 클러스터의 모든 네임스페이스의 이벤트를 아래 명령어로 확인한다. kubectl get events -A --sort-by=.metadata.creationTimestamp 그 다음 kubectl delete 명령어로 특정 kube-proxy를 kill 한 후에 이벤트를 확인한다. ### 파드 삭제 kubectl delete po -n kube-system kube-proxy-xsfnt ### 파드 삭제에 대한 이벤트 확인 kubectl get events -A --sort-by=.metadata.creationTimestamp kube-system 1s .. 2022. 5. 6.