AOC55

Cloud, Devops, Backend, Kubernetes, Openstack, ...

Cloud/kubernetes (k8s) 9

k8s :: PodDisruptionBudget (PDB)과 Disruption (#2)

개인적으로 공부하는 관점에서 작성한 내용이라, 잘못된 부분이 있을 수 있습니다. 발견 시 말씀주시면 감사하겠습니다. 이전편: https://aoc55.tistory.com/77PodDisruptionBudget (PDB)PDB가 어떠한 상황에 필요한지 먼저 알아보았으니, 이제 PDB에 대해 좀더 알아보자.PodDisruptionBudget 선언 예시아래는 PDB를 선언하는 예시 YAML 파일이다.apiVersion: policy/v1kind: PodDisruptionBudgetmetadata: name: rabbitmq-disruption-budget namespace: openstackspec: maxUnavailable: 1 selector: matchLabels: app.kub..

k8s :: PodDisruptionBudget (PDB)과 Disruption (#1)

개인적으로 공부하는 관점에서 작성한 내용이라, 잘못된 부분이 있을 수 있습니다. 발견 시 말씀주시면 감사하겠습니다. kubernetes에서 v1.21 이후부터 제공되는 PodDisruptionBudget(이하 PDB) 에 대해 알아보도록 하자.사실 kubernetes 내에 제공하는 "PDB" 라는 '기능'에 대해 단순히 알아보려다가, 이게 "왜 필요한지?"부터 쫓아가다보니 깊게 생각해야 하는 요소들이 많아서 아래와 학습한 내용 등을 정리한다.Disruption (중단)과 대응 그리고 PDB우선 쉽게 말하면 PDB는, kuberntes 위에서 동작되는 워크로드들에 대해 가용성(HA) 을 보장하기 위해 제공하는 기능이라고 이해하면 된다. (물론 이 한줄로만은 이해가 쉽지 않다.)그리고 PDB를 이해하려면,..

k8s :: k8s Security - 10 Best Practices

아래 Youtube 영상을 보고 개인적으로 정리한 내용입니다. https://youtu.be/oBf5lrmquYI?si=Ltcd7YUFGa0nYNY1kubernetes의 워크로드를 올리는 관점 외, Cluster의 Security 관점에서 아래와 같이 10가지 주제를 간단히 소개하고 있습니다.Intro (Cloud 와 Security) 대부분의 워크로드들이 "Cloud"로 이동하는 트렌드 속에서, 빈번하게 발생하는 오해 중 하나가 "기본적으로 Cloud는 안전하다고 생각하는 점"이다. 이는 "오해"이며, 워크로드가 비록 "Cloud"위 에 있다고 해도 Security 는 기존의 On-Premise와 동일한 수준으로 유지해야 한다.Security는 Multiple Protection Mechansim x..

k8s :: kata container (v3) 설치 해보기 with k8s - #2

#2 :: kubernetes 와 kata 연동하기이전 편에서 kata runtime과 containerd 를 설치해서 직접 kata 기반의 Container를 만들어 보았고, 이제 kubernetes 레벨에서 kata 기반의 Pod를 만들어본다.이전편 >> https://aoc55.tistory.com/722-0 :: 목표 및 실습 환경목표앞에서까지, containerd 를 통해서 kata를 기반 Container 직접 생성했다면,이제는 한단계 더 나아가 Container Orchestrator 인 kubernetes 를 통해서 kata 기반의 Pod 생성하기 목표.구조kubernetes의 Control Plane을 통해서 => Pod 생성 요청이후 스케줄러의 Pod가 생성될 Worker Node가 선..

k8s :: kata container (v3) 설치 해보기 with k8s - #1

#1. kata v3 + QEMU 기반으로 직접 설치해보기 순수 Ubuntu 만 설치되어 있는 Host 환경에서, 직접 v3 기반의 kata container 와 containerd 설치를 통해 Micro VM 기반의 Container를 직접 생성해본다.1-0 :: 목표 및 실습 환경목표kata runtime 3.0을 "Host"에 직접 설치하기그리고 MicroVM을 생성하기 위해 VMM으로 QEMU 사용(연동)하기(즉, 이번 실습에서, kata v3의 가장 큰 특징 중 하나인 Dragonball 을 사용하지 않고 기존 QEMU 기반으로 실습)설치 방식현재('25.08) 아래 링크를 보면, rust 기반인 3.x 설치의 경우 Source를 통해 직접 설치만 가능하다.kata-containers/docs..

IT서적후기 :: 쿠버네티스 오퍼레이터

후기CKA 취득 등을 통해 kubernetes에 입문한 이후, 잠시 다른 개발 업무에 전념하다가.... kubernetes 에 대해 업무상에서 좀 더 deep dive 해야되서 보게 된 책이다.읽는 시점에는 golang 에 대해 경험이 없다보니, 책 내 Operator SDK 내 실습 소스 구조 등을 정확히 이해하지는 못했지만, 그래도 Operator가 어떤 역할을 하는지, 목적이 무엇인지, 어떻게 구현하는지 등에 대해 어느정도 이해할 수 있었던 책 인 것 같다.   주요 내용Operatorkubernetes 추상화 및 확장을 통해, 특정 상태가 있는 애플리케이션의 전체 라이프사이클 관리를 자동화kubernetes Application 에 대해 패키징과 실행 및 유지 관리하는 수단클러스터에 소프트웨어를 ..

쿠버네티스 :: GCP(VM)에 kubernetes Cluster 직접 구축하기 - 3 (23.01 수정)

목표 구글에서 제공하는 GKE를 활용하는 것이 아니라, GCP의 Compute Engine을 통해서 VM을 생성한 뒤 Master Node, Worker Node를 직접 생성한 뒤, Docker Engine 설치 및 Kubeadm을 통해 Kubernetes Cluster를 직접 구현해보겠습니다. 이전편 보기 https://aoc55.tistory.com/53?category=979845 이번편 주요내용 kubeadm, kubelet, kubectl 설치하기 쿠버네티스 클러스터 구축하기 네트워킹을 위한 CNI 설치하기 샘플용 POD 실행시켜보기 kubeadm, kubelet, kubectl 설치하기 (중요) 아래 작업은 VM 4개 모두 공통으로 각각 진행해줍니다. 이제 kubernetes 클러스터 설치를 ..

쿠버네티스 :: GCP(VM)에 kubernetes Cluster 직접 구축하기 - 2 (23.01 수정)

목표 구글에서 제공하는 GKE를 활용하는 것이 아니라, GCP의 Compute Engine을 통해서 VM을 생성한 뒤 Master Node, Worker Node를 직접 생성한 뒤, Docker Engine 설치 및 Kubeadm을 통해 Kubernetes Cluster를 직접 구현해보겠습니다. 이전편 보기 https://aoc55.tistory.com/51 이번편 주요내용 도커 런타임 설치 도커 cgroup driver 설정 방화벽 및 네트워크 설정 작업준비 앞편에서 작업했던 VM 4개(master 1, worker3)에 대해 모두 앞편의 설정했던 대로 SSH 로 로그인 합니다. 본인은 작업하기 편하게 아래와 같이 터미널 창을 띄어 놓고 했습니다. 반복되는 명령어가 많아서 창을 동시에 띄어놓고 복붙으로..

쿠버네티스 :: GCP(VM)에 kubernetes Cluster 직접 구축하기 - 1

Why (잡담)? kubernetes를 업무에 사용하게 되면서 공부용으로 나만의 클러스터가 필요하게 되었는데 지금 가지고 있는 노트북은 VM을 3개이상 띄울경우 힘들어하고, Docker Desktop에 있는 k8s이나 minikube 같은 경우 node가 1개뿐이라 실질적인 클러스터 환경으로 진행하기 어려웠습니다. 그래서 클라우드 서비스를 이용하기로 했고, GKE 같은 경우 이미 다 구축되어 있는 상태에서 제공해주는 서비스이기에 공부용이라는 목표랑은 안어울려서 (그리고 비쌉...) 결국 직접 GCP에 VM을 찍고 클러스터를 구축하게 되었습니다. 목표 구글에서 제공하는 GKE를 활용하는 것이 아니라, GCP의 Compute Engine을 통해서 VM을 직접 생성한 뒤 Master Node, Worker N..