Study 12

[Cilium Study] 5주차 - BGP와 ClusterMesh로 클러스터 경계 넘기

지난 4주차 스터디에서는 Cilium의 LB-IPAM과 L2 Announcement 기능을 통해 온프레미스 환경에서도 LoadBalancer 타입의 서비스를 외부에 노출하는 방법을 알아보았습니다. L2 통신을 통해 외부 트래픽을 클러스터로 인입시키는 편리한 방법이었죠. 하지만 L2 통신은 동일 네트워크 대역이라는 한계를 가집니다. 만약 우리 클러스터가 여러 네트워크 대역에 걸쳐 있거나, 외부 라우터와 더 지능적으로 경로를 교환해야 한다면 어떻게 해야 할까요?이번 포스팅에서는 L3 라우팅 프로토콜의 표준인 BGP(Border Gateway Protocol) 를 Cilium과 연동하여 동적으로 라우팅 정보를 교환하는 방법을 알아보고, 한 걸음 더 나아가 여러 쿠버네티스 클러스터를 하나의 거대한 클러스터처럼 ..

Study/CS 2025.08.17

[Cilium Study] 4주차 - Service와 LoadBalancer로 세상과 소통하기

지난 3주차 스터디에서는 IPAM, 라우팅, 마스커레이딩 등 파드 간 통신을 가능하게 하는 쿠버네티스 네트워킹의 내부 동작 원리를 깊이 있게 살펴보았습니다. 이제 클러스터라는 우리만의 세상 안에서 통신하는 법을 익혔으니, 드디어 클러스터 외부의 사용자들이 우리 애플리케이션을 만날 수 있도록 문을 열어줄 시간입니다.이번 포스팅에서는 쿠버네티스에서 외부 트래픽을 처리하는 핵심 관문인 Service의 동작 원리를 알아보고, Cilium이 제공하는 강력한 LoadBalancer 기능을 통해 온프레미스 환경에서도 클라우드처럼 서비스를 외부에 노출하는 방법을 자세히 다뤄보겠습니다.1. 쿠버네티스 Service 다시 보기: 왜 필요할까?쿠버네티스에서 파드는 언제든지 사라지고 다시 생성될 수 있는 '임시적인' 존재입니..

Study/CS 2025.08.09

[Cilium Study] 3주차 - 쿠버네티스 네트워킹 심층 분석

지난 스터디에서는 Hubble과 Grafana를 통해 클러스터의 네트워크 흐름과 시스템 상태를 관찰하는 방법을 알아보았습니다. 이제는 한 걸음 더 나아가, 그 내부에서 실제로 어떤 일들이 벌어지고 있는지 심층적으로 파헤쳐 볼 시간입니다. "파드들은 어떻게 IP 주소를 할당받을까?", "다른 노드에 있는 파드와는 어떻게 통신할까?", "클러스터 외부로는 어떻게 나갈까?"와 같은 근본적인 질문들에 답을 찾아보겠습니다.이번 포스팅에서는 Cilium이 쿠버네티스 네트워킹의 핵심 요소들을 어떻게 처리하는지, 그 세부 동작 원리를 중심으로 정리해 보겠습니다.1. IPAM: 파드에게 IP 주소를 나눠주는 방법IPAM(IP Address Management)은 새로 생성되는 파드에 IP 주소를 할당하고 관리하는 중요한..

Study/CS 2025.08.02

[Cilium Study] 2주차 - 2. Prometheus와 Grafana로 시스템 모니터링

[Cilium Study] 2주차 - 1. Cilium Hubble을 통한 네트워크 관측지난 1주 차 포스팅에서는 Cilium과 eBPF의 기본 개념을 맛보고, 복잡한 iptables의 세계에서 벗어날 수 있다는 희망을 보았습니다. 하지만 CNI를 설치하고 클러스터가 잘 동작한다고 해서 모든 것을tech-recipe.tistory.com 이전 Hubble 포스팅에서는 네트워크 흐름을 실시간으로 관찰하는 방법에 대해 알아보았습니다. 하지만 시스템의 상태를 지속적으로 추적하고 잠재적인 문제를 감지하기 위해서는 수치화된 데이터를 수집하고 분석하는 과정이 필수적입니다. 이것이 바로 모니터링(Monitoring) 의 영역입니다. 이번 포스팅에서는 Cilium 환경에서 모니터링 시스템의 표준으로 자리 잡은 Prom..

Study/CS 2025.07.27

[Cilium Study] 2주차 - 1. Cilium Hubble을 통한 네트워크 관측

지난 포스팅에서는 Cilium과 eBPF의 기본 개념에 대해 다루었습니다. CNI가 정상적으로 배포되어 클러스터가 동작하더라도, 파드 간의 네트워크 흐름이나 적용된 정책을 직관적으로 파악하기는 어렵습니다. 이러한 내부 동작을 시각적으로 확인하고 분석하기 위해서는 별도의 관측 도구가 필요합니다. Cilium 환경에서 이 역할을 수행하는 것이 바로 Hubble(허블) 입니다. Hubble은 Cilium에 특화된 관측 가능성(Observability) 플랫폼으로, 이번 포스팅에서는 Hubble을 설치하고 활용하여 쿠버네티스 네트워크를 관찰하는 방법에 대해 알아보겠습니다.1. Hubble 소개 Hubble은 Cilium과 eBPF를 기반으로 구축된 분산 네트워킹 및 보안 관측 플랫폼입니다. eBPF를 직접 활용..

