전체 글
-
Egress Gateway에서 VirtualService 설정이 필요한가?Kubernetes 2025. 3. 12. 23:59
❓ Egress Gateway에서 VirtualService 설정이 필요한가?👉 예, 필요한 경우가 많지만, 필수는 아닙니다.ServiceEntry만으로 클러스터 내부의 Pod들이 외부 서비스와 직접 통신할 수 있도록 설정 가능.하지만 Egress Gateway를 통해 트래픽을 반드시 경유하도록 강제하려면 VirtualService가 필요.즉, Egress Gateway를 통한 외부 서비스 트래픽을 세밀하게 제어하려면 VirtualService를 추가해야 합니다. 🔎 ServiceEntry와 VirtualService의 차이점리소스 종류역할필수 여부ServiceEntry클러스터 내부에서 외부 서비스로의 트래픽을 허용✅ 필수VirtualService트래픽이 반드시 Egress Gateway를 통과하도록..
-
istio에서 north-south traffic의 의미Kubernetes 2025. 3. 12. 23:37
Istio에서 North-South Traffic(남북 트래픽)은 클러스터 외부와 내부 간에 흐르는 트래픽을 의미합니다.💡 쉽게 말해?외부에서 클러스터 내부로 들어오는 트래픽 (Inbound)클러스터 내부에서 외부로 나가는 트래픽 (Outbound) 1️⃣ North-South Traffic의 주요 개념트래픽 방향설명예제North Traffic (Ingress, 들어오는 트래픽)외부 클라이언트(사용자, API, 서비스)가 클러스터 내부의 애플리케이션에 요청을 보낼 때 발생- 사용자가 브라우저에서 https://my-app.com 접속- 모바일 앱이 클러스터 내부의 API 서버에 요청South Traffic (Egress, 나가는 트래픽)클러스터 내부의 서비스가 외부 API 또는 인터넷 리소스에 요청을 ..
-
curl 명령어의 아규먼트Linux 2025. 3. 11. 20:25
curl 명령어는 데이터를 전송하거나 가져오는 데 사용되는 강력한 CLI 도구입니다. HTTP, HTTPS, FTP, SFTP, SCP 등 다양한 프로토콜을 지원하며, 여러 옵션(argument)을 활용해 요청을 세밀하게 조정할 수 있습니다. 🎯 요약옵션설명-XHTTP 메서드 지정-H요청 헤더 추가-d데이터 전송-F파일 업로드-u기본 인증 (username:password)-i응답 헤더 포함-I응답 헤더만 출력-L리디렉션 따라가기-o파일 저장 (이름 지정)-O파일 저장 (원래 이름 유지)-s진행 상태 숨기기-v디버깅 모드 (자세한 요청/응답 로그 출력)이제 curl을 활용해서 다양한 HTTP 요청을 효율적으로 다룰 수 있습니다! 🛠 주요 아규먼트 (옵션)1️⃣ 기본 요청curl 기본적으로 GET 요..
-
SLI, SLO, SLA의 차이점은?Interview 2025. 3. 11. 20:20
SLI, SLO, SLA의 차이점개념설명예제SLI (Service Level Indicator)서비스의 신뢰성을 측정하는 실제 메트릭(지표)"응답 시간이 200ms 이하인 요청 비율"SLO (Service Level Objective)내부적으로 설정한 목표 (Threshold)"응답 시간이 200ms 이하인 요청을 99.9% 유지"SLA (Service Level Agreement)고객과 계약한 서비스 보장 수준 (이를 어기면 페널티)"99.9% 가용성 미달 시 크레딧 보상" 1. Service Level Indicator (SLI) – 서비스 품질을 측정하는 지표SLI는 시스템의 성능과 가용성을 측정하는 객관적인 메트릭으로, SLI를 통해 시스템의 실제 상태를 수치화할 수 있습니다.📌 SLI 예시L..
-
SRE의 핵심 원칙과 DevOps와의 차이점은 무엇인가?Interview 2025. 3. 11. 10:46
SRE와 DevOps는 목표는 유사하지만 접근 방식이 다릅니다. SRE는 Reliability(신뢰성)를 극대화하는 것이 핵심 원칙이며, SLI/SLO/SLA와 같은 측정 가능한 목표를 설정하고 Error Budget을 통해 기능 배포와 안정성 간 균형을 조절합니다. 또한, Toil(반복적인 수작업)을 자동화하여 운영 비용을 줄이고, Infrastructure as Code 및 Monitoring 시스템을 활용해 장애를 감지하고 빠르게 대응하는 것이 중요합니다. 반면, DevOps는 개발과 운영 팀 간의 협업을 증진하고 CI/CD, 배포 자동화 등의 프로세스를 개선하는 데 집중합니다.결국 SRE는 DevOps의 원칙을 엔지니어링적인 방식으로 구현하는 역할을 하며, 운영을 코드로 해결하는 데 중점을 둡니다..
-
서비스 접속 테스트용 curl 이미지 설치 및 사용Kubernetes 2025. 3. 10. 08:49
Curl Image 구동 - curl.yaml 내용################################################################################################### Curl service##################################################################################################apiVersion: v1kind: ServiceAccountmetadata: name: curl---apiVersion: v1kind: Servicemetadata: name: curl labels: app: curl service: curlspec: ports:..
-
TLS 서버 이름 표시의 작동 방식인 SNI란?Linux 2025. 3. 10. 01:47
TLS SNI(Server Name Indication)란?개요TLS(Transport Layer Security)는 인터넷에서 데이터를 암호화하여 안전하게 통신할 수 있도록 하는 프로토콜입니다. TLS를 사용할 때, 하나의 IP 주소에서 여러 개의 도메인을 호스팅하는 웹 서버(예: 가상 호스팅 환경)에서는 클라이언트가 요청하는 정확한 도메인을 알지 못하면 올바른 인증서를 제공할 수 없습니다.이를 해결하기 위해 등장한 것이 **SNI(Server Name Indication, 서버 이름 표시)**입니다.SNI의 작동 방식SNI는 TLS 핸드셰이크 과정에서 클라이언트가 접속하려는 서버의 도메인 이름(호스트명)을 명시적으로 전달하는 기능입니다. 이를 통해 서버는 클라이언트가 요청하는 도메인에 맞는 적절한 T..
-
Go에서 함수와 상수 이름의 시작 규칙 (대문자 vs. 소문자)Dev 2025. 3. 3. 21:58
Go 언어에서는 함수, 변수, 상수, 구조체 이름이 대문자로 시작하는지, 소문자로 시작하는지에 따라 접근 범위(Scope)가 결정됩니다.1. 대문자로 시작 (Exported, 외부 패키지에서 접근 가능)대문자로 시작하는 이름은 패키지 외부에서도 접근 가능합니다.즉, 공개(Exported)된 함수, 변수, 상수, 구조체가 됩니다.이 방식은 다른 패키지에서 사용될 것이 예상되는 경우에 사용됩니다.✅ 예제 (대문자로 시작, Exported):package mypackage// PublicFunction can be accessed from other packages.func PublicFunction() { fmt.Println("This is a public function.")}// PublicCon..