好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Python使用oslo.vmware管理ESXI虛擬機的示例參考

Python使用oslo.vmware管理ESXI虛擬機的示例參考

熱門標簽:地圖標注視頻廣告 梅州外呼業務系統 老人電話機器人 北京電信外呼系統靠譜嗎 洪澤縣地圖標注 百度地圖標注位置怎么修改 大連crm外呼系統 無錫客服外呼系統一般多少錢 高德地圖標注是免費的嗎

讀取所有節點主機

from oslo_vmware import api
from oslo_vmware import vim_util
import urllib3

urllib3.disable_warnings()

session = api.VMwareAPISession(
            '127.0.0.1',
            'admin@vsphere.com',
            '123456',
             1,0.1)


#result1 = session.invoke_api(vim_util,'get_objects',session.vim, 'HostSystem', 100)

#print(result1.objects[0])
# rep2 = session.invoke_api(vim_util,'get_object_properties_dict',session.vim, result1.objects[0].obj,'vm')

res = session.invoke_api(vim_util,"get_objects",session.vim,"ResourcePool",100)

print(res)

獲取所有區域:

from oslo_vmware import api
from oslo_vmware import vim_util
import urllib3

urllib3.disable_warnings()

session = api.VMwareAPISession(
            '127.0.0.1',
            'admin@vsphere.com',
            '123456',
             1,0.1)


res = session.invoke_api(vim_util,"get_objects",session.vim,"ComputeResource",100)

addr = []
for i in res.objects:
    addr.append(i.propSet[0][1])

print(addr)

獲取所有主機列表:

from oslo_vmware import api
from oslo_vmware import vim_util
import urllib3

urllib3.disable_warnings()

session = api.VMwareAPISession(
            '127.0.0.1',
            'admin@vsphere.com',
            '123456',
             1,0.1)

res = session.invoke_api(vim_util,"get_objects",session.vim,"HostSystem",1000)

addr = []
for i in res.objects:
    addr.append(i.propSet[0][1])

print(addr)

獲取 HostSystem MO

from oslo_vmware import api
from oslo_vmware import vim_util
import urllib3

urllib3.disable_warnings()

session = api.VMwareAPISession(
            '127.0.0.1',
            'admin@vsphere.com',
            '123456',
             1,0.1)


res = session.invoke_api(vim_util,"get_objects",session.vim,"HostSystem",1000)

# 我們隨意選取一個 ESXi Host, 并且打印其 Object
host_obj = res.objects[0].obj


# 獲取 HostNetworkSystem MO, 并打印其 Value
host_network_system_val = session.invoke_api(vim_util,
    'get_object_properties_dict',session.vim,host_obj,'configManager.networkSystem')

print(host_network_system_val)

詳細信息:

from oslo_vmware import api
from oslo_vmware import vim_util
import urllib3

urllib3.disable_warnings()
session = api.VMwareAPISession(
            '127.0.0.1',
            'admin@vsphere.com',
            '123456',
             1,0.1)


res = session.invoke_api(vim_util,"get_objects",session.vim,"VirtualMachine",1000)

summary = session.invoke_api(vim_util, 'get_object_properties_dict', session.vim,
                              res.objects[0].obj,'summary')

print(summary)

資源清單

from oslo_vmware import api
from oslo_vmware import vim_util
import urllib3

urllib3.disable_warnings()
session = api.VMwareAPISession(
            '127.0.0.1',
            'admin@vsphere.com',
            '123456',
             1,0.1)


res = session.invoke_api(vim_util,"get_objects",session.vim,"Datacenter",1000)

# 獲取 Cluster 資源清單
computeResource  = session.invoke_api(
                            vim_util,
                            'get_objects',
                            session.vim,
                            'ComputeResource',
                            100)


for each in computeResource.objects:
    print("資源清單: {}".format(each[1][0][1]))

讀取主機狀態

from oslo_vmware import api
from oslo_vmware import vim_util
import urllib3

urllib3.disable_warnings()

session = api.VMwareAPISession(
            '127.0.0.1',
            'admin@vsphere.com',
            '123456',
             1,0.1)


res = session.invoke_api(vim_util,"get_objects",session.vim,"HostSystem",1000)

summary = session.invoke_api(vim_util, 'get_object_properties_dict', session.vim,
                              res.objects[0].obj,'summary.runtime.powerState')

summary1 = session.invoke_api(vim_util, 'get_object_properties_dict', session.vim,
                              res.objects[0].obj,'summary.config.name')


print(summary.get("summary.runtime.powerState"))
print(summary1.get("summary.config.name"))

