일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Algorithm
- java
- 코틀린
- decorator 패턴
- 자바
- Spring
- 헬름
- MSA
- devops
- spring microservice
- CRD
- cloud native java
- Semaphore
- 클라우드 네이티브
- 쿠버네티스
- 머신러닝
- MySQL
- ansible
- nGrinder
- kubernetes
- Adapter 패턴
- cloud native
- 마이크로서비스
- Stress test
- Kotlin
- Microservice
- 클라우드 네이티브 자바
- 동기화
- 익명클래스
- ingress
- Today
- Total
목록DevOps/Docker & K8S (17)
카샤의 만개시기
Skaffold 쿠버네티스 개발 → 디버깅 → 배포를 한 줄로 끝내기Skaffold는 쿠버네티스 네이티브 애플리케이션을 위한 로컬-to-클러스터 개발 파이프라인을 자동화하는 CLI입니다.dev → build → push → deploy → log/port-forward → (loop)위 모든 단계를 단일 명령으로 처리해 개발-속도와 안정성을 동시에 챙길 수 있습니다.왜 Skaffold인가? (Kustomize·Helm과의 관계)빌드 & 배포 자동화 : 코드 변경 감지 → 이미지 빌드/푸시 → 신규 매니페스트 배포까지 한 번에 진행 [참고]다중 배포 도구 호환 : kubectl · Kustomize · Helm · Kpt 모두 지원 → 동일 워크플로우 안에서 혼용 가능Profiles / Modules :..
🚀 Telepresence 완전 정복: intercept, replace, wiretap, ingest 기능 비교쿠버네티스(Kubernetes) 환경에서 로컬 개발을 실서비스와 통합해 테스트하고 싶으신가요?Telepresence는 마이크로서비스 개발자들에게 가장 유용한 디버깅 도구 중 하나입니다.이 글에서는 Telepresence의 핵심 기능 4가지인✅ intercept, ✅ replace, ✅ wiretap, ✅ ingest를 최신 버전 기준으로 자세히 설명하고 차이점을 비교합니다.🧭 Telepresence란?Telepresence는 로컬 개발 환경과 쿠버네티스 클러스터 간의 양방향 연결을 제공하는 오픈소스 도구입니다.CI/CD 없이도 로컬 코드를 클러스터 트래픽과 연결해 테스트하거나, 클러스터 환..
Kubernetes에서 실시간 디버깅을 위한 강력한 도구, Ephemeral 컨테이너에 대해 알아봅니다.실전 사용법부터 리소스 경합, 종료 후 동작까지 완전 정리!📚 목차Ephemeral 컨테이너란?Ephemeral 컨테이너 생성 방법디버깅용 추천 이미지다른 컨테이너의 파일 시스템 접근Pod 내 컨테이너 목록 확인Ephemeral 컨테이너의 리소스 사용 방식Kubernetes QoS 클래스 정리종료된 Ephemeral 컨테이너는 어떻게 되나?1️⃣ Ephemeral 컨테이너란?기존 Pod에 일시적으로 주입되는 디버깅 전용 컨테이너spec.ephemeralContainers[]에만 등록됨자동 재시작 없음, resources, livenessProbe 설정 불가Kubernetes v1.25 이상에서 정식 ..
쿠버네티스를 실무에서 사용하다 보면, Kubernetes annotations을 이용하여 nginx ingress에 커스터마이즈한 행동을 지정하곤 한다. 그 중에 configuration-snippet와 server-snippet 설정이 유사하게 사용되는것 같은데 정확히 어떤 차이가 있는지 궁금하여 정리해보았다. nginx.ingress.kubernetes.io/configuration-snippet: | ... nginx.ingress.kubernetes.io/server-snippet: | ...configuration-snippet 도큐먼트 NGINX location에 redirect/rewrite를 포함한 다양한 설정을 추가적으로 지정해줄수 있다. server-snippet 도큐먼트 Attenti..
Operator와 CRD는 쿠버네티스의 철학과 동작 원리를 잘 나타낸다. Operator Operators are software extensions to Kubernetes that make use of custom resources to manage applications and their components. 오퍼레이터는 쿠버네티스와 쿠버네티스 이외의 것들을 둘 다 이해하는 쿠버네티스 컨트롤러이다. 이 두 영역에 대한 지식을 결합함으로써, 두 도메인을 모두 이해하는 실제 운영자가 필요한 작업을 자동화할 수 있다. Custom Resource Definition (CRD) In the Kubernetes API a resource is an endpoint that stores a collection..
레플리케이션 컨트롤러는 쿠버네티스 프로젝트 초기부터 존재했던 가장 기본적인 컨트롤러로써, 파드가 스펙과 동일하지 않게 존재할 경우 스펙과 동일한 상태가 되도록 관리합니다. 지금은 레플리케이션 컨트롤러보다 레플리카세트를 사용하고, 앱의 배포에는 디플로이먼트를 사용하는 것이 추세입니다. 차이점 셀렉터 레플리케이션 컨트롤러는 등호 기반이므로 레이블을 선택할 때 같은지(=) 다른지(!=)만 비교합니다. 레플리카세트는 집합 기반으로써 in, notin, exists 같은 연산자를 지원합니다. rolling-update 레플리케이션 컨트롤러는 rolling-update 옵션을 사용할 수 있지만 레플리카세트는 사용할 수 없습니다. 레플리카세트는 디플로이먼트를 통하여 rolling-update를 지원합니다.
클러스터 검증 Sonobuoy 자체 호스팅 클러스터를 관리하거나 관리형 서비스를 사용 중이지만 쿠버네티스가 제대로 구성되어 있는지 최신 상태인지 확인하기 위해서 쿠버네티스 적합성 테스트를 진행할수 있다. K8Guard 쿠버네티스 클러스터의 일반적인 문제를 확인하고 잘못된 부분을 수정하거나 해당 문제에 대한 알람을 보낼 수 있는 도구이다. 프로메테우스와 같은 모니터링 시스템에서 수집할 수 있는 메트릭을 제공하여 정책을 위반하는 디플로이먼트 개수, 쿠버네티스 API 응답 성능 등을 모니터링 할 수 있다. Copper 쿠버네티스 매니페스트를 검사하는 도구로 일반적인 문제 사항을 플래그하거나 사용자 지정 정책을 적용한다. Cooper는 검증 규칙과 정책을 표현하기 위한 도메인 특화 언어(DSL)을 제공한다. 예..
인그레스는 서비스 앞에 존재하는 일종의 로드 밸런서이다. 쿠버네티스의 서비스는 L4 레이어로 TCP 단에서 Pod들을 밸런싱하기 때문에 TLS나, VirtualHost와 같이 여러 호스트명을 사용하거나 호스트명에 대한 라우팅이 불가능하고, URL Path에 따른 서비스간 라우팅이 불가능하다. MSA 환경에서는 하나의 어플리케이션이 하나의 URL로 매핑되는 경우가 많은데, 이를 위해 MSA 서비스간의 라우팅을 하기 위해서는 API 게이트웨이를 사용하는 경우가 많다. 이 경우에는 API 게이트웨이에 대한 관리포인트가 생기기 때문에, URL 기반의 라우팅 정도라면 L7 로드밸런서로 해당 기능을 제공한다. 쿠버네티스에서 HTTP(S)기반의 L7 로드밸런싱 기능을 제공하는 컴포넌트를 Ingress라고 한다. ap..