본문 바로가기

cluster16

PostgreSQL 성능 향상 Performance Tuning & Optimization PostgreSQL의 성능을 향상시키기 위해 다양한 튜닝 옵션을 사용할 수 있습니다. 다음은 PostgreSQL을 Docker Compose로 기본으로 올린 후 성능을 향상시키기 위한 몇 가지 일반적인 조치입니다. 컨테이너 자원 할당 조정 docker-compose.yml 파일에서 PostgreSQL 컨테이너에 할당된 자원을 적절하게 조정합니다. mem_limit 및 cpus와 같은 옵션을 사용하여 메모리 및 CPU 제한을 설정할 수 있습니다. services: postgres: image: postgres:latest mem_limit: 2g cpus: 2 ... PostgreSQL 설정 튜닝 PostgreSQL 설정을 변경하여 성능을 향상시킬 수 있습니다. PostgreSQL 컨테이너 내에서 post.. 2023. 12. 15.
대량 데이타 실시간 처리 분산 메시징 시스템 Kafka 구조 및 구성 Apache Kafka는 대용량의 데이터를 안정적으로 수집, 저장 및 처리하기 위한 분산 스트리밍 플랫폼입니다. 주로 대규모 데이터의 실시간 스트리밍 및 이벤트 처리에 사용되며, 여러 소비자에게 데이터를 안전하게 전달할 수 있는 메시징 시스템의 역할을 합니다. 주요 특징 분산 아키텍처: Kafka는 여러 브로커로 구성된 분산 아키텍처를 가지며, 데이터를 여러 노드에 분산하여 안정성과 확장성을 제공합니다. 토픽 기반 메시지 큐: 데이터는 토픽(topic)이라는 카테고리로 구분되며, 생산자(producer)가 메시지를 생성하고, 소비자(consumer)가 해당 토픽에서 메시지를 구독하여 처리합니다. 내결함성: 브로커 중 하나가 실패해도 데이터의 유실 없이 안전하게 처리할 수 있도록 내결함성을 제공합니다. 확.. 2023. 12. 8.
분산 애플리케이션 코디네이션 용도로 Zookeeper 시스템 구성 Zookeeper는 분산 환경에서 시스템 간의 조정 및 동기화를 담당하는 오픈 소스 분산 서비스입니다. 주로 대규모 분산 시스템에서의 데이터 관리, 복제, 선택, 리더 선출 등의 작업을 처리합니다. 이는 클러스터 내 각 노드 간의 정보를 안전하게 유지하고 서비스의 일관성을 보장하는 데 중요합니다. Zookeeper의 주요 특징 Coordination Service: Zookeeper는 여러 서버 간의 조정 및 동기화 서비스를 제공하여 데이터 일관성을 유지합니다. Atomic Broadcast: Zookeeper는 데이터를 일관되게 배포하는 데 사용되는 원자적 브로드캐스트 메커니즘을 제공합니다. Consensus: Zookeeper는 분산 시스템에서의 일관성을 위해 투표 기반의 합의 알고리즘을 사용합니다... 2023. 12. 7.
외부이름(ExternalName) 서비스를 지원하는 Ingress Controller Ingress Controller는 ExternalName 유형의 서비스로의 요청 라우팅을 지원합니다. ExternalName 서비스는 주로 클러스터 외부의 IP 주소로 해석되는 외부 DNS 이름에 의해 정의됩니다. 이를 통해 Ingress Controller를 사용하여 클러스터 외부의 대상으로 요청을 라우팅할 수 있습니다. 참고: 이 기능은 NGINX Plus에서만 사용할 수 있습니다. 전제 조건 ExternalName 서비스를 사용하려면 먼저 ConfigMap을 사용하여 하나 이상의 리졸버를 구성해야 합니다. NGINX Plus는 이러한 리졸버를 사용하여 서비스의 DNS 이름을 해석합니다. 다음은 리졸버를 구성하는 예시 ConfigMap입니다. kind: ConfigMap apiVersion: v1 .. 2023. 12. 3.
Docker 환경 Container를 Kubernetes 환경으로 이전하는 과정 간단한 Flask 어플리케이션을 Docker에서 Kubernetes로 이전하는 과정을 정리했습니다. 도커 이미지 수정 기존 Dockerfile에서 필요한 라이브러리 및 환경 설정을 추가하거나 수정한다. FROM python:3.8 WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY . . CMD ["python", "app.py"] Kubernetes 매니페스트 파일 작성 deployment.yaml 및 service.yaml 파일을 작성한다. # deployment.yaml apiVersion: apps/v1 kind: Deployment metadata: name: flask-app sp.. 2023. 11. 29.