azure
AWS Lambda 직접 구현하기 - 5 (프로세스 종속성, 파일 시스템 공유 문제 해결)
AWS Lambda 직접 구현하기 - 5 (프로세스 종속성, 파일 시스템 공유 문제 해결)
2024.12.251. VM 실행동안 프로세스 활성화 문제2. 파일시스템 공유 문제 두 개의 문제를 해결해야 한다. 1번은 생각보다 쉬운데 바로 수정해 보자. 1. VM 실행동안 프로세스 활성화 문제 수정Firecracker 소켓을 여는 프로세스를 개별 프로세스로 실행하고, 일정 시간이 지나면 해당 프로세스가 종료되게 설정하면 된다. private void firecrackerStart(Map env) throws IOException { ProcessBuilder firecrackerStartBuilder = new ProcessBuilder(FIRECRACKER_PATH + "/firecracker", "--api-sock", env.get("API_SOCKET"));..
AWS Lambda 직접 구현하기 - 4 (Firecracker Java 애플리케이션으로 실행)
AWS Lambda 직접 구현하기 - 4 (Firecracker Java 애플리케이션으로 실행)
2024.12.25쉘 스크립트로 지금까지 모두 구현했지만, 이제는 Java 애플리케이션으로 실행하는 것을 구현하려고 한다. 방법 자체는 어렵지 않다.이전에 작성한 스크립트를 Java 애플리케이션에서 환경 변수를 주입하고, 스크립트를 실행하면 된다. 바로 작성해 보자. Firecrakcer Controllerpackage firecracker_application.firecracker_instance.controller;import firecracker_application.firecracker_instance.controller.dto.StartVMRequest;import firecracker_application.firecracker_instance.controller.dto.ToWarmUpRequest;import ..
AWS Lambda 직접 구현하기 - 3 (Firecracker 실행)
AWS Lambda 직접 구현하기 - 3 (Firecracker 실행)
2024.12.14firecracker로 microVM을 생성해 보고, 비즈니스 로직을 만드려고 했다. 다만 내 노트북은 M2로 중첩 가상화를 지원하지 않아서, KVM을 이용할 수 없었다. 그래서 클라우드 가상 머신을 활용하려고 가능한 인스턴스 타입을 알아봤다. 나는 AWS가 가장 친숙하기에 AWS에서 진행하려 했으나 AWS는 기본적으로는 중첩 가상화를 지원하지 않는다. 따라서 베어메탈 인스턴스 타입을 사용해야 kvm을 사용할 수 있다. 그중에 가장 저렴한 것은 c6g.metal다. 64 vcpu, 128GB 메모리로 과분한 스펙이라서 가격이 시간당 2.464$다. 오류를 잡고 테스트를 진행하는 시간이 오래 걸릴 것으로 생각돼서 너무 큰 금액이다. 그래서 나는 azure를 선택했다. azure는 신규 사용자에게 200..