배경k8s 서비스를 사설망에서 접근할 때,매번 MetalLB IP를 직접 확인해서 써야 했다. 또 Traefik Host 기반 reverse proxy를 쓰고 있어서,접근하려는 도메인을 서비스마다 수동 매핑해야 했다. 서비스가 늘어날수록 관리 포인트가 계속 늘어났고,이름 해석/매핑 역할을 CoreDNS로 넘기는 방식으로 정리했다.CoreDNS가 하는 일CoreDNS는 Kubernetes 기본 DNS 서버다. 서비스 디스커버리: service.namespace.svc.cluster.localPod DNS 자동 구성: Pod의 /etc/resolv.conf에 kube-dns 주소 주입Stateful 워크로드 DNS: headless service 기반 Pod 레코드 제공현재 클러스터 기준 기본 DNS 엔드포..
Why k8s network?전통적인 모노리틱 구조에서는서버가 가진 고유 IP 또는 VIP에 애플리케이션이 직접 바인딩됨 Kubernetes 클러스터에서는 애플리케이션이 서버 위가 아니라 Pod 단위로 배치Pod는 클러스터 내부 Overlay Network 위에 존재Underlay(Baremetal 서버, 스위치, ToR)는 Pod나 컨테이너의 IP/Port를 직접 인지하지 않음즉, 인프라는 단순히 “Pod 네트워크를 전달하는 역할”만 수행이 추상화를 가능하게 하는 핵심 컴포넌트CNI (Container Network Interface)kube-proxy이번 글에서는 기본 구성(default) 인 kube-proxy을 기준으로 Kubernetes 네트워크 흐름을 정리k8s 통신 종류Kubernetes ..
배경서비스를 하나 추가할때마다 필요한 작업들서비스 Domain Name에 해당하는 TLS 인증서 발급webserver or ingress에서 해당 서비스 프록시 추가TLS 인증서 자체를 관리하는것도 번거롭고, 서비스별로 프록시를 추가하고 관리하는 것도 상당히 귀찮음 물론 wildcard 도메인으로 발급받아서 공통으로 쓰는것도 가능하지만, 프록시를 추가하거나, 인증서를 갱신하는 과정은 필요함 Cloudflare에서 TLS termination도 지원하니까, 아예 TLS 인증 자체를 cloudflare에 넘겨버리고, 도메인 -> pod, service로 매핑만 할 수 있는 방법을 고민Cloudflare Tunnel 공식적인 설명은 다음과 같음Cloudflare Tunnel provides you with..
Background용어 정리인증 (Authenticate) : 해당 사용자가 누구인지 신원을 확인인가 (Authorization) : 해당 사용자가 어떤 권한을 가지는 확인하고 부여대칭키 (Symmetric Key) : 암호, 복호에 같은 키를 사용비대칭키 (Asymmetric Key) : 암호, 복호에 다른 키를 사용Root CA : 신뢰가능한 인증서 발급 기관 (GeoTrust)인증서는 왜 쓰는건가? 우리가 인터넷망을 통해 패킷을 주고받는 과정에서 다음과 같은 문제가 발생할 수 있음L2 스위칭, L3 라우팅 중에 패킷을 훔쳐본다면?Dst 주소가 정상적인 목적지가 아니라면?중간에 패킷이 변조된다면?기밀성(Confidentiality), 무결성(Integrity)을 보장하기 위해 통신 프로토콜에 보안 계..
- Total
- Today
- Yesterday
- pvm
- letsencrypt
- GPT2
- 리눅스
- 사이버정보지식방
- 웹IDE
- HNSW
- 백준
- Deep Learning
- 뿌요뿌요
- react
- codeanywhere
- FastAPI
- C
- ttyd
- 토이프로젝트
- 시간 초과
- 프로젝트
- vector search
- Web
- 뿌요뿌요 테트리스
- pintos
- 싸지방
- Python
- 구름ide
- 코딩
- os
- 정보보호병
- io blocking
- 분할 정복
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |