전체 글 106

<p style="line-height: 1.85; letter-spacing: -0.01em; word-spacing: normal; margin: 0 0 18px; word-break: keep-all; overflow-wrap: anywhere;" data-ke-size="size16">머신러닝 모델을 학습한 뒤 실제 서비스에서 사용하려면 데이터 준비, 배포, 모니터링이 함께 필요합니다. 이번 글에서는 『머신러닝 플랫폼 엔지니어링』 책의 1~2챕터

머신러닝 모델을 학습한 뒤 실제 서비스에서 사용하려면 데이터 준비, 배포, 모니터링이 함께 필요합니다. 이번 글에서는 『머신러닝 플랫폼 엔지니어링』 책의 1~2챕터에서 다룬 머신러닝 수명주기와 MLOps를 정리하고, 각 단계를 지원하는 플랫폼의 역할을 살펴봅니다.목차1. 모델을 만드는 일과 운영하는 일2. 실험 단계: 모델 훈련·평가·검증의 반복문제 정의탐색적 데이터 분석데이터 수집 및 준비데이터 버전 관리모델 훈련모델 평가와 모델 검증3. 개발·스테이징·프로덕션: 배포까지 전체 흐름 자동화모델 배포: 검증된 모델을 서비스에 연결모델 모니터링과 재훈련으로 이어지는 반복4. 머신러닝 플랫폼파이프라인 오케스트레이션: 작업의 실행과 연결 관리피처 스토어: 훈련과 추론에 필요한 입력 제공실험 추적: 어떤 조건에..

AI & ML/MLOps Study 2026.10.24

[머신러닝 플랫폼 스터디] 사전 학습 — 머신러닝과 LLM 이해하기

머신러닝 플랫폼 스터디를 시작하며, 책을 읽기 전에 필요한 개념을 정리합니다. 스팸 메일 예시로 머신러닝과 학습·추론을 살펴보고, AI·ML·딥러닝·LLM의 관계와 LLM의 문장 생성 방식을 이어서 설명합니다.목차1. 머신러닝이란 무엇인가사람이 규칙을 직접 정한다면머신러닝은 사례에서 패턴을 찾습니다학습과 추론머신러닝으로 할 수 있는 일2. ML과 LLM은 어떤 관계인가AI·ML·딥러닝·LLM의 관계LLM은 자연어를 다루는 머신러닝 모델입니다LLM은 어떻게 문장을 생성할까LLM은 무엇으로 학습할까LLM에서도 학습과 추론은 다릅니다참고 자료1. 머신러닝이란 무엇인가머신러닝(Machine Learning, ML)은 컴퓨터가 여러 사례를 보고 패턴을 찾아, 새로운 입력에 대한 결과를 예측하도록 만드는 방법입니다..

AI & ML/MLOps Study 2026.10.23

왜 나의 karpenter 노드가 삭제되지 않을까?

개요karpenter를 사용하다 보면 파드의 전체 request가 줄어들어도 전체 노드의 allocatable 리소스가 줄어들지 않는 상황이 종종 발생합니다. 코드 기반으로 노드 통합 방식을 파악하여 어떤 이유로 노드 통합이 중지될 수 있는지 알아봅니다. Karpenter 노드 통합이 가능한 조건1. Consolidate 후보 생성1) 노드가 Consolidatable 상태일 때 NodeClaim이 Initialized 상태여야 함(NodeClaim 생성 후 실제 노드가 완전히 준비된 상태)NodeClaim이 마지막 Pod 이벤트 시간/초기화 시간(LastPodEventTime)으로부터 consolidateAfter 기간이 경과해야 함참고) LastPodEventTime란? 노드에서 다음..

Kubernetes 2025.12.26

EKS Node의 최대 Pod 수 - Security Groups per Pod 사용 시

개요Security Groups per Pod 사용 시 EKS 노드에 설정되는 최대 pod 수가 달라지는 부분에 대해 설명합니다.Security Groups Per Pod(sgpp)해당 기능은 pod에서 노드의 sg를 사용하지 않고, pod 개별로 sg를 설정하여 사용할 수 있는 기능입니다.VPC CNI에서 ENABLE_POD_ENI=true 설정을 추가하여 사용할 수 있습니다.ENABLE_POD_ENI=true 설정을 추가하면, 노드에는 하나의 Trunk ENI가 생성되고, pod가 생성될 때마다 Branch ENI가 생성되어 Trunk ENI와 연결됩니다.Branch ENI에 pod의 sg가 설정됩니다. 참고로, Trunk ENI는 EC2에 추가할 수 있는 최대 ENI 수에 포함됩니다(참고). 그리고..

Kubernetes 2024.11.18

Amazon EKS VPC CNI + AWS LB Controller 사용 시 설정 별 통신 흐름