循環輸出

from oslo_vmware import api
from oslo_vmware import vim_util
import urllib3

urllib3.disable_warnings()

session = api.VMwareAPISession(
            '127.0.0.1',
            'admin@vsphere.com',
            '123456',
             1,0.1)


res = session.invoke_api(vim_util,"get_objects",session.vim,"HostSystem",100)


tim = 0
for each in res.objects:

    tim = tim +1
    print(tim)
    stats = session.invoke_api(vim_util, 'get_object_properties_dict', session.vim,
                                  each.obj,'summary.runtime.powerState')

    addr = session.invoke_api(vim_util, 'get_object_properties_dict', session.vim,
                                  each.obj,'summary.config.name')

    print("主機地址: {} \t 狀態: {}".format(addr.get("summary.config.name"),stats.get("summary.runtime.powerState")))

讀取虛擬機狀態

from oslo_vmware import api
from oslo_vmware import vim_util
import urllib3

urllib3.disable_warnings()

session = api.VMwareAPISession(
            '127.0.0.1',
            'admin@vsphere.com',
            '123456',
             1,0.1)


res = session.invoke_api(vim_util,"get_objects",session.vim,"VirtualMachine",100)


instance = res.objects[0].obj
print(instance)

stats = session.invoke_api(vim_util, 'get_object_properties_dict', session.vim,
                           instance, 'summary')


print(stats)

使用com.vmware.vcenter_client管理虛擬機。

Vsphere API基礎:

import requests
import urllib3
from vmware.vapi.vsphere.client import create_vsphere_client

session = requests.session()
session.verify = False
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)

vsphere_client = create_vsphere_client(server='127.0.0.1', username='admin@vsphere.com', password='123456', session=session)

# 列出所有虛擬機
ref = vsphere_client.vcenter.VM.list()
print(ref)

# 通過虛擬機的名稱來進行過濾
ref = vsphere_client.vcenter.VM.list( vsphere_client.vcenter.VM.FilterSpec(names={'Baidu-NLP01'}) )
print(ref)

實現開關機

import requests
import urllib3
from vmware.vapi.vsphere.client import create_vsphere_client

session = requests.session()
session.verify = False
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)

vsphere_client = create_vsphere_client(server='127.0.0.1', username='admin@vsphere.com', password='123456', session=session)

# 檢索系統是否開機
vm = vsphere_client.vcenter.VM.list(vsphere_client.vcenter.VM.FilterSpec(names={'GZH-SERVER3'}))[0]
power_status = vsphere_client.vcenter.vm.Power.get(vm.vm)
print("是否開機: {}".format(power_status))


# 檢索系統是否開機
vm = vsphere_client.vcenter.VM.list(vsphere_client.vcenter.VM.FilterSpec(names={'192.168.81.51'}))
if len(vm) != 0:
    vm = vm[0]
    power_status = vsphere_client.vcenter.vm.Power.get(vm.vm)
    print("已開機: {}".format(power_status.state))
else:
    print("已關機")


# 關閉系統 start / reset / suspend / stop
vsphere_client.vm.Power.stop(vm.vm)

# 刪除虛擬機
vsphere_client.vcenter.VM.delete(vm)

列出數據存儲

import requests
import urllib3
from vmware.vapi.vsphere.client import create_vsphere_client
from com.vmware.vcenter_client import Folder
from com.vmware.vcenter_client import Datastore
from com.vmware.vcenter_client import Network

session = requests.session()
session.verify = False
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)

vsphere_client = create_vsphere_client(server='127.0.0.1', username='admin@vsphere.com', password='123456', session=session)

# 列出集群
#ref = vsphere_client.vcenter.Cluster.list()
#print(ref)

# 列出 vCenter 中所有文件夾
#folder = vsphere_client.vcenter.Folder.list()

# 列出數據存儲
# store = vsphere_client.vcenter.Datastore.list()
datastore_name = '192.168.64.20'
filter_spec = Datastore.FilterSpec(names={datastore_name})
datastore_summaries = vsphere_client.vcenter.Datastore.list(filter_spec)
datastore_id = datastore_summaries[0].datastore
print("存儲結構: {} 數據存儲名稱: {}".format(datastore_summaries,datastore_id))

獲取資源池

import requests
import urllib3
from vmware.vapi.vsphere.client import create_vsphere_client
from com.vmware.vcenter_client import Cluster
from com.vmware.vcenter_client import ResourcePool

session = requests.session()
session.verify = False
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)

vsphere_client = create_vsphere_client(server='127.0.0.1', username='admin@vsphere.com', password='123456', session=session)