Study/CS 2025.07.27

[Cilium Study] 1주차 - 3. iptables의 한계와 돌파구, eBPF와 Cilium

[Cilium Study] 1 주 차 - 2. CNI와 Kubernetes 네트워킹에서 이어집니다. [Cilium Study] 1주차 - 2. CNI와 Kubernetes 네트워킹이전 포스팅 [Ciliu Study] 1주 차 - 1. 실습 환경 구성에서 이어집니다. [Cilium Study] 1주차 - 1. 실습 환경 구성'가시다'님의 [Cilium Study] 1기의 내용을 정리하는 시리즈 구성의 포스팅을 시작하려고 합니tech-recipe.tistory.comiptables의 복잡한 작동 방식 지난 포스팅 말미에 'webpod' Service의 ClusterIP에 대한 라우팅 규칙에 대해서 잠깐 살펴보았습니다. 그 내용을 다시 복기해보면 다음과 같습니다.# webpod svc의 clsuter ip에 ..

Study/CS 2025.07.27

[Cilium Study] 1주차 - 2. CNI와 Kubernetes 네트워킹

이전 포스팅 [Ciliu Study] 1주 차 - 1. 실습 환경 구성에서 이어집니다. [Cilium Study] 1주차 - 1. 실습 환경 구성'가시다'님의 [Cilium Study] 1기의 내용을 정리하는 시리즈 구성의 포스팅을 시작하려고 합니다. 이번 스터디를 통해 Kubernetes의 Network에 대해 깊이 이해할 수 있기를 희망합니다. 본 포스팅은 [Ciliumtech-recipe.tistory.com 실습 환경인 VirtualBox와 Vagrant에 대해서는 어느 정도 파악이 완료되었습니다. 이제 본격적으로 CNI와 Kubernetes 네트워킹에 대해서 이해해 보는 시간을 가져보겠습니다.Kubernetes network model의 핵심 원칙 Services, Load Balancing, ..

Study/CS 2025.07.21

[Cilium Study] 1주차 - 1. 실습 환경 구성

'가시다'님의 [Cilium Study] 1기의 내용을 정리하는 시리즈 구성의 포스팅을 시작하려고 합니다. 이번 스터디를 통해 Kubernetes의 Network에 대해 깊이 이해할 수 있기를 희망합니다. 본 포스팅은 [Cilium Study 1기]의 1주 차 내용으로 실습 환경을 구성하는 방법부터 소개합니다.VirtualBox와 Vagrant를 활용한 가상 머신 구성 이번 [Cilium Study]를 시작하면서 평소 막연하게 생각해왔던 VirtualBox와 Vagrant를 체험해 볼 수 있게 되었습니다. 원래 VMware의 제품군에 많이 익숙해서 VMware Workstation Pro나 VMware vSphere를 자주 사용했었고, 소규모 환경은 주로 Manual 하게 구성하는 경우가 많아서 Vagr..

Study/CS 2025.07.19

Bootable container, 그리고 bootc

부팅 가능한 컨테이너와의 첫 만남 한 달 정도 전, 오픈 인프라 커뮤니티 코리아의 오프라인 세미나에서 bootc를 접하게 되었습니다. 사실 처음에 들었을 때는 이게 대체 뭘 하는 건지 감이 잘 오질 않았습니다. 분명 제가 알고 있는 전통적인 관점에서는 가상머신의 단점을 해결하고자 컨테이너가 등장했다고 했는데... 근데 다시 그 컨테이너를 부팅한다고요? 아니 왜? 위 그림에서도 볼 수 있듯, 가상머신과 컨테이너는 아예 개념 자체가 다릅니다. 가상 머신은 하이퍼바이저 위에서 개별적인 커널로 구동되는 독립적인 시스템이고, 컨테이너는 OS위의 프로세스일 뿐이므로(물론 독립적인 특징이 있긴 하지만) 부팅이라는 개념이 없습니다. 컨테이너를 띄운다는 것은 OS 입장에서는 단지 프로세스를 실행하는 것뿐이죠. 그런데 '..

Study/CS 2025.04.16

CKAD 취득 후기

얼마 전 CKAD를 취득하게 되었습니다. 작년에 취득했던 CKA에 이어서 벌써 Kubernetes 자격증도 2개가 되었군요. CKAD 자격시험 준비 과정과 시험 내용에 대해서 간단히 포스팅해보고자 합니다.  우선 CKAD란 Certified Kubernetes Application Developer의 줄임말로 이름에서도 알 수 있듯 개발자 입장에서 Kubernetes를 다루는 능력을 평가하는 시험입니다. 시험 내에서 실제로 애플리케이션을 개발하는 것은 아니지만, 그래도 CKA에 비해서 조금 더 개발자적인 부분을 다룹니다.  시험 준비는 역시나 CKA 취득때와 마찬가지로 우리 뭄형(영상으로 자주 보다 보니 내적 친밀감이...)의 Udemy 강의[링크]를 기본으로 하였습니다. 내용은 CKA와 많이 비슷합니다..

Study/Certification 2025.01.28