2016-07-06 1 views
1

스냅 샷을 생성하는 작은 기능이 있는데 정상적으로 작동합니다. 하지만 난뿐만 아니라 진행 상황을 싶어하지만, 다음과 같은 기능이 나에게 도움이되지 않습니다snapshot.wait_until_completed는 진행 상황이나 완료 시점을 표시하지 않습니다.

def call_creater(): 
    regions = ['eu-central-1'] 
    for region in regions: 
     ec2 = boto3.resource('ec2', region, aws_access_key_id=ACCESS_KEY, aws_secret_access_key=SECRET_KEY,) 
     snapshot = ec2.create_snapshot(VolumeId='vol-f9e7d220', Description='fra01-he-trial-ansible01') 
     print snapshot.id 

     get_all_snapshots = ec2.snapshots.filter(snap_id=['SnapshotIds']) 
     print get_all_snapshots 
     #snapshot.wait_until_completed() 
     print "STARTING TO CREATE :" 
     time.sleep(10) 
     snapshot.wait_until_completed(
      Filters=[ 
       { 
        'Name': 'progress' 
       } 
       ] 
     ) 
     print "snapshot ready" 

이 예외 : 스냅 샷이 생성됩니다

'Name': 'progress' 
    File "C:\Python27\lib\site-packages\boto3\resources\factory.py", line 368, in do_waiter 
    waiter(self, *args, **kwargs) 
    File "C:\Python27\lib\site-packages\boto3\resources\action.py", line 201, in __call__ 
    response = waiter.wait(**params) 
    File "C:\Python27\lib\site-packages\botocore\waiter.py", line 53, in wait 
    Waiter.wait(self, **kwargs) 
    File "C:\Python27\lib\site-packages\botocore\waiter.py", line 321, in wait 
    reason='Max attempts exceeded') 
botocore.exceptions.WaiterError: Waiter SnapshotCompleted failed: Max attempts exceeded 

하지만, 내가 얻을 수 아니다 상태가

답변

3

wait_until_completed should wait for a maximum of about 10 minutes인데 큰 스냅 샷에는 충분하지 않으며 reportedly it's returning faster even than that입니다. 이 기능이 깨진 것 같아서 웨이터를 직접 작성하는 것이 좋습니다.

+0

load()는 스냅 샷의 상태를 확인하는 while 루프로 소리가 더 좋습니다 – Kittystone

+0

'load'는 모르지만 다른 함수를 사용하는 함수, 시간 초과 및 검사 간격은 매우 일반적입니다 내 경험의 패턴. – l0b0

관련 문제