가시다님의 Kubernetes Advanced Networking Study에 참여하게 되어, 스터디 때 다룬 주제를 정리하려고 합니다.9주차는 VPC CNI + AWS LB Controller를 주제로 진행되었습니다.이번 글에서는 VPC CNI와 AWS LB Controller를 함께 사용할 때 서비스 접근 시 통신 흐름에 대해 살펴보려 합니다. 실습 환경EKS 클러스터 생성# YAML 파일 다운로드curl -O https://s3.ap-northeast-2.amazonaws.com/cloudformation.cloudneta.net/kans/eks-oneclick.yaml# CloudFormation 스택 배포# aws cloudformation deploy --template-file eks-one..

Cilium CNI와 eBPF

가시다님의 Kubernetes Advanced Networking Study에 참여하게 되어, 스터디 때 다룬 주제를 정리하려고 합니다.8주차는 Cilium CNI를 주제로 진행되었습니다. BPF/eBPF클러스터 내 iptables의 성능을 개선하기 위해 eBPF를 지원하는 CNI가 다수 있고, 사용 사례도 증가하고 있습니다.Kubernetes 공식 문서에서도 kube-proxy를 선택 사항으로 표기하고 있습니다.BPF(Berkeley Packet Filter)네트워크 패킷 필터링에 사용되는 기술로 커널에서 실행되는 일종의 VM(Virtual Machine)입니다.sandbox 환경(격리된 환경)에서 실행되어 BPF를 통해 커널이 이벤트를 트리거할 때 안전하게 실행할 수 있습니다.커널을 다시 컴파일하지 ..

istio 이해하기 - Envoy proxy

가시다님의 Kubernetes Advanced Networking Study에 참여하게 되어, 스터디 때 다룬 주제를 정리하려고 합니다.7주차는 Istio를 주제로 진행되었습니다.이번 글에서는 Istio의 Data Plane인 proxy에 대해 다루고 있습니다.istio 아키텍처proxy : data plane, Envoy proxy 기반으로 구성(L4/7 proxy) 되며, 마이크로서비스 간의 모든 네트워크 통신을 라우팅하고 제어함istiod : control plane• Pilot - data plane과 통신하며 라우팅 규칙 동기화, 서비스 디스커버리와 로드 밸런싱 설정을 제공• Citadel - 인증서 관리, mTLS 통신 담당• Galley - Service의 endpoint 정보 업데이트Env..

CoreDNS와 NodeLocal DNS 이해하기

가시다님의 Kubernetes Advanced Networking Study에 참여하게 되어, 스터디 때 다룬 주제를 정리하려고 합니다. 6주차는 Ingress & Gateway API + CoreDNS를 주제로 진행되었습니다. 이번 글에서는 CoreDNS와 NodeLodalDNS에 대해 다루고 있습니다. CoreDNSCoreDNS는 Kubernetes 클러스터 내부 DNS 서버입니다. 클러스터에서 Pod와 Service가 생성되면 자동으로 이에 대한 DNS 레코드가 생성됩니다. CorefileCoreDns deployment에는 아래 configmap을 /etc/coredns에 마운트하여 사용하고 있습니다.apiVersion: v1 data: Corefile: | .:53 { errors health ..

kube-proxy IPVS 모드

가시다님의 Kubernetes Advanced Networking Study에 참여하게 되어, 스터디 때 다룬 주제를 정리하려고 합니다.5주차는 LoadBalancer(MetalLB), IPVS + LoxiLB를 주제로 진행되었습니다.이번 글에서는 kube-proxy IPVS 모드에 대해 다루고 있습니다.아래 테스트는 kubeadm를 사용한 EC2 기반 클러스터에서 진행됩니다.IPVS 세부 설정클러스터 생성 후 kube-proxy configmap을 보면, 아래와 같은 옵션을 확인할 수 있습니다....ipvs: excludeCIDRs: null minSyncPeriod: 0s scheduler: "" strictARP: false syncPeriod: 0s tcpFinTimeout: 0s t..

kube-proxy 모니터링 환경 구성 실습(serviceMonitor, podMonitor)

가시다님의 Kubernetes Advanced Networking Study에 참여하게 되어, 스터디 때 다룬 주제를 정리하려고 합니다.5주차는 LoadBalancer(MetalLB), IPVS + LoxiLB를 주제로 진행되었습니다.이번 글에서는 kube-proxy 모니터링 환경 구성 실습에 대해 다루고 있습니다.아래 포함된 테스트는 kind로 구성한 클러스터에서 진행되었습니다.클러스터 생성# EC2 생성curl -O https://s3.ap-northeast-2.amazonaws.com/cloudformation.cloudneta.net/kans/kans-5w.yamlaws cloudformation deploy --template-file kans-5w.yaml --stack-name mylab -..

반응형