포트폴리오
Last updated
Last updated
[목표]
dev, stg 환경 애플리케이션 관측가능성, 메트릭 / 트레이스 / 로그 간 상관 분석 기능 제공
상시 모니터링 시스템 없이 필요에 따라 임시적으로 Datadog 활성화
[담당 업무]
AWS multi account 환경에서 중앙 관리 가능한 아키텍처, 파이프라인 설계 및 구현
k8s 환경에서 OpenTelemetry zero-code instrumentation library 주입 파이프라인 검증 및 설정
로그, OpenTelemetry 트레이스, Prometheus 메트릭을 수집할 수 있는 Grafana Alloy 기능 검증 및 도입
트레이스 기반 Prometheus 메트릭(service graph, span metrics) 생성, 수집 파이프라인 설정
기존 Grafana Loki의 label 정책을 Prometheus에 적용하기 위해 Grafana Alloy의 공통 relabel config 설정 모듈화
안정적인 운영을 위한 정책 정의 및 적용
트레이스 retention, S3 lifecycle policy, 메트릭 retention 적용
애플리케이션 모니터링에 필요하지 않은 API를 트레이스 필터링하기 위한 sampling 적용(예를 들어 health check, swagger 등)
쿼리 속도 개선을 위해 개발자가 자주 사용하는 attribute를 조사해 dedicated attribute column 설정
Grafana, PromQL 사용자 가이드, Grafana Tempo 관리자 가이드 작성
[목표]
분산된 로그 저장 시스템으로 인한 사용자 로그 조회 불편함 개선
로그 저장 시스템마다 다른 로그 조회 방법 (Kibana, AWS CloudWatch, AWS Athena)
백업, 장기 보관 용도로 S3에 저장된 로그 비용 문제 개선
압축, 인코딩 없이 저장된 raw 데이터의 과비용
AWS Athena, AWS CloudWatch 로그 조회 비용 발생
구성 요소 운영 문제 개선
Fluentd의 scale out 기능 부재
AWS MSK, Elasticsearch의 EBS storage 용량 관리 문제
[담당 업무]
AWS multi account 환경에서 중앙 관리 가능한 아키텍처, 파이프라인 설계 및 구현
AWS 서비스, k8s pod 로그 수집 파이프라인 설계
Terraform AWS community 모듈 기반 wrapper 모듈 개발
AWS 서비스에 stream label 할당을 위한 AWS CloudWatch log group, log stream 네이밍 규칙 정의
k8s 로그 수집 대상 pod 구분, stream label 할당을 위한 k8s pod label 정책 정의
안정적인 운영을 위한 정책 정의 및 적용
환경별 로그 retention policy, s3 lifecycle policy 적용
수집 안정성을 위한 wal, rate limit, 로그 라인 최대 크기, stream sharding 적용
쿼리 안정성을 위한 조회 기간, 조회 volume 크기, 조회 최대 라인 수 제한 적용
확장성과 쿼리 편의성을 고려한 stream label, structured metadata 계층도 정의 및 적용
Grafana, LogQL 사용자 가이드, Grafana Loki 관리자 가이 작성
[목표]
k8s manifest를 Argo CD single source로 관리하면서 겪은 관리 문제 개선
애플리케이션마다 다른 k8s 리소스 설정
오타, 누락, 문법 오류 등의 human error 발생
GitLab CI/CD 설정 파일 템플릿화
배포, 롤백 프로세스 문제점 개선
Argo CD UI를 이용해 배포 시, 배포 이력을 남기기 어려운 문제
Argo CD UI를 이용해 롤백 시, Git에는 롤백 내용이 반영되지 않는 문제
[담당 업무]
Argo CD multiple source 도입
private ECR(Helm chart registry), Git repo(Helm chart values.yaml)를 multiple source로 구성
GitLab CI/CD 설정 템플릿화
빌드 환경(Gradle, Ant, Node.js, Helm, Docker) 별 템플릿 파일 작성
빌드 캐시, 배포 이력 관리를 위한 AWS S3 도입 및 lifecycle policy 적용
Git, GitLab 기능을 이용한 배포, 롤백 프로세스 정의
GitLab CI manual job 실행 권한을 이용한 CI와 CD 작업 분리
Git revert 기능을 이용한 애플리케이션 롤백
도메인 기반 Helm chart 개발()