# 獲取所有資源池
filter = vsphere_client.vcenter.ResourcePool.list()
print(filter)

# 根據集群名獲取資源池
cluster_name = 'vSAN-Cluster1'
cluster_id = vsphere_client.vcenter.Cluster.list(Cluster.FilterSpec(names={cluster_name}))[0].cluster
resource_pool_id = vsphere_client.vcenter.ResourcePool.list(ResourcePool.FilterSpec(clusters={cluster_id}))[0].resource_pool

print(resource_pool_id)

列出網絡

import requests
import urllib3
from vmware.vapi.vsphere.client import create_vsphere_client
from com.vmware.vcenter_client import Network

session = requests.session()
session.verify = False
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)

vsphere_client = create_vsphere_client(server='127.0.0.1', username='admin@vsphere.com', password='123456', session=session)

# 列出標準網絡
filter = vsphere_client.vcenter.Network.list()
print(filter)

'''
它的 type 有三種類型:
DISTRIBUTED_PORTGROUP:vcenter 創建和管理的網絡;
OPAQUE_NETWORK:VSphere 之外的設備所創建,但是 vSphere 卻可以知道網絡的名稱和標識符,所以宿主機和虛擬機的網卡才能夠連接到;
STANDARD_PORTGROUP:ESX 創建和管理的網絡。
'''

filter = Network.FilterSpec(names={'vlan  164'},types={Network.Type.STANDARD_PORTGROUP})
network_summaries = vsphere_client.vcenter.Network.list(filter=filter)
print(network_summaries)

# 列出分布式網絡
filter = Network.FilterSpec(
                            names=set(['vlan  164']),
                            types=set([Network.Type.DISTRIBUTED_PORTGROUP]))
network_summaries = vsphere_client.vcenter.Network.list(filter=filter)

if len(network_summaries) > 0:
    network_id = network_summaries[0].network
    print(network_id)
else:
    print("Distributed Portgroup Network not found in Datacenter")

文章出處:https://www.cnblogs.com/lyshark

以上就是Python使用oslo.vmware管理ESXI虛擬機的示例參考的詳細內容,更多關于Python用oslo.vmware管理ESXI虛擬機的資料請關注腳本之家其它相關文章!

您可能感興趣的文章:
  • java虛擬機JVM類加載機制原理(面試必問)
  • vmware虛擬機安裝deepin20最全詳細過程
  • Java虛擬機類加載器之雙親委派機制模型案例
  • Python動態規劃實現虛擬機部署的算法思想
  • 最新虛擬機VMware 14安裝教程
  • java虛擬機中棧的運行知識點總結
  • Java虛擬機精選面試題20道
  • Java reservedcodecachesize虛擬機參數案例詳解

標簽:岳陽 安慶 清遠 洛陽 泉州 怒江 長春 吉林

巨人網絡通訊聲明:本文標題《Python使用oslo.vmware管理ESXI虛擬機的示例參考》,本文關鍵詞  Python,使用,oslo.vmware,管理,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Python使用oslo.vmware管理ESXI虛擬機的示例參考》相關的同類信息!
  • 本頁收集關于Python使用oslo.vmware管理ESXI虛擬機的示例參考的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 大尺度性做爰纯肉小说重生 | 欧洲vodafonewifi| 国产性―交一乱―色―情人| 好男人好资源| 久久艹影院| 色亚洲天堂| 成人??深夜福利APP| tickle调教美女丨vk| 欧美日韩国产视频| 国产123区在线视频观看| 少妇与子亂伦在线看| 边摸边吃奶下面做很爽爽| 四虎精品网站91| 我的继坶我的性老师福影视| 又紧又大又爽精品一区二区| 国产欧美在线观看| 可以看的毛片| 娇喘硕大| 八戒八戒在线www观看| 亚洲春色AV无码专区456| 处破之轻点好疼十八分| 强行挺进美艳麻麻体内| 粗好大用力好深快点漫画| 极品粉嫩国产18尤物在线播放| 嫂子的引诱| 国产高清在线精品二区一| 男人操美女逼视频| 草社區最新地址入口| 97视频免费人人观看人人| 管鲍之交分拣中心未满十八岁| 18禁污污污污污网站| 激情在线网站| 国产精品色情AAAAA片软件| 美女下部尿囗秘?无遮挡平台 | 女仆扒开腿秘?让人桶爽的作文| 隔着短裙公车被直接进入| 国产高潮国产高潮久久久久久| 午夜91| 国产男男Gay做受XXX网站| 小明成人永久免费观看视频| www啪|