본문 바로가기

전체 글108

[K8s] Liveness Probes 란? ✍ Posted by Immersive Builder  Seong Liveness Probes쿠블릿(kubelet)은 컨테이너를 언제 재시작할지 알기 위해 Liveness Probes를 사용합니다. Liveness Probes는 쿠버네티스에서 컨테이너가 정상적으로 실행 중인지를 확인하는 메커니즘입니다. 예를 들어 컨테이너는 살아 있지만 어플리케이션이 정상 동작하지 않는 상황을 가정해봅시다. 코드의 버그로 인해 어플리케이션이 무한루프에 빠진 상황이라면 어떨까요? 기본적으로 쿠버네티스는 컨테이너가 실행 중이면 어플리케이션이 실행 중인 것으로 간주합니다. 따라서 우리는 사용자가 서비스를 제공받을 수 있도록 새로운 컨테이너를 재시작할 필요가 있습니다. 이 때, 컨테이너를 재시작하기 위해 정의한 내용이 바로 Li.. 2024. 11. 24.
[K8s] Readiness Probes 란? ✍ Posted by Immersive Builder  Seong Pod LifecyclePOD StatusPod Status는 파드가 라이프사이클의 어느 단계에 있는지를 나타냅니다.  파드가 처음 생성될 때 Pending 상태가 되는데, 스케줄러가 파드를 어느 노드에 배치할 것인지 알아내는 단계입니다. 만약 스케줄러가 적절한 노드를 찾지 못하면 Pending 상태가 유지됩니다. 이후 파드가 스케줄링되면 ContainerCreating 상태로 변경이 되고, 어플리케이션에 필요한 이미지를 가져와 컨테이너를 실행하게 됩니다. 그리고 파드의 모든 컨테이너가 시작되면 Running 상태가 되어, 프로그램이 성공적으로 완료되거나 종료될 때까지 해당 상태를 유지합니다. 마지막으로 Succeeded 상태는 파드의 모.. 2024. 11. 23.
[LINUX] Ubuntu 부팅 에러 해결하기 ✍ Posted by Immersive Builder  Seong Ubuntu 부팅 에러 해결하기 VM에 파일 시스템 에러가 발생한 경우 initramfs 모드로 진입합니다. initramfs는 리눅스 커널이 부팅 과정에서 사용하는 임시 파일 시스템으로 루트 파일 시스템을 마운트하기 전에 초기화 작업을 수행합니다. 따라서 부팅 과정에서 에러가 발생한 경우 initramfs 모드로 진입하여 프롬프트 기반의 복구 작업을 진행할 수 있습니다.  파일 시스템 체크 먼저 파일 시스템을 체크하고 재부팅을 진행합니다. 파일 시스템의 대상 경로는  exit  명령어를 통해 확인할 수 있습니다.  1. 파일 시스템 체크  (initramfs) exit'''/dev/mapper/ubuntu--vg-ubuntu--lv  2.. 2024. 11. 22.
[K8s] 쿠버네티스 클러스터 재시작 오류 해결하기 ✍ Posted by Immersive Builder  Seong 쿠버네티스 클러스터 재시작 오류 해결하기오늘의 주제는 쿠버네티스 트러블슈팅입니다.  로컬 환경에서 쿠버네티스 클러스터를 재시작할 때 종종 오류가 발생하는 경우가 있습니다. 오류가 발생하는 원인은 여러가지일 수 있지만 몇 가지 해결한 방법을 소개하고자 합니다.  방법 1. 노드 재시작 순서 클러스터 재시작 시 아래의 순서에 따라 진행합니다.  종료 : Worker Node → Control Plane 순으로 종료합니다. 시작 : Control Plane → Worker Node 순으로 시작합니다.  방법 2. 스왑 메모리(Swap) 비활성화kubelet은 스왑 메모리까지 고려하여 리소스를 할당하지 않습니다. 스왑 메모리가 활성화되어 있으면 .. 2024. 11. 21.
[LINUX] WSL DNS 설정 변경하기 ✍ Posted by Immersive Builder  Seong WSL DNS 설정 변경 방법 WSL 설치 시 자동으로 설정되는 기본 DNS 서버 주소를 변경하는 방법입니다.외부 도메인에 대한 DNS 조회가 동작하지 않는 경우 네임서버를 변경/추가할 필요가 있습니다.  DNS 조회 에러  $ terraform initInitializing the backend...Initializing modules...╷│ Error: Error accessing remote module registry│ │ on main.tf line 61:│ 61: module "eks" {│ │ Failed to retrieve available versions for module "eks" (main.t.. 2024. 11. 20.
[K8s] 소프트웨어 배포 전략(Software Deployment Strategies) ✍ Posted by Immersive Builder  Seong 배포 전략배포란 새로운 버전의 어플리케이션을 운영 환경에 릴리스하는 것을 의미합니다. 최근에는 마이크로 서비스 아키텍처를 기반으로 작은 단위의 서비스로 분리하면서 배포가 이전보다 짧은 주기로 빈번하게 이루어지고 있습니다. 이에 따라 기존 버전과 호환성을 유지하면서 서비스 중단 없이 새로운 버전을 배포하기 위한 여러가지 배포 전략들이 고안되었습니다.  현재 사용하는 다양한 배포 전략은 아래와 같습니다.  재생성(Recreate)인플레이스 배포(In-place Deployment)롤링 업데이트(Rolling Update)블루/그린 배포(Blue/Green Deployment)카나리 배포(Canary Deployment)A/B 테스팅(A/B T.. 2024. 11. 19.