Cloud Run을 사용하여 AI 에이전트를 호스팅하는 주요 이점은 보안 실행 환경을 사용하여 코드를 격리한다는 것입니다. Cloud Run에서 코드 샌드박스 도구를 빌드하고 컨테이너에서 실행하면 원하는 프로그래밍 언어를 사용하여 애플리케이션 코드를 실행할 수 있습니다.
안전한 2계층 샌드박스
Cloud Run은 개별 VM에 해당하는 하드웨어 지원 레이어(x86 가상화) 및 소프트웨어 커널 레이어로 구성된 2개의 샌드박스 레이어를 사용하여 모든 인스턴스를 격리합니다. 자세한 내용은 보안 설계 개요를 참고하세요.
코드를 배포하면 Cloud Run에서 샌드박스 환경 내에 코드를 제한합니다. 이 격리를 통해 대규모 언어 모델 (LLM)에서 생성된 코드와 같이 신뢰할 수 없는 코드를 더 안전하게 실행할 수 있습니다. 신뢰할 수 없는 코드를 실행할 때는 Cloud Run 서비스의 IAM 권한을 제한하고 VPC 방화벽 규칙을 사용하여 코드가 인터넷에 호출하지 못하도록 합니다.
코드 실행 모드
Cloud Run은 코드 실행을 위해 다음 모드를 제공합니다.
비동기 실행: 기본 애플리케이션 흐름이 중단되지 않도록 장기 실행 또는 백그라운드 작업에 Cloud Run 작업을 사용하여 비동기적으로 작업을 실행합니다. 예를 들어 코드를 Cloud Storage에 업로드하고, 필요한 종속 항목을 설치한 다음, 결과를 처리하여 Cloud Storage에 다시 저장하는 Cloud Run 작업을 실행합니다.
동기 실행: 즉각적인 응답이 필요한 프로세스의 경우 Cloud Run 서비스를 사용합니다. Cloud Run 서비스의 최대 제한 시간은 1시간으로, 코드를 실행하기에 충분한 시간을 제공합니다. 인스턴스가 한 번에 하나의 요청만 처리하도록 제한하려면 동시 실행 값을
1
로 설정합니다. 요청 본문의 일부로 실행할 코드를 가져오고, 응답에서 결과를 반환한 다음 컨테이너 인스턴스를 종료할 수도 있습니다.다음 이미지는 두 가지 코드 실행 모드를 보여줍니다.
그림 1. Cloud Run의 코드 실행 모드