pub struct DistributedVirtualPortgroup { /* private fields */ }Expand description
The DistributedVirtualPortgroup managed object defines how hosts and virtual machines connect to a network.
A distributed virtual portgroup specifies DistributedVirtualPort configuration options for the ports on a DistributedVirtualSwitch. A portgroup also represents a Network entity in the datacenter.
- To configure host access by portgroup, set the portgroup in the host virtual NIC specification (HostVirtualNicSpec.HostVirtualNicSpec.portgroup).
- To configure virtual machine access by portgroup, set the portgroup in the virtual Ethernet card backing (VirtualEthernetCard.VirtualDevice.backing.VirtualEthernetCardDistributedVirtualPortBackingInfo.port.DistributedVirtualSwitchPortConnection.portgroupKey).
When you use a portgroup for network access, the Server will create a port according to DistributedVirtualPortgroup.config.DVPortgroupConfigInfo.type.
Implementations§
Source§impl DistributedVirtualPortgroup
impl DistributedVirtualPortgroup
pub fn new(client: Arc<dyn VimClient>, mo_id: &str) -> Self
Sourcepub async fn destroy_task(&self) -> Result<ManagedObjectReference>
pub async fn destroy_task(&self) -> Result<ManagedObjectReference>
Destroys this object, deleting its contents and removing it from its parent folder (if any).
NOTE: The appropriate privilege must be held on the parent of the destroyed entity as well as the entity itself. This method can throw one of several exceptions. The exact set of exceptions depends on the kind of entity that is being removed. See comments for each entity for more information on destroy behavior.
Required privileges: DVPortgroup.Delete
§Returns:
This method returns a Task object with which to monitor the operation.
Refers instance of Task.
§Errors:
Failure
Sourcepub async fn destroy_network(&self) -> Result<()>
pub async fn destroy_network(&self) -> Result<()>
Deprecated as of VI API 2.5 do not use this method. This method throws ResourceInUse. Networks are automatically removed when no longer in use, so this method is unnecessary.
Removes a network.
A network can be removed only if it is not used by any host or virtual machine.
Required privileges: Network.Delete
§Errors:
ResourceInUse: if one or more hosts or virtual machines are configured to use the network.
Sourcepub async fn reconfigure_dv_portgroup_task(
&self,
spec: &DvPortgroupConfigSpec,
) -> Result<ManagedObjectReference>
pub async fn reconfigure_dv_portgroup_task( &self, spec: &DvPortgroupConfigSpec, ) -> Result<ManagedObjectReference>
Reconfigures one or more distributed virtual portgroups.
You can use this method to set portgroup properties or to reset the portgroup to a previous state.
Reconfiguring a Standard Distributed Virtual Portgroup
To reconfigure a DistributedVirtualPortgroup, use a DVPortgroupConfigSpec to set the portgroup properties.
Reconfiguring a Portgroup Associated With a VMware Distributed Virtual Switch
If you use a VmwareDistributedVirtualSwitch, you can perform the following portgroup reconfiguration:
- Use a DVPortgroupConfigSpec to set the portgroup properties.
- Use the DVPortgroupConfigSpec returned by DistributedVirtualPortgroup.DVPortgroupRollback_Task to reset the portgroup to a previous state.
The following privileges are required to reconfigure a portgroup.
- DVPortgroup.PolicyOp if you are changing the policy of the portgroup.
- DVPortgroup.ScopeOp if you are changing the scope of the portgroup.
- DVPortgroup.Modify for anything else.
§Parameters:
§spec
Configuration data for the portgroup.
§Returns:
Refers instance of Task.
§Errors:
DvsFault: if spec is not valid.
NotSupported: if the spec includes settings for any VDS feature that is not supported on this switch.
DvsNotAuthorized: if login-session’s extension key does not match the switch’s configured DVSConfigInfo.extensionKey.
Sourcepub async fn reload(&self) -> Result<()>
pub async fn reload(&self) -> Result<()>
Reload the entity state.
Clients only need to call this method if they changed some external state that affects the service without using the Web service interface to perform the change. For example, hand-editing a virtual machine configuration file affects the configuration of the associated virtual machine but the service managing the virtual machine might not monitor the file for changes. In this case, after such an edit, a client would call “reload” on the associated virtual machine to ensure the service and its clients have current data for the virtual machine.
Required privileges: System.Read
Sourcepub async fn rename_task(
&self,
new_name: &str,
) -> Result<ManagedObjectReference>
pub async fn rename_task( &self, new_name: &str, ) -> Result<ManagedObjectReference>
Renames this managed entity.
Any % (percent) character used in this name parameter must be escaped, unless it is used to start an escape sequence. Clients may also escape any other characters in this name parameter.
See also ManagedEntity.name.
Required privileges: DVPortgroup.Modify
§Parameters:
§new_name
§Returns:
This method returns a Task object with which to monitor the operation.
Refers instance of Task.
§Errors:
DuplicateName: If another object in the same folder has the target name.
InvalidName: If the new name is not a valid entity name.
Sourcepub async fn dv_portgroup_rollback_task(
&self,
entity_backup: Option<&EntityBackupConfig>,
) -> Result<ManagedObjectReference>
pub async fn dv_portgroup_rollback_task( &self, entity_backup: Option<&EntityBackupConfig>, ) -> Result<ManagedObjectReference>
This method determines if the portgroup configuration has changed.
If it has changed, the method returns a DVPortgroupConfigSpec. Use the DistributedVirtualPortgroup.ReconfigureDVPortgroup_Task method to apply the rollback configuration to the portgroup. You can use the rollback method only on a portgroup that is associated with a VmwareDistributedVirtualSwitch.
- If you specify the
entityBackupparameter, the returned configuration specification represents the exported portgroup configuration. If theentityBackupmatches the current portgroup configuration, the method does not return a configuration specification. - If
entityBackupis not specified, the returned configuration specification represents a previous state of the portgroup, if available. When you use a VMware distributed virtual switch, each time you reconfigure the switch, the Server saves the switch configuration before applying the updates. If the vCenter Server is restarted, the saved configuration is not preserved and the method does not return a configuration specification.
To use the rollback method, you must have the DVPortgroup.Read privilege.
§Parameters:
§entity_backup
The backup of Distributed Virtual PortGroup entity.
§Returns:
Returns a Task object with which to monitor the operation. If the distributed virtual portgroup configuration has changed, the Task.Task.info.TaskInfo.result property contains the DVPortgroupConfigSpec object.
Refers instance of Task.
§Errors:
RollbackFailure: if there is no configuration specified in entityBackup and the previous configuration does not exist either
DvsFault: if operation fails.
Sourcepub async fn set_custom_value(&self, key: &str, value: &str) -> Result<()>
pub async fn set_custom_value(&self, key: &str, value: &str) -> Result<()>
Assigns a value to a custom field.
The setCustomValue method requires whichever updatePrivilege is defined as one of the CustomFieldDef.fieldInstancePrivileges for the CustomFieldDef whose value is being changed.
§Parameters:
§key
The name of the field whose value is to be updated.
§value
Value to be assigned to the custom field.
Sourcepub async fn alarm_actions_enabled(&self) -> Result<Option<bool>>
pub async fn alarm_actions_enabled(&self) -> Result<Option<bool>>
Whether alarm actions are enabled for this entity.
True if enabled; false otherwise.
Required privileges: System.Read
Sourcepub async fn available_field(&self) -> Result<Option<Vec<CustomFieldDef>>>
pub async fn available_field(&self) -> Result<Option<Vec<CustomFieldDef>>>
List of custom field definitions that are valid for the object’s type.
The fields are sorted by CustomFieldDef.name.
Required privileges: System.View
Sourcepub async fn config(&self) -> Result<DvPortgroupConfigInfo>
pub async fn config(&self) -> Result<DvPortgroupConfigInfo>
Configuration of the portgroup.
Sourcepub async fn config_issue(&self) -> Result<Option<Vec<Event>>>
pub async fn config_issue(&self) -> Result<Option<Vec<Event>>>
Current configuration issues that have been detected for this entity.
Typically, these issues have already been logged as events. The entity stores these events as long as they are still current. The configStatus property provides an overall status based on these events.
Sourcepub async fn config_status(&self) -> Result<ManagedEntityStatusEnum>
pub async fn config_status(&self) -> Result<ManagedEntityStatusEnum>
The configStatus indicates whether or not the system has detected a configuration issue involving this entity.
For example, it might have detected a duplicate IP address or MAC address, or a host in a cluster might be out of compliance. The meanings of the configStatus values are:
- red: A problem has been detected involving the entity.
- yellow: A problem is about to occur or a transient condition has occurred (For example, reconfigure fail-over policy).
- green: No configuration issues have been detected.
- gray: The configuration status of the entity is not being monitored.
A green status indicates only that a problem has not been detected; it is not a guarantee that the entity is problem-free.
The configIssue property contains a list of the problems that have been detected. In releases after vSphere API 5.0, vSphere Servers might not generate property collector update notifications for this property. To obtain the latest value of the property, you can use PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx. If you use the PropertyCollector.WaitForUpdatesEx method, specify an empty string for the version parameter. Any other version value will not produce any property values as no updates are generated.
Sourcepub async fn custom_value(
&self,
) -> Result<Option<Vec<Box<dyn CustomFieldValueTrait>>>>
pub async fn custom_value( &self, ) -> Result<Option<Vec<Box<dyn CustomFieldValueTrait>>>>
Custom field values.
Required privileges: System.View
Sourcepub async fn declared_alarm_state(&self) -> Result<Option<Vec<AlarmState>>>
pub async fn declared_alarm_state(&self) -> Result<Option<Vec<AlarmState>>>
A set of alarm states for alarms that apply to this managed entity.
The set includes alarms defined on this entity and alarms inherited from the parent entity, or from any ancestors in the inventory hierarchy.
Alarms are inherited if they can be triggered by this entity or its descendants. This set does not include alarms that are defined on descendants of this entity.
Required privileges: System.View
Sourcepub async fn disabled_method(&self) -> Result<Option<Vec<String>>>
pub async fn disabled_method(&self) -> Result<Option<Vec<String>>>
List of operations that are disabled, given the current runtime state of the entity.
For example, a power-on operation always fails if a virtual machine is already powered on. This list can be used by clients to enable or disable operations in a graphical user interface.
Note: This list is determined by the current runtime state of an entity, not by its permissions.
This list may include the following operations for a HostSystem:
- HostSystem.EnterMaintenanceMode_Task
- HostSystem.ExitMaintenanceMode_Task
- HostSystem.RebootHost_Task
- HostSystem.ShutdownHost_Task
- HostSystem.ReconnectHost_Task
- HostSystem.DisconnectHost_Task
This list may include the following operations for a VirtualMachine:
- VirtualMachine.AnswerVM
- ManagedEntity.Rename_Task
- VirtualMachine.CloneVM_Task
- VirtualMachine.PowerOffVM_Task
- VirtualMachine.PowerOnVM_Task
- VirtualMachine.SuspendVM_Task
- VirtualMachine.ResetVM_Task
- VirtualMachine.ReconfigVM_Task
- VirtualMachine.RelocateVM_Task
- VirtualMachine.MigrateVM_Task
- VirtualMachine.CustomizeVM_Task
- VirtualMachine.ShutdownGuest
- VirtualMachine.StandbyGuest
- VirtualMachine.RebootGuest
- VirtualMachine.CreateSnapshot_Task
- VirtualMachine.RemoveAllSnapshots_Task
- VirtualMachine.RevertToCurrentSnapshot_Task
- VirtualMachine.MarkAsTemplate
- VirtualMachine.MarkAsVirtualMachine
- VirtualMachine.ResetGuestInformation
- VirtualMachine.MountToolsInstaller
- VirtualMachine.UnmountToolsInstaller
- ManagedEntity.Destroy_Task
- VirtualMachine.UpgradeVM_Task
- VirtualMachine.ExportVm
This list may include the following operations for a ResourcePool:
- ResourcePool.ImportVApp
- ResourcePool.CreateChildVM_Task
- ResourcePool.UpdateConfig
- Folder.CreateVM_Task
- ManagedEntity.Destroy_Task
- ManagedEntity.Rename_Task
This list may include the following operations for a VirtualApp:
- ManagedEntity.Destroy_Task
- VirtualApp.CloneVApp_Task
- VirtualApp.unregisterVApp_Task
- VirtualApp.ExportVApp
- VirtualApp.PowerOnVApp_Task
- VirtualApp.PowerOffVApp_Task
- VirtualApp.UpdateVAppConfig
In releases after vSphere API 5.0, vSphere Servers might not generate property collector update notifications for this property. To obtain the latest value of the property, you can use PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx. If you use the PropertyCollector.WaitForUpdatesEx method, specify an empty string for the version parameter. Any other version value will not produce any property values as no updates are generated.
Sourcepub async fn effective_role(&self) -> Result<Option<Vec<i32>>>
pub async fn effective_role(&self) -> Result<Option<Vec<i32>>>
Access rights the current session has to this entity.
Required privileges: System.View
Sourcepub async fn name(&self) -> Result<String>
pub async fn name(&self) -> Result<String>
Name of this entity, unique relative to its parent.
Any / (slash), \ (backslash), character used in this name element will be escaped. Similarly, any % (percent) character used in this name element will be escaped, unless it is used to start an escape sequence. A slash is escaped as %2F or %2f. A backslash is escaped as %5C or %5c, and a percent is escaped as %25.
Required privileges: System.View
Sourcepub async fn overall_status(&self) -> Result<ManagedEntityStatusEnum>
pub async fn overall_status(&self) -> Result<ManagedEntityStatusEnum>
General health of this managed entity.
The overall status of the managed entity is computed as the worst status among its alarms and the configuration issues detected on the entity. The status is reported as one of the following values:
- red: The entity has alarms or configuration issues with a red status.
- yellow: The entity does not have alarms or configuration issues with a red status, and has at least one with a yellow status.
- green: The entity does not have alarms or configuration issues with a red or yellow status, and has at least one with a green status.
- gray: All of the entity’s alarms have a gray status and the configuration status of the entity is not being monitored.
In releases after vSphere API 5.0, vSphere Servers might not generate property collector update notifications for this property. To obtain the latest value of the property, you can use PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx. If you use the PropertyCollector.WaitForUpdatesEx method, specify an empty string for the version parameter. Any other version value will not produce any property values as no updates are generated.
Sourcepub async fn parent(&self) -> Result<Option<ManagedObjectReference>>
pub async fn parent(&self) -> Result<Option<ManagedObjectReference>>
Parent of this entity.
This value is null for the root object and for VirtualMachine objects that are part of a VirtualApp.
Required privileges: System.View
§Returns:
Refers instance of ManagedEntity.
Sourcepub async fn permission(&self) -> Result<Option<Vec<Permission>>>
pub async fn permission(&self) -> Result<Option<Vec<Permission>>>
List of permissions defined for this entity.
Sourcepub async fn port_keys(&self) -> Result<Option<Vec<String>>>
pub async fn port_keys(&self) -> Result<Option<Vec<String>>>
Port keys for the set of ports in the portgroup.
Sourcepub async fn recent_task(&self) -> Result<Option<Vec<ManagedObjectReference>>>
pub async fn recent_task(&self) -> Result<Option<Vec<ManagedObjectReference>>>
The set of recent tasks operating on this managed entity.
This is a subset of TaskManager.recentTask belong to this entity. A task in this list could be in one of the four states: pending, running, success or error.
This property can be used to deduce intermediate power states for a virtual machine entity. For example, if the current powerState is “poweredOn” and there is a running task performing the “suspend” operation, then the virtual machine’s intermediate state might be described as “suspending.”
Most tasks (such as power operations) obtain exclusive access to the virtual machine, so it is unusual for this list to contain more than one running task. One exception, however, is the task of cloning a virtual machine. In releases after vSphere API 5.0, vSphere Servers might not generate property collector update notifications for this property. To obtain the latest value of the property, you can use PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx. If you use the PropertyCollector.WaitForUpdatesEx method, specify an empty string for the version parameter. Any other version value will not produce any property values as no updates are generated.
§Returns:
Refers instances of Task.
Sourcepub async fn summary(&self) -> Result<Box<dyn NetworkSummaryTrait>>
pub async fn summary(&self) -> Result<Box<dyn NetworkSummaryTrait>>
Properties of a network.
Sourcepub async fn tag(&self) -> Result<Option<Vec<Tag>>>
pub async fn tag(&self) -> Result<Option<Vec<Tag>>>
The set of tags associated with this managed entity.
Experimental. Subject to change.
Required privileges: System.View
Sourcepub async fn triggered_alarm_state(&self) -> Result<Option<Vec<AlarmState>>>
pub async fn triggered_alarm_state(&self) -> Result<Option<Vec<AlarmState>>>
A set of alarm states for alarms triggered by this entity or by its descendants.
Triggered alarms are propagated up the inventory hierarchy so that a user can readily tell when a descendant has triggered an alarm. In releases after vSphere API 5.0, vSphere Servers might not generate property collector update notifications for this property. To obtain the latest value of the property, you can use PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx. If you use the PropertyCollector.WaitForUpdatesEx method, specify an empty string for the version parameter. Any other version value will not produce any property values as no updates are generated.
Required privileges: System.View
Trait Implementations§
Source§impl Clone for DistributedVirtualPortgroup
impl Clone for DistributedVirtualPortgroup
Source§fn clone(&self) -> DistributedVirtualPortgroup
fn clone(&self) -> DistributedVirtualPortgroup
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more