본문 바로가기
728x90

AWS Cloud School 8기/쿠버네티스9

ubuntu 24.04에 쿠버네티스 클러스터 설치(kubeadm 사용) 더보기sudo -i 1. 우분투 최신화 (모든 노드)apt update && sudo apt upgrade -y2. Swap 비활성화 (모든 노드)swapoff -ased -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab 3. 커널 파라미터 설정 (모든 노드)tee /etc/modules-load.d/containerd.conf tee /etc/sysctl.d/kubernetes.conf sysctl --system 4. Containerd 런타임 설치 (모든 노드)apt install -y curl gnupg2 software-properties-common apt-transport-https ca-certificates curl -fsSL https://download.d.. 2025. 4. 29.
[쿠버네티스] Node Selector/ taints & tolerations/ Node Affinity 🔍 Node Selector- 노드에 key:value 형태의 label을 붙여놓고 파드를 띄울 때 특정 라벨값을 정할 수 있음- 쿠버네티스 파드는 워커 노드가 3대가 있다면 파드는 그중 아무 노드에나 랜덤으로 배치됨❓이때, 이 파드는 반드시 워커1에만 배치가 됐으면 좋겠는데? 라든가❓GPU 있는 노드에만 이 파드를 띄우고 싶은데 라는 생각이 든다면 이때 NodeSelector를 사용함더보기- 노드 이름에 맞게 라벨 붙여주기 root@master:~# kubectl label nodes worker-1 gpu=false- 임의로 내가 만든 노드 값 key=value형태- gpu=false임의로 정한 값vi selector.yml - 아무 deployment를 복제후apiVersion: apps/v1ki.. 2025. 4. 25.
[쿠버네티스] prometheus 🎯 Prometheus란?- 시계처럼 일정 주기로 데이터를 수집해서 저장하고, 경고도 보내주는 모니터링 시스템- 쿠버네티스 클러스터 안에서 CPU, 메모리, 네트워크 사용량 같은 리소스 사용 상태를 계속 체크하고 그걸 시간별로 저장해 두고 이상이 생기면 알람도 보낼 수 있는 수집기 형태더보기https://artifacthub.io/packages/search?ts_query_web=pro&sort=relevance&page=1# 프로메테우스가 있는 레포 검색# 레포 추가실습 1) 릴리스를 통해 그라파나 - 프로메테우스를 구성하고 그라파나 대시보드에 접속해서 잘 되는지 확인.더보기 - Prometheus 설치하고, Grafana까지 설치하기, 그리고 Grafana 대시보드에 접속해서 Prometheus데.. 2025. 4. 23.
[쿠버네티스] 헬름(Helm) 🎯 Helm이란?- apt가 우분투 리눅스 패키지 관리자라며 helm은 쿠버네티스 매니페스트 패키지 관리자- 패키지(레포지토리) 매니저 역할을 하는 Helm- 쿠버네티스에서 애플리케이션을 쉽게 배포하고 관리할 수 있게 해주는 패키지 관리자임-> 마치 리눅스에서 apt, yum, brew로 패키지 설치하는 것처럼 helm로 복잡한 쿠버네티스 리소스를 할 번에 배포할 수 있음📦 Helm을 왜 사용하는가?- 쿠버네티스에서는 보통 yaml파일을 여러 개 만들고 실행했음deployment.ymlservice.ymlconfigmap.ymlingress.yml...- 이걸 다 Helm은 이런 걸 하나로 묶어서, 버전 관리, 템플릿화, 업데이트/ 삭제/ 롤백까지 가능- 헬름차트도 결국 매니페스트의 묶음을 잘 정의해.. 2025. 4. 23.
[쿠버네티스] 컨테이너의 헬스체크/ livenessProbe/ readinessProbe/ StatefulSet(리소스)/ DaemonSet(리소스) 📌 Probe란?- Pod안 컨테이너의 건강 상태를 체크라는 기능임 📌 livenessProbe-> 살아는 있니?- LivenessProbe가 실패 시 컨테이너를 재시작- 컨테이너가 죽었는지 살았는지 확인하는 기능- 실패하면 쿠버네티스가 그 컨테이너를 강제로 재시작함 📌 readinessProbe-> 지금 준비됐니?- 애플리케이션이 살아는 있지만, 아직 요청을 받을 준비가 안 된 경우를 알려주는 기능- 실패해고 정상 동작하는 것 처럼 보이지만 서비스에서 해당 파드로 트래픽을 인가하지 않음- 실패해도 컨테이너는 재시작 안 함, 대신 트래픽만 막음- 보통 서버가 시작 중, DB연결 대기 중, 캐시 초기화 중일 때 유용함 httpGet을 통한 probe더보기root@master:~/mani/dynamic.. 2025. 4. 17.
[쿠버네티스] PV(Persistent Volume)/ AccessMode/ StorageClass/ ConfigMap/ Secret ✅ PV (Persistent Volume)란?데이터 저장소를 영구적으로 관리하는 리소스pod가 죽거나 다시 시작돼도 데이터를 보존할 수 있게 해주는 디스크 공간을 제공함- 영구적인 볼륨- 물리적인 자원을 뜻함- 도커에서 -v 같은 옵션을 통해 컨테이너의 데이터를 영구적으로 호스트에 백업을 했던 적이 있음.- 왜냐하면 컨테이너가 삭제되면 내부의 데이터는 사라지기 때문임.- 컨테이너의 데이터는 영구적이지 않음✅ PV와 PVC의 관계쿠버네티스에서는 PV랑 PVC를 구분해서 사용함PV: 실제 디스크 공간을 나타내는 리소스, 클러스터의 관리자가 영구적 저장소PVC: 사용자가 요청하는 스토리지, pod가 필요한 저장소 크기와 사용 방법을 요청할 수 있음더보기- PV로 사용할 공간을 NFS로 미리 정의해놓자- ma.. 2025. 4. 16.
728x90