일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- vuejs
- 안드로이드
- AndroidStudio
- 분할정복
- 코테
- C++
- 파이썬
- DFS
- BAEKJOON
- android
- 개발
- django
- codingtest
- 코드품앗이
- 코딩테스트
- cos
- 알고리즘
- DART
- Python
- Algorithm
- 동적계획법과최단거리역추적
- 백준
- issue
- 안드로이드스튜디오
- 동적계획법
- Flutter
- cos pro 1급
- cos pro
- DFS와BFS
- docker
- Today
- Total
목록분류 전체보기 (292)
Development Artist
서론서비스 하나를 띄운다는 건 생각보다 많은 일을 수반합니다.백엔드 서버 하나만 있어도 DB가 필요하고, 캐시가 필요하고, 때로는 메시지 큐나 외부 API 목업 서버까지 붙어야 하죠. 그때마다 우리는 명령어를 반복합니다.docker run ...docker run ...docker run ...처음엔 재밌을 수 있지만, 곧 지칠겁니다."이 많은 걸 왜 매번 따로 띄워야 하지?""내가 띄운 환경을 다른 팀원도 그대로 재현하려면 어떻게 하지?" 이런 반복적인 부분 뿐만이 아닙니다.팀원들의 다양한 요구사항을 관리하기에는 쉽지 않았기 때문입니다."내 애플리케이션은 DB 없이는 작동하지 않아요.""Redis도 필요하고, Celery도 있어야 해요.""그러면 그걸 다 띄우는 스크립트라도 줘야 하나요?" Docker..
서론DevOps 엔지니어로 일하다 보면 도커(Docker)는 매일 사용하는 필수 도구다.컨테이너를 활용하면 애플리케이션을 빠르게 배포하고, 개발과 운영 환경을 동일하게 맞출 수 있어서 협업이 훨씬 수월해진다. ‘시작하세요! 도커/쿠버네티스’ 책을 읽으면서 도커에 대해 다시 한 번 정리하고 싶은 내용들을 이렇게 기록하고자 한다.도커 엔진도커 엔진에서 가장 핵심이 되는 구성 요소는 이미지(Image)와 컨테이너(Container)다.이미지는 여러 계층(layer)으로 구성된 읽기 전용 파일이다. 애플리케이션 실행에 필요한 모든 파일과 설정이 포함되어 있다.컨테이너는 이 이미지를 실행한 결과물로, 독립된 프로세스 공간에서 동작하는 일종의 가상 환경이다.컨테이너를 실행하면 도커는 해당 이미지 기반으로 컨테이너 ..
서론헤드 퍼스트 디자인 패턴 절반을 읽으면서 전체적인 패턴에 대해 실제 예시(결제 시스템)를 들어 정리를 했었다.링크 : https://jmcunst.tistory.com/357 헤드 퍼스트 디자인 패턴 정리 -상- ( 결제 시스템 )서론이번에 헤드 퍼스트 디자인 패턴이라는 책을 절반 정도 읽은 시점에서 한 번 정리를 해보고자 한다. 이 책은 꾀 유명한 책으로, 객체지향 설계를 고민하는 개발자에게 매우 도움이 되는 책jmcunst.tistory.com이번 글에서는 그중에서도 커맨드(Command) 패턴에 대해서 깊게 알아보려고 한다.커맨드 패턴이란커맨드를 직역하면 ‘명령’이다. 왜 커맨드 패턴으로 명명하였을까에 대해 고민해볼 필요가 있다. 우리는 코드에서 특정 동작을 실행할 때 메서드를 직접 호출하는 방..

