특정 시간에만 필요한 클라우드의 VM을 어떻게 이용하나요?

특정 시간에만 필요한 클라우드의 VM을 어떻게 이용하나요?

현재 클라우드에 아웃소싱하고 싶은 로컬 서버에서 비디오 처리를 수행하고 있습니다. 저는 Google Cloud에 대해 잘 알고 있기 때문에 Google을 선택했습니다. 프로세스는 다음과 같이 구성됩니다.

  • Cloud Storage에 동영상 파일 업로드
  • Compute Engine 인스턴스에서 파일 처리
  • 처리된 동영상을 Cloud Storage에 저장

평균적으로 하루에 1시간 동안 Compute Engine 인스턴스가 필요합니다. 자동으로 인스턴스 전원을 켜고 필요에 따라 종료하는 간단한 방법이 있습니까? 어떻게 하면 될까요?

답변1

이를 수행하는 더 간단한 방법이 있습니다.

GCP는 다음과 같은 서비스를 제공합니다.클라우드 기능. 여기에는 이벤트에 의해 호출되는 스크립트를 넣을 수 있습니다.트리거. 그 중 하나는Cloud Storage 트리거객체 생성(파일 업로드) 또는 객체 삭제(파일 삭제)와 같은 Cloud Storage 이벤트로 활성화됩니다.

Cloud 함수는 파일(이 경우에는 동영상)을 읽고, 파일 안의 모든 프로세스를 수행하고 결과를 반환하거나, 귀하의 경우 결과를 GCS 버킷에 저장할 수 있습니다(파일이 업로드된 위치와 동일할 수 있음). 다른 사람이 되십시오).여기방금 업로드한 파일과 상호 작용하는 코드 샘플을 찾을 수 있습니다.

처리된 영상을 저장하려면 다음을 확인하세요.Cloud Storage 클라이언트 라이브러리. 사용할 언어에 따라(Cloud Storage 및 Cloud Functions에 지원되는 언어는Node.js,파이썬,가다,자바그리고씨#) 확인해야 할 사항코드 샘플결과를 버킷에 업로드합니다.

Cloud Functions를 사용하는 것은 필요할 때만 이러한 리소스를 사용하므로 Compute Engine에 비해 훨씬 저렴한 옵션입니다. 여기서 유일한 단점은메모리와 CPU이 서비스는 지원합니다.

리소스(메모리 128MB~4096MB)가 수행하려는 프로세스에 적합하지 않은 경우 다음 단계를 수행할 수도 있습니다.

  1. 다음을 사용하여 Compute Engine 인스턴스를 만듭니다.기계 유형사용 사례에 필요합니다. 모든 프로세스가 완료될 스크립트를 작성하세요. 일단 생성되고 모든 것이 설정되면,그만해요.
  2. 이미 제공된 문서를 사용하여 GCS 이벤트 트리거를 사용하여 Cloud 함수를 만들고 호출될 때마다 코드를 통해 GCE를 다시 시작하세요. 이 작업은 다음을 사용하여 수행할 수 있습니다.Compute Engine 클라이언트 라이브러리또는 통해API(당신이 가장 좋아하는 언어로 HTTPS 요청을 생각할 수 있습니다.)
  3. 모든 정보를 GCE로 보내고 머신이 작동하도록 합니다. Cloud Functions에서 GCE의 응답을 기다리려면 일부 코드를 추가해야 할 수도 있습니다.
  4. 완료되면 파일을 Cloud Storage에 업로드하고 Cloud Functions에 모든 작업이 완료되었음을 알립니다.
  5. 이 확인을 받으면 Cloud Functions에 GCE를 다시 중지하도록 지시하세요.

Compute Engine에서는 다음 비용을 청구합니다.VM이 실행되는 시간따라서 이 대체 시나리오를 수행하면 합리적인 가격으로 필요한 리소스와 함께 원하는 솔루션을 제공할 수도 있습니다.

Cloud Scheduler로 GCE 예약옵션이기도 하지만 GCE가 언제 사용될지 실제로 알 수 없으므로 Cloud Functions를 사용하면 제품과 노력이 줄어듭니다.

관련 정보