cilium 9

[Cilium] L2 Announcements

Cloudnet Cilium 4주차 스터디를 진행하며 정리한 글입니다. 이번 포스팅에서는 Cilium Layer 2 Announcement를 활용한 LoadBalancer External IP 외부 노출에 대해 알아보겠습니다.Cilium Layer 2 Announcement using ARPKubernetes 환경에서 LoadBalancer 타입 서비스의 External IP를 외부 네트워크에서 접근하려면, 일반적으로 BGP 광고를 사용하거나 클라우드 로드밸런서가 필요합니다. 하지만 온프레미스나 사무실·캠퍼스 네트워크처럼 BGP 라우팅이 없는 환경에서는 이 방식이 불가능합니다.Cilium은 이를 해결하기 위해 Layer 2 Announcement 기능을 제공합니다.이 기능을 사용하면 External IP..

스터디/Cilium 2025.08.10

[Cilium] Service LB-IPAM

Cloudnet Cilium 4주차 스터디를 진행하며 정리한 글입니다.이번 포스팅에서는 Cilium LB-IPAM 기능을 활용하여 Kubernetes 서비스에 External IP를 자동 할당하는 방법을 실습합니다. LB-IPAMLB-IPAM은 Cilium이 LoadBalancer 타입 서비스에 IP 주소를 직접 할당해주는 기능입니다.LoadBalancer IPAM은 LoadBalancer 서비스에 할당할 External IP 풀을 정의하고, 서비스에 자동으로 부여하는 역할을 합니다.BGP Control Plane과 연동하면 할당된 IP를 BGP를 통해 외부 라우터에 광고할 수 있습니다.L2 Announcements / L2 Aware LB를 사용하면 L2 브로드캐스트 방식으로 IP를 광고하여 같은 L2..

스터디/Cilium 2025.08.10

[Cilium] Overlay Network (Encapsulation) mode

Cloudnet Cilium 4주차 스터디를 진행하며 정리한 글입니다. 이번 포스팅에서는 Cilium Overlay Network(Encapsulation) Mode 환경 구성을 실습하고, VXLAN 기반 터널링을 통한 노드 간 Pod 통신 동작 방식을 확인해보겠습니다. 커널 모듈 준비Native Routing Mode와 달리 Overlay Mode에서는 모든 노드 간 Pod 통신이 캡슐화되어 전송됩니다.VXLAN을 사용하기 위해 필요한 커널 옵션을 확인합니다.# [커널 구성 옵션] Requirements for Tunneling and Routingroot@k8s-ctr:~# grep -E 'CONFIG_VXLAN=y|CONFIG_VXLAN=m|CONFIG_GENEVE=y|CONFIG_GENEVE=m|..

스터디/Cilium 2025.08.10

[Cilium] Native Routing Mode

Cloudnet Cilium 4주차 스터디를 진행하며 정리한 글입니다. 이번 포스팅에서는 Cilium Native Routing Mode 환경에서 Pod 간 통신 장애를 진단하고, 이를 해결하는 방법을 알아보겠습니다. 실습 환경 소개실습을 진행할 환경은 다음과 같습니다.기본 배포 가상 머신 : k8s-ctr, k8s-w1, k8s-w0, routerrouter : 192.168.10.0/24 ↔ 192.168.20.0/24 대역 라우팅 역할, k8s 에 join 되지 않은 서버, loop1/loop2 dump 인터페이스 배치k8s-w0 : k8s-ctr/w1 노드와 다른 네트워크 대역에 배치 샘플 어플리케이션 배포 Native Routing 모드에서는 Cilium이 Pod CIDR 경로를 직접 라우팅하..

스터디/Cilium 2025.08.10

[Cilium] CoreDNS, NodeLocal DNSCache, Cilium Local Redirect Policy

Cloudnet Cilium 3주차 스터디를 진행하며 정리한 글입니다. CoreDNS CoreDNS는 Kubernetes의 기본 DNS 서비스로, 클러스터 내부에서 도메인 이름을 IP 주소로 변환(DNS resolving)하는 역할을 합니다.kube-dns라는 이름의 Service (ClusterIP) 로 노출되어, 파드들은 /etc/resolv.conf에 설정된 주소(10.96.0.10 등)를 통해 DNS 질의 수행합니다. root@k8s-ctr:~# kubectl describe cm -n kube-system coredns...Corefile:----.:53 { # 모든 도메인 요청을 53포트에서 수신 errors # DNS 응답 중 에러가 발생할 경우..

