Skip to content

(StartVM TerminateVM) API Call Counts and Waiting Status

ByoungSeob Kim edited this page Oct 24, 2024 · 9 revisions

■ Start VM / Terminate VM 동작시 CSP API 호출 수 및 Waiting 현황

CSP 호출 API CSP API 호출 수 Server Waiting Driver Waiting CSP SDK Waiting
AWS Start VM 14 회 목적: PublicIP 정보 제공 상태 기다림
주기: 15초 간격으로 GetVM() 호출
Timeout: 600초
없음. AWS SDK WaitUntilInstanceRunning() 호출 후 대기 목적: running 상태 기다림
주기: 15초마다 상태 확인
Timeout: 600초 (15초 X 40회)
  Terminate VM 8회 목적: Terminated 상태 기다림
주기: 15초 간격으로 GetVMStatus() 호출
Timeout: 600초
없음. TerminateInstances() 호출 후 바로 반환 해당 없음
Azure Start VM 9회 목적: PublicIP 정보 제공 상태 기다림
주기: 15초 간격으로 Azure SDK InstanceView() 호출
Timeout: 600초
VM 생성 호출 후 PollUntilDone() 호출 후 대기 목적: context의 endpoint가 terminal 상태 도달 때까지 대기
주기: 30초 간격으로 Azure SDK 호출
Timeout: 미확인
        목적: Running 상태 기다림
주기: 15초 간격으로 Azure SDK InstanceView() 호출
Timeout: 600초
  Terminate VM 6회 목적: Terminated 상태 기다림
주기: 15초 간격으로 GetVMStatus() 호출
Timeout: 600초
VM 삭제 호출 후 PollUntilDone() 호출 후 대기 목적: context의 endpoint가 terminal 상태 도달 때까지 대기
주기: 30초 간격으로 Azure SDK 호출
Timeout: 미확인
        관련 자원 삭제 시: 전체 600초 timeout
(1) vNic 삭제 후 15초 주기로 PollUntilDone() 호출
(2) Public IP 삭제 후 15초 주기로 PollUntilDone() 호출
(3) Disk 삭제 후 15초 주기로 PollUntilDone() 호출
 
GCP Start VM 14회 목적: PublicIP 정보 제공 상태 기다림
주기: 15초 간격으로 GCP SDK InstanceView() 호출
Timeout: 600초
목적: 비동기 Operation 완료 상태 기다림
주기: 15초 간격으로 ZoneOperations.Get 호출
Timeout: 1시간
해당 없음
        목적: Operation 완료 후 VM running 상태 기다림
주기: 15초 간격으로 Instances.Get 호출
Timeout: 600초
 
  Terminate VM 5회 목적: Terminated 상태 기다림
주기: 15초 간격으로 GetVMStatus() 호출
Timeout: 600초
VM 삭제 호출 후 별도 waiting 없이 반환 해당 없음

■ 참고: Start VM / Terminate VM시 CSP API 호출 수 제공

  • v0.9.8 부터 제공
  • Spider API 중 StartVM / TerminateVM 호출 시 내부에서 CSP API 호출 수 제공(CSP API 종류 무관)
  • 대상 CSP: AWS, Azure, GCP
  • 환경 변수 CALL_COUNT 설정 후 Spider 실행
    export CALL_COUNT=ON
    
  • 단일 API 호출 필요: StartVM, TerminateVM를 동시 호출 시 제공되는 API 호출 값 보장 안됨
    • 예시) AWS:StartVM(vm-1), AWS:StartVM(vm-2) 동시 호출 => API 호출 수 보장 안됨
    • 예시) AWS:StartVM(vm-1), GCP:StartVM(vm-2) 동시 호출 => API 호출 수 보장 안됨
    • 동시 호출해도 API 기능은 정상 동작
    • StartVM, TerminateVM 외에 GetVM(), GetVMStatus() 등 다른 API 동시 호출은 무관함.

  • 출력 예시: GCP VM 종료시 GCP SDK 10 회 호출인 경우 (타 CSP 0 값은 무시)
    Total AWS API calls during TerminateVM(): 0
    Total Azure API calls during TerminateVM(): 0
    Total GCP API calls during TerminateVM(): 10
    

Table of contents



Clone this wiki locally