분류 전체보기
-
[Kubernetes] Cluster API 맛만 보기DevOps, 클라우드/Container 2024. 12. 2. 20:17
어쩌다가진짜 이전에 스쳐 지나가면서 들었던 Cluster API가 갑자기 생각났다.그냥 그랬다.그래서 그냥 진짜 개념만 맛만 보려고 공식 독스랑 훑어봤다. Cluster API는 무엇인가요?오퍼레이터 패턴으로 Cluster를 설치하는 방식이라고 한다.중앙에 관리 클러스터를 배치하고 해당 클러스터에 Cluster API Controller를 배포한다.이 Cluster API Controller는 추상 클래스와 유사한 역할을 한다.근데 왜? Cluster는 벤더 매니지드 클러스터 일 수도 있고, 직접 구축한 온프렘 클러스터일 수도 있고, 로컬 클러스터일 수도 있기 때문이다. 어떻게 쓰나요?# EKS 예시apiVersion: cluster.x-k8s.io/v1beta1kind: Clustermetadata:..
-
야, 너두 분산 추적 할 수 있어DevOps, 클라우드/Observability & Monitoring 2024. 11. 24. 21:59
개요내가 직접 구축하고 운영했던 모니터링 시스템이 있다.메트릭과 트레이스를 애플리케이션 단에서부터 직접 수집, 시각화하고 최적화나 대응까지 이어지는 하나의 라이프사이클이 있었다. 하지만 이 흐름을 정리한 적은 없었다.그래서 우선 분산 추적 시스템에 관해서만 가볍게 정리한다.집계OpenTelemetryOpenTelemetry(콜렉터)는 마이크로 서비스 환경에서 필요한 분산 추적, 메트릭 및 로깅 정보 수집을 도와주는 중계기 혹은 에이전트다.수집된 애플리케이션 모니터링 데이터는 콜렉터를 통해서 Jaeger나 Prometheus와 같은 저장소를 포함한 플랫폼으로 이동한다.OpenTelemetry(콜렉터)는 수집, 처리 및 전송 을 담당하고, 이에 대한 저장-쿼리는 연결된 플랫폼에 위임한다.스팬 메트릭(Span..
-
[컨테이너] 파드 네트워킹 살짝 열어보기DevOps, 클라우드/Container 2024. 11. 17. 20:47
CNI에 이어서 [컨테이너] 처음 열어보는 CNI 스펙CNI 유지성으로 사용하기지금까지 여러 도구를 사용하면서 공식 문서를 수 차례 참고하고 열어보았지만, CNI는 그렇게 진지하게 대했던 적은 없었던 것 같다. Cilium에서 eBPF가 어쨌고, Calico에서 BGwww.floodnut.com 지난 포스팅에서는 처음으로 CNI 스펙에 관련된 내용을 보면서, 어떤 인터페이스를 구현해야 하는지 확인했다.이번에도 파드 네트워킹이나 네트워크 인터페이스 흐름이 어떻게 되는지 얕고 난잡하게 알아보자. 파드 네트워크 구성 파드 네트워크 생성 흐름을 살짝 확인해보자. Kubelet이 파드를 노드에 스케줄링하면, 파드에서 네트워크 설정을 요청한다.그러면, Kubelet이 CNI를 통해서 파드의 네트워크를 설정한다. ..
-
[컨테이너] 처음 열어보는 CNI 스펙DevOps, 클라우드/Container 2024. 11. 9. 16:52
CNI 유지성으로 사용하기지금까지 여러 도구를 사용하면서 공식 문서를 수 차례 참고하고 열어보았지만, CNI는 그렇게 진지하게 대했던 적은 없었던 것 같다. Cilium에서 eBPF가 어쨌고, Calico에서 BGP, Bird, Felix 어쨌고, 또 AWS VPC CNI는 또 어떻고...이런 제반사항들을 그저 이론으로만 접하고 있었다고 생각한다. 물론 이런 이론조차도 작은 트러블 슈팅에는 도움이 되었지만, 그래도 앞으로는 CNI를 좀 더 유지성하게 써보기 위해서 '조금만 더' 다이브 해보려고 한다. CNI 스펙CNI를 준수하는 컨테이너 오케스트레이션은 꼭 쿠버네티스만 있는 것은 아니다.AWS ECS, Apache Mesos도 역시 CNI를 준수하고, Containerd나 CRI-O와 같은 런타임 역시 ..
-
[서비스메시] Istio로 트래픽 관리하기DevOps, 클라우드/Service Mesh 2024. 10. 5. 18:04
서비스메시서비스메시를 가볍게 훑어보면서 느낀 점이 하나 있다.쿠버네티스와 같은 기존의 오케스트레이션에 포함된 기능과 유사한 역할을 하는 것이 많다는 것이다. 물론, 내가 아직 명확한 유즈케이스를 직접 접해보지 못해서 그런 것이라 생각한다.분명히 쿠버네티스 단독으로 해결하지 못하는 페인포인트가 있을 것이다. 그래도 서비스메시, 특히 Istio가 제공하는 트래픽 제어에 관한 내용을 살짝 정리해 보자.세부적인 디테일은 따로. 서비스의 추상화서비스가 파드에 대한 라우팅을 결정하는 것처럼, 버추얼서비스(VirtualService)도 서비스에 대한 라우팅을 결정한다. 아래의 예시처럼, VirtualService 리소스가 라우팅 정책을 적용해서 특정 서비스로 트래픽을 라우팅한다.그리고 이렇게 라우팅된 트래픽에 대한 ..