【vSphere | Python】vSphere Automation SDK for Python Ⅲ—— vCenter Datacenter APIs
目录
- 5. vCenter Datacenter APIs
- 操作
- 5.1 Create Datacenter
- 5.2 List Datacenter
- 5.3 Get Datacenter
- 5.4 Delete Datacenter
- 参考资料
5. vCenter Datacenter APIs
数据中心服务(Datacenter service)提供管理 vCenter Server 中数据中心的操作。
操作
- Create Datacenter:在 vCenter 清单中创建一个新的数据中心。
- List Datacenter:返回有关 vCenter 中最多 1000 个可见数据中心的信息。
- Get Datacenter:检索有关数据中心对应的数据中心的信息。
- Delete Datacenter:从 vCenter Server 中删除空数据中心。
5.1 Create Datacenter
关键方法:Datacenter.create(spec)
spec是DatacenterCreateSpec,创建新数据中心有2个必填参数:
- folder:类型为数据中心的文件夹ID(Floder ID ),该值每个vCenter中都会有一个,通过List Floder方法查看。
- name:新数据中心名。
在 vCenter 清单中创建一个新的数据中心。
脚本:
import time
from vSphere_Automation_SDK.Connect_to_vCenter_Server import vsphere_client
spec ={"folder": "group-d1", #通过list folder查询Type为Datacenters的folder ID"name": "DC3"
}
start_time = time.time()
try:create_dc = vsphere_client.vcenter.Datacenter.create(spec)print("Created successfully!")
except Exception as err:for i in err.messages:id = i.id,default_message = i.default_messageargs = i.argsparams = i.paramslocalized = i.localizedprint("\033[1;31m Encountered an error, Please see the following information \033[0m","\n\tError Class:", id,"\n\tMessage:", default_message,"\n\tArgs:", args,"\n\tParams:", params,"\n\tLocalized:", localized,"\nError Data:", err.data,"\nError Type:", err.error_type)
end_time = time.time()
run_time = end_time - start_time
print("Used Time:".ljust(43), run_time)
在vSphere Client中可以看到有任务在执行。
5.2 List Datacenter
关键方法:Datacenter.list()
返回有关 vCenter 中最多 1000 个可见(受权限检查)数据中心的信息(可以获取DC ID)。
脚本:
import time
from vSphere_Automation_SDK.Connect_to_vCenter_Server import vsphere_client
print("Datacenter ID".ljust(35),"Name")
start_time = time.time()
try:list_dc = vsphere_client.vcenter.Datacenter.list()if list_dc == []:print("---------Empty---------")else:for i in list_dc:print(i.datacenter.ljust(34),i.name)print("-----------End-----------")
except Exception as err:for i in err.messages:id = i.id,default_message = i.default_messageargs = i.argsparams = i.paramslocalized = i.localizedprint("\033[1;31m Encountered an error, Please see the following information \033[0m","\n\tError Class:", id,"\n\tMessage:", default_message,"\n\tArgs:", args,"\n\tParams:", params,"\n\tLocalized:", localized,"\nError Data:", err.data,"\nError Type:", err.error_type)
end_time = time.time()
run_time = end_time - start_time
print("Used Time:".ljust(37), run_time)
脚本效果图:
5.3 Get Datacenter
关键方法:Datacenter.get("DC-ID")
检索有关数据中心对应的数据中心的信息。可以获得以下ID,DC-ID通过List DC获得:
- Datacenter Folder
- Host Folder
- Network Folder
- VM Folder
脚本:
import time
from vSphere_Automation_SDK.Connect_to_vCenter_Server import vsphere_clientstart_time = time.time()
try:get_dc = vsphere_client.vcenter.Datacenter.get("datacenter-3")print("Name:".ljust(35),get_dc.name,"\nDatacenter Folder:".ljust(30),get_dc.datastore_folder,"\nHost Folder:".ljust(34),get_dc.host_folder,"\nNetwork Folder:".ljust(31),get_dc.network_folder,"\nVM Folder:".ljust(34),get_dc.vm_folder)except Exception as err:for i in err.messages:id = i.id,default_message = i.default_messageargs = i.argsparams = i.paramslocalized = i.localizedprint("\033[1;31m Encountered an error, Please see the following information \033[0m","\n\tError Class:", id,"\n\tMessage:", default_message,"\n\tArgs:", args,"\n\tParams:", params,"\n\tLocalized:", localized,"\nError Data:", err.data,"\nError Type:", err.error_type)
end_time = time.time()
run_time = end_time - start_time
print("Used Time:".ljust(34), run_time)
脚本效果图:
5.4 Delete Datacenter
关键方法:Datacenter.delete("DC-ID")
从 vCenter Server 中删除空数据中心。DC-ID通过List DC获得。
import time
from vSphere_Automation_SDK.Connect_to_vCenter_Server import vsphere_clientstart_time = time.time()
try:delete_dc = vsphere_client.vcenter.Datacenter.delete("datacenter-1001")print("Deleted successfully!")except Exception as err:for i in err.messages:id = i.id,default_message = i.default_messageargs = i.argsparams = i.paramslocalized = i.localizedprint("\033[1;31m Encountered an error, Please see the following information \033[0m","\n\tError Class:", id,"\n\tMessage:", default_message,"\n\tArgs:", args,"\n\tParams:", params,"\n\tLocalized:", localized,"\nError Data:", err.data,"\nError Type:", err.error_type)
end_time = time.time()
run_time = end_time - start_time
print("Used Time:".ljust(43), run_time)
在vSphere Client中可以看到有在执行删除数据中心的任务,此时DC3已经不在清单中。
参考资料
vCenter REST APIs v7.0U3
vSphere-Python-Automation-Scripts/v1/vCenter-Datacenter
关于本专栏其它博文,请关注专栏,会有更多关于vSphere Python自动化的内容:vSphere python自动化
【vSphere | Python】vSphere Automation SDK for Python Ⅲ—— vCenter Datacenter APIs相关推荐
- 想学python编程-【经验分享】新手如何快速学好Python?
原标题:[经验分享]新手如何快速学好Python? 什么样的人适合学习编程?到底Python作为编程入门语言合适吗?学习Python编程,我们应该如何学?大概的学习内容包括哪些? 今天我们就用一篇文章 ...
- 执行后可以查看python版本的是-【单选题】执行后可以查看Python的版本的是
问题:[单选题]执行后可以查看Python的版本的是 更多相关问题 完成并配平下列各反应的方程式: (a)用浓H2SO4焙烧法处理氟碳铈镧矿 (b)镧.铈.镨.铽草 据报道,我国目前已发现甲型H1N1 ...
- python for everybody作业和测试答案_【计算题】编写函数,模拟 Python 内置函数 reversed() 。...
[计算题]编写函数,模拟 Python 内置函数 reversed() . 更多相关问题 In California, there lives a pretty girl called Donna G ...
- 【CAD算法】【计算机图形学】Bezier贝塞尔曲线生成程序(python/numpy实现)[1]
整个项目,从Bezier曲线的创建,到Coons Patch曲面的实现,再到网格的实现和优化,还有最后对表面的光顺,链接如下: [CAD算法][计算机图形学]Bezier贝塞尔曲线生成程序(pytho ...
- 【建模算法】熵权法(Python实现)
[建模算法]熵权法(Python实现) 熵权法是通过寻找数据本身的规律来赋权重的一种方法. 熵是热力学单位,在数学中,信息熵表示事件所包含的信息量的期望.根据定义,对于某项指标,可以用熵值来判断某个指 ...
- 【Android 逆向】frida 框架安装 ( 设置 Python 3.7 版本 | 安装 frida 12.7.5 版本 | 安装 frida-tools 5.1.0 版本 )
文章目录 前言 一.设置 Python 3.73.73.7 版本 二.安装 frida 12.7.512.7.512.7.5 版本 三.安装 frida-tools 5.1.05.1.05.1.0 版 ...
- 【量化投资】量化投资技术基础 ---- Python 急速入门
文章目录 [量化投资]Python 入门 一.为什么使用 python 二.我们需要学些什么 三.Python 基础 1.输入输出 2.数据转换 3.导包 4.数据类型 1)数字 2)字符串 3)列表 ...
- 【青少年编程】黄羽恒:Python
「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),公众号后台回复[Scratch]或[Python],即可进入.如果加入了之前的社群不需要重复加入. 微信后台回复"资料下载&quo ...
- 儿童学python下哪个软件好用_【开源软件】超好用的Python学习软件!没有之一!...
可以观看视频!文章结尾,有下载.安装方法! 曾几何时!Python开始掀起了一阵狂猛的学习浪潮?Python 那么Python为什么那么火? https://wenwen.sogou.com/z/q8 ...
最新文章
- 深入浅出springboot 下载_有没有相见恨晚的学习模电好方法?《新概念模拟电路》全五册合集免费下载...
- 4种动态加载JS的方法
- Mybatis的下载并搭建核心架构
- 可持续字典树 Perfect Security
- 连点器安卓手机版_鼠大侠手机版下载-鼠大侠鼠标连点器手机版下载 v1.4 安卓版...
- 数据科学包15-matplotlib详细介绍
- Android 实现计时器
- 公关营销策划书的要点及分析
- java 扫描仪_Java调用扫描仪2
- C语言用数组模拟实现栈(LIFO)
- win7如何用双显示屏,如何设置
- 【跟我一起学Unity3D】做一个2D的90坦克大战之地图编辑器
- web前端开发技巧,CSS全局样式的设置
- markdown编辑器。
- HTML中支持qlv文件格式吗,qlv格式怎么播放,格式工厂不支持qlv
- 【数据库】SQL server 评估期已过。有关如何升级的测试版软件的信息,请访问..
- HDU - 2034 人见人爱A-B 【set】
- PMI-ACP考试介绍
- typescript 中的as
- 项目管理PMP培训课件(完整版)
热门文章
- 6-2 多项式求值(15 分) 本题要求实现一个函数,计算阶数为n,系数为a[0] ... a[n]的多项式f(x)=∑ ​i=0 ​n ​​ (a[i]×x ​i ​​ ) 在x点的值。
- 一文读懂shell命令
- 使用python进行数据预处理--主成分分析
- excel表格如何转换成word表格_pdf的表格怎么转换成word?教你掌握重要一步
- 用“仁义”,重新设计计算机操作系统。
- 多线程实现HTTP下载器(断点续传)_使用IO和线程知识
- hdfs-over-ftp使用说明
- 鲁大师发布2021年半年报,哪些手机最强?
- 基于GIS的建筑物褶皱度计算工具及计算实例经验分享
- 大地坐标和高斯平面坐标转换