전체 글
-
EFK Stack 구성하기 (with Atlassian)Kubernetes 2025. 3. 23. 21:21
EFK 스택이란?EFK 스택은 Kubernetes에서 널리 사용되는 로깅 시스템으로, Elasticsearch, Fluentd, Kibana로 구성됩니다.Fluentd: 다양한 소스에서 로그 데이터를 수집·집계한 후 여러 대상으로 전송하는 오픈소스 로그 프로세서입니다.Elasticsearch: 대용량 데이터를 빠르게 검색·분석할 수 있는 분산형 검색 및 분석 엔진입니다.Kibana: Elasticsearch에 저장된 데이터를 검색하고 시각화할 수 있는 오픈소스 대시보드 도구입니다. ECK 설치ECK Operator ECK Operator는 Kubernetes에서 Elasticsearch, Kibana, APM Server 등의 리소스를 생성하고 관리할 수 있도록 해주는 컨트롤러로, Elastic이 ..
-
ArgoCD를 이용한 GitOps 구성Kubernetes 2025. 3. 23. 21:10
GitOps란? GitOps는 애플리케이션 배포 및 인프라 관리를 Git을 중심으로 자동화하는 운영 방식입니다. GitOps는 Git 저장소를 Single Source of Truth으로 삼아 선언적 구성과 자동화를 기반으로 Kubernetes 클러스터나 기타 시스템을 관리합니다. 이는 CI/CD와 DevOps의 확장된 개념으로, 특히 Kubernetes 환경에서 효과적입니다. GitOps의 핵심 개념Git을 Single Source of Truth모든 인프라 구성 및 애플리케이션 정의(예: Kubernetes 매니페스트, Helm 차트, Terraform 스크립트 등)를 Git 저장소에 저장합니다.변경 사항은 Git 커밋을 통해 기록되어 투명성과 추적성을 제공합니다.선언적 구성(Declarative..
-
Prometheus & Grafana - 2) 설치하기Kubernetes 2025. 3. 23. 19:38
Helm Chart 다운로드kube-prometheus-stack는 Kubernetes 클러스터 모니터링을 위한 종합적인 솔루션을 제공합니다. 이 스택은 Kubernetes 매니페스트, 대시보드, 알림을 포함하는 Kubernetes 클러스터 모니터링을 쉽게 구성하고 운영할 수 있도록 돕는 문서와 스크립트를 제공합니다. 주요 요소는 Prometheus와 Grafana를 포함하며, 이를 통해 Kubernetes 환경에서의 메트릭 수집, 시각화, 알림을 자동화하고 관리할 수 있습니다. 저장소 추가helm repo add prometheus-community https://prometheus-community.github.io/helm-chartshelm repo update 차트 다운로드helm pull p..
-
Prometheus & Grafana - 1) 개요Kubernetes 2025. 3. 23. 19:13
Prometheus 란?Prometheus는 메트릭을 수집된 작업에서 직접 또는 푸시 게이트웨이를 통해 간접적으로 가져옵니다. 수집된 데이터는 로컬에 저장되고, 규칙을 실행하여 데이터를 집계하거나 새로운 시간 시리즈를 생성하거나 알림을 생성합니다. 수집된 데이터는 Grafana와 같은 시각화 도구나 API 소비자를 통해 시각화할 수 있습니다. 주요 특징다차원 데이터 모델Prometheus는 데이터를 '메트릭 이름'과 '키/값 쌍'으로 식별된 시간 순서대로 기록합니다. 예를 들어, 웹 서버의 응답 시간이나 데이터베이스의 활성 연결 수와 같은 데이터를 시간에 따라 기록합니다.PromQL (쿼리 언어)Prometheus는 쿼리 언어인 PromQL을 사용하여 데이터를 조회합니다. 이 언어를 이용하면 다양한 조..
-
CloudNativePGKubernetes 2025. 3. 23. 18:53
CNPG(CloudNativePG) 란?PostgreSQL을 Kubernetes 환경에서 쉽게 관리할 수 있도록 도와주는 Kubernetes Operator입니다.PostgreSQL을 수동으로 관리하는 대신, CNPG가 Kubernetes 환경에서 이를 자동으로 처리합니다. 주요 기능Kubernetes 네이티브 접근 : CloudNativePG는 Kubernetes의 컨트롤러 확장을 통해 PostgreSQL 클러스터를 관리합니다. 오퍼레이터 패턴을 채택하여 복잡한 애플리케이션을 관리합니다.PostgreSQL 상태 관리 : PostgreSQL 클러스터의 상태를 Kubernetes의 Cluster 리소스에 직접 반영하여, Kubernetes API를 통해 쉽게 확인하고 관리할 수 있습니다.고가용성 및 자동..
-
ArgoCD 설치 (Helm)Kubernetes 2025. 3. 23. 18:35
ArgoCD란? Argo CD는 GitOps 패턴을 따라 Git 저장소를 원하는 애플리케이션 상태를 정의하는 Source of Truth으로 사용하며, Kubernetes 컨트롤러로 구현된 도구입니다. 실행 중인 애플리케이션의 현재 실제 상태를 지속적으로 모니터링하고, Git 저장소에 지정된 원하는 대상 상태와 비교하여 관리합니다. 주요 기능 및 동작 원리상태 비교 및 동기화배포된 애플리케이션의 실제 상태가 대상 상태와 일치하지 않을 경우, 해당 애플리케이션은 OutOfSync 상태로 간주됩니다.Argo CD는 이러한 상태 차이를 보고 및 시각화하며, 실제 상태를 원하는 상태로 자동 또는 수동으로 동기화할 수 있습니다.Git 저장소의 대상 상태가 수정되면 변경 사항을 자동으로 적용하여 지정된 대상 환..
-
Apache 소스 설치Linux 2025. 3. 23. 14:18
설치 파일 다운로드https://archive.apache.org/dist/httpd/httpd (https://httpd.apache.org/download.cgi) Apache HTTP Server. 클라이언트로부터의 HTTP 요청을 받아들이고, 이에 대한 응답을 제공하는 서버 apr, apr-util (https://apr.apache.org/download.cgi)apr : 아파치 HTTP 서버가 플랫폼에 독립적으로 동작할 수 있도록 하는 라이브러리 apr-util : APR의 유틸리티 라이브러리로, 데이터베이스 접속, XML 파싱 등의 기능을 제공 pcre2 (https://github.com/PCRE2Project/pcre2/tags) 정규 표현식을 처리하기 위한 라이브러리 (기존pcre는 ..
-
MetalLB 설치하기Kubernetes 2025. 3. 22. 23:26
MetalLB란?MetalLB는 베어메탈 Kubernetes 클러스터에서 사용할 수 있는 로드 밸런서 구현체입니다. 일반적으로 Kubernetes에서 로드 밸런서를 사용하려면 클라우드 제공자(GCP, AWS, Azure 등)의 네트워크 서비스를 이용하는데, 베어메탈 환경에서는 이러한 클라우드 네트워크 서비스가 없기 때문에 로드 밸런서를 직접 설정해야 합니다.MetalLB는 이를 해결하기 위해 **표준 네트워크 라우팅 프로토콜(BGP, ARP)**을 사용하여 베어메탈 환경에서도 Kubernetes 클러스터의 Service에 외부 IP를 할당하고, 외부 트래픽을 클러스터 내부의 서비스로 전달할 수 있게 합니다. 요구사항Kubernetes v1.13.0 이상클러스터 네트워크 구성https://metall..