일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- Service
- ebs
- cpu
- terraform
- Network
- AZURE
- elasticsearch
- AZ-104
- POD
- Python
- leetcode
- asyncio
- Role
- IAM
- 자바스크립트
- K8S
- Django
- FastAPI
- AZ-900
- DevOps
- asgi
- ansible
- IAC
- docker
- RBAC
- Deployment
- Kubernetes
- AWS
- EC2
- kernel
- Today
- Total
목록DevOps (77)
궁금한게 많은 개발자 노트

많은 클라우드 서비스 공급업체가 그렇듯 고객들을 위해 AWS에서도 보안을 최우선으로 생각하며 서비스를 제공할 것 같습니다.그 중 대표적인 공격 중 하나인 DDoS(Distributed Denial-of-Service)가 증가함에 따라 워크로드 보호 방안에 대한 다양한 방법이 존재하며, 또 새로운 방어 기술들이 개발되고 있습니다. 오늘은 AWS에서는 어떤 기술을 사용하여 DDoS를 막고 있는지에 대해 학습하고 정리해보고자 합니다. 우선 DDoS는 무엇인지 어떤 방식으로 공격하는지에 대해 알아보겠습니다. 기존 온프레미스에 구축된 시스템 뿐만 아니라 클라우드에서도 동일하게 가장 강력한 공격 중 하나로, 많은 기업들이 해당 공격에 대응하기 위해 고민하고 있으며 공격을 탐지하고 방어하고 있습니다.다수의 시스템..

쿠버네티스 네트워크 모델은 잘 알다시피 아래 3가지 요구사항을 충족합니다.클러스터의 모든 파드는 고유한 IP를 가진다.파드는 NAT없이 노드 상의 모든 파드와 통신할 수 있다.노드 상의 에이전트(ex. kubelet)는 해당 노드의 모든 파드와 통신할 수 있다.이러한 네트워크 모델의 요구사항을 구현한 것이 CNI Plugin이며, 그 중 Cilium에 대해 알아보고자 합니다.cilium은 daemonset으로 각 노드마다 cilium agent가 동작하며, agent로 각 노드의 네트워크 설정을 담당하며 쿠버네티스로부터 파드의 시작/중지와 같은 이벤트를 수신하고, 이를 ebpf바이트코드로 컴파일하여 커널에 적재하는 역할을 수행합니다.그러므로, cilium agent가 정상 동작해야 파드에 존재하는 파드의..

Opentelemetry란 Observability를 구성하는 분산 추적, 매트릭, 로그 수집을 표준화하고 통합적으로 관리하기 위한 CNCF 산하의 오픈 소스 프로젝트입니다. 이에 특정 벤더에 종속되지 않고 다양한 APM/Observability백엔드와 연동이 가능합니다.Trace, Metric, Log를 하나의 표준 스펙으로 수집 가능하며, 다양한 언어에서 자동으로 애플리케이션 계측이 가능하도록 지원합니다. 즉, OpenTelemetry는 기존의 다양한 벤더별 SDK나 Agent 문제를 해결하고, 하나의 표준화된 방식으로 다양한 백엔드 (예: Jaeger, Tempo, Prometheus, Mimir, Loki 등)로 데이터를 전송할 수 있도록 설계되었습니다. [ Opentelemetry의 구성요소 ..
항목ipset + iptablesXDP + eBPF구성 요소iptables, ipseteBPF 프로그램, XDP hook동작 위치커널 네트워크 스택 내부 (INPUT, PREROUTING)커널 진입 전, NIC 드라이버 수준속도빠르지만 skb 생성 이후 처리초고속 (us 단위), skb 생성 이전 처리조건 처리ipset으로 다양한 IP 리스트 필터링 가능IP 비교는 가능하지만 복잡한 조건(국가, GeoIP)은 직접 구현리소스 소비커널 conntrack, NAT, skb 등 사용매우 적음 (소켓/커널 구조체 생성 전 차단)로깅, 추적iptables LOG 가능기본은 없음, 별도 eBPF 로깅 추가 필요유지 보수 편의성ipset로 외부 리스트 쉽게 갱신 가능직접 프로그램 수정 필요, 자동화 도구 필요주요 용..

쿠버네티스의 모든 파드는 고유한 IP를 가집니다. 이는 즉 파드간 연결을 명시적으로 만들 필요가 없으며, 도커 환경에서와 같이 컨테이너 포트를 호스트 포트에 매핑할 필요가 없음을 의미합니다. (도커 환경에서 컨테이너는 호스트와 별도의 네트워크 네임스페이스를 가지므로, 외부에서 접근 시 명시적으로 포트를 호스트 포트에 매핑 해야 함) 이를 통해 포트 할당, 네이밍, 서비스 디스커버리, 로드 밸런싱, 애플리케이션 구성, 마이그레이션 관점에서 파드를 VM / 물리 호스트처럼 다를 수 있는 깔끔한 모델이 제시됩니다. 또한, 쿠버네티스의 파드는 NAT없이 노드 상의 모든 파드와 통신이 가능하며, 노드 상의 에이전트(시스템 데몬, kubelet)는 해당 노드의 모든 파드와 통신할 수 있음이 전제되어 있습니다. 쿠버..