반응형

분류 전체보기 68

GitLab을 Amazon EC2에 Docker 없이 설치하기

이번에 GitLab을 EC2에다가 Docker 없이 설치하려고 했는데, 예상보다 디스크 이슈가 좀 생겨서, 디스크 정리랑 설치 방법까지 정리해둔다.나처럼 간단하게 EC2에서 gitlab-ce 돌리려는 사람들한테 참고될 것 같다.🔧 환경EC2 인스턴스: Amazon Linux 2023 (t2.micro, 8GB EBS)목표: gitlab-ce 직접 설치 (Docker 안 씀)문제: 설치 중 디스크 공간 부족으로 실패❌ 문제: 설치 중 실패GitLab 설치 도중 1.3GB짜리 .rpm 파일 받다가 아래처럼 실패함:Curl error (23): Failed writing received data to disk/application \[...\]: \[Failure writing output to destin..

카테고리 없음 2025.05.19

AWS에서 dockerd 없이 containerd만으로 컨테이너 런타임 운영하기

목차개요요구 사항containerd 설치Amazon Linux 2Amazon Linux 2023CentOS 7 기반 예시containerd 설정 및 서비스 기동ctr로 컨테이너 풀(Pull) 및 실행(Run)nerdctl을 통한 Docker CLI 호환containerd만 사용할 때의 주요 장점1. 개요목표: Docker 데몬(dockerd)을 제거하고, 순수 컨테이너 런타임인 containerd만으로 컨테이너를 설치·관리한다.왜?런타임 무게(weight) 경량화공격 면(attack surface) 최소화Kubernetes 등 CRI 기반 오케스트레이션과의 네이티브 통합2. 요구 사항AWS EC2 인스턴스 (아래 OS 중 하나)Amazon Linux 2Amazon Linux 2023sudo 권한이 있는 ..

AWS 2025.05.16

VPN 설계, 왜 VGW 대신 TGW를 써야 할까?

최근에 AWS에서 네트워크를 좀 더 정교하게 구성할 일이 있었는데,그 과정에서 자연스럽게 **Transit Gateway(TGW)**라는 존재를 마주하게 됐다.사실 VPN, VPC Peering 정도만 써왔던 사람이라면, 처음엔 TGW가 뭔지 좀 생소할 수도 있다.그래서 이번 글에서는 TGW가 뭔지, 왜 쓰는지, 어떻게 쓰는지 하나씩 정리해보려고 한다.🧭 TGW는 뭐냐?간단히 말하면 TGW는 AWS 내 네트워크의 중앙 허브 역할을 해주는 서비스다.기존에는 VPC 간 연결을 VPC Peering으로 했다면,이제는 TGW 하나로 VPC, 온프레미스, VPN, Direct Connect까지 전부 연결할 수 있다.기존 방식: VPC Peering (VPC 간 직접 연결)TGW 방식: Transit Gatewa..

카테고리 없음 2025.04.15

MCP Server와 LangChain Tool의 구조 및 라우팅 방식 비교

최근 다양한 AI 시스템이 Agent 기반 아키텍처로 발전하고 있는 가운데, 대표적인 예시로 LangChain의 @tool 구조와 MCP (Model Context Protocol) 기반 시스템이 자주 언급된다. 이 글에서는 이 두 구조의 차이, 특히 "Tool 라우팅" 관점에서의 핵심적인 차이와 작동 원리를 정리한다.1. 두 시스템의 기본 개념LangChain의 @tool내부 LLM이 사용할 수 있는 Python 함수를 등록@tool 데코레이터를 사용해 Tool을 선언LLM이 사용자의 자연어 입력을 기반으로 어떤 Tool을 사용할지 추론해 직접 호출@tooldef translate(text: str) -> str: """영어로 번역""" return translator(text)MCP의 @M..

카테고리 없음 2025.04.02

Windows 11 에서 'spawn uvx ENOENT' 오류 해결하기

Claude 데스크톱 애플리케이션에서 Blender 연동 기능을 사용하려고 할 때 "spawn uvx ENOENT" 오류가 발생하는 경우가 있습니다. 이 글에서는 Windows 환경에서 이 문제를 해결하는 전체 과정을 단계별로 설명합니다. 특히 V3 백신 소프트웨어와의 충돌 문제와 이를 해결하는 방법도 함께 다룹니다.문제 상황Claude 데스크톱을 실행하면 다음과 같은 오류 메시지가 로그에 나타납니다:[blender] [error] spawn uvx ENOENT {"context":"connection","stack":"Error: spawn uvx ENOENT\n at ChildProcess._handle.onexit (node:internal/child_process:285:19)\n at..

카테고리 없음 2025.03.24

서비스 마이그레이션 시 발생한 Jenkins-Docker 배포 문제 해결

문제 상황젠킨스(Jenkins) 파이프라인을 통해 서비스를 AWS ECR(Elastic Container Registry)에 배포하고 EC2 인스턴스에서 Docker 컨테이너로 실행하는 과정에서 발생한 문제를 해결한 사례를 정리하였습니다.문제 1: 서비스 이름 불일치로 인한 이미지 불일치상황로컬 쉘 스크립트에서는 SERVICE_NAME=>->로 설정되어 >->-image 이미지를 사용해 >->-> 컨테이너를 생성그러나 실제로는 >->-> 컨테이너가 생성됨원인 분석젠킨스 파이프라인 설정과 배포 스크립트 간의 서비스 이름 불일치:젠킨스 파이프라인 설정:SERVICE_NAME = ">->"// 그러나 ECR 관련 설정에서는 다른 이름을 하드코딩ECR_PATH = '>.dkr.ecr.>.amazonaws.com..

카테고리 없음 2025.03.21

Model Context Protocol (MCP): The Key To Agentic AI

개요MCP(Model Context Protocol)는 AI 모델이 작업을 수행하는 데 필요한 컨텍스트에 액세스할 수 있게 해주는 프로토콜입니다. 주로 대규모 언어 모델(LLM)인 OpenAI, Gemini, Anthropic의 Claude와 같은 모델에 유용하지만, 모든 종류의 모델에 사용할 수 있습니다.MCP의 핵심 기능MCP는 AI 모델이 작업을 수행하는 데 필요한 컨텍스트에 액세스할 수 있는 방법을 제공합니다. 예를 들어, 데이터베이스에 액세스할 수 있는 MCP 서버 하나와 클라우드에서 프레젠테이션 파일에 액세스할 수 있는 다른 MCP 서버를 통해 모델이 단일 작업을 수행할 수 있습니다.MCP가 제공하는 컨텍스트 유형MCP 서버가 AI 모델에 제공할 수 있는 기본 컨텍스트 유형은 네 가지입니다:T..

카테고리 없음 2025.03.20

AWS EC2 인스턴스 복제 후 root SSH 직접 로그인 안 될 때 해결방법 (force command 문제)

AWS EC2 인스턴스를 AMI로 만들어 새로운 서버를 복제할 때, 때때로 SSH 로그인 동작이 원본 서버와 다르게 나타날 수 있습니다. 특히 root 계정으로 직접 로그인이 불가능한 경우가 발생하곤 합니다. 이 글에서는 이런 문제의 원인과 해결 방법을 상세히 알아보겠습니다.문제 상황원본 EC2 인스턴스에서는 SSH 키를 이용해 root 계정으로 직접 로그인이 가능했습니다. 하지만 AMI를 이용해 복제한 새 인스턴스에서는 root로 로그인을 시도하면 다음과 같은 메시지가 표시되고 연결이 종료됩니다:"로그인은 되는데 바로 centos로 접근하길 바랍니다"이 상황이 발생하면 일반적으로 다음과 같은 의문이 생깁니다:SSH 설정이 제대로 복제되지 않은 건가?/etc/ssh/sshd_config 파일의 내용이 다..

카테고리 없음 2025.03.20

Windows에서 Wake-on-LAN + SSH 서버 설정 가이드

1단계: BIOS에서 Wake-on-LAN 활성화PC 재시작 후 BIOS 진입 (보통 F2, F10, Del 키)전원 관리(Power Management) 또는 네트워크 설정에서 WoL 옵션 찾기"Wake on LAN", "Remote Wake Up", "Power On By PCIE" 등의 이름일 수 있음옵션을 활성화(Enable)로 설정 후 저장하고 종료2단계: Windows에서 네트워크 어댑터 설정장치 관리자 열기 (Win+X → 장치 관리자)네트워크 어댑터 → 이더넷 어댑터 우클릭 → 속성"전원 관리" 탭:"이 장치가 컴퓨터를 깨울 수 있음" 체크"고속 시작을 위해 이 장치를 켜둠" 체크"고급" 탭:"Wake on Magic Packet" 활성화"Wake on Pattern Match" 활성화 (..

카테고리 없음 2025.03.17

EC2인스턴스에서 디스크 영구 마운트하기

EC2 서버에 EBS 3개 마운트하기 (초기 설정 정리)AWS에서 새로 EC2 인스턴스를 만들고, 루트 디스크 외에 EBS 3개를 함께 부착했다. 각각의 용도는 다음과 같으며, 해당 디스크들을 별도 디렉토리에 마운트해서 사용하려고 한다./apps : 애플리케이션 실행 디렉토리 (500GB)/db : 데이터 저장용 디렉토리 (200GB)/backup : 백업 데이터 저장용 (200GB)1. 디스크 확인 및 파일 시스템 생성인스턴스에 접속 후, 연결된 디스크 목록을 확인했다:lsblk출력 예시 (마스킹 처리):nvme0n1 30G → 루트 디스크nvme1n1 500G → /apps 용nvme2n1 200G → /db 용nvme3n1 200G → /backup 용각 디스크..

카테고리 없음 2025.03.17
반응형