2012-05-25 1 views
1

특히 저는 python과 vmware vsphere를 사용하여 가상 머신 생성/전원 켜기 및 자동화 작업을하고 있습니다. 가상 머신의 속성을 인쇄하는 방법을 알고 있지만, 방법을 모르기 때문에 어떤 메소드도 호출 할 수 없습니다.파이썬에서 suds의 메소드를 호출하는 방법은 무엇입니까?

이 내가 코드에 봉착되는 문제 : 나는이 방법이 제대로 전화를 어떻게

for vm in virtual_machines: 
print "VM: "+vm['name']+" ("+vm['runtime.powerState']+") ", 
if hasattr(vm['guest'],'ipAddress'): 
    print vm['guest'].ipAddress, 
if vm['runtime.powerState'] == 'poweredOn': 
    print 'RAM: '+str(vm['summary.quickStats'].distributedMemoryEntitlement)+'MB, CPU: '+str(vm['summary.quickStats'].distributedCpuEntitlement)+'MHz', 
if vm['name'] == 'VIRT_VZ_114': 
    # This is the trouble maker, it says types mismatch "suds.TypeNotFound: Type not found: 'guest'" 
    client.service.PowerOnVM_Task(mo_VirtualMachine,vm) 
print 

?

+0

어떤 유형의 객체가 'mo_VirtualMachine'입니까? 'PowerOnMVM_Task'의 WSDL 서명은 무엇입니까? –

+0

아, mo_VirtualMachine 삭제하는 것을 잊어 버렸습니다. 관리 대상 참조 인 것으로 간주되었습니다. –

답변

0

psphere을 보셨나요?

vSphere Web Services SDK의 기본 바인딩을 제공하는 Python 프로젝트입니다.

비눗물, SOAP 및 WDSL 문제로 어려움을 겪지 않고 전용 라이브러리를 사용하여 문제를 신속하게 해결할 수 있습니다. 실제로 두포에서 비눗물을 사용하지만 파이썬 API를 대신 제공합니다.