스터디/Cilium 2025.08.03

[Cilium] eBPF 기반 NAT Masquerading 동작 및 ip-masq-agent를 통한 SNAT 제외 확인하기

Cloudnet Cilium 3주차 스터디를 진행하며 정리한 글입니다.이번 포스팅에서는 Cilium이 제공하는 Masquerading 기능에 대해 살펴보고, eBPF 기반 vs iptables 기반의 차이, 그리고 이를 실습으로 어떻게 확인할 수 있는지를 정리합니다. MasqueradingKubernetes Pod에 할당되는 IP는 일반적으로 사설 IP 주소입니다. 이들은 공용 인터넷이나 사내 외부 네트워크에서 직접 라우팅이 불가능하므로, 외부로 나가는 패킷의 소스 IP를 변경(Masquerade)해야 합니다.Cilium은 클러스터 외부로 나가는 트래픽의 경우, Pod의 IP를 노드의 IP로 자동 변환(Masquerade) 하여 라우팅을 가능하게 만듭니다. Masquerading 기능을 끄고 싶다면 He..

스터디/Cilium 2025.08.03

[Cilium] IPAM

Cloudnet Cilium 3주차 스터디를 진행하며 정리한 글입니다.이번 포스팅에서는 IPAM에 대해 알아보겠습니다. IPAM Kubernetes 환경에서는 수백~수천 개의 컨테이너가 생성되고 사라지며 멀티 클러스터 또는 하이브리드 클라우드 환경에서 IP 충돌 위험이 존재합니다. 또한, 가상 네트워크, overlay, NAT 등이 복잡하게 얽혀 있는데 이런 상황에서 수동 IP 할당은 불가능하고, 네트워크 장애나 충돌도 자주 발생할 수 있습니다. IPAM은 이러한 문제를 해결하기 위해 사용되는 기술입니다. IPAM(IP Address Management)은 IP 주소를 체계적으로 할당하고 관리하는 시스템 또는 기능입니다. IPAM이 없다면 컨테이너마다 수동으로 IP 설정이 필요하여 비효율적이며 자동화 ..

스터디/Cilium 2025.08.03

[Cilium] Cilium Observability - Hubble 설치 및 CiliumNetworkPolicy 적용

Cloudnet Cilium 2주차 스터디를 진행하며 정리한 글입니다.이번 포스팅에서는 Cilium Hubble에 대해 이해하는 포스팅을 작성하겠습니다.Hubblehttps://docs.cilium.io/en/stable/overview/intro/#intro Cilium에서 Hubble은 네트워크 및 보안 가시성을 제공하는 분산 추적/관찰 도구입니다.Cilium은 eBPF를 사용해 클러스터 내부 네트워크 흐름을 커널 수준에서 추적하고, Hubble은 이 정보를 수집, 분석, 시각화하는 역할을 합니다. Hubble 특징1. 서비스 간 통신 및 의존성 시각화어떤 서비스가 어떤 서비스와 통신하는지 확인서비스 간 통신 빈도 파악서비스 간 의존성 그래프 확인어떤 HTTP 요청이 오가는지 파악어떤 Kafka 토픽..

스터디/Cilium 2025.07.27

[Cilium] Cilium CNI과 eBPF 소개

Cloudnet Cilium 1주차 스터디를 진행하며 정리한 글입니다.이번 포스팅에서는 Cilium CNI와 eBPF 대해 소개하는 포스팅해보겠습니다. Cilium CNICilium은 eBPF (Berkeley Packet Filter)를 기반으로 Pod Network 환경 + 보안 을 제공하는 CNI Plugin 입니다.원래는 패킷 필터링용으로 만들어졌지만, 현재는 네트워크, 보안, 성능 측정, 관찰 가능성(Observability) 등 다양한 영역에서 사용됩니다.eBPF는 커널 모듈을 직접 수정하거나 재컴파일하지 않고도 커널 레벨에서 동작할 수 있습니다. eBPFcilium의 기본이 되는 eBPF에 대해 이해하고 넘어가도록 하겠습니다. 리눅스에서 네트워크 패킷이 들어오면 기본적으로 커널을 거쳐 ..

스터디/Cilium 2025.07.20