<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>Sarindra_Theres Tracker</title>
    <link>https://communities.vmware.com/wbsdv95928/tracker</link>
    <description>Sarindra_Theres Tracker</description>
    <pubDate>Fri, 17 Nov 2023 19:48:53 GMT</pubDate>
    <dc:date>2023-11-17T19:48:53Z</dc:date>
    <item>
      <title>Can't configure address ip using pyvmomi</title>
      <link>https://communities.vmware.com/t5/VMware-code-Members/Can-t-configure-address-ip-using-pyvmomi/m-p/2966298#M91</link>
      <description>&lt;P&gt;I want to create script python to configure ip address, dns,... of VM in vmware,&lt;BR /&gt;but I have this error:&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN class=""&gt;AttributeError&lt;/SPAN&gt;: 'NoneType' object has no attribute 'CustomizeVM'&lt;/PRE&gt;&lt;P&gt;&lt;STRONG&gt;&lt;BR /&gt;"""&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;from pyVim.connect import SmartConnect&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;from pyVmomi import vim&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;from pyVim.connect import SmartConnect&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;import ssl&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;import requests&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;from pyVmomi import vim&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;STRONG&gt;# Désactiver les avertissements SSL&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;requests.packages.urllib3.disable_warnings()&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;ssl._create_default_https_context = ssl._create_unverified_context&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;# Virtual machine information&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;vm_name = 'centos'&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;ip_address = '192.168.1.100'&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;subnet_mask = '255.255.255.0'&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;gateway = '192.168.1.1'&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;dns_server = "192.157.0.2"&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;# Connect to the vCenter Server&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;si = SmartConnect(host="172.16.143.137", user="root", pwd="pwd!")&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;content = si.RetrieveContent()&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;vms = content.viewManager.CreateContainerView(content.rootFolder, [vim.VirtualMachine], True).view&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;for vm in vms:&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;if vm.name == vm_name:&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;adapter_map = {}&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;for device in vm.config.hardware.device:&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;if isinstance(device, vim.vm.device.VirtualEthernetCard):&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;adapter_map[device.deviceInfo.label] = device&lt;/STRONG&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;#Create a new IP settings object&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;ip_settings = vim.vm.customization.IPSettings()&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;ip_settings.ip = vim.vm.customization.FixedIp()&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;ip_settings.ip.ipAddress = ip_address&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;ip_settings.subnetMask = subnet_mask&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;ip_settings.gateway = [gateway]&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;ip_settings.dnsServerList = [dns_server]&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;ip_settings.dnsDomain = ""&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;adapter = vim.vm.customization.AdapterMapping()&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;adapter.adapter = ip_settings&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;adapter_map[device.deviceInfo.label] = adapter&lt;/STRONG&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;# Create the customization spec and apply it to the VM&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;spec = vim.vm.customization.Specification()&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;spec.nicSettingMap = list(adapter_map.values())&lt;/STRONG&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;customizer = content.customizationSpecManager&lt;/STRONG&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;try:&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;task = customization_spec_manager.CustomizeVM(vm=vm, spec=spec)&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;task.wait_for_completion()&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;except vmodl.fault.SystemError as e:&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;print("Error: %s" % e.msg)&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;continue&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Disconnect(si)&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;"""&lt;/STRONG&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 01 May 2023 11:39:47 GMT</pubDate>
      <guid>https://communities.vmware.com/t5/VMware-code-Members/Can-t-configure-address-ip-using-pyvmomi/m-p/2966298#M91</guid>
      <dc:creator>Sarindra_Theres</dc:creator>
      <dc:date>2023-05-01T11:39:47Z</dc:date>
    </item>
  </channel>
</rss>