서론EKS 환경에서 배포되어 운영 중인 ArgoCD를 모니터링하는 과정에서 argocd-notifications-controller 파드안의 컨테이너 하나가 계속해서 restart 되고 있는 현상이 발견되었다.해결하기간단한 확인일단 파드의 이벤트를 확인한다. kubectl describe pod argocd-notifications-controller-79f4bf5bdd-5zjtn -n argocdEvents: Type Reason Age From Message ---- ------ ---- ---- ------- Warning BackOff 4s (x131454 over 2d) kub..
서론이번에 헤드 퍼스트 디자인 패턴이라는 책을 절반 정도 읽은 시점에서 한 번 정리를 해보고자 한다. 이 책은 꾀 유명한 책으로, 객체지향 설계를 고민하는 개발자에게 매우 도움이 되는 책이다. 현재는 DevOps를 주 업무로 하고 있지만, 개발에도 관심이 많은 사람으로서 꼭 읽어보고 싶었던 책이었다. 실무에서 백엔드 코드들을 보면서 여러 패턴들이 적용된 것을 확인할 수 있었으며, 이를 통해 더 깊이 있는 이해를 하게 되었다. 이 글에서는 패턴의 개념보다는 업무에서 어떻게 쓰이고, 어떤 기준으로 판단해야 하는지를 예시를 통해 다루고자 한다.패턴책의 전반부에서 다루는 패턴은 총 7가지이다:전략 패턴 (Strategy Pattern)옵저버 패턴 (Observer Pattern)데코레이터 패턴 (Decorato..

서론회사에서 DWG 파일을 GLTF로 변환하는 기능을 구현해야 하는 과제가 생겼다. 여러 가지 방법을 검토한 끝에, 변환 과정에서 Blender 엔진을 사용하고, 서버리스(Serverless) 환경에서 배포하는 방향으로 결정했다. 이러한 요구 사항을 충족하기 위해 AWS Lambda를 컨테이너 기반으로 실행하는 방법을 선택했다.이번 글에서는 컨테이너 기반 Lambda의 개념과 이를 도입하는 과정에서 겪은 우여곡절을 공유하려고 한다.LambdaAWS Lambda는 서버를 관리할 필요 없이 코드 실행을 자동으로 처리하는 서버리스 컴퓨팅 서비스다. 사용자는 트리거 이벤트를 기반으로 코드를 실행할 수 있으며, 인프라를 직접 설정할 필요 없이 AWS가 자동으로 리소스를 할당하고 관리한다.Lambda를 활용하는 방..
문제 상황nvidia-smi 명령어를 쳤을때 에러 출력이 발생함초기 점검1. lspci 명령어 실행 결과# lspci -vv -s 01:00.001:00.0 VGA compatible controller: NVIDIA Corporation TU104 [GeForce RTX 2080 Rev. A] (rev ff) (prog-if ff) !!! Unknown header type 7f Kernel driver in use: nvidia Kernel modules: nvidiafb, nouveau, nvidia_drm, nvidiaUnknown header type 7f가 표시됨.Kernel driver in use: nvidia로 나오지만, 문제가 있을 가능성이 있음.2..
🔥 개요FastAPI와 RabbitMQ를 활용하여 비동기 메시지 소비 시스템을 구축하는 방법을 설명한다. RabbitMQ는 메시지 큐를 제공하여 애플리케이션 간의 비동기 통신을 가능하게 한다. 이를 FastAPI와 결합하면 고성능의 비동기 메시지 처리 서비스를 구현할 수 있다.이번 포스팅에서는 FastAPI 서버와 RabbitMQ를 연결하는 방법, 메시지를 소비하는 방식, 비동기적으로 외부 프로세스를 실행하는 방법을 간략하게 기술한다.📌 RabbitMQ란?RabbitMQ는 AMQP(Advanced Message Queuing Protocol) 기반의 메시지 브로커로, 메시지를 큐에 저장하고 비동기적으로 분산 시스템 간 데이터를 전달하는 역할을 한다.RabbitMQ를 사용하면 다음과 같은 이점이 있다:..
들어가며 Helm을 처음 사용할 때, 쿠버네티스 리소스를 쉽게 배포하고 관리할 수 있다는 점에서 정말 편리하다고 느꼈다.특히, 공개된 Helm Chart 저장소에는 이미 수많은 검증된 템플릿이 존재하기 때문에, 이를 활용하면 애플리케이션을 빠르게 배포할 수 있다. 하지만 실제 운영 환경에서는 기본 제공되는 Helm Chart를 그대로 사용하는 경우가 많지 않다.운영 정책이나 인프라 환경에 따라 리소스, 볼륨, 보안 설정을 조정해야 할 때가 많다. 이번 글에서는 Loki의 Ingester StatefulSet Helm Chart 템플릿을 분석하고, 이를 커스텀하는 방법을 설명해보겠다.또한, Helm 템플릿에서 자주 사용하는 문법도 정리하여 실전에서 바로 적용할 수 있도록 하겠다.Helm Chart 템플릿 ..
GlusterFS란? GlusterFS는 Red Hat이 개발한 오픈 소스 분산 파일 시스템으로, 여러 서버의 스토리지를 하나로 묶어 고가용성과 확장성을 제공하는 스토리지 솔루션이다.데이터가 여러 서버에 걸쳐 복제되므로, 단일 장애 지점(SPOF, Single Point of Failure)이 발생하지 않으며, 읽기 및 쓰기 성능을 확장할 수 있는 특징이 있다.📌 GlusterFS의 주요 특징✅ 확장성: 서버를 추가함으로써 용량과 성능을 쉽게 확장 가능✅ 고가용성(HA): 복제(Replication) 기능을 통해 서버 장애에도 데이터 유지✅ Self-Healing(자동 복구): 장애 발생 시 데이터 무결성을 유지하며 자동 복구✅ 분산(Distributed) 아키텍처: 중앙 컨트롤러가 없고, 분산된 구..