쿠버네티스7 multipass를 이용하여 로컬 환경에 쿠버네티스 클러스터 구축하기 쿠버네티스를 처음 접하는 경우 로컬 환경에 kubernetes 클러스터를 구축하는 것은 다소 복잡하고 어려울 수 있다.이번 포스팅에서는 multipass 도구를 활용하여 간편하게 로컬 환경에 쿠버네티스 클러스터를 구축하는 방법을 소개하고자 한다. multipass는 경량의 VM 관리 도구로 간단한 명령어 몇 가지로 다양한 VM을 쉽게 생성하고 관리할 수 있다. 이를 통해 쿠버네티스 클러스터를 로컬 환경에서 쉽고 빠르게 설정할 수 있다. multipass 사용법 알아보기multipass를 활용하기 때문에 multipass 사용법에 대해서 알아야 한다.아래 포스팅을 참고하기 바란다.2024.07.02 - [ETC] - Multipass 사용법: 간편하게 가상 머신 관리하기 --cloud-init 옵션에 적용.. 쿠버네티스 2024. 7. 4. macOS (silicon) minikube 설치하기 처음 kubernetes 를 접했을 때 어려운 부분은 실습 환경을 구성하는 일이다. minikube 는 로컬환경에서 kubernetes 를 실습할 수 있는 단일 클러스터 환경을 구성할 수 있는 도구입니다. 이번 포스팅에서는 macOS (silicon) 환경에서 minikube 를 설치하는 방법에 대해서 기록합니다. 사전조건 최소 2 CPU 최소 2GB 메모리 최소 20GB 디스크 공간 인터넷 환경 Docker, QEMU, KVM, VirtualBox, VMWare 와 같은 컨테이너 혹은 가상머신 관리 도구 homebrew 포스팅 작성 시점의 kubernetes 최신 버전은 1.28.0 입니다. 설치 minikube 설치 방법에는 설치 패키지를 다운로드 하여 설치하는 방식과 homebrew 를 통해서 설치.. 쿠버네티스 2023. 8. 24. macOS (apple silicon) 에 kubectl 설치하기 kubectl 은 kubernetes API 를 사용하여 kubernetes 클러스터의 control plane 과 통신을 지원하기 위한 CLI (명령줄도구) 입니다. kubernetes 를 사용하기 위해서는 kubectl 명령어 사용법을 익히는 것도 중요한 부분입니다. 이번 포스팅에서는 macOS 에 kubectl 을 설치하는 방법에 대해서 기술합니다. 참고로 포스팅을 작성하는 시점 kubernetes 최신 버전은 1.28.0 입니다. kubectl 버전 kubectl 은 kubernetes API 를 통해서 상호 작용하기 때문에 kubernetes 의 버전과 연관이 있습니다. 기본적으로 kubernetes cluster 의 마이너 버전 차이가 1 이내에 kubectl 버전을 사용해야 합니다. 예를 들.. 쿠버네티스 2023. 8. 24. 쿠버네티스 pod graceful shutdown pod 내의 container를 종료 시 남아있는 처리를 모두 완료 후에 종료하는 처리가 있다. 물론 application 내에서 종료시 남아있는 처리를 프로그래밍으로 처리할 수도 있겠지만 pod 정의 명세서 상에서 lifecycle.preStop을 활용하여 gracefully shutdown을 구현할 수 있다. 쿠버네티스의 pod 가 종료될 시 kubelet 에서 SIGTERM 시그널을 container application에 전송한다. 참고링크 https://learnk8s.io/graceful-shutdown https://blog.gruntwork.io/gracefully-shutting-down-pods-in-a-kubernetes-cluster-328aecec90d application을 개발.. 쿠버네티스 2023. 8. 6. port forward 명령으로 로컬에서 pod 접속하기 쿠버네티스 클러스터가 구축된 격리된 환경에서 클러스터 내부의 service 혹은 pod 에 직접 접속할 수 있는 간단한 방법으로 port forward 이 있다. 사용법은 아래와 같다. kubectl port-forward service/ : kubectl port-forward pods/ : 위 명령은 로 지정된 port 를 통해 쿠버네티스의 service 에서 사용하고 있는 로 포워딩을 해준다. 혹은 로 지정된 port 를 통해 쿠버네티스의 pod 에서 사용하고 있는 로 포워딩을 해준다. ex) kubectl port-forward service/redis-demo-service 8080:8080 Forwarding from 127.0.0.1:8080 -> 8080 Forwarding from [::.. 쿠버네티스 2023. 8. 4. Release 상태의 PV 를 Available 상태로 변경하기 helm 으로 설치된 경우 동적 프로비저닝을 통해 PV/PVC 가 동적으로 사용되었을 경우 helm 으로 uninstall 을 하게 되면 사용되었던 PV 자원의 상태는 release 상태가 된다. 이 경우 PV는 이전에 매핑된 PVC 의 ref 요소가 남아 있어 다음에 다시 helm 으로 설치하게 되면 이전에 사용했던 PV 를 다시 사용하는 것이 아니라 새로운 PV 를 생성하여 사용하게 된다. 이전에 사용했던 PV 는 그대로 release 상태로 남아 있게 된다. 이 경우 helm 삭제시 삭제 후 PV 의 spec.claimRef 를 null 로 지정하게 되면 다음에 다시 helm 으로 설치하는 경우 이전에 사용했던 PV 를 다시 사용할 수 있다. kubectl patch pv --patch '{"spe.. 쿠버네티스 2023. 7. 30. deployment 로 배포된 pod 이름만 추출하기 kubectl get pods -n -l app= \ --no-headers -o custom-column=":metadata.name" example> kubectl get pods -n test-namespace \ -l app=test-deployment --no-headers -o custom-columns=":metadata.name" 쿠버네티스 2023. 7. 30. 이전 1 다음 💲 추천 글