供应商管理的基本系统

mgmtsystem的Python项目详细描述


Health StatusCoverage StatusBuild Status

管理系统

简介

mgmtsystem是一个简单的虚拟化客户机,支持(在不同程度上)以下内容

  • Red Hat Enterprize虚拟化(RHEV)
  • 红帽OpenStack(Rhos)
  • openshift
  • vmware vCenter
  • Microsoft SCvmm
  • 微软azure
  • 谷歌计算引擎
  • 库伯内特斯
  • 鹰眼

它可以用来控制虚拟化客户机,并提供诸如

  • list_vm(返回vm_名称列表)
  • list_template(返回模板/图像列表)
  • 启动虚拟机(启动虚拟机)
  • 停止虚拟机(停止虚拟机)

尽管云和基础设施虚拟化技术(如instance/vm)在概念上的名称有所不同 决定在代码库和接口中坚持使用一种表示,以便在 所有系统

使用量

通常使用主机名和一些凭据调用每个管理系统

frommgmtsystem.virtualcenterimportVMWareSystemsystem=VMWareSystem(hostname='10.0.0.0',username="root",password="password")system.list_vm()

添加新的管理系统

管理系统应该扩展基类,并为 它不支持。随着管理制度越来越多样化,这种行为在未来可能会发生变化

frombaseimportMgmtSystemAPIBaseclassRHEVMSystem(MgmtSystemAPIBase):_stats_available={'num_vm':lambdaself:self.api.get_summary().get_vms().total,'num_host':lambdaself:len(self.list_host()),'num_cluster':lambdaself:len(self.list_cluster()),'num_template':lambdaself:len(self.list_template()),'num_datastore':lambdaself:len(self.list_datastore()),}def__init__(self,hostname,username,password,**kwargs):super(RHEVMSystem,self).__init__(kwargs)

如果noe未与^{tt2}一起传入,则需要调用super来设置记录器$ 关键字。

然后,开发人员可以添加自己的方法来与自己的管理系统交互。通俗易懂 在管理系统中,统计数据的名称通常都是相同的。这样我们就可以处理多重管理 系统相同,并使用相同的方法检查RHEV系统和VMWare系统上的虚拟机数量。

异常当前位于单个模块中,以后可能会随着每个管理系统都有自己的模块而改变 包和异常存储在那里。

本模块最初是为帮助manageiq测试团队而开发的。

贡献

此项目要遵循的指导原则可以在 cfmedev_guide

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
使用freemarker(ftl模板)通过spring发送outlook电子邮件的java自定义表单   java Project Euler 17错误答案   java想澄清所有关于Android多屏幕尺寸支持的疑问吗?   如何使用Eclipse和Maven配置Java项目以连接到AmazonRDS   java如何在Java8中按流对映射对象按时间段求和?   我是Java新手,希望有人能帮我   java Spring boot,序列化和反序列化时Jackson Json问题   java扫雷器(不是算法,只是布局问题)   java找到一个字符[]的完全唯一排列吗?   java哪种CRC用于更改Desfire卡中的密钥   java如何修复越界索引错误?   java读取Excel数值单元格值   java如何正确构建“PUT方法”并执行“intern请求”?   java如何从XSD生成JAXB类?   java为什么要运行它?   Java,畸形异常   java Springsecurityldap:实例化InitialContextFactory com失败。太阳jndi。ldap。LDAPCTX工厂   解析Java无法读取文本文件   java在每个请求之前运行资源方法