python pyvmomi操作VMware(一):对vsphere登录后vcenter的理解

准备环境
安装包:

pyVim==0.0.21 
pyvmomi==6.7.1
命令:pip install pyVim==0.0.21  pyvmomi==6.7.1
pyvmomi连接vsphere获取vcenter操作对象:
# -*- coding: utf-8 -*-
from pyVim.connect import SmartConnectNoSSL


class VmManage(object):

    def __init__(self, host, user, password, port, ssl):
        self.host = host
        self.user = user
        self.pwd = password
        self.port = port
        self.sslContext = ssl
        try:
            self.client = SmartConnectNoSSL(host=host,
                                            user=user,
                                            pwd=password,
                                            port=443
                                            )
            self.content = self.client.RetrieveContent()
            self.result = True
        except Exception as e:
            self.result = False
            self.message = e


if __name__ == '__main__':
    ip = '192.11.11.11'
    user = 'xw'
    password = '123456'
    port = 443
    vm = VmManage(host=ip,
                  user=user,
                  password=password,
                  port=port, ssl=None)
    if vm.result:
        # 说明连接成功,可以使用vm.client等
        pass
    else:
        print vm.message

有一点需要注意,在这里引入的是SmartConnectNoSSL而不是SmartConnect,差别在于前者不需要ssl证书验证,后者需要,如果没有证书验证,用前者,有证书内容,可以用后者。

如果想要获取vcenter的一些信息,首先你要对vcenter登录后的客户端内的内容有一个基本的了解。

登录成功后的图如下:
在这里插入图片描述
在我看来vcenter登录后,左侧内容呈现一个树状图。
在这里插入图片描述
可以理解为vcenter账户IP、数据中心、集群为文件夹,host主机、虚拟机为文件。登录上的vcenter账户为根目录,只有一个。
更进一步,获取这些对象和了解对象的属性字段:python pyvmomi操作VMware(二)

猜你喜欢

转载自blog.csdn.net/qq_42631707/article/details/100553906
今日推荐