분류 전체보기 38

Grafana Observability구성

Observability ?Observability 정의는 시스템에서 외부로 출력되는 값알을 사용해서, 시스템의 내부 상태를 이해하고 예측하는 것 입니다. 구체적으로 장애가 발생할 위험이 있으면 미리 예측하고 운영자에게 통지하거나, 리소스의 증감을 미리 예측하는 것이라고 합니다.예측이 반복되는 것처럼 미래에 발생할 이벤트를 예측하고 IT운영을 자동화하는 것에 목적을 둡니다.Observability 는 메트릭, 로깅, 트레이싱 3가지로 구성됩니다. 메트릭(Metrics): 시스템의 성능 및 상태를 수치화하여 수집하는 데이터 (예: CPU 사용률, 요청 응답 시간).로깅(Logging): 시스템에서 발생하는 이벤트나 오류를 시점별로 기록하는 데이터 (예: 에러 로그, 디버그 메시지).트레이싱(Tracing)..

Cloud Tech 2025.03.01

EKS 노드 그룹

EKS 구성 노드 그룹과 OS를 살펴보겠습니다.본 글은 가시다님이 운영하는 AEWS3기 스터디 내용을 참고하여 작성하였습니다.  AWS Graviton (ARM) 노드 그룹64-bit Arm 프로세서 코어 기반의 AWS 커스텀 반도체로 고객 사례와 필요에 맞게 최적화된 칩입니다.동급 인스턴스 성능 비교시 20%의 낮은 비용, 40% 가격대비 성능 향상을 기대할 수 있습니다.인스턴스 타입 중 패밀리에 g가 들어간 것이 gravition을 뜻합니다.다음과 같이 AWS Graviton (ARM) Instance 노드그룹 (ng3) 배포하겠습니다.eksctl create nodegroup -c $CLUSTER_NAME -r ap-northeast-2 --subnet-ids "$PubSubnet1","$PubSu..

Cloud Tech 2025.02.23

EBS CSI Controller 정리

EKS 중 AWS 스토리지 서비스 기능들을 정리합니다.본 글은 가시다님이 운영하는 AEWS3기 스터디 내용을 참고하여 작성하였습니다. Kubernetes CSI(Container Storage Interface) 아키텍처CSI는 스토리지 인터페이스입니다. CSI와 쿠버네티스를 분리하여여 독립된 인터페이스를 제공하여 쿠버네티스 버전 업데이트 없이 관리할 수 있고 다양한 프로바이더를 사용할 수 있습니다.CSI Driver Container 는 각 노드의 볼륨을 관리하기 위해 데몬셋으로 배포됩니다.CSI Driver Container는 CSI API를 사용하여 Cloud API와 통신하고, 볼륨을 Kubernetes 노드에 자동으로 연결시킴EKS 내 EBS, EFS, S3 사용시에도 CSI Driver 아키텍..

Cloud Tech 2025.02.23

Kubeflow 구성 비용 최소화 및 대시보드 구성기(feat. JuJu)

Kubeflow는 AI/ML 워크로드를 관리하는 강력한 도구이지만, 학습 목적으로 구성하기에 강력한 컴퓨팅 성능이 필요합니다.클라우드 환경에서는 요구 컴퓨팅 성능이 곧 비용이라, 학습 목적으로는 부담이 큽니다. 여러 서칭 결과 비용을 최소화하기 위해 찾았던 툴인 Charmed Kubeflow를 통해 Ubuntu 서버(2xlarge)로 kubeflow 구성하고, addon 대시보드를 구성한 실습 내용을 공유합니다.   본 실습의 목표는 다음과 같습니다.Kubeflow 비용 최소화 - EKS 클러스터 구성과 최소 2xlarge 인스턴스 2대가 필요한 비용을 2xlarge 인스턴스 한대로 구성Kubeflow Add-on 모니터링 – 10여가지의 유기적으로 연결된 Add-on들을 분석할 수 있는 대시보드 구성I..

Cloud Tech 2025.02.16

RayCluster on EKS and Serving LLM Model

Amazon EKS(Elastic Kubernetes Service)는 AI/ML 워크로드를 운영하기에 적합한 환경을 제공합니다.이번 글에서는 DoEKS(Data on Amazon EKS) 프로젝트를 참고하여 EKS에서 AI/ML 모델을 운영하는 과정을 실습하였습니다.DoEKS는 EKS에서 확장 가능한 데이터 플랫폼을 구축하기 위한 도구 모음으로, Terraform 블루프린트 및 AWS CDK를 활용한 IaC(Infrastructure as Code) 템플릿, AI/ML 워크로드 실행을 위한 모범 사례, 성능 벤치마크 및 다양한 실습 예제를 제공합니다.본 실습의 목표는 다음과 같습니다. AI/ML 생태계 이해 – Amazon EKS에서 실행되는 AI/ML 도구 및 워크로드의 흐름을 이해합니다.EKS 기반..

