이 글은 쿠버네티스 공식문서의 '로깅 아키텍처'를 바탕으로 요약 및 생각정리를 한 글 입니다. 잘못된 부분이 있다면, 자유롭게 피드백 부탁드립니다 :) 더 자세한 내용이 보고 싶으시다면, 아래 공식문서를 참고해주세요. 로깅 아키텍처 애플리케이션 로그는 애플리케이션 내부에서 발생하는 상황을 이해하는 데 도움이 된다. 로그는 문제를 디버깅하고 클러스터 활동을 모니터링하는 데 특히 유용하다. 대부분의 최신 애플리케 kubernetes.io 컨테이너 엔진들도 로깅을 지원하도록 설계되었다 → 표준 출력, 표준 에러 스트림 작성 일반적으로 컨테이너 엔진이나 런타임에서 제공하는 기본 기능은 완전한 로깅 솔루션으로 충분하지 않다. 예를 들어, 컨테이너가 crash 되거나, Pod가 축출되거나, Node가 종료된 경우에..
개발하다보면 구동 중인 Docker 내로 접속해 내부 파일들을 확인해야 할 때가 있다. Kubernetes에서도 마찬가지로 Pod 내부로 들어가야 할 때가 있다. 이때 bash를 실행시켜 접속하면 된다. Docker의 경우, docker exec -it container_id /bin/bash Kubernetes의 경우, kubectl exec -it pod_name /bin/bash '-it'의 의미는 다음과 같다 - i: STDIN 표준 입출력을 사용하겠다. - t: STDIN에서 pseudo-TTY를 사용하겠다.
Destination Rule Configuration affecting load balancing, outlier detection, etc. istio.io apiVersion: networking.istio.io/v1alpha3 kind: DestinationRule metadata: name: DestinationRule-example spec: host: svc-apply-example trafficPolicy: loadBalancer: simple: ROUND_ROBIN outlierDetection: consecutive5xxErrors: 5 consecutiveGatewayErrors: 0 interval: 10s baseEjectionTime: 30s maxEjectionPercent: ..
api groups는 api resource들을 묶어놓은 group을 의미합니다. api resources는 또 무엇이냐구요? pods, services, jobs 등 kubernetes에서 사용하는 resources를 의미합니다. kubernetes의 기본을 배우면서 api groups를 사용한 적이 있을까요? 위 질문이 떠올랐다면, 아마 api groups의 의미를 모르시고 사용하셨을 겁니다. 보통 kubernetes resource yaml에서 맨 첫 번째 들어가는 apiVersion 에 명시가 되거든요. apiVersion: apps/v1 kind: ReplicaSet metadata: name: replica-pvc spec: ... 위 예시 yaml에서 apiVersion에 명시된 apps가 ..
kubectl api-resources -o wide 위 명령어를 통해 확인할 수 있습니다. 단순히 api resources 뿐 아니라 api resource의 약어가 무엇인지, api resource가 namespace 기반 resource인지, 사용할 수 있는 verb(권한)은 무엇이 있는지 등 확인할 수 있습니다. minikube 를 통해 cluster를 구성하고 위 명령어를 입력했을 때 다음과 같이 나오는 것을 확인할 수 있습니다. NAME SHORTNAMES APIGROUP NAMESPACED KIND VERBS bindings true Binding [create] componentstatuses cs false ComponentStatus [get list] configmaps cm true..
Istio에서 지원 및 제공하는 kubernetes API resources는 다음과 같다. NAME SHORTNAMES APIGROUP NAMESPACED KIND VERBS istiooperators iop,io install.istio.io true IstioOperator [delete deletecollection get list patch create update watch] destinationrules dr networking.istio.io true DestinationRule [delete deletecollection get list patch create update watch] envoyfilters networking.istio.io true EnvoyFilter [delete ..
Which One is the Right Choice for the Ingress Gateway of Your Service Mesh? 위 글을 번역한 글입니다. 제 이해를 위해 중간 중간 부족한 부분에 대한 내용 및 링크를 추가하였습니다. 글과 모든 사진의 저작권은 위 글에 있습니다. (Copyright of the article and all the photos is in the post above) Kubernetes platform에서 일부 서비스가 외부 네트워크로 노출되어야할 때 무엇을 사용해야할까요? Kubernetes에서는 ClusterIP, Nodeport, LoadBalancer, Ingress, Istio Gateway 같은 다양한 수단을 제공하고 있습니다. 이 중에서 productio..
- Total
- Today
- Yesterday
- HTTP
- 비동기
- Spring boot
- WebFlux
- Intellij
- c++
- MySQL
- 쿠버네티스
- docker
- container
- 하루
- 이스티오
- 일상
- k8s
- 백준
- python
- Spring
- Kubernetes
- Log
- r2dbc
- boj
- tag
- 알고리즘
- Istio
- jasync
- Algorithm
- 로그
- java
- sidecar
- gradle
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |