목록DevOps (8)
덕규의 아즈카반
컴퓨터 구성도 오늘날 컴퓨터는 폰 노이만 구조(Von Neumann Architecture) 를 따라 구성됩니다.프로그램(명령어)과 데이터를 메모리에 저장하고,CPU가 이를 순서대로 읽어 실행하는 구조를 가집니다.이러한 구조로 인해 프로그램도 결국 데이터로 동작을 하며,디스크에 저장되었다가 메모리에 올라가 실행되게 됩니다. 운영체제에 대해 얘기를 할 때, 가장 많이 나오는 예시인 주방에 비유하면 쉽습니다.요리를 할 때는 창고에 있는 재료들로 바로 요리를 시작할 수는 없습니다.재료들을 조리대로 가져와야 하고,그 중에서도 자주 쓰이는 것은 손이 닿는 선반 위에 올려두며,손에 쥔 재료들에 대해서만 실제로 썰고 볶아 요리를 할 수 있습니다. CPU명령어 실행·연산요리사레지스터연산 직전/직후 값 보관요리사의 양손..
작업을 진행해오며 모델, 게이트웨이, 관측성을 갖춘 Agentic AI 플랫폼을 구축했습니다.이번에는 이 플랫폼 위에,"Loan Buddy" 라는 지능형 대출 처리 어플리케이션을 구축해보겠습니다. 이 과정에서 AI 에이전트가 복잡한 워크플로우를 어떻게 자동화하는지,배포하고 추적하며 확인하겠습니다. 어플리케이션 목표 AI 어플리케이션 구축: 앞서 구축한 플랫폼 사용지능형 에이전트 배포: 비즈니스 의사결정을 자동으로 수행Model Context Protocol(MCP) 사용: 에이전트에 외부 도구와의 기능 제공에이전트 워크플로우 추적: Langfuse를 활용한 관측성 확보아키텍처: Kubernetes 위의 AI 에이전트 구조 아키텍처 이전에 만들어 놓은 플랫폼에 에이전트와 MCP 서버를 추가해 구축할 예정..
LiteLLM 게이트웨이를 구성하며,모든 모델 요청이 한 지점을 지나가는 구조를 만들었습니다. 이번 글에서는 게이트웨이를 지나간 모든 대화를 추적하는 관측성 플랫폼에 대해 살펴보겠습니다.LangfuseLangfuse란?Langfuse는 다음을 제공하는 오픈소스 LLM 관측성 플랫폼포괄적인 추적: 전체 컨텍스트와 함께 캡처되는 모든 LLM 상호작용비용 추적: 모든 모델에 걸친 토큰 사용량 및 비용성능 분석: 지연시간, 처리량, 품질 지표디버깅 도구: 상세한 요청/응답 검사다중 데이터베이스 아키텍처: 확장을 위한 PostgreSQL + ClickHouse + Redis출처: AWS Workshop관측성 스택 탐색먼저 Langfuse가 어떤 컴포넌트로 구성되어 있는지 확인합니다. # 완전한 관측성 스택 확인k..
지난 글에서는 EKS 위에 배포된 개별 모델들과 직접 상호작용해보았습니다.이어서, 개별 컴포넌트들이 어떻게 하나의 플랫폼으로 통합되는지 정리해보겠습니다. 이번에는 LiteLLM을 통합 API 게이트웨이로,Langfuse를 관측성 플랫폼으로 연결해,Agentic AI 어플리케이션을 지탱하는 인프라를 완성합니다. 오늘은 LiteLLM을 중점적으로 다루고, Langfuse는 다음 글에서 이어가겠습니다. 아키텍처 Open WebUI의 모든 요청은 API Gateway Layer의 LiteLLM을 지나,vLLM 또는 AWS Bedrock으로 라우팅됩니다. 이 과정에서 발생하는 모든 Trace가 Langfuse로 흘러가고,Langfuse는 이를 PostgreSQL, ClickHouse, Redis에 저장합니다.이..
최근 OSSAI 활동을 통해, GenAI On EKS에 대해 교육받을 수 있는 기회가 생겼습니다. 교육 기간 중 Amazon EKS 기반의 Agentic AI 플랫폼 설계 및 배포와 관련하여,AWS로부터 핸즈온 가능한 플랫폼을 제공받아 직접 작업해볼 수 있었습니다. 이번 핸즈온의 목표는,LLM 배포부터 지능형 어플리케이션 구축까지 AI 플랫폼을 구축하는 것이었습니다. 핸즈온 환경Agentic AI 플랫폼: EKS Auto ModeLLM: AQwen 3 8B와 DeepSeek R1 Qwen 3 8B(Neuron Chip), Amazon Bedrock (Claude)최신 AI 패턴: 관측성, 비용 추적, 확장성프레임워크: LangChain, LangGraph, Model Context Protocol(MCP..
LDAP란?LDAP란?LDAP(Lightweight Directory Access Protocol)는 디렉토리 서비스를 제공하기 위한 프로토콜네트워크상에서 조직이나 개인, 파일, 디바이스 등을 쉽게 조회할 수 있도록 해줍니다.출처 : 삼성 SDS 블로그 우선 LDAP를 이해하기 위해서는 "디렉터리 서비스"에 대한 이해가 필요합니다.디렉터리 서비스는 사람, 그룹, 장비, 계정 같은 개체의 속성 정보를 계층적으로 저장하고,조회와 인증에 최적화된 특수 목적의 데이터 저장소입니다.쉽게 말하면, 디렉터리 서비스란 일종의 조직도와 같습니다.읽기(조회, 인증)가 압도적으로 많고, 쓰기(사용자 추가, 수정)는 드물다는 가정 위에서 만들어졌습니다.여기서, 일반적으로 사용되는 RDB와의 차이가 있습니다.흔히 사용되는 My..
다음으로는 Mac에서 쿠버네티스를 설치하는 방법을 다뤄보고자 합니다. Mac 사양OS : ARM / 8코어 / SSD: 약 512GB / RAM: 16GB Rocky Linux ISO 다운로드 Rokcy Linux ISO v9.7 ISO 다운 https://rockylinux.org/download 구체적인 Rocky Linux 설치 방법https://frontheadlock.tistory.com/4 VMware Fusion 설치 VmwareFusion 설치 관련 자세한 내용https://seaotter.tistory.com/178 Rokcy Linux 세팅 Network 및 호스트 이름 > IPV4 설정Method : 수동Address : 192.168.56.30 / netmask : 255.255...
최근 컨테이너 기반의 CI 환경에 대해 공부하고자 JenkinsCI/Docker 공식 레포지토리를 포크해왔다. Jenkins는 전부터 꾸준히 사용해왔지만 정확한 동작방식에 대해 파악하고,컨테이너 기반 CI 환경에서 Jenkins가 어떤 방식으로 실행되고 환경을 구성하는지 이해해보고 싶었다.Jenkins 이미지는 단순 WAR 파일을 실행이 아닌, 여러 .sh를 통한 환경 변수 설정, 권한 처리, 플러그인 준비 등을 거친다.이러한 동작을 코드 레벨에서 직접 확인해보고자 레포지토리를 탐색하게 되었다. 탐색할 준비를 마치고, jenkins-support 스크립트를 읽던 중 retry_command 함수의 주석과 내용이 일치하지 않는 것을 발견했다. # Retries a command a configurable ..
