일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- vuejs
- DFS와BFS
- 안드로이드스튜디오
- 동적계획법
- django
- issue
- Python
- 분할정복
- BAEKJOON
- cos pro
- cos
- Algorithm
- 알고리즘
- 코드품앗이
- 코테
- 동적계획법과최단거리역추적
- AndroidStudio
- C++
- DFS
- android
- 파이썬
- 백준
- 코딩테스트
- Flutter
- cos pro 1급
- 개발
- codingtest
- 안드로이드
- Vue
- DART
- Today
- Total
목록Research/Devops (16)
Development Artist
🔥 개요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) 아키텍처: 중앙 컨트롤러가 없고, 분산된 구..
더보기해당 포스트는 '쿠버네티스 시작하기 3/e' 내용 일부를 발췌하여 작성하였습니다.시작하기오늘은 쿠버네티스를 왜? 사용하는가에 대한 의문으로 글을 적어보려합니다. 여러가지 이유가 있겠지만, 5가지의 이유로 쿠버네티스를 사용하는 것 같습니다. - 개발 속도- 확장성- 인프라 추상화- 효율성- 클라우드 네이티브 에코시스템 지금부터 하나씩 살펴보도록 합시다.개발 속도불변성 (Immutability)애플리케이션이나 그 환경을 배포한 후, 그 상태를 직접 변경하지 않고, 필요한 변경 사항이 있다면 새로 이미지를 생성하여 배포하는 방식입니다. 이는 시스템의 일관성 유지와 디버깅을 더 쉽게 해줍니다.컨테이너 이미지의 불변성컨테이너 이미지는 배포 이후에는 변경되지 않습니다. 변경이 필요하다면 새로운 버전의 이미지를..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dss8xI/btsmQfvdlzJ/u1LH1uWmUlfjiYhcdQSqV0/img.png)
이슈 AWS RDS MySQL 프리티어로 생성 후 DBeaver Tool을 통해 연결을 하려고 했지만, Connection Timed Out 이 발생. 해결 구글링을 통해 다양한 해결 방법이 있었는데, 전부 시도해봤지만 해결 되지 않았다. 그 과정 포함 최종적으로 해결한 부분까지 언급 하겠다. 1. RDS 생성 시 연결>퍼블릭 액세스 허용 2. 보안그룹 인바운드 규칙 편집 외부에서 RDS에 접근을 하기 위해서 보안그룹을 설정해줘야 한다. MySQL의 경우 3306 포트로 내 IP 주소 허용을 해주었다. 3. 라우팅 테이블 편집 DB 서브넷 그룹이 들어있는 서브넷에서 라우팅 테이블 탭에 igw이 연결이 되어있는지 확인. 여기까지 구글링을 통해 알아본 방법인데, 위의 3개의 방법을 했음에도 'Connecti..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cv6dw4/btrUVkijfZI/q0kaoe3zMkLPnkkYsglMe0/img.png)
Docker 컨테이너 환경에서 Postgresql을 올리려고 하면 버전 11 이상을 쓰라고 권고를 하고 있다. 그도 그럴게, Postgresql 버전 정책을 찾아보면, 아래와 같이 Version 11 이상을 지원하는 것을 확인할 수 있었다. 필자가 설치한 Centos 7 OS에서 단순히 yum -y install postgresql-server postgresql-contrib을 하면, 아래 처럼 버전 9가 깔리는 것을 확인할 수 있다. 따라서, 11 이상의 버전을 설치할 수 있도록 레포에 등록을 해준다. 일단 Postgresql RPM인 'pgg-redhat-repo' 를 설치. yum install -y https://download.postgresql.org/pub/repos/yum/reporpms..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/tD2N1/btrUncsppCx/wnbJJMWY9qqWZSp39FmVg1/img.png)
1. Kubernetes 사전 준비사항 (공통) - Worker 노드 개수 정책 설정. 용도에 맞게 Worker 노드의 수를 결정할 수 있다. 테스트 환경에서는 일단 master(Control-plane) 노드 1개와 worker 노드 1개로 설정하겠다. (why? 사용 가능한 VM 자원이 2대 뿐이다!ㅠㅠ) Reference: https://learnk8s.io/kubernetes-node-size Architecting Kubernetes clusters — choosing a worker node size When you create a Kubernetes cluster, one of the first questions that pops up is: "what type of worker nodes ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/H5I5r/btrT9G7fV0v/dqGvyNeyb92wVDiP98But1/img.png)
VM 하나를 올리고 Centos 7를 설치하였다. 일단 Docker를 다운받기 전 확인 사항이 있다. systemctl status firewalld getenforce selinux 보안 상태 체크 이제 여기에 Docker를 설치해보겠다. Docker docs에 Centos 설치 방법에 대해 자세히 가이드 하고 있다. https://docs.docker.com/engine/install/centos/ Install Docker Engine on CentOS docs.docker.com yum -y update Centos 7 iso를 이전에 다운 받아두었던 것을 사용했다. 혹여 레포 업데이트 사항이 있을 수 있다. yum -y install yum-utils yum-config-manager를 사용하기..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/b1pp6h/btrT81KAb8V/rkt0KJ5TDpwfWFA45dvyx0/img.png)
확장자는 그 파일의 특성이 무엇인지 쉽게 알아 보기 위해서 붙이는 것이지만, 바이너리 이진 파일에 .txt 확장자를 붙일수도 있는 것처럼 말그대로 이름일 뿐이다. 그래서 확장자 보다는 해당 파일의 실제 형식을 확인하는 것이 중요하다. .pem PEM (Privacy Enhanced Mail)은 Base64 인코딩된 ASCII 텍스트 이다. 파일 구분 확장자로 .pem 을 주로 사용한다. 노트패드에서 열기/수정도 가능하다. 개인키, 서버인증서, 루트인증서, 체인인증서 및 SSL 발급 요청시 생성하는 CSR 등에 사용되는 포맷이며, 가장 광범위하고 거의 99% 대부분의 시스템에 호환되는 산업 표준 포맷이다. (대부분 텍스트 파일) .crt 거의 대부분 PEM 포맷이며, 주로 유닉스/리눅스 기반 시스템에서 인..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/c7lxtx/btrzo9XU0n9/a2vialUKzvRSJi9RtGV8C0/img.png)
데몬 종류 1. abrtd abrt(Automatic Bug Reporting Tool)는 RedHat 에서 제공하는 자동 버그 리포팅 툴이다 . 백그라운드 서비스 형태로 root 권한으로 기동된다 2. abrt-ccpp C/C++ 문제 관련 분석을 위한 abrt서비스 데몬 3. abrt-oops 커널 문제 관련 분석을 위한 abrt서비스 데몬 4. acpid Advanced Configuration and Power Interface 의 약자로 커널로부터 ACPI(전력 관리 규약)이벤트를 받아서 처리 5. amanda 서버/클라이언트 환경의 네트웍 백업 시스템 6. amd 자동마운트 서비스(automatically mount file system) 7. anacron 제 시간에 실행하지 못하고 남겨진 ..