| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- openlens
- Airflow
- bootstrap
- Jenkins
- SQL
- IntelliJ
- AWS CI/CD 구축하기
- Kafka
- VPN
- chart.js
- codepipeline
- JavaScript
- docker
- chartjs
- java bigdecimal
- aws cicd
- codedeploy
- aws
- node
- 도커
- codebuild
- kubeflow
- Flux
- Spring
- Spring Error
- Python
- PostgreSQL
- COALESCE
- codedeploy error
- redis
- Today
- Total
목록Infra (183)
Small Asteroid Blog
Kubernetes를 운영하다 보면 dev / cbt / prod처럼 환경이 여러 개로 나뉘고, 리소스 형태는 같은데 값만 다른 상황이 흔하다.예를 들면 Deployment/Service/Ingress는 동일한 구조를 유지하면서도 환경마다 image tag, replicas, resources, Ingress host, annotation 같은 값은 달라진다.이때 선택지는 보통 두 가지다.환경별로 YAML을 복사해서(dev.yaml, prod.yaml...) 각각 관리한다.공통은 하나로 두고, 환경별 차이만 관리한다. (Kustomize 방식)이 글에서는 두 번째 방식인 Kustomize를 왜 쓰는지, 특히 base는 동일하고 환경별로 다른 내용만 있을 때 어떤 이득이 있는지 정리한다. 문제: 환경별 Y..
CMD와 ENTRYPOINT의 차이를 이해하는 것은 Dockerfile을 잘 작성하기 위한 핵심 개념 중 하나입니다. Dockerfile의 CMD vs ENTRYPOINT컨테이너화된 애플리케이션을 Dockerfile로 만들다 보면 CMD와 ENTRYPOINT의 차이에 대해 한 번쯤 헷갈린 경험이 있을 겁니다.이 두 명령어는 컨테이너 실행 시 어떤 명령이 실행될지를 정의하는 데 사용되지만, 역할과 동작 방식에 중요한 차이점이 있습니다. 오늘은 이 두 명령어의 차이를 명확하게 이해하고, 언제 어떤 상황에서 사용하는 게 좋은지 정리해보겠습니다. CMD란?CMD는 컨테이너 실행 시 기본적으로 실행할 명령어나 인자(argument)를 설정하는 데 사용됩니다.단, docker run 명령어로 직접 명령어를 ..
ingress keep-alive는 Kubernetes 환경이나 클라우드 인프라에서 많이 등장하는 개념인데, 네트워크 레이어에서 "연결을 얼마나 오래 유지할지"를 결정하는 중요한 설정입니다. 개념 설명IngressKubernetes에서 Ingress는 외부 트래픽(HTTP/HTTPS 등)을 내부 서비스로 라우팅해주는 리소스입니다.일반적으로 NGINX, Traefik, AWS ALB 등 다양한 Ingress Controller가 사용됩니다.Keep-AliveKeep-Alive는 HTTP/1.1부터 기본으로 제공되는 기능으로,클라이언트와 서버가 하나의 TCP 연결을 여러 요청/응답에 재사용하도록 하는 옵션이에요. Ingress Keep-Alive란?Ingress Controller가 외부 클라이언트(예: 브..
데이터 분석을 하다가 수십 시간이 걸리는 작업을 하는데 네트워크 문제나 터미널 종료로 세션이 끊기면 함께 실행되고 있는 작업도 중단되는 일이 종종 발생했다. 이런 문제를 해결하기 위한 방법을 찾던 중 tmux를 알게 되었다. tmux터미널 멀티플렉서(terminal multiplexer) 의 약자로 한 터미널에서 여러 프로그램을 쉽게 전환하고, 백그라우드에서 계속 실행되도록 분리했다가 다른 터미널에도 연결해서 사용할 수 있다. 원격 서버에서 작업하거나, 긴 시간 동안 실행되는 작업을 안정적으로 유지할 때 매우 유용하다. 특징세션 유지: SSH가 끊겨도 터미널 세션은 계속 유지됨다중 작업 지원: 하나의 터미널에서 여러 창(Window)과 패널(Pane)을 동시에 실행 가능세션 복구: 다시 접속해서 ..
모니터링의 필요성 현대의 소프트웨어 시스템은 복잡한 분산 아키텍처를 기반으로 운영이 되는데대규모 서비스의 경우, 애플리케이션 성능, 장애 감지, 리소스 사용량 최적화가 필수적이다. 모니터링이 없으면 장애 발생 시 문제의 원인을 찾기 어려우며, 성능 저하를 미리 감지하지 못할 수 있기 때문이다.이러한 문제를 사전에 감지하고 대응하기 위해 모니터링 시스템이 도입 되어야 한다. Prometheus Prometheus(프로메테우스)는 시스템으로부터 각종 모니터링 지표(metrics)를 수집하여 저장하고 검색할 수 있는오픈소스 모니터링 및 알림 시스템이다. 특징 시계열 데이터(Time-Series Data) 기반의 모니터링 시스템 PromQL(Prometheus Query Language) 를 활용한 강력한 ..
이 주제로 블로그를 작성한 이유 MongoDB 에서 컬렉션을 생성할 때, 효율적인 데이터 설계와 시스템 안정성 확보하기 위해 예상 트래픽을 산정하는 과정을 거친다.예상 트래픽을 통해 조회, 쓰기 요청의 비율을 파악할 수 있고조회 트래픽이 많다면 적절한 인덱스를 설계해 조회 속도를 최적화할 수 있다. (그렇다고 인덱스를 많이 만들면 쓰기 성능이 저하되므로 트래픽 패턴에 따라 필요한 인덱스만 설정하는게 좋다. ) 트래픽트래픽이란 서버를 통해 최종 사용자에게 전달된 데이터의 양을 말한다. 시스템을 설계할 때 트래픽을 예측하고 이에 적합한 설계를 하는것은 안정성과 성능을 보장하는데 중요하다. QPS와 RPS 개념RPS 는 QPS 보다 더 상위 개념이다. (RPS > QPS)QPS(Queries Per Sec..