본문 바로가기

분류 전체보기66

[쿠버네티스/k8s] 크론잡(cron job) 작업 실행되지 않는 문제 해결 - Cannot determine if job needs to be started: too many missed start time (> 100). Set or decrease .spec.startingDeadlineSeconds or check clock skew 문제 상황 크론잡 스케쥴이 되었지만 더이상 작업이 실행되지 않음 크론잡 이벤트 메세지중 cronjob-controller 에 의해 발생된 Cannot determine if job needs to be started: too many missed start time (> 100). Set or decrease .spec.startingDeadlineSeconds or check clock skew 라는 메세지 확인 문제 발생 이유 이전에 크론잡이 스케쥴에 맞춰 잡을 생성하고, 해당 잡에 의해 파드가 관리됨 파드에서 실행 된 애플리케이션에 이슈로 인해 작업이 종료되지 않아서 파드가 계속 실행 상태로 남아있었음 해당 크론잡에는 concurrencyPolicy: Forbid 설정이 되어있었음 위 설정으로 인해.. 2023. 3. 27.
[쿠버네티스/k8s] 기본 실습 명령어 - 개발하는 지토 k8s 공통 kubectl apply -f {yaml-name}: yaml 파일 k8s 에 적용(생성) kubectl config get-contexts: 컨텍스트 조회 kubectl config use-context {cluster-name}: 컨텍스트 변경 kubectl delete deployment,pod,rs --all: 모든 리소스 삭제 Pod kubectl get pods: pod 확인 kubectl describe pods {podname}: pod 상세 정보 kubectl exec -it {pod-name} bash : pod 쉘 접속 kubectl logs {pod-name} : pod 로그 확인 kubectl get pods --show-labels: pod 의 라벨까지 확인 kube.. 2022. 8. 1.
[회고] 사계절을 함께 한 TIL 스터디 회고 - 개발하는 지토 https://github.com/Today-I-Learn 사계절을 함께 한 TIL 스터디에 대해 돌아보며 끄적여본다. 시작 올해 2월에 다니던 회사를 퇴사하고 취준생 신분으로 전환되었을 무렵, 개발자 취업 관련 정보들을 찾기 위해 여러 카카오톡 오픈 채팅방을 들어가게 되었다. 첫 시작은 단순하고 평범했다. 오픈 채팅을 통해 스터디원을 구한다는 글이 올라왔고, 기존에 몇 번의 스터디를 이미 진행했던 그룹이라는 걸 알게 되었다. 스터디 레포를 통해 어떤 사람들이 있고, 스터디의 진행 방식은 어떤지 확인하고 이력서를 던졌다. 사실 이쯤 우아한테크캠프pro 1기 과정이 막 끝났을 때여서 취업준비를 위해 이력서 및 깃허브를 정리해놨던 터라 당시에도 스터디를 이끌고 있던 시원님이 좋게 봐주셔서 바로 합류하게 되었.. 2022. 1. 3.
[Spring] 스프링 데이터 AbstractAggregateRoot 를 통해 도메인 이벤트 등록하고 테스트 하기 DDD 스터디중 구현해본 AbstractAggregateRoot를 통해 도메인 이벤트를 등록하고 테스트하는 방법을 간단하게만 정리함 (나중 참고용) 아직 깊은 지식이 없으므로 도메인 이벤트, AbstractAggregateRoot 에 대한 자세한 내용은 공식문서 & 타 블로그 정리 글을 참고하는 게 좋을 것 같음 https://docs.spring.io/spring-data/commons/docs/current/api/org/springframework/data/domain/AbstractAggregateRoot.html https://www.baeldung.com/spring-data-ddd https://daddyprogrammer.org/post/14797/springboot-domainevent/.. 2021. 10. 31.
[회고] 토비의 스프링 온라인 스터디 회고 - 개발하는 지토 Link: https://github.com/Today-I-Learn/dev-reading-record 책 한 권을 읽고 지식을 공유했던, 온라인 그룹 스터디를 돌아보며 회고를 작성해본다. 서론 처음 스터디를 시작한 건 퇴사 후 취준생으로 전직했던 2021년 3월이었다. 첫 스터디의 시작은 책을 읽는 게 아닌, 개발자로서 지식을 쌓기 위해 스터디를 진행했다. 그렇게 약 한달정도 CS 관련 스터디를 진행하던 중, 스터디원 누군가가 같이 책을 읽고 토론을 해보는 건 어떻냐는 제안을 했던 것 같다. (사실 해당 스터디의 트리거는 자세히 기억나지 않는다. 그냥 그렇다고 해두자...ㅋㅋ) 그렇게 우리는 자바 스프링 개발자라면 한 번쯤은 들어본, 토비의 스프링을 읽게 되었다. 스터디 진행 방식 읽을 책 선정 매주 .. 2021. 6. 17.
[MSA] MSA 환경 분산 로그 트레이싱 (분산 트랜잭션&시스템 추적) - 개발하는 지토 마이크로 서비스 아키텍처 환경에서의 분산 로그 트레이싱 MSA 구조에서는 하나의 HTTP 호출이 내부적으로 여러 개의 서비스를 거쳐서 일어나게 되고, 트랜잭션이 여러 컴포넌트의 조합을 통해서 발생하기 때문에 전통적인 APM(Application performance Monitoring) 도구를 이용해서 추적이 어렵다. → 이런 문제를 해결하기 위해, 별도의 분산 로그 추적 시스템이 필요하다. OpenTracing이란 애플리케이션 간에 분산된 호출 흐름을 공개적으로 추적하기 위한 표준 해당 OpenTracing spec을 기준으로 여러 Tracer들(Zipkin, Jaeger)등이 존재함 분산 로그 추적 시스템의 작동 원리 통상적으로 Trace 와 Span이라는 개념을 사용함 Trace: 클라이언트가 서버.. 2021. 5. 22.