Cloud Tech 2025.02.09

Kubernetes CI & CD (ArgoCD, Jenkins)

Overview지난 글에서 학습한 Jenkins CI 파이프라인을 확장하여 쿠버네티스 CI&CD를 Jenkins와 ArgoCD, Gogs를 통해 구성하겠습니다.  환경 구성실습 쿠버네티스 환경은 Kind로 구성하였습니다.Kind는 테스트 목적으로 로컬 환경에서 쿠버네티스를 구성시키는 도구입니다.# Install Kindbrew install kindkind --version# Install kubectlbrew install kubernetes-clikubectl version --client=true## kubectl -> k 단축키 설정echo "alias kubectl=kubecolor" >> ~/.zshrc# Install Helmbrew install helmhelm versionapiserve..

Cloud Tech 2024.12.22

Github Action CI/CD

OverviewGithub Action 학습한 내용을 정리합니다.참고는 Github Action 공식 문서와 CloudNet@ CI/CD 스터디를 참고하였습니다. Github ActionGithub Action 은 원격 레파지토리인 github가 제공하는 워크플로우 솔루션입니다.사용자가 정의한 워크플로(Workflow)를 통해 CI/CD 등 애플리케이션 자동화 작업을 실행할 수 있습니다.GitHub Actions는 서버리스(Serverless) 방식으로 동작하여, GitHub의 실행 환경(호스트된 실행 서버)이 사용자가 정의한 작업을 대신 실행합니다.워크플로우 구성만 하면 별도의 실행 환경 구성없이 자동화할 수 있다는 점과 GIt 이벤트(PR, 푸쉬, Issue) 에 유유연합니다. 젠킨스가 다양한 확장 ..

Cloud Tech 2024.12.15

도커 기반 애플리케이션 CI/CD 구성

CI/CDCI/CD의 목표는 코드 빌드부터 프로덕션 환경으로의 배포까지 전 과정을 자동화된 프로세스를 구성하는 것입니다. 수동으로 애플리케이션을 업데이트하는 경우 사람의 실수로 인해 구성 드리프트가 발생하거나 보안 취약점이 노출될 가능성이 높아지며, 이는 결국 애플리케이션 배포의 품질 저하로 이어질 수 있습니다.CICI(Continuous Integration)은 코드 변경 분을 버전 관리 리포지터리로 계속 통합하는 프로세스입니다. 변경된 코드가 리포지터리에 커밋되면 빌드가 시작됩니다. 빌드는 애플리케이션 특성에 따라 다른데 빠른 피드백을 원한다면 빌드 과정 중 테스트 단계를 포함하여 빌드를 망친 코드 변경분을 빠르게 찾을 수 있습니다.또한, 도커 기반의 애플리케이션들은 이미지 빌드 과정이 포함됩니다.이..

Cloud Tech 2024.12.08

DownTime Zero를 통한 EKS 운영 안정성 높이기

OverviewEKS 서비스 워크로드 운영 안정성을 높이기 위해 본 글에서 아래 항목을 테스트하겠습니다.서비스 무중단을 위한 애플리케이션 파드 내 ReadinessGate, preStop 설정 후 Downtime Zero 확인 Serivce Downtime Zero 구성EKS 를 비롯한 쿠버네티스에서 롤링 업데이트 또는 노드 변경에 따라 파드 재기동을 자주 발생합니다.일반적으로 파드가 이중화되고 파드를 하나씩 롤링업데이트하면 서비스 이상이 없을 것으로 예상하지만,,Cloudwatch를 비롯한 대시보드 확인시 ELB 5XX가 일부 확인됩니다.이는 AWS 타겟 그룹에서 파드 등록 및 삭제 과정에서 발생합니다.AWS 로드밸런서 컨트롤러는 타켓 그룹에 새 파드를 등록하고, 기존 파드를 동시에 제거합니다.대상 그..

Cloud Tech 2024.11.02

Cilium Service Mesh on EKS

OverviewAWS 블로그 글 Getting Started with Cilium Service Mesh on Amazon EKS 를 기반으로 EKS에서 Clium 기반의 Service Mesh를 구성하고 구성 요소를 확인하겠습니다.Sidecarless Service Mesh for Cilium? Cilium 은 eBPF(Extended Berkeley Packet Filter)를 기반으로 하는 K8s CNI Plugin 입니다.BPF는 Kernel에 Snadbox 형태로 설치되어 패킷을 필터링하고 제어할 수 있습니다. 기존 CNI 로 Iptables를 통해 패킷을 제어하게 되면 네임스페이스 간의 통신에서 오버헤드가 발생하지만, BPF는 커널에 내장되어 있어 성능향상과 패킷 추적을 기대할 수 있습니다...

Cloud Tech 2024.10.26