Documentation ¶
Index ¶
- type ComputeCluster
- func (r *ComputeCluster) CustomAttributes() *pulumi.MapOutput
- func (r *ComputeCluster) DatacenterId() *pulumi.StringOutput
- func (r *ComputeCluster) DpmAutomationLevel() *pulumi.StringOutput
- func (r *ComputeCluster) DpmEnabled() *pulumi.BoolOutput
- func (r *ComputeCluster) DpmThreshold() *pulumi.IntOutput
- func (r *ComputeCluster) DrsAdvancedOptions() *pulumi.MapOutput
- func (r *ComputeCluster) DrsAutomationLevel() *pulumi.StringOutput
- func (r *ComputeCluster) DrsEnablePredictiveDrs() *pulumi.BoolOutput
- func (r *ComputeCluster) DrsEnableVmOverrides() *pulumi.BoolOutput
- func (r *ComputeCluster) DrsEnabled() *pulumi.BoolOutput
- func (r *ComputeCluster) DrsMigrationThreshold() *pulumi.IntOutput
- func (r *ComputeCluster) Folder() *pulumi.StringOutput
- func (r *ComputeCluster) ForceEvacuateOnDestroy() *pulumi.BoolOutput
- func (r *ComputeCluster) HaAdmissionControlFailoverHostSystemIds() *pulumi.ArrayOutput
- func (r *ComputeCluster) HaAdmissionControlHostFailureTolerance() *pulumi.IntOutput
- func (r *ComputeCluster) HaAdmissionControlPerformanceTolerance() *pulumi.IntOutput
- func (r *ComputeCluster) HaAdmissionControlPolicy() *pulumi.StringOutput
- func (r *ComputeCluster) HaAdmissionControlResourcePercentageAutoCompute() *pulumi.BoolOutput
- func (r *ComputeCluster) HaAdmissionControlResourcePercentageCpu() *pulumi.IntOutput
- func (r *ComputeCluster) HaAdmissionControlResourcePercentageMemory() *pulumi.IntOutput
- func (r *ComputeCluster) HaAdmissionControlSlotPolicyExplicitCpu() *pulumi.IntOutput
- func (r *ComputeCluster) HaAdmissionControlSlotPolicyExplicitMemory() *pulumi.IntOutput
- func (r *ComputeCluster) HaAdmissionControlSlotPolicyUseExplicitSize() *pulumi.BoolOutput
- func (r *ComputeCluster) HaAdvancedOptions() *pulumi.MapOutput
- func (r *ComputeCluster) HaDatastoreApdRecoveryAction() *pulumi.StringOutput
- func (r *ComputeCluster) HaDatastoreApdResponse() *pulumi.StringOutput
- func (r *ComputeCluster) HaDatastoreApdResponseDelay() *pulumi.IntOutput
- func (r *ComputeCluster) HaDatastorePdlResponse() *pulumi.StringOutput
- func (r *ComputeCluster) HaEnabled() *pulumi.BoolOutput
- func (r *ComputeCluster) HaHeartbeatDatastoreIds() *pulumi.ArrayOutput
- func (r *ComputeCluster) HaHeartbeatDatastorePolicy() *pulumi.StringOutput
- func (r *ComputeCluster) HaHostIsolationResponse() *pulumi.StringOutput
- func (r *ComputeCluster) HaHostMonitoring() *pulumi.StringOutput
- func (r *ComputeCluster) HaVmComponentProtection() *pulumi.StringOutput
- func (r *ComputeCluster) HaVmDependencyRestartCondition() *pulumi.StringOutput
- func (r *ComputeCluster) HaVmFailureInterval() *pulumi.IntOutput
- func (r *ComputeCluster) HaVmMaximumFailureWindow() *pulumi.IntOutput
- func (r *ComputeCluster) HaVmMaximumResets() *pulumi.IntOutput
- func (r *ComputeCluster) HaVmMinimumUptime() *pulumi.IntOutput
- func (r *ComputeCluster) HaVmMonitoring() *pulumi.StringOutput
- func (r *ComputeCluster) HaVmRestartAdditionalDelay() *pulumi.IntOutput
- func (r *ComputeCluster) HaVmRestartPriority() *pulumi.StringOutput
- func (r *ComputeCluster) HaVmRestartTimeout() *pulumi.IntOutput
- func (r *ComputeCluster) HostClusterExitTimeout() *pulumi.IntOutput
- func (r *ComputeCluster) HostSystemIds() *pulumi.ArrayOutput
- func (r *ComputeCluster) ID() *pulumi.IDOutput
- func (r *ComputeCluster) Name() *pulumi.StringOutput
- func (r *ComputeCluster) ProactiveHaAutomationLevel() *pulumi.StringOutput
- func (r *ComputeCluster) ProactiveHaEnabled() *pulumi.BoolOutput
- func (r *ComputeCluster) ProactiveHaModerateRemediation() *pulumi.StringOutput
- func (r *ComputeCluster) ProactiveHaProviderIds() *pulumi.ArrayOutput
- func (r *ComputeCluster) ProactiveHaSevereRemediation() *pulumi.StringOutput
- func (r *ComputeCluster) ResourcePoolId() *pulumi.StringOutput
- func (r *ComputeCluster) Tags() *pulumi.ArrayOutput
- func (r *ComputeCluster) URN() *pulumi.URNOutput
- type ComputeClusterArgs
- type ComputeClusterHostGroup
- func (r *ComputeClusterHostGroup) ComputeClusterId() *pulumi.StringOutput
- func (r *ComputeClusterHostGroup) HostSystemIds() *pulumi.ArrayOutput
- func (r *ComputeClusterHostGroup) ID() *pulumi.IDOutput
- func (r *ComputeClusterHostGroup) Name() *pulumi.StringOutput
- func (r *ComputeClusterHostGroup) URN() *pulumi.URNOutput
- type ComputeClusterHostGroupArgs
- type ComputeClusterHostGroupState
- type ComputeClusterState
- type ComputeClusterVmAffinityRule
- func (r *ComputeClusterVmAffinityRule) ComputeClusterId() *pulumi.StringOutput
- func (r *ComputeClusterVmAffinityRule) Enabled() *pulumi.BoolOutput
- func (r *ComputeClusterVmAffinityRule) ID() *pulumi.IDOutput
- func (r *ComputeClusterVmAffinityRule) Mandatory() *pulumi.BoolOutput
- func (r *ComputeClusterVmAffinityRule) Name() *pulumi.StringOutput
- func (r *ComputeClusterVmAffinityRule) URN() *pulumi.URNOutput
- func (r *ComputeClusterVmAffinityRule) VirtualMachineIds() *pulumi.ArrayOutput
- type ComputeClusterVmAffinityRuleArgs
- type ComputeClusterVmAffinityRuleState
- type ComputeClusterVmDependencyRule
- func (r *ComputeClusterVmDependencyRule) ComputeClusterId() *pulumi.StringOutput
- func (r *ComputeClusterVmDependencyRule) DependencyVmGroupName() *pulumi.StringOutput
- func (r *ComputeClusterVmDependencyRule) Enabled() *pulumi.BoolOutput
- func (r *ComputeClusterVmDependencyRule) ID() *pulumi.IDOutput
- func (r *ComputeClusterVmDependencyRule) Mandatory() *pulumi.BoolOutput
- func (r *ComputeClusterVmDependencyRule) Name() *pulumi.StringOutput
- func (r *ComputeClusterVmDependencyRule) URN() *pulumi.URNOutput
- func (r *ComputeClusterVmDependencyRule) VmGroupName() *pulumi.StringOutput
- type ComputeClusterVmDependencyRuleArgs
- type ComputeClusterVmDependencyRuleState
- type ComputeClusterVmGroup
- func (r *ComputeClusterVmGroup) ComputeClusterId() *pulumi.StringOutput
- func (r *ComputeClusterVmGroup) ID() *pulumi.IDOutput
- func (r *ComputeClusterVmGroup) Name() *pulumi.StringOutput
- func (r *ComputeClusterVmGroup) URN() *pulumi.URNOutput
- func (r *ComputeClusterVmGroup) VirtualMachineIds() *pulumi.ArrayOutput
- type ComputeClusterVmGroupArgs
- type ComputeClusterVmGroupState
- type ComputeClusterVmHostRule
- func (r *ComputeClusterVmHostRule) AffinityHostGroupName() *pulumi.StringOutput
- func (r *ComputeClusterVmHostRule) AntiAffinityHostGroupName() *pulumi.StringOutput
- func (r *ComputeClusterVmHostRule) ComputeClusterId() *pulumi.StringOutput
- func (r *ComputeClusterVmHostRule) Enabled() *pulumi.BoolOutput
- func (r *ComputeClusterVmHostRule) ID() *pulumi.IDOutput
- func (r *ComputeClusterVmHostRule) Mandatory() *pulumi.BoolOutput
- func (r *ComputeClusterVmHostRule) Name() *pulumi.StringOutput
- func (r *ComputeClusterVmHostRule) URN() *pulumi.URNOutput
- func (r *ComputeClusterVmHostRule) VmGroupName() *pulumi.StringOutput
- type ComputeClusterVmHostRuleArgs
- type ComputeClusterVmHostRuleState
- type CustomAttribute
- type CustomAttributeArgs
- type CustomAttributeState
- type Datacenter
- func (r *Datacenter) CustomAttributes() *pulumi.MapOutput
- func (r *Datacenter) Folder() *pulumi.StringOutput
- func (r *Datacenter) ID() *pulumi.IDOutput
- func (r *Datacenter) Moid() *pulumi.StringOutput
- func (r *Datacenter) Name() *pulumi.StringOutput
- func (r *Datacenter) Tags() *pulumi.ArrayOutput
- func (r *Datacenter) URN() *pulumi.URNOutput
- type DatacenterArgs
- type DatacenterState
- type DatastoreCluster
- func (r *DatastoreCluster) CustomAttributes() *pulumi.MapOutput
- func (r *DatastoreCluster) DatacenterId() *pulumi.StringOutput
- func (r *DatastoreCluster) Folder() *pulumi.StringOutput
- func (r *DatastoreCluster) ID() *pulumi.IDOutput
- func (r *DatastoreCluster) Name() *pulumi.StringOutput
- func (r *DatastoreCluster) SdrsAdvancedOptions() *pulumi.MapOutput
- func (r *DatastoreCluster) SdrsAutomationLevel() *pulumi.StringOutput
- func (r *DatastoreCluster) SdrsDefaultIntraVmAffinity() *pulumi.BoolOutput
- func (r *DatastoreCluster) SdrsEnabled() *pulumi.BoolOutput
- func (r *DatastoreCluster) SdrsFreeSpaceThreshold() *pulumi.IntOutput
- func (r *DatastoreCluster) SdrsFreeSpaceThresholdMode() *pulumi.StringOutput
- func (r *DatastoreCluster) SdrsFreeSpaceUtilizationDifference() *pulumi.IntOutput
- func (r *DatastoreCluster) SdrsIoBalanceAutomationLevel() *pulumi.StringOutput
- func (r *DatastoreCluster) SdrsIoLatencyThreshold() *pulumi.IntOutput
- func (r *DatastoreCluster) SdrsIoLoadBalanceEnabled() *pulumi.BoolOutput
- func (r *DatastoreCluster) SdrsIoLoadImbalanceThreshold() *pulumi.IntOutput
- func (r *DatastoreCluster) SdrsIoReservableIopsThreshold() *pulumi.IntOutput
- func (r *DatastoreCluster) SdrsIoReservablePercentThreshold() *pulumi.IntOutput
- func (r *DatastoreCluster) SdrsIoReservableThresholdMode() *pulumi.StringOutput
- func (r *DatastoreCluster) SdrsLoadBalanceInterval() *pulumi.IntOutput
- func (r *DatastoreCluster) SdrsPolicyEnforcementAutomationLevel() *pulumi.StringOutput
- func (r *DatastoreCluster) SdrsRuleEnforcementAutomationLevel() *pulumi.StringOutput
- func (r *DatastoreCluster) SdrsSpaceBalanceAutomationLevel() *pulumi.StringOutput
- func (r *DatastoreCluster) SdrsSpaceUtilizationThreshold() *pulumi.IntOutput
- func (r *DatastoreCluster) SdrsVmEvacuationAutomationLevel() *pulumi.StringOutput
- func (r *DatastoreCluster) Tags() *pulumi.ArrayOutput
- func (r *DatastoreCluster) URN() *pulumi.URNOutput
- type DatastoreClusterArgs
- type DatastoreClusterState
- type DatastoreClusterVmAntiAffinityRule
- func GetDatastoreClusterVmAntiAffinityRule(ctx *pulumi.Context, name string, id pulumi.ID, ...) (*DatastoreClusterVmAntiAffinityRule, error)
- func NewDatastoreClusterVmAntiAffinityRule(ctx *pulumi.Context, name string, args *DatastoreClusterVmAntiAffinityRuleArgs, ...) (*DatastoreClusterVmAntiAffinityRule, error)
- func (r *DatastoreClusterVmAntiAffinityRule) DatastoreClusterId() *pulumi.StringOutput
- func (r *DatastoreClusterVmAntiAffinityRule) Enabled() *pulumi.BoolOutput
- func (r *DatastoreClusterVmAntiAffinityRule) ID() *pulumi.IDOutput
- func (r *DatastoreClusterVmAntiAffinityRule) Mandatory() *pulumi.BoolOutput
- func (r *DatastoreClusterVmAntiAffinityRule) Name() *pulumi.StringOutput
- func (r *DatastoreClusterVmAntiAffinityRule) URN() *pulumi.URNOutput
- func (r *DatastoreClusterVmAntiAffinityRule) VirtualMachineIds() *pulumi.ArrayOutput
- type DatastoreClusterVmAntiAffinityRuleArgs
- type DatastoreClusterVmAntiAffinityRuleState
- type DistributedPortGroup
- func (r *DistributedPortGroup) ActiveUplinks() *pulumi.ArrayOutput
- func (r *DistributedPortGroup) AllowForgedTransmits() *pulumi.BoolOutput
- func (r *DistributedPortGroup) AllowMacChanges() *pulumi.BoolOutput
- func (r *DistributedPortGroup) AllowPromiscuous() *pulumi.BoolOutput
- func (r *DistributedPortGroup) AutoExpand() *pulumi.BoolOutput
- func (r *DistributedPortGroup) BlockAllPorts() *pulumi.BoolOutput
- func (r *DistributedPortGroup) BlockOverrideAllowed() *pulumi.BoolOutput
- func (r *DistributedPortGroup) CheckBeacon() *pulumi.BoolOutput
- func (r *DistributedPortGroup) ConfigVersion() *pulumi.StringOutput
- func (r *DistributedPortGroup) CustomAttributes() *pulumi.MapOutput
- func (r *DistributedPortGroup) Description() *pulumi.StringOutput
- func (r *DistributedPortGroup) DirectpathGen2Allowed() *pulumi.BoolOutput
- func (r *DistributedPortGroup) DistributedVirtualSwitchUuid() *pulumi.StringOutput
- func (r *DistributedPortGroup) EgressShapingAverageBandwidth() *pulumi.IntOutput
- func (r *DistributedPortGroup) EgressShapingBurstSize() *pulumi.IntOutput
- func (r *DistributedPortGroup) EgressShapingEnabled() *pulumi.BoolOutput
- func (r *DistributedPortGroup) EgressShapingPeakBandwidth() *pulumi.IntOutput
- func (r *DistributedPortGroup) Failback() *pulumi.BoolOutput
- func (r *DistributedPortGroup) ID() *pulumi.IDOutput
- func (r *DistributedPortGroup) IngressShapingAverageBandwidth() *pulumi.IntOutput
- func (r *DistributedPortGroup) IngressShapingBurstSize() *pulumi.IntOutput
- func (r *DistributedPortGroup) IngressShapingEnabled() *pulumi.BoolOutput
- func (r *DistributedPortGroup) IngressShapingPeakBandwidth() *pulumi.IntOutput
- func (r *DistributedPortGroup) Key() *pulumi.StringOutput
- func (r *DistributedPortGroup) LacpEnabled() *pulumi.BoolOutput
- func (r *DistributedPortGroup) LacpMode() *pulumi.StringOutput
- func (r *DistributedPortGroup) LivePortMovingAllowed() *pulumi.BoolOutput
- func (r *DistributedPortGroup) Name() *pulumi.StringOutput
- func (r *DistributedPortGroup) NetflowEnabled() *pulumi.BoolOutput
- func (r *DistributedPortGroup) NetflowOverrideAllowed() *pulumi.BoolOutput
- func (r *DistributedPortGroup) NetworkResourcePoolKey() *pulumi.StringOutput
- func (r *DistributedPortGroup) NetworkResourcePoolOverrideAllowed() *pulumi.BoolOutput
- func (r *DistributedPortGroup) NotifySwitches() *pulumi.BoolOutput
- func (r *DistributedPortGroup) NumberOfPorts() *pulumi.IntOutput
- func (r *DistributedPortGroup) PortConfigResetAtDisconnect() *pulumi.BoolOutput
- func (r *DistributedPortGroup) PortNameFormat() *pulumi.StringOutput
- func (r *DistributedPortGroup) PortPrivateSecondaryVlanId() *pulumi.IntOutput
- func (r *DistributedPortGroup) SecurityPolicyOverrideAllowed() *pulumi.BoolOutput
- func (r *DistributedPortGroup) ShapingOverrideAllowed() *pulumi.BoolOutput
- func (r *DistributedPortGroup) StandbyUplinks() *pulumi.ArrayOutput
- func (r *DistributedPortGroup) Tags() *pulumi.ArrayOutput
- func (r *DistributedPortGroup) TeamingPolicy() *pulumi.StringOutput
- func (r *DistributedPortGroup) TrafficFilterOverrideAllowed() *pulumi.BoolOutput
- func (r *DistributedPortGroup) TxUplink() *pulumi.BoolOutput
- func (r *DistributedPortGroup) Type() *pulumi.StringOutput
- func (r *DistributedPortGroup) URN() *pulumi.URNOutput
- func (r *DistributedPortGroup) UplinkTeamingOverrideAllowed() *pulumi.BoolOutput
- func (r *DistributedPortGroup) VlanId() *pulumi.IntOutput
- func (r *DistributedPortGroup) VlanOverrideAllowed() *pulumi.BoolOutput
- func (r *DistributedPortGroup) VlanRanges() *pulumi.ArrayOutput
- type DistributedPortGroupArgs
- type DistributedPortGroupState
- type DistributedVirtualSwitch
- func (r *DistributedVirtualSwitch) ActiveUplinks() *pulumi.ArrayOutput
- func (r *DistributedVirtualSwitch) AllowForgedTransmits() *pulumi.BoolOutput
- func (r *DistributedVirtualSwitch) AllowMacChanges() *pulumi.BoolOutput
- func (r *DistributedVirtualSwitch) AllowPromiscuous() *pulumi.BoolOutput
- func (r *DistributedVirtualSwitch) BlockAllPorts() *pulumi.BoolOutput
- func (r *DistributedVirtualSwitch) CheckBeacon() *pulumi.BoolOutput
- func (r *DistributedVirtualSwitch) ConfigVersion() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) ContactDetail() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) ContactName() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) CustomAttributes() *pulumi.MapOutput
- func (r *DistributedVirtualSwitch) DatacenterId() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) Description() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) DirectpathGen2Allowed() *pulumi.BoolOutput
- func (r *DistributedVirtualSwitch) EgressShapingAverageBandwidth() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) EgressShapingBurstSize() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) EgressShapingEnabled() *pulumi.BoolOutput
- func (r *DistributedVirtualSwitch) EgressShapingPeakBandwidth() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) Failback() *pulumi.BoolOutput
- func (r *DistributedVirtualSwitch) FaulttoleranceMaximumMbit() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) FaulttoleranceReservationMbit() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) FaulttoleranceShareCount() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) FaulttoleranceShareLevel() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) Folder() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) HbrMaximumMbit() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) HbrReservationMbit() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) HbrShareCount() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) HbrShareLevel() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) Hosts() *pulumi.ArrayOutput
- func (r *DistributedVirtualSwitch) ID() *pulumi.IDOutput
- func (r *DistributedVirtualSwitch) IngressShapingAverageBandwidth() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) IngressShapingBurstSize() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) IngressShapingEnabled() *pulumi.BoolOutput
- func (r *DistributedVirtualSwitch) IngressShapingPeakBandwidth() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) Ipv4Address() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) IscsiMaximumMbit() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) IscsiReservationMbit() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) IscsiShareCount() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) IscsiShareLevel() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) LacpApiVersion() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) LacpEnabled() *pulumi.BoolOutput
- func (r *DistributedVirtualSwitch) LacpMode() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) LinkDiscoveryOperation() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) LinkDiscoveryProtocol() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) ManagementMaximumMbit() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) ManagementReservationMbit() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) ManagementShareCount() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) ManagementShareLevel() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) MaxMtu() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) MulticastFilteringMode() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) Name() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) NetflowActiveFlowTimeout() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) NetflowCollectorIpAddress() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) NetflowCollectorPort() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) NetflowEnabled() *pulumi.BoolOutput
- func (r *DistributedVirtualSwitch) NetflowIdleFlowTimeout() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) NetflowInternalFlowsOnly() *pulumi.BoolOutput
- func (r *DistributedVirtualSwitch) NetflowObservationDomainId() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) NetflowSamplingRate() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) NetworkResourceControlEnabled() *pulumi.BoolOutput
- func (r *DistributedVirtualSwitch) NetworkResourceControlVersion() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) NfsMaximumMbit() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) NfsReservationMbit() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) NfsShareCount() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) NfsShareLevel() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) NotifySwitches() *pulumi.BoolOutput
- func (r *DistributedVirtualSwitch) PortPrivateSecondaryVlanId() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) StandbyUplinks() *pulumi.ArrayOutput
- func (r *DistributedVirtualSwitch) Tags() *pulumi.ArrayOutput
- func (r *DistributedVirtualSwitch) TeamingPolicy() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) TxUplink() *pulumi.BoolOutput
- func (r *DistributedVirtualSwitch) URN() *pulumi.URNOutput
- func (r *DistributedVirtualSwitch) Uplinks() *pulumi.ArrayOutput
- func (r *DistributedVirtualSwitch) VdpMaximumMbit() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) VdpReservationMbit() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) VdpShareCount() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) VdpShareLevel() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) Version() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) VirtualmachineMaximumMbit() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) VirtualmachineReservationMbit() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) VirtualmachineShareCount() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) VirtualmachineShareLevel() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) VlanId() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) VlanRanges() *pulumi.ArrayOutput
- func (r *DistributedVirtualSwitch) VmotionMaximumMbit() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) VmotionReservationMbit() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) VmotionShareCount() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) VmotionShareLevel() *pulumi.StringOutput
- func (r *DistributedVirtualSwitch) VsanMaximumMbit() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) VsanReservationMbit() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) VsanShareCount() *pulumi.IntOutput
- func (r *DistributedVirtualSwitch) VsanShareLevel() *pulumi.StringOutput
- type DistributedVirtualSwitchArgs
- type DistributedVirtualSwitchState
- type DpmHostOverride
- func (r *DpmHostOverride) ComputeClusterId() *pulumi.StringOutput
- func (r *DpmHostOverride) DpmAutomationLevel() *pulumi.StringOutput
- func (r *DpmHostOverride) DpmEnabled() *pulumi.BoolOutput
- func (r *DpmHostOverride) HostSystemId() *pulumi.StringOutput
- func (r *DpmHostOverride) ID() *pulumi.IDOutput
- func (r *DpmHostOverride) URN() *pulumi.URNOutput
- type DpmHostOverrideArgs
- type DpmHostOverrideState
- type DrsVmOverride
- func (r *DrsVmOverride) ComputeClusterId() *pulumi.StringOutput
- func (r *DrsVmOverride) DrsAutomationLevel() *pulumi.StringOutput
- func (r *DrsVmOverride) DrsEnabled() *pulumi.BoolOutput
- func (r *DrsVmOverride) ID() *pulumi.IDOutput
- func (r *DrsVmOverride) URN() *pulumi.URNOutput
- func (r *DrsVmOverride) VirtualMachineId() *pulumi.StringOutput
- type DrsVmOverrideArgs
- type DrsVmOverrideState
- type File
- func (r *File) CreateDirectories() *pulumi.BoolOutput
- func (r *File) Datacenter() *pulumi.StringOutput
- func (r *File) Datastore() *pulumi.StringOutput
- func (r *File) DestinationFile() *pulumi.StringOutput
- func (r *File) ID() *pulumi.IDOutput
- func (r *File) SourceDatacenter() *pulumi.StringOutput
- func (r *File) SourceDatastore() *pulumi.StringOutput
- func (r *File) SourceFile() *pulumi.StringOutput
- func (r *File) URN() *pulumi.URNOutput
- type FileArgs
- type FileState
- type Folder
- func (r *Folder) CustomAttributes() *pulumi.MapOutput
- func (r *Folder) DatacenterId() *pulumi.StringOutput
- func (r *Folder) ID() *pulumi.IDOutput
- func (r *Folder) Path() *pulumi.StringOutput
- func (r *Folder) Tags() *pulumi.ArrayOutput
- func (r *Folder) Type() *pulumi.StringOutput
- func (r *Folder) URN() *pulumi.URNOutput
- type FolderArgs
- type FolderState
- type GetComputeClusterArgs
- type GetComputeClusterResult
- type GetCustomAttributeArgs
- type GetCustomAttributeResult
- type GetDatacenterArgs
- type GetDatacenterResult
- type GetDatastoreArgs
- type GetDatastoreClusterArgs
- type GetDatastoreClusterResult
- type GetDatastoreResult
- type GetDistributedVirtualSwitchArgs
- type GetDistributedVirtualSwitchResult
- type GetHostArgs
- type GetHostResult
- type GetNetworkArgs
- type GetNetworkResult
- type GetResourcePoolArgs
- type GetResourcePoolResult
- type GetTagArgs
- type GetTagCategoryArgs
- type GetTagCategoryResult
- type GetTagResult
- type GetVirtualMachineArgs
- type GetVirtualMachineResult
- type GetVmfsDisksArgs
- type GetVmfsDisksResult
- type HaVmOverride
- func (r *HaVmOverride) ComputeClusterId() *pulumi.StringOutput
- func (r *HaVmOverride) HaDatastoreApdRecoveryAction() *pulumi.StringOutput
- func (r *HaVmOverride) HaDatastoreApdResponse() *pulumi.StringOutput
- func (r *HaVmOverride) HaDatastoreApdResponseDelay() *pulumi.IntOutput
- func (r *HaVmOverride) HaDatastorePdlResponse() *pulumi.StringOutput
- func (r *HaVmOverride) HaHostIsolationResponse() *pulumi.StringOutput
- func (r *HaVmOverride) HaVmFailureInterval() *pulumi.IntOutput
- func (r *HaVmOverride) HaVmMaximumFailureWindow() *pulumi.IntOutput
- func (r *HaVmOverride) HaVmMaximumResets() *pulumi.IntOutput
- func (r *HaVmOverride) HaVmMinimumUptime() *pulumi.IntOutput
- func (r *HaVmOverride) HaVmMonitoring() *pulumi.StringOutput
- func (r *HaVmOverride) HaVmMonitoringUseClusterDefaults() *pulumi.BoolOutput
- func (r *HaVmOverride) HaVmRestartPriority() *pulumi.StringOutput
- func (r *HaVmOverride) HaVmRestartTimeout() *pulumi.IntOutput
- func (r *HaVmOverride) ID() *pulumi.IDOutput
- func (r *HaVmOverride) URN() *pulumi.URNOutput
- func (r *HaVmOverride) VirtualMachineId() *pulumi.StringOutput
- type HaVmOverrideArgs
- type HaVmOverrideState
- type HostPortGroup
- func (r *HostPortGroup) ActiveNics() *pulumi.ArrayOutput
- func (r *HostPortGroup) AllowForgedTransmits() *pulumi.BoolOutput
- func (r *HostPortGroup) AllowMacChanges() *pulumi.BoolOutput
- func (r *HostPortGroup) AllowPromiscuous() *pulumi.BoolOutput
- func (r *HostPortGroup) CheckBeacon() *pulumi.BoolOutput
- func (r *HostPortGroup) ComputedPolicy() *pulumi.MapOutput
- func (r *HostPortGroup) Failback() *pulumi.BoolOutput
- func (r *HostPortGroup) HostSystemId() *pulumi.StringOutput
- func (r *HostPortGroup) ID() *pulumi.IDOutput
- func (r *HostPortGroup) Key() *pulumi.StringOutput
- func (r *HostPortGroup) Name() *pulumi.StringOutput
- func (r *HostPortGroup) NotifySwitches() *pulumi.BoolOutput
- func (r *HostPortGroup) Ports() *pulumi.Output
- func (r *HostPortGroup) ShapingAverageBandwidth() *pulumi.IntOutput
- func (r *HostPortGroup) ShapingBurstSize() *pulumi.IntOutput
- func (r *HostPortGroup) ShapingEnabled() *pulumi.BoolOutput
- func (r *HostPortGroup) ShapingPeakBandwidth() *pulumi.IntOutput
- func (r *HostPortGroup) StandbyNics() *pulumi.ArrayOutput
- func (r *HostPortGroup) TeamingPolicy() *pulumi.StringOutput
- func (r *HostPortGroup) URN() *pulumi.URNOutput
- func (r *HostPortGroup) VirtualSwitchName() *pulumi.StringOutput
- func (r *HostPortGroup) VlanId() *pulumi.IntOutput
- type HostPortGroupArgs
- type HostPortGroupState
- type HostVirtualSwitch
- func (r *HostVirtualSwitch) ActiveNics() *pulumi.ArrayOutput
- func (r *HostVirtualSwitch) AllowForgedTransmits() *pulumi.BoolOutput
- func (r *HostVirtualSwitch) AllowMacChanges() *pulumi.BoolOutput
- func (r *HostVirtualSwitch) AllowPromiscuous() *pulumi.BoolOutput
- func (r *HostVirtualSwitch) BeaconInterval() *pulumi.IntOutput
- func (r *HostVirtualSwitch) CheckBeacon() *pulumi.BoolOutput
- func (r *HostVirtualSwitch) Failback() *pulumi.BoolOutput
- func (r *HostVirtualSwitch) HostSystemId() *pulumi.StringOutput
- func (r *HostVirtualSwitch) ID() *pulumi.IDOutput
- func (r *HostVirtualSwitch) LinkDiscoveryOperation() *pulumi.StringOutput
- func (r *HostVirtualSwitch) LinkDiscoveryProtocol() *pulumi.StringOutput
- func (r *HostVirtualSwitch) Mtu() *pulumi.IntOutput
- func (r *HostVirtualSwitch) Name() *pulumi.StringOutput
- func (r *HostVirtualSwitch) NetworkAdapters() *pulumi.ArrayOutput
- func (r *HostVirtualSwitch) NotifySwitches() *pulumi.BoolOutput
- func (r *HostVirtualSwitch) NumberOfPorts() *pulumi.IntOutput
- func (r *HostVirtualSwitch) ShapingAverageBandwidth() *pulumi.IntOutput
- func (r *HostVirtualSwitch) ShapingBurstSize() *pulumi.IntOutput
- func (r *HostVirtualSwitch) ShapingEnabled() *pulumi.BoolOutput
- func (r *HostVirtualSwitch) ShapingPeakBandwidth() *pulumi.IntOutput
- func (r *HostVirtualSwitch) StandbyNics() *pulumi.ArrayOutput
- func (r *HostVirtualSwitch) TeamingPolicy() *pulumi.StringOutput
- func (r *HostVirtualSwitch) URN() *pulumi.URNOutput
- type HostVirtualSwitchArgs
- type HostVirtualSwitchState
- type License
- func (r *License) EditionKey() *pulumi.StringOutput
- func (r *License) ID() *pulumi.IDOutput
- func (r *License) Labels() *pulumi.MapOutput
- func (r *License) LicenseKey() *pulumi.StringOutput
- func (r *License) Name() *pulumi.StringOutput
- func (r *License) Total() *pulumi.IntOutput
- func (r *License) URN() *pulumi.URNOutput
- func (r *License) Used() *pulumi.IntOutput
- type LicenseArgs
- type LicenseState
- type NasDatastore
- func (r *NasDatastore) AccessMode() *pulumi.StringOutput
- func (r *NasDatastore) Accessible() *pulumi.BoolOutput
- func (r *NasDatastore) Capacity() *pulumi.IntOutput
- func (r *NasDatastore) CustomAttributes() *pulumi.MapOutput
- func (r *NasDatastore) DatastoreClusterId() *pulumi.StringOutput
- func (r *NasDatastore) Folder() *pulumi.StringOutput
- func (r *NasDatastore) FreeSpace() *pulumi.IntOutput
- func (r *NasDatastore) HostSystemIds() *pulumi.ArrayOutput
- func (r *NasDatastore) ID() *pulumi.IDOutput
- func (r *NasDatastore) MaintenanceMode() *pulumi.StringOutput
- func (r *NasDatastore) MultipleHostAccess() *pulumi.BoolOutput
- func (r *NasDatastore) Name() *pulumi.StringOutput
- func (r *NasDatastore) ProtocolEndpoint() *pulumi.StringOutput
- func (r *NasDatastore) RemoteHosts() *pulumi.ArrayOutput
- func (r *NasDatastore) RemotePath() *pulumi.StringOutput
- func (r *NasDatastore) SecurityType() *pulumi.StringOutput
- func (r *NasDatastore) Tags() *pulumi.ArrayOutput
- func (r *NasDatastore) Type() *pulumi.StringOutput
- func (r *NasDatastore) URN() *pulumi.URNOutput
- func (r *NasDatastore) UncommittedSpace() *pulumi.IntOutput
- func (r *NasDatastore) Url() *pulumi.StringOutput
- type NasDatastoreArgs
- type NasDatastoreState
- type ResourcePool
- func (r *ResourcePool) CpuExpandable() *pulumi.BoolOutput
- func (r *ResourcePool) CpuLimit() *pulumi.IntOutput
- func (r *ResourcePool) CpuReservation() *pulumi.IntOutput
- func (r *ResourcePool) CpuShareLevel() *pulumi.StringOutput
- func (r *ResourcePool) CpuShares() *pulumi.IntOutput
- func (r *ResourcePool) CustomAttributes() *pulumi.MapOutput
- func (r *ResourcePool) ID() *pulumi.IDOutput
- func (r *ResourcePool) MemoryExpandable() *pulumi.BoolOutput
- func (r *ResourcePool) MemoryLimit() *pulumi.IntOutput
- func (r *ResourcePool) MemoryReservation() *pulumi.IntOutput
- func (r *ResourcePool) MemoryShareLevel() *pulumi.StringOutput
- func (r *ResourcePool) MemoryShares() *pulumi.IntOutput
- func (r *ResourcePool) Name() *pulumi.StringOutput
- func (r *ResourcePool) ParentResourcePoolId() *pulumi.StringOutput
- func (r *ResourcePool) Tags() *pulumi.ArrayOutput
- func (r *ResourcePool) URN() *pulumi.URNOutput
- type ResourcePoolArgs
- type ResourcePoolState
- type StorageDrsVmOverride
- func (r *StorageDrsVmOverride) DatastoreClusterId() *pulumi.StringOutput
- func (r *StorageDrsVmOverride) ID() *pulumi.IDOutput
- func (r *StorageDrsVmOverride) SdrsAutomationLevel() *pulumi.StringOutput
- func (r *StorageDrsVmOverride) SdrsEnabled() *pulumi.StringOutput
- func (r *StorageDrsVmOverride) SdrsIntraVmAffinity() *pulumi.StringOutput
- func (r *StorageDrsVmOverride) URN() *pulumi.URNOutput
- func (r *StorageDrsVmOverride) VirtualMachineId() *pulumi.StringOutput
- type StorageDrsVmOverrideArgs
- type StorageDrsVmOverrideState
- type Tag
- type TagArgs
- type TagCategory
- func (r *TagCategory) AssociableTypes() *pulumi.ArrayOutput
- func (r *TagCategory) Cardinality() *pulumi.StringOutput
- func (r *TagCategory) Description() *pulumi.StringOutput
- func (r *TagCategory) ID() *pulumi.IDOutput
- func (r *TagCategory) Name() *pulumi.StringOutput
- func (r *TagCategory) URN() *pulumi.URNOutput
- type TagCategoryArgs
- type TagCategoryState
- type TagState
- type VappContainer
- func (r *VappContainer) CpuExpandable() *pulumi.BoolOutput
- func (r *VappContainer) CpuLimit() *pulumi.IntOutput
- func (r *VappContainer) CpuReservation() *pulumi.IntOutput
- func (r *VappContainer) CpuShareLevel() *pulumi.StringOutput
- func (r *VappContainer) CpuShares() *pulumi.IntOutput
- func (r *VappContainer) CustomAttributes() *pulumi.MapOutput
- func (r *VappContainer) ID() *pulumi.IDOutput
- func (r *VappContainer) MemoryExpandable() *pulumi.BoolOutput
- func (r *VappContainer) MemoryLimit() *pulumi.IntOutput
- func (r *VappContainer) MemoryReservation() *pulumi.IntOutput
- func (r *VappContainer) MemoryShareLevel() *pulumi.StringOutput
- func (r *VappContainer) MemoryShares() *pulumi.IntOutput
- func (r *VappContainer) Name() *pulumi.StringOutput
- func (r *VappContainer) ParentFolderId() *pulumi.StringOutput
- func (r *VappContainer) ParentResourcePoolId() *pulumi.StringOutput
- func (r *VappContainer) Tags() *pulumi.ArrayOutput
- func (r *VappContainer) URN() *pulumi.URNOutput
- type VappContainerArgs
- type VappContainerState
- type VirtualDisk
- func (r *VirtualDisk) AdapterType() *pulumi.StringOutput
- func (r *VirtualDisk) CreateDirectories() *pulumi.BoolOutput
- func (r *VirtualDisk) Datacenter() *pulumi.StringOutput
- func (r *VirtualDisk) Datastore() *pulumi.StringOutput
- func (r *VirtualDisk) ID() *pulumi.IDOutput
- func (r *VirtualDisk) Size() *pulumi.IntOutput
- func (r *VirtualDisk) Type() *pulumi.StringOutput
- func (r *VirtualDisk) URN() *pulumi.URNOutput
- func (r *VirtualDisk) VmdkPath() *pulumi.StringOutput
- type VirtualDiskArgs
- type VirtualDiskState
- type VirtualMachine
- func (r *VirtualMachine) AlternateGuestName() *pulumi.StringOutput
- func (r *VirtualMachine) Annotation() *pulumi.StringOutput
- func (r *VirtualMachine) BootDelay() *pulumi.IntOutput
- func (r *VirtualMachine) BootRetryDelay() *pulumi.IntOutput
- func (r *VirtualMachine) BootRetryEnabled() *pulumi.BoolOutput
- func (r *VirtualMachine) Cdrom() *pulumi.Output
- func (r *VirtualMachine) ChangeVersion() *pulumi.StringOutput
- func (r *VirtualMachine) Clone() *pulumi.Output
- func (r *VirtualMachine) CpuHotAddEnabled() *pulumi.BoolOutput
- func (r *VirtualMachine) CpuHotRemoveEnabled() *pulumi.BoolOutput
- func (r *VirtualMachine) CpuLimit() *pulumi.IntOutput
- func (r *VirtualMachine) CpuPerformanceCountersEnabled() *pulumi.BoolOutput
- func (r *VirtualMachine) CpuReservation() *pulumi.IntOutput
- func (r *VirtualMachine) CpuShareCount() *pulumi.IntOutput
- func (r *VirtualMachine) CpuShareLevel() *pulumi.StringOutput
- func (r *VirtualMachine) CustomAttributes() *pulumi.MapOutput
- func (r *VirtualMachine) DatastoreClusterId() *pulumi.StringOutput
- func (r *VirtualMachine) DatastoreId() *pulumi.StringOutput
- func (r *VirtualMachine) DefaultIpAddress() *pulumi.StringOutput
- func (r *VirtualMachine) Disks() *pulumi.ArrayOutput
- func (r *VirtualMachine) EfiSecureBootEnabled() *pulumi.BoolOutput
- func (r *VirtualMachine) EnableDiskUuid() *pulumi.BoolOutput
- func (r *VirtualMachine) EnableLogging() *pulumi.BoolOutput
- func (r *VirtualMachine) EptRviMode() *pulumi.StringOutput
- func (r *VirtualMachine) ExtraConfig() *pulumi.MapOutput
- func (r *VirtualMachine) Firmware() *pulumi.StringOutput
- func (r *VirtualMachine) Folder() *pulumi.StringOutput
- func (r *VirtualMachine) ForcePowerOff() *pulumi.BoolOutput
- func (r *VirtualMachine) GuestId() *pulumi.StringOutput
- func (r *VirtualMachine) GuestIpAddresses() *pulumi.ArrayOutput
- func (r *VirtualMachine) HostSystemId() *pulumi.StringOutput
- func (r *VirtualMachine) HvMode() *pulumi.StringOutput
- func (r *VirtualMachine) ID() *pulumi.IDOutput
- func (r *VirtualMachine) Imported() *pulumi.BoolOutput
- func (r *VirtualMachine) LatencySensitivity() *pulumi.StringOutput
- func (r *VirtualMachine) Memory() *pulumi.IntOutput
- func (r *VirtualMachine) MemoryHotAddEnabled() *pulumi.BoolOutput
- func (r *VirtualMachine) MemoryLimit() *pulumi.IntOutput
- func (r *VirtualMachine) MemoryReservation() *pulumi.IntOutput
- func (r *VirtualMachine) MemoryShareCount() *pulumi.IntOutput
- func (r *VirtualMachine) MemoryShareLevel() *pulumi.StringOutput
- func (r *VirtualMachine) MigrateWaitTimeout() *pulumi.IntOutput
- func (r *VirtualMachine) Moid() *pulumi.StringOutput
- func (r *VirtualMachine) Name() *pulumi.StringOutput
- func (r *VirtualMachine) NestedHvEnabled() *pulumi.BoolOutput
- func (r *VirtualMachine) NetworkInterfaces() *pulumi.ArrayOutput
- func (r *VirtualMachine) NumCoresPerSocket() *pulumi.IntOutput
- func (r *VirtualMachine) NumCpus() *pulumi.IntOutput
- func (r *VirtualMachine) RebootRequired() *pulumi.BoolOutput
- func (r *VirtualMachine) ResourcePoolId() *pulumi.StringOutput
- func (r *VirtualMachine) RunToolsScriptsAfterPowerOn() *pulumi.BoolOutput
- func (r *VirtualMachine) RunToolsScriptsAfterResume() *pulumi.BoolOutput
- func (r *VirtualMachine) RunToolsScriptsBeforeGuestReboot() *pulumi.BoolOutput
- func (r *VirtualMachine) RunToolsScriptsBeforeGuestShutdown() *pulumi.BoolOutput
- func (r *VirtualMachine) RunToolsScriptsBeforeGuestStandby() *pulumi.BoolOutput
- func (r *VirtualMachine) ScsiBusSharing() *pulumi.StringOutput
- func (r *VirtualMachine) ScsiControllerCount() *pulumi.IntOutput
- func (r *VirtualMachine) ScsiType() *pulumi.StringOutput
- func (r *VirtualMachine) ShutdownWaitTimeout() *pulumi.IntOutput
- func (r *VirtualMachine) SwapPlacementPolicy() *pulumi.StringOutput
- func (r *VirtualMachine) SyncTimeWithHost() *pulumi.BoolOutput
- func (r *VirtualMachine) Tags() *pulumi.ArrayOutput
- func (r *VirtualMachine) URN() *pulumi.URNOutput
- func (r *VirtualMachine) Uuid() *pulumi.StringOutput
- func (r *VirtualMachine) Vapp() *pulumi.Output
- func (r *VirtualMachine) VappTransports() *pulumi.ArrayOutput
- func (r *VirtualMachine) VmwareToolsStatus() *pulumi.StringOutput
- func (r *VirtualMachine) VmxPath() *pulumi.StringOutput
- func (r *VirtualMachine) WaitForGuestNetRoutable() *pulumi.BoolOutput
- func (r *VirtualMachine) WaitForGuestNetTimeout() *pulumi.IntOutput
- type VirtualMachineArgs
- type VirtualMachineSnapshot
- func (r *VirtualMachineSnapshot) Consolidate() *pulumi.BoolOutput
- func (r *VirtualMachineSnapshot) Description() *pulumi.StringOutput
- func (r *VirtualMachineSnapshot) ID() *pulumi.IDOutput
- func (r *VirtualMachineSnapshot) Memory() *pulumi.BoolOutput
- func (r *VirtualMachineSnapshot) Quiesce() *pulumi.BoolOutput
- func (r *VirtualMachineSnapshot) RemoveChildren() *pulumi.BoolOutput
- func (r *VirtualMachineSnapshot) SnapshotName() *pulumi.StringOutput
- func (r *VirtualMachineSnapshot) URN() *pulumi.URNOutput
- func (r *VirtualMachineSnapshot) VirtualMachineUuid() *pulumi.StringOutput
- type VirtualMachineSnapshotArgs
- type VirtualMachineSnapshotState
- type VirtualMachineState
- type Virtual_machineArgs
- type Virtual_machineResult
- type VmfsDatastore
- func (r *VmfsDatastore) Accessible() *pulumi.BoolOutput
- func (r *VmfsDatastore) Capacity() *pulumi.IntOutput
- func (r *VmfsDatastore) CustomAttributes() *pulumi.MapOutput
- func (r *VmfsDatastore) DatastoreClusterId() *pulumi.StringOutput
- func (r *VmfsDatastore) Disks() *pulumi.ArrayOutput
- func (r *VmfsDatastore) Folder() *pulumi.StringOutput
- func (r *VmfsDatastore) FreeSpace() *pulumi.IntOutput
- func (r *VmfsDatastore) HostSystemId() *pulumi.StringOutput
- func (r *VmfsDatastore) ID() *pulumi.IDOutput
- func (r *VmfsDatastore) MaintenanceMode() *pulumi.StringOutput
- func (r *VmfsDatastore) MultipleHostAccess() *pulumi.BoolOutput
- func (r *VmfsDatastore) Name() *pulumi.StringOutput
- func (r *VmfsDatastore) Tags() *pulumi.ArrayOutput
- func (r *VmfsDatastore) URN() *pulumi.URNOutput
- func (r *VmfsDatastore) UncommittedSpace() *pulumi.IntOutput
- func (r *VmfsDatastore) Url() *pulumi.StringOutput
- type VmfsDatastoreArgs
- type VmfsDatastoreState
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ComputeCluster ¶
type ComputeCluster struct {
// contains filtered or unexported fields
}
-> **A note on the naming of this resource:** VMware refers to clusters of hosts in the UI and documentation as _clusters_, _HA clusters_, or _DRS clusters_. All of these refer to the same kind of resource (with the latter two referring to specific features of clustering). In Terraform, we use `vsphere_compute_cluster` to differentiate host clusters from _datastore clusters_, which are clusters of datastores that can be used to distribute load and ensure fault tolerance via distribution of virtual machines. Datastore clusters can also be managed through Terraform, via the [`vsphere_datastore_cluster` resource][docs-r-vsphere-datastore-cluster].
[docs-r-vsphere-datastore-cluster]: /docs/providers/vsphere/r/datastore_cluster.html
The `vsphere_compute_cluster` resource can be used to create and manage clusters of hosts allowing for resource control of compute resources, load balancing through DRS, and high availability through vSphere HA.
For more information on vSphere clusters and DRS, see [this page]ref-vsphere-drs-clusters. For more information on vSphere HA, see [this page]ref-vsphere-ha-clusters.
~> **NOTE:** This resource requires vCenter and is not available on direct ESXi connections.
~> **NOTE:** vSphere DRS requires a vSphere Enterprise Plus license.
func GetComputeCluster ¶
func GetComputeCluster(ctx *pulumi.Context, name string, id pulumi.ID, state *ComputeClusterState, opts ...pulumi.ResourceOpt) (*ComputeCluster, error)
GetComputeCluster gets an existing ComputeCluster resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewComputeCluster ¶
func NewComputeCluster(ctx *pulumi.Context, name string, args *ComputeClusterArgs, opts ...pulumi.ResourceOpt) (*ComputeCluster, error)
NewComputeCluster registers a new resource with the given unique name, arguments, and options.
func (*ComputeCluster) CustomAttributes ¶
func (r *ComputeCluster) CustomAttributes() *pulumi.MapOutput
A map of custom attribute ids to attribute value strings to set for the datastore cluster. See [here][docs-setting-custom-attributes] for a reference on how to set values for custom attributes.
func (*ComputeCluster) DatacenterId ¶
func (r *ComputeCluster) DatacenterId() *pulumi.StringOutput
The [managed object ID][docs-about-morefs] of the datacenter to create the cluster in. Forces a new resource if changed.
func (*ComputeCluster) DpmAutomationLevel ¶
func (r *ComputeCluster) DpmAutomationLevel() *pulumi.StringOutput
The automation level for host power operations in this cluster. Can be one of `manual` or `automated`. Default: `manual`.
func (*ComputeCluster) DpmEnabled ¶
func (r *ComputeCluster) DpmEnabled() *pulumi.BoolOutput
Enable DPM support for DRS in this cluster. Requires `drs_enabled` to be `true` in order to be effective. Default: `false`.
func (*ComputeCluster) DpmThreshold ¶
func (r *ComputeCluster) DpmThreshold() *pulumi.IntOutput
A value between `1` and `5` indicating the threshold of load within the cluster that influences host power operations. This affects both power on and power off operations - a lower setting will tolerate more of a surplus/deficit than a higher setting. Default: `3`.
func (*ComputeCluster) DrsAdvancedOptions ¶
func (r *ComputeCluster) DrsAdvancedOptions() *pulumi.MapOutput
A key/value map that specifies advanced options for DRS and DPM.
func (*ComputeCluster) DrsAutomationLevel ¶
func (r *ComputeCluster) DrsAutomationLevel() *pulumi.StringOutput
The default automation level for all virtual machines in this cluster. Can be one of `manual`, `partiallyAutomated`, or `fullyAutomated`. Default: `manual`.
func (*ComputeCluster) DrsEnablePredictiveDrs ¶
func (r *ComputeCluster) DrsEnablePredictiveDrs() *pulumi.BoolOutput
When `true`, enables DRS to use data from [vRealize Operations Manager][ref-vsphere-vro] to make proactive DRS recommendations. <sup>\*</sup>
func (*ComputeCluster) DrsEnableVmOverrides ¶
func (r *ComputeCluster) DrsEnableVmOverrides() *pulumi.BoolOutput
Allow individual DRS overrides to be set for virtual machines in the cluster. Default: `true`.
func (*ComputeCluster) DrsEnabled ¶
func (r *ComputeCluster) DrsEnabled() *pulumi.BoolOutput
Enable DRS for this cluster. Default: `false`.
func (*ComputeCluster) DrsMigrationThreshold ¶
func (r *ComputeCluster) DrsMigrationThreshold() *pulumi.IntOutput
A value between `1` and `5` indicating the threshold of imbalance tolerated between hosts. A lower setting will tolerate more imbalance while a higher setting will tolerate less. Default: `3`.
func (*ComputeCluster) Folder ¶
func (r *ComputeCluster) Folder() *pulumi.StringOutput
The relative path to a folder to put this cluster in. This is a path relative to the datacenter you are deploying the cluster to. Example: for the `dc1` datacenter, and a provided `folder` of `foo/bar`, Terraform will place a cluster named `terraform-compute-cluster-test` in a host folder located at `/dc1/host/foo/bar`, with the final inventory path being `/dc1/host/foo/bar/terraform-datastore-cluster-test`.
func (*ComputeCluster) ForceEvacuateOnDestroy ¶
func (r *ComputeCluster) ForceEvacuateOnDestroy() *pulumi.BoolOutput
When destroying the resource, setting this to `true` will auto-remove any hosts that are currently a member of the cluster, as if they were removed by taking their entry out of `host_system_ids` (see below). This is an advanced option and should only be used for testing. Default: `false`.
func (*ComputeCluster) HaAdmissionControlFailoverHostSystemIds ¶
func (r *ComputeCluster) HaAdmissionControlFailoverHostSystemIds() *pulumi.ArrayOutput
Defines the [managed object IDs][docs-about-morefs] of hosts to use as dedicated failover hosts. These hosts are kept as available as possible - admission control will block access to the host, and DRS will ignore the host when making recommendations.
func (*ComputeCluster) HaAdmissionControlHostFailureTolerance ¶
func (r *ComputeCluster) HaAdmissionControlHostFailureTolerance() *pulumi.IntOutput
The maximum number of failed hosts that admission control tolerates when making decisions on whether to permit virtual machine operations. The maximum is one less than the number of hosts in the cluster. Default: `1`. <sup>\*</sup>
func (*ComputeCluster) HaAdmissionControlPerformanceTolerance ¶
func (r *ComputeCluster) HaAdmissionControlPerformanceTolerance() *pulumi.IntOutput
The percentage of resource reduction that a cluster of virtual machines can tolerate in case of a failover. A value of 0 produces warnings only, whereas a value of 100 disables the setting. Default: `100` (disabled).
func (*ComputeCluster) HaAdmissionControlPolicy ¶
func (r *ComputeCluster) HaAdmissionControlPolicy() *pulumi.StringOutput
The type of admission control policy to use with vSphere HA. Can be one of `resourcePercentage`, `slotPolicy`, `failoverHosts`, or `disabled`. Default: `resourcePercentage`.
func (*ComputeCluster) HaAdmissionControlResourcePercentageAutoCompute ¶
func (r *ComputeCluster) HaAdmissionControlResourcePercentageAutoCompute() *pulumi.BoolOutput
Automatically determine available resource percentages by subtracting the average number of host resources represented by the `ha_admission_control_host_failure_tolerance` setting from the total amount of resources in the cluster. Disable to supply user-defined values. Default: `true`. <sup>\*</sup>
func (*ComputeCluster) HaAdmissionControlResourcePercentageCpu ¶
func (r *ComputeCluster) HaAdmissionControlResourcePercentageCpu() *pulumi.IntOutput
Controls the user-defined percentage of CPU resources in the cluster to reserve for failover. Default: `100`.
func (*ComputeCluster) HaAdmissionControlResourcePercentageMemory ¶
func (r *ComputeCluster) HaAdmissionControlResourcePercentageMemory() *pulumi.IntOutput
Controls the user-defined percentage of memory resources in the cluster to reserve for failover. Default: `100`.
func (*ComputeCluster) HaAdmissionControlSlotPolicyExplicitCpu ¶
func (r *ComputeCluster) HaAdmissionControlSlotPolicyExplicitCpu() *pulumi.IntOutput
Controls the user-defined CPU slot size, in MHz. Default: `32`.
func (*ComputeCluster) HaAdmissionControlSlotPolicyExplicitMemory ¶
func (r *ComputeCluster) HaAdmissionControlSlotPolicyExplicitMemory() *pulumi.IntOutput
Controls the user-defined memory slot size, in MB. Default: `100`.
func (*ComputeCluster) HaAdmissionControlSlotPolicyUseExplicitSize ¶
func (r *ComputeCluster) HaAdmissionControlSlotPolicyUseExplicitSize() *pulumi.BoolOutput
Controls whether or not you wish to supply explicit values to CPU and memory slot sizes. The default is `false`, which tells vSphere to gather a automatic average based on all powered-on virtual machines currently in the cluster.
func (*ComputeCluster) HaAdvancedOptions ¶
func (r *ComputeCluster) HaAdvancedOptions() *pulumi.MapOutput
A key/value map that specifies advanced options for vSphere HA.
func (*ComputeCluster) HaDatastoreApdRecoveryAction ¶
func (r *ComputeCluster) HaDatastoreApdRecoveryAction() *pulumi.StringOutput
Controls the action to take on virtual machines if an APD status on an affected datastore clears in the middle of an APD event. Can be one of `none` or `reset`. Default: `none`. <sup>\*</sup>
func (*ComputeCluster) HaDatastoreApdResponse ¶
func (r *ComputeCluster) HaDatastoreApdResponse() *pulumi.StringOutput
Controls the action to take on virtual machines when the cluster has detected loss to all paths to a relevant datastore. Can be one of `disabled`, `warning`, `restartConservative`, or `restartAggressive`. Default: `disabled`. <sup>\*</sup>
func (*ComputeCluster) HaDatastoreApdResponseDelay ¶
func (r *ComputeCluster) HaDatastoreApdResponseDelay() *pulumi.IntOutput
Controls the delay in minutes to wait after an APD timeout event to execute the response action defined in `ha_datastore_apd_response`. Default: `3` minutes. <sup>\*</sup>
func (*ComputeCluster) HaDatastorePdlResponse ¶
func (r *ComputeCluster) HaDatastorePdlResponse() *pulumi.StringOutput
Controls the action to take on virtual machines when the cluster has detected a permanent device loss to a relevant datastore. Can be one of `disabled`, `warning`, or `restartAggressive`. Default: `disabled`. <sup>\*</sup>
func (*ComputeCluster) HaEnabled ¶
func (r *ComputeCluster) HaEnabled() *pulumi.BoolOutput
Enable vSphere HA for this cluster. Default: `false`.
func (*ComputeCluster) HaHeartbeatDatastoreIds ¶
func (r *ComputeCluster) HaHeartbeatDatastoreIds() *pulumi.ArrayOutput
The list of managed object IDs for preferred datastores to use for HA heartbeating. This setting is only useful when `ha_heartbeat_datastore_policy` is set to either `userSelectedDs` or `allFeasibleDsWithUserPreference`.
func (*ComputeCluster) HaHeartbeatDatastorePolicy ¶
func (r *ComputeCluster) HaHeartbeatDatastorePolicy() *pulumi.StringOutput
The selection policy for HA heartbeat datastores. Can be one of `allFeasibleDs`, `userSelectedDs`, or `allFeasibleDsWithUserPreference`. Default: `allFeasibleDsWithUserPreference`.
func (*ComputeCluster) HaHostIsolationResponse ¶
func (r *ComputeCluster) HaHostIsolationResponse() *pulumi.StringOutput
The action to take on virtual machines when a host has detected that it has been isolated from the rest of the cluster. Can be one of `none`, `powerOff`, or `shutdown`. Default: `none`.
func (*ComputeCluster) HaHostMonitoring ¶
func (r *ComputeCluster) HaHostMonitoring() *pulumi.StringOutput
Global setting that controls whether vSphere HA remediates virtual machines on host failure. Can be one of `enabled` or `disabled`. Default: `enabled`.
func (*ComputeCluster) HaVmComponentProtection ¶
func (r *ComputeCluster) HaVmComponentProtection() *pulumi.StringOutput
Controls vSphere VM component protection for virtual machines in this cluster. Can be one of `enabled` or `disabled`. Default: `enabled`. <sup>\*</sup>
func (*ComputeCluster) HaVmDependencyRestartCondition ¶
func (r *ComputeCluster) HaVmDependencyRestartCondition() *pulumi.StringOutput
The condition used to determine whether or not virtual machines in a certain restart priority class are online, allowing HA to move on to restarting virtual machines on the next priority. Can be one of `none`, `poweredOn`, `guestHbStatusGreen`, or `appHbStatusGreen`. The default is `none`, which means that a virtual machine is considered ready immediately after a host is found to start it on. <sup>\*</sup>
func (*ComputeCluster) HaVmFailureInterval ¶
func (r *ComputeCluster) HaVmFailureInterval() *pulumi.IntOutput
If a heartbeat from a virtual machine is not received within this configured interval, the virtual machine is marked as failed. The value is in seconds. Default: `30`.
func (*ComputeCluster) HaVmMaximumFailureWindow ¶
func (r *ComputeCluster) HaVmMaximumFailureWindow() *pulumi.IntOutput
The length of the reset window in which `ha_vm_maximum_resets` can operate. When this window expires, no more resets are attempted regardless of the setting configured in `ha_vm_maximum_resets`. `-1` means no window, meaning an unlimited reset time is allotted. The value is specified in seconds. Default: `-1` (no window).
func (*ComputeCluster) HaVmMaximumResets ¶
func (r *ComputeCluster) HaVmMaximumResets() *pulumi.IntOutput
The maximum number of resets that HA will perform to a virtual machine when responding to a failure event. Default: `3`
func (*ComputeCluster) HaVmMinimumUptime ¶
func (r *ComputeCluster) HaVmMinimumUptime() *pulumi.IntOutput
The time, in seconds, that HA waits after powering on a virtual machine before monitoring for heartbeats. Default: `120` (2 minutes).
func (*ComputeCluster) HaVmMonitoring ¶
func (r *ComputeCluster) HaVmMonitoring() *pulumi.StringOutput
The type of virtual machine monitoring to use when HA is enabled in the cluster. Can be one of `vmMonitoringDisabled`, `vmMonitoringOnly`, or `vmAndAppMonitoring`. Default: `vmMonitoringDisabled`.
func (*ComputeCluster) HaVmRestartAdditionalDelay ¶
func (r *ComputeCluster) HaVmRestartAdditionalDelay() *pulumi.IntOutput
Additional delay in seconds after ready condition is met. A VM is considered ready at this point. Default: `0` (no delay). <sup>\*</sup>
func (*ComputeCluster) HaVmRestartPriority ¶
func (r *ComputeCluster) HaVmRestartPriority() *pulumi.StringOutput
The default restart priority for affected virtual machines when vSphere detects a host failure. Can be one of `lowest`, `low`, `medium`, `high`, or `highest`. Default: `medium`.
func (*ComputeCluster) HaVmRestartTimeout ¶
func (r *ComputeCluster) HaVmRestartTimeout() *pulumi.IntOutput
The maximum time, in seconds, that vSphere HA will wait for virtual machines in one priority to be ready before proceeding with the next priority. Default: `600` (10 minutes). <sup>\*</sup>
func (*ComputeCluster) HostClusterExitTimeout ¶
func (r *ComputeCluster) HostClusterExitTimeout() *pulumi.IntOutput
The timeout for each host maintenance mode operation when removing hosts from a cluster. The value is specified in seconds. Default: `3600` (1 hour).
func (*ComputeCluster) HostSystemIds ¶
func (r *ComputeCluster) HostSystemIds() *pulumi.ArrayOutput
The [managed object IDs][docs-about-morefs] of the hosts to put in the cluster.
func (*ComputeCluster) ID ¶
func (r *ComputeCluster) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*ComputeCluster) Name ¶
func (r *ComputeCluster) Name() *pulumi.StringOutput
The name of the cluster.
func (*ComputeCluster) ProactiveHaAutomationLevel ¶
func (r *ComputeCluster) ProactiveHaAutomationLevel() *pulumi.StringOutput
Determines how the host quarantine, maintenance mode, or virtual machine migration recommendations made by proactive HA are to be handled. Can be one of `Automated` or `Manual`. Default: `Manual`. <sup>\*</sup>
func (*ComputeCluster) ProactiveHaEnabled ¶
func (r *ComputeCluster) ProactiveHaEnabled() *pulumi.BoolOutput
Enables Proactive HA. Default: `false`. <sup>\*</sup>
func (*ComputeCluster) ProactiveHaModerateRemediation ¶
func (r *ComputeCluster) ProactiveHaModerateRemediation() *pulumi.StringOutput
The configured remediation for moderately degraded hosts. Can be one of `MaintenanceMode` or `QuarantineMode`. Note that this cannot be set to `MaintenanceMode` when `proactive_ha_severe_remediation` is set to `QuarantineMode`. Default: `QuarantineMode`. <sup>\*</sup>
func (*ComputeCluster) ProactiveHaProviderIds ¶
func (r *ComputeCluster) ProactiveHaProviderIds() *pulumi.ArrayOutput
The list of IDs for health update providers configured for this cluster. <sup>\*</sup>
func (*ComputeCluster) ProactiveHaSevereRemediation ¶
func (r *ComputeCluster) ProactiveHaSevereRemediation() *pulumi.StringOutput
The configured remediation for severely degraded hosts. Can be one of `MaintenanceMode` or `QuarantineMode`. Note that this cannot be set to `QuarantineMode` when `proactive_ha_moderate_remediation` is set to `MaintenanceMode`. Default: `QuarantineMode`. <sup>\*</sup>
func (*ComputeCluster) ResourcePoolId ¶
func (r *ComputeCluster) ResourcePoolId() *pulumi.StringOutput
The managed object ID of the cluster's root resource pool.
func (*ComputeCluster) Tags ¶
func (r *ComputeCluster) Tags() *pulumi.ArrayOutput
The IDs of any tags to attach to this resource. See [here][docs-applying-tags] for a reference on how to apply tags.
func (*ComputeCluster) URN ¶
func (r *ComputeCluster) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
type ComputeClusterArgs ¶
type ComputeClusterArgs struct { // A map of custom attribute ids to attribute // value strings to set for the datastore cluster. See // [here][docs-setting-custom-attributes] for a reference on how to set values // for custom attributes. CustomAttributes interface{} // The [managed object ID][docs-about-morefs] of // the datacenter to create the cluster in. Forces a new resource if changed. DatacenterId interface{} // The automation level for host power // operations in this cluster. Can be one of `manual` or `automated`. Default: // `manual`. DpmAutomationLevel interface{} // Enable DPM support for DRS in this cluster. // Requires `drs_enabled` to be `true` in order to be effective. // Default: `false`. DpmEnabled interface{} // A value between `1` and `5` indicating the // threshold of load within the cluster that influences host power operations. // This affects both power on and power off operations - a lower setting will // tolerate more of a surplus/deficit than a higher setting. Default: `3`. DpmThreshold interface{} // A key/value map that specifies advanced // options for DRS and DPM. DrsAdvancedOptions interface{} // The default automation level for all // virtual machines in this cluster. Can be one of `manual`, // `partiallyAutomated`, or `fullyAutomated`. Default: `manual`. DrsAutomationLevel interface{} // When `true`, enables DRS to use data // from [vRealize Operations Manager][ref-vsphere-vro] to make proactive DRS // recommendations. <sup>\*</sup> DrsEnablePredictiveDrs interface{} // Allow individual DRS overrides to be // set for virtual machines in the cluster. Default: `true`. DrsEnableVmOverrides interface{} // Enable DRS for this cluster. Default: `false`. DrsEnabled interface{} // A value between `1` and `5` indicating // the threshold of imbalance tolerated between hosts. A lower setting will // tolerate more imbalance while a higher setting will tolerate less. Default: // `3`. DrsMigrationThreshold interface{} // The relative path to a folder to put this cluster in. // This is a path relative to the datacenter you are deploying the cluster to. // Example: for the `dc1` datacenter, and a provided `folder` of `foo/bar`, // Terraform will place a cluster named `terraform-compute-cluster-test` in a // host folder located at `/dc1/host/foo/bar`, with the final inventory path // being `/dc1/host/foo/bar/terraform-datastore-cluster-test`. Folder interface{} // When destroying the resource, setting this to // `true` will auto-remove any hosts that are currently a member of the cluster, // as if they were removed by taking their entry out of `host_system_ids` (see // below). This is an advanced // option and should only be used for testing. Default: `false`. ForceEvacuateOnDestroy interface{} // Defines the // [managed object IDs][docs-about-morefs] of hosts to use as dedicated failover // hosts. These hosts are kept as available as possible - admission control will // block access to the host, and DRS will ignore the host when making // recommendations. HaAdmissionControlFailoverHostSystemIds interface{} // The maximum number // of failed hosts that admission control tolerates when making decisions on // whether to permit virtual machine operations. The maximum is one less than // the number of hosts in the cluster. Default: `1`. // <sup>\*</sup> HaAdmissionControlHostFailureTolerance interface{} // The percentage of // resource reduction that a cluster of virtual machines can tolerate in case of // a failover. A value of 0 produces warnings only, whereas a value of 100 // disables the setting. Default: `100` (disabled). HaAdmissionControlPerformanceTolerance interface{} // The type of admission control // policy to use with vSphere HA. Can be one of `resourcePercentage`, // `slotPolicy`, `failoverHosts`, or `disabled`. Default: `resourcePercentage`. HaAdmissionControlPolicy interface{} // // Automatically determine available resource percentages by subtracting the // average number of host resources represented by the // `ha_admission_control_host_failure_tolerance` // setting from the total amount of resources in the cluster. Disable to supply // user-defined values. Default: `true`. // <sup>\*</sup> HaAdmissionControlResourcePercentageAutoCompute interface{} // Controls the // user-defined percentage of CPU resources in the cluster to reserve for // failover. Default: `100`. HaAdmissionControlResourcePercentageCpu interface{} // Controls the // user-defined percentage of memory resources in the cluster to reserve for // failover. Default: `100`. HaAdmissionControlResourcePercentageMemory interface{} // Controls the // user-defined CPU slot size, in MHz. Default: `32`. HaAdmissionControlSlotPolicyExplicitCpu interface{} // Controls the // user-defined memory slot size, in MB. Default: `100`. HaAdmissionControlSlotPolicyExplicitMemory interface{} // Controls // whether or not you wish to supply explicit values to CPU and memory slot // sizes. The default is `false`, which tells vSphere to gather a automatic // average based on all powered-on virtual machines currently in the cluster. HaAdmissionControlSlotPolicyUseExplicitSize interface{} // A key/value map that specifies advanced // options for vSphere HA. HaAdvancedOptions interface{} // Controls the action to take // on virtual machines if an APD status on an affected datastore clears in the // middle of an APD event. Can be one of `none` or `reset`. Default: `none`. // <sup>\*</sup> HaDatastoreApdRecoveryAction interface{} // Controls the action to take on // virtual machines when the cluster has detected loss to all paths to a // relevant datastore. Can be one of `disabled`, `warning`, // `restartConservative`, or `restartAggressive`. Default: `disabled`. // <sup>\*</sup> HaDatastoreApdResponse interface{} // Controls the delay in minutes // to wait after an APD timeout event to execute the response action defined in // `ha_datastore_apd_response`. Default: `3` // minutes. <sup>\*</sup> HaDatastoreApdResponseDelay interface{} // Controls the action to take on // virtual machines when the cluster has detected a permanent device loss to a // relevant datastore. Can be one of `disabled`, `warning`, or // `restartAggressive`. Default: `disabled`. // <sup>\*</sup> HaDatastorePdlResponse interface{} // Enable vSphere HA for this cluster. Default: // `false`. HaEnabled interface{} // The list of managed object IDs for // preferred datastores to use for HA heartbeating. This setting is only useful // when `ha_heartbeat_datastore_policy` is set // to either `userSelectedDs` or `allFeasibleDsWithUserPreference`. HaHeartbeatDatastoreIds interface{} // The selection policy for HA // heartbeat datastores. Can be one of `allFeasibleDs`, `userSelectedDs`, or // `allFeasibleDsWithUserPreference`. Default: // `allFeasibleDsWithUserPreference`. HaHeartbeatDatastorePolicy interface{} // The action to take on virtual // machines when a host has detected that it has been isolated from the rest of // the cluster. Can be one of `none`, `powerOff`, or `shutdown`. Default: // `none`. HaHostIsolationResponse interface{} // Global setting that controls whether // vSphere HA remediates virtual machines on host failure. Can be one of `enabled` // or `disabled`. Default: `enabled`. HaHostMonitoring interface{} // Controls vSphere VM component // protection for virtual machines in this cluster. Can be one of `enabled` or // `disabled`. Default: `enabled`. // <sup>\*</sup> HaVmComponentProtection interface{} // The condition used to // determine whether or not virtual machines in a certain restart priority class // are online, allowing HA to move on to restarting virtual machines on the next // priority. Can be one of `none`, `poweredOn`, `guestHbStatusGreen`, or // `appHbStatusGreen`. The default is `none`, which means that a virtual machine // is considered ready immediately after a host is found to start it on. // <sup>\*</sup> HaVmDependencyRestartCondition interface{} // If a heartbeat from a virtual machine // is not received within this configured interval, the virtual machine is // marked as failed. The value is in seconds. Default: `30`. HaVmFailureInterval interface{} // The length of the reset window in // which `ha_vm_maximum_resets` can operate. When this // window expires, no more resets are attempted regardless of the setting // configured in `ha_vm_maximum_resets`. `-1` means no window, meaning an // unlimited reset time is allotted. The value is specified in seconds. Default: // `-1` (no window). HaVmMaximumFailureWindow interface{} // The maximum number of resets that HA will // perform to a virtual machine when responding to a failure event. Default: `3` HaVmMaximumResets interface{} // The time, in seconds, that HA waits after // powering on a virtual machine before monitoring for heartbeats. Default: // `120` (2 minutes). HaVmMinimumUptime interface{} // The type of virtual machine monitoring to use // when HA is enabled in the cluster. Can be one of `vmMonitoringDisabled`, // `vmMonitoringOnly`, or `vmAndAppMonitoring`. Default: `vmMonitoringDisabled`. HaVmMonitoring interface{} // Additional delay in seconds // after ready condition is met. A VM is considered ready at this point. // Default: `0` (no delay). <sup>\*</sup> HaVmRestartAdditionalDelay interface{} // The default restart priority // for affected virtual machines when vSphere detects a host failure. Can be one // of `lowest`, `low`, `medium`, `high`, or `highest`. Default: `medium`. HaVmRestartPriority interface{} // The maximum time, in seconds, // that vSphere HA will wait for virtual machines in one priority to be ready // before proceeding with the next priority. Default: `600` (10 minutes). // <sup>\*</sup> HaVmRestartTimeout interface{} // The timeout for each host maintenance mode // operation when removing hosts from a cluster. The value is specified in // seconds. Default: `3600` (1 hour). HostClusterExitTimeout interface{} // The [managed object IDs][docs-about-morefs] of // the hosts to put in the cluster. HostSystemIds interface{} // The name of the cluster. Name interface{} // Determines how the host // quarantine, maintenance mode, or virtual machine migration recommendations // made by proactive HA are to be handled. Can be one of `Automated` or // `Manual`. Default: `Manual`. <sup>\*</sup> ProactiveHaAutomationLevel interface{} // Enables Proactive HA. Default: `false`. // <sup>\*</sup> ProactiveHaEnabled interface{} // The configured remediation // for moderately degraded hosts. Can be one of `MaintenanceMode` or // `QuarantineMode`. Note that this cannot be set to `MaintenanceMode` when // `proactive_ha_severe_remediation` is set // to `QuarantineMode`. Default: `QuarantineMode`. // <sup>\*</sup> ProactiveHaModerateRemediation interface{} // The list of IDs for health update // providers configured for this cluster. // <sup>\*</sup> ProactiveHaProviderIds interface{} // The configured remediation for // severely degraded hosts. Can be one of `MaintenanceMode` or `QuarantineMode`. // Note that this cannot be set to `QuarantineMode` when // `proactive_ha_moderate_remediation` is // set to `MaintenanceMode`. Default: `QuarantineMode`. // <sup>\*</sup> ProactiveHaSevereRemediation interface{} // The IDs of any tags to attach to this resource. See // [here][docs-applying-tags] for a reference on how to apply tags. Tags interface{} }
The set of arguments for constructing a ComputeCluster resource.
type ComputeClusterHostGroup ¶
type ComputeClusterHostGroup struct {
// contains filtered or unexported fields
}
The `vsphere_compute_cluster_host_group` resource can be used to manage groups of hosts in a cluster, either created by the [`vsphere_compute_cluster`][tf-vsphere-cluster-resource] resource or looked up by the [`vsphere_compute_cluster`][tf-vsphere-cluster-data-source] data source.
[tf-vsphere-cluster-resource]: /docs/providers/vsphere/r/compute_cluster.html [tf-vsphere-cluster-data-source]: /docs/providers/vsphere/d/compute_cluster.html
This resource mainly serves as an input to the [`vsphere_compute_cluster_vm_host_rule`][tf-vsphere-cluster-vm-host-rule-resource] resource - see the documentation for that resource for further details on how to use host groups.
[tf-vsphere-cluster-vm-host-rule-resource]: /docs/providers/vsphere/r/compute_cluster_vm_host_rule.html
~> **NOTE:** This resource requires vCenter and is not available on direct ESXi connections.
~> **NOTE:** vSphere DRS requires a vSphere Enterprise Plus license.
func GetComputeClusterHostGroup ¶
func GetComputeClusterHostGroup(ctx *pulumi.Context, name string, id pulumi.ID, state *ComputeClusterHostGroupState, opts ...pulumi.ResourceOpt) (*ComputeClusterHostGroup, error)
GetComputeClusterHostGroup gets an existing ComputeClusterHostGroup resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewComputeClusterHostGroup ¶
func NewComputeClusterHostGroup(ctx *pulumi.Context, name string, args *ComputeClusterHostGroupArgs, opts ...pulumi.ResourceOpt) (*ComputeClusterHostGroup, error)
NewComputeClusterHostGroup registers a new resource with the given unique name, arguments, and options.
func (*ComputeClusterHostGroup) ComputeClusterId ¶
func (r *ComputeClusterHostGroup) ComputeClusterId() *pulumi.StringOutput
The [managed object reference ID][docs-about-morefs] of the cluster to put the group in. Forces a new resource if changed.
func (*ComputeClusterHostGroup) HostSystemIds ¶
func (r *ComputeClusterHostGroup) HostSystemIds() *pulumi.ArrayOutput
The [managed object IDs][docs-about-morefs] of the hosts to put in the cluster.
func (*ComputeClusterHostGroup) ID ¶
func (r *ComputeClusterHostGroup) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*ComputeClusterHostGroup) Name ¶
func (r *ComputeClusterHostGroup) Name() *pulumi.StringOutput
The name of the host group. This must be unique in the cluster. Forces a new resource if changed.
func (*ComputeClusterHostGroup) URN ¶
func (r *ComputeClusterHostGroup) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
type ComputeClusterHostGroupArgs ¶
type ComputeClusterHostGroupArgs struct { // The [managed object reference // ID][docs-about-morefs] of the cluster to put the group in. Forces a new // resource if changed. ComputeClusterId interface{} // The [managed object IDs][docs-about-morefs] of // the hosts to put in the cluster. HostSystemIds interface{} // The name of the host group. This must be unique in the // cluster. Forces a new resource if changed. Name interface{} }
The set of arguments for constructing a ComputeClusterHostGroup resource.
type ComputeClusterHostGroupState ¶
type ComputeClusterHostGroupState struct { // The [managed object reference // ID][docs-about-morefs] of the cluster to put the group in. Forces a new // resource if changed. ComputeClusterId interface{} // The [managed object IDs][docs-about-morefs] of // the hosts to put in the cluster. HostSystemIds interface{} // The name of the host group. This must be unique in the // cluster. Forces a new resource if changed. Name interface{} }
Input properties used for looking up and filtering ComputeClusterHostGroup resources.
type ComputeClusterState ¶
type ComputeClusterState struct { // A map of custom attribute ids to attribute // value strings to set for the datastore cluster. See // [here][docs-setting-custom-attributes] for a reference on how to set values // for custom attributes. CustomAttributes interface{} // The [managed object ID][docs-about-morefs] of // the datacenter to create the cluster in. Forces a new resource if changed. DatacenterId interface{} // The automation level for host power // operations in this cluster. Can be one of `manual` or `automated`. Default: // `manual`. DpmAutomationLevel interface{} // Enable DPM support for DRS in this cluster. // Requires `drs_enabled` to be `true` in order to be effective. // Default: `false`. DpmEnabled interface{} // A value between `1` and `5` indicating the // threshold of load within the cluster that influences host power operations. // This affects both power on and power off operations - a lower setting will // tolerate more of a surplus/deficit than a higher setting. Default: `3`. DpmThreshold interface{} // A key/value map that specifies advanced // options for DRS and DPM. DrsAdvancedOptions interface{} // The default automation level for all // virtual machines in this cluster. Can be one of `manual`, // `partiallyAutomated`, or `fullyAutomated`. Default: `manual`. DrsAutomationLevel interface{} // When `true`, enables DRS to use data // from [vRealize Operations Manager][ref-vsphere-vro] to make proactive DRS // recommendations. <sup>\*</sup> DrsEnablePredictiveDrs interface{} // Allow individual DRS overrides to be // set for virtual machines in the cluster. Default: `true`. DrsEnableVmOverrides interface{} // Enable DRS for this cluster. Default: `false`. DrsEnabled interface{} // A value between `1` and `5` indicating // the threshold of imbalance tolerated between hosts. A lower setting will // tolerate more imbalance while a higher setting will tolerate less. Default: // `3`. DrsMigrationThreshold interface{} // The relative path to a folder to put this cluster in. // This is a path relative to the datacenter you are deploying the cluster to. // Example: for the `dc1` datacenter, and a provided `folder` of `foo/bar`, // Terraform will place a cluster named `terraform-compute-cluster-test` in a // host folder located at `/dc1/host/foo/bar`, with the final inventory path // being `/dc1/host/foo/bar/terraform-datastore-cluster-test`. Folder interface{} // When destroying the resource, setting this to // `true` will auto-remove any hosts that are currently a member of the cluster, // as if they were removed by taking their entry out of `host_system_ids` (see // below). This is an advanced // option and should only be used for testing. Default: `false`. ForceEvacuateOnDestroy interface{} // Defines the // [managed object IDs][docs-about-morefs] of hosts to use as dedicated failover // hosts. These hosts are kept as available as possible - admission control will // block access to the host, and DRS will ignore the host when making // recommendations. HaAdmissionControlFailoverHostSystemIds interface{} // The maximum number // of failed hosts that admission control tolerates when making decisions on // whether to permit virtual machine operations. The maximum is one less than // the number of hosts in the cluster. Default: `1`. // <sup>\*</sup> HaAdmissionControlHostFailureTolerance interface{} // The percentage of // resource reduction that a cluster of virtual machines can tolerate in case of // a failover. A value of 0 produces warnings only, whereas a value of 100 // disables the setting. Default: `100` (disabled). HaAdmissionControlPerformanceTolerance interface{} // The type of admission control // policy to use with vSphere HA. Can be one of `resourcePercentage`, // `slotPolicy`, `failoverHosts`, or `disabled`. Default: `resourcePercentage`. HaAdmissionControlPolicy interface{} // // Automatically determine available resource percentages by subtracting the // average number of host resources represented by the // `ha_admission_control_host_failure_tolerance` // setting from the total amount of resources in the cluster. Disable to supply // user-defined values. Default: `true`. // <sup>\*</sup> HaAdmissionControlResourcePercentageAutoCompute interface{} // Controls the // user-defined percentage of CPU resources in the cluster to reserve for // failover. Default: `100`. HaAdmissionControlResourcePercentageCpu interface{} // Controls the // user-defined percentage of memory resources in the cluster to reserve for // failover. Default: `100`. HaAdmissionControlResourcePercentageMemory interface{} // Controls the // user-defined CPU slot size, in MHz. Default: `32`. HaAdmissionControlSlotPolicyExplicitCpu interface{} // Controls the // user-defined memory slot size, in MB. Default: `100`. HaAdmissionControlSlotPolicyExplicitMemory interface{} // Controls // whether or not you wish to supply explicit values to CPU and memory slot // sizes. The default is `false`, which tells vSphere to gather a automatic // average based on all powered-on virtual machines currently in the cluster. HaAdmissionControlSlotPolicyUseExplicitSize interface{} // A key/value map that specifies advanced // options for vSphere HA. HaAdvancedOptions interface{} // Controls the action to take // on virtual machines if an APD status on an affected datastore clears in the // middle of an APD event. Can be one of `none` or `reset`. Default: `none`. // <sup>\*</sup> HaDatastoreApdRecoveryAction interface{} // Controls the action to take on // virtual machines when the cluster has detected loss to all paths to a // relevant datastore. Can be one of `disabled`, `warning`, // `restartConservative`, or `restartAggressive`. Default: `disabled`. // <sup>\*</sup> HaDatastoreApdResponse interface{} // Controls the delay in minutes // to wait after an APD timeout event to execute the response action defined in // `ha_datastore_apd_response`. Default: `3` // minutes. <sup>\*</sup> HaDatastoreApdResponseDelay interface{} // Controls the action to take on // virtual machines when the cluster has detected a permanent device loss to a // relevant datastore. Can be one of `disabled`, `warning`, or // `restartAggressive`. Default: `disabled`. // <sup>\*</sup> HaDatastorePdlResponse interface{} // Enable vSphere HA for this cluster. Default: // `false`. HaEnabled interface{} // The list of managed object IDs for // preferred datastores to use for HA heartbeating. This setting is only useful // when `ha_heartbeat_datastore_policy` is set // to either `userSelectedDs` or `allFeasibleDsWithUserPreference`. HaHeartbeatDatastoreIds interface{} // The selection policy for HA // heartbeat datastores. Can be one of `allFeasibleDs`, `userSelectedDs`, or // `allFeasibleDsWithUserPreference`. Default: // `allFeasibleDsWithUserPreference`. HaHeartbeatDatastorePolicy interface{} // The action to take on virtual // machines when a host has detected that it has been isolated from the rest of // the cluster. Can be one of `none`, `powerOff`, or `shutdown`. Default: // `none`. HaHostIsolationResponse interface{} // Global setting that controls whether // vSphere HA remediates virtual machines on host failure. Can be one of `enabled` // or `disabled`. Default: `enabled`. HaHostMonitoring interface{} // Controls vSphere VM component // protection for virtual machines in this cluster. Can be one of `enabled` or // `disabled`. Default: `enabled`. // <sup>\*</sup> HaVmComponentProtection interface{} // The condition used to // determine whether or not virtual machines in a certain restart priority class // are online, allowing HA to move on to restarting virtual machines on the next // priority. Can be one of `none`, `poweredOn`, `guestHbStatusGreen`, or // `appHbStatusGreen`. The default is `none`, which means that a virtual machine // is considered ready immediately after a host is found to start it on. // <sup>\*</sup> HaVmDependencyRestartCondition interface{} // If a heartbeat from a virtual machine // is not received within this configured interval, the virtual machine is // marked as failed. The value is in seconds. Default: `30`. HaVmFailureInterval interface{} // The length of the reset window in // which `ha_vm_maximum_resets` can operate. When this // window expires, no more resets are attempted regardless of the setting // configured in `ha_vm_maximum_resets`. `-1` means no window, meaning an // unlimited reset time is allotted. The value is specified in seconds. Default: // `-1` (no window). HaVmMaximumFailureWindow interface{} // The maximum number of resets that HA will // perform to a virtual machine when responding to a failure event. Default: `3` HaVmMaximumResets interface{} // The time, in seconds, that HA waits after // powering on a virtual machine before monitoring for heartbeats. Default: // `120` (2 minutes). HaVmMinimumUptime interface{} // The type of virtual machine monitoring to use // when HA is enabled in the cluster. Can be one of `vmMonitoringDisabled`, // `vmMonitoringOnly`, or `vmAndAppMonitoring`. Default: `vmMonitoringDisabled`. HaVmMonitoring interface{} // Additional delay in seconds // after ready condition is met. A VM is considered ready at this point. // Default: `0` (no delay). <sup>\*</sup> HaVmRestartAdditionalDelay interface{} // The default restart priority // for affected virtual machines when vSphere detects a host failure. Can be one // of `lowest`, `low`, `medium`, `high`, or `highest`. Default: `medium`. HaVmRestartPriority interface{} // The maximum time, in seconds, // that vSphere HA will wait for virtual machines in one priority to be ready // before proceeding with the next priority. Default: `600` (10 minutes). // <sup>\*</sup> HaVmRestartTimeout interface{} // The timeout for each host maintenance mode // operation when removing hosts from a cluster. The value is specified in // seconds. Default: `3600` (1 hour). HostClusterExitTimeout interface{} // The [managed object IDs][docs-about-morefs] of // the hosts to put in the cluster. HostSystemIds interface{} // The name of the cluster. Name interface{} // Determines how the host // quarantine, maintenance mode, or virtual machine migration recommendations // made by proactive HA are to be handled. Can be one of `Automated` or // `Manual`. Default: `Manual`. <sup>\*</sup> ProactiveHaAutomationLevel interface{} // Enables Proactive HA. Default: `false`. // <sup>\*</sup> ProactiveHaEnabled interface{} // The configured remediation // for moderately degraded hosts. Can be one of `MaintenanceMode` or // `QuarantineMode`. Note that this cannot be set to `MaintenanceMode` when // `proactive_ha_severe_remediation` is set // to `QuarantineMode`. Default: `QuarantineMode`. // <sup>\*</sup> ProactiveHaModerateRemediation interface{} // The list of IDs for health update // providers configured for this cluster. // <sup>\*</sup> ProactiveHaProviderIds interface{} // The configured remediation for // severely degraded hosts. Can be one of `MaintenanceMode` or `QuarantineMode`. // Note that this cannot be set to `QuarantineMode` when // `proactive_ha_moderate_remediation` is // set to `MaintenanceMode`. Default: `QuarantineMode`. // <sup>\*</sup> ProactiveHaSevereRemediation interface{} // The managed object ID of the cluster's root resource pool. ResourcePoolId interface{} // The IDs of any tags to attach to this resource. See // [here][docs-applying-tags] for a reference on how to apply tags. Tags interface{} }
Input properties used for looking up and filtering ComputeCluster resources.
type ComputeClusterVmAffinityRule ¶
type ComputeClusterVmAffinityRule struct {
// contains filtered or unexported fields
}
The `vsphere_compute_cluster_vm_affinity_rule` resource can be used to manage VM affinity rules in a cluster, either created by the [`vsphere_compute_cluster`][tf-vsphere-cluster-resource] resource or looked up by the [`vsphere_compute_cluster`][tf-vsphere-cluster-data-source] data source.
[tf-vsphere-cluster-resource]: /docs/providers/vsphere/r/compute_cluster.html [tf-vsphere-cluster-data-source]: /docs/providers/vsphere/d/compute_cluster.html
This rule can be used to tell a set to virtual machines to run together on a single host within a cluster. When configured, DRS will make a best effort to ensure that the virtual machines run on the same host, or prevent any operation that would keep that from happening, depending on the value of the `mandatory` flag.
-> Keep in mind that this rule can only be used to tell VMs to run together on a _non-specific_ host - it can't be used to pin VMs to a host. For that, see the [`vsphere_compute_cluster_vm_host_rule`][tf-vsphere-cluster-vm-host-rule-resource] resource.
[tf-vsphere-cluster-vm-host-rule-resource]: /docs/providers/vsphere/r/compute_cluster_vm_host_rule.html
~> **NOTE:** This resource requires vCenter and is not available on direct ESXi connections.
~> **NOTE:** vSphere DRS requires a vSphere Enterprise Plus license.
func GetComputeClusterVmAffinityRule ¶
func GetComputeClusterVmAffinityRule(ctx *pulumi.Context, name string, id pulumi.ID, state *ComputeClusterVmAffinityRuleState, opts ...pulumi.ResourceOpt) (*ComputeClusterVmAffinityRule, error)
GetComputeClusterVmAffinityRule gets an existing ComputeClusterVmAffinityRule resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewComputeClusterVmAffinityRule ¶
func NewComputeClusterVmAffinityRule(ctx *pulumi.Context, name string, args *ComputeClusterVmAffinityRuleArgs, opts ...pulumi.ResourceOpt) (*ComputeClusterVmAffinityRule, error)
NewComputeClusterVmAffinityRule registers a new resource with the given unique name, arguments, and options.
func (*ComputeClusterVmAffinityRule) ComputeClusterId ¶
func (r *ComputeClusterVmAffinityRule) ComputeClusterId() *pulumi.StringOutput
The [managed object reference ID][docs-about-morefs] of the cluster to put the group in. Forces a new resource if changed.
func (*ComputeClusterVmAffinityRule) Enabled ¶
func (r *ComputeClusterVmAffinityRule) Enabled() *pulumi.BoolOutput
Enable this rule in the cluster. Default: `true`.
func (*ComputeClusterVmAffinityRule) ID ¶
func (r *ComputeClusterVmAffinityRule) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*ComputeClusterVmAffinityRule) Mandatory ¶
func (r *ComputeClusterVmAffinityRule) Mandatory() *pulumi.BoolOutput
When this value is `true`, prevents any virtual machine operations that may violate this rule. Default: `false`.
func (*ComputeClusterVmAffinityRule) Name ¶
func (r *ComputeClusterVmAffinityRule) Name() *pulumi.StringOutput
The name of the rule. This must be unique in the cluster.
func (*ComputeClusterVmAffinityRule) URN ¶
func (r *ComputeClusterVmAffinityRule) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
func (*ComputeClusterVmAffinityRule) VirtualMachineIds ¶
func (r *ComputeClusterVmAffinityRule) VirtualMachineIds() *pulumi.ArrayOutput
The UUIDs of the virtual machines to run on the same host together.
type ComputeClusterVmAffinityRuleArgs ¶
type ComputeClusterVmAffinityRuleArgs struct { // The [managed object reference // ID][docs-about-morefs] of the cluster to put the group in. Forces a new // resource if changed. ComputeClusterId interface{} // Enable this rule in the cluster. Default: `true`. Enabled interface{} // When this value is `true`, prevents any virtual // machine operations that may violate this rule. Default: `false`. Mandatory interface{} // The name of the rule. This must be unique in the cluster. Name interface{} // The UUIDs of the virtual machines to run // on the same host together. VirtualMachineIds interface{} }
The set of arguments for constructing a ComputeClusterVmAffinityRule resource.
type ComputeClusterVmAffinityRuleState ¶
type ComputeClusterVmAffinityRuleState struct { // The [managed object reference // ID][docs-about-morefs] of the cluster to put the group in. Forces a new // resource if changed. ComputeClusterId interface{} // Enable this rule in the cluster. Default: `true`. Enabled interface{} // When this value is `true`, prevents any virtual // machine operations that may violate this rule. Default: `false`. Mandatory interface{} // The name of the rule. This must be unique in the cluster. Name interface{} // The UUIDs of the virtual machines to run // on the same host together. VirtualMachineIds interface{} }
Input properties used for looking up and filtering ComputeClusterVmAffinityRule resources.
type ComputeClusterVmDependencyRule ¶
type ComputeClusterVmDependencyRule struct {
// contains filtered or unexported fields
}
The `vsphere_compute_cluster_vm_dependency_rule` resource can be used to manage VM dependency rules in a cluster, either created by the [`vsphere_compute_cluster`][tf-vsphere-cluster-resource] resource or looked up by the [`vsphere_compute_cluster`][tf-vsphere-cluster-data-source] data source.
[tf-vsphere-cluster-resource]: /docs/providers/vsphere/r/compute_cluster.html [tf-vsphere-cluster-data-source]: /docs/providers/vsphere/d/compute_cluster.html
A virtual machine dependency rule applies to vSphere HA, and allows user-defined startup orders for virtual machines in the case of host failure. Virtual machines are supplied via groups, which can be managed via the [`vsphere_compute_cluster_vm_group`][tf-vsphere-cluster-vm-group-resource] resource.
[tf-vsphere-cluster-vm-group-resource]: /docs/providers/vsphere/r/compute_cluster_vm_group.html
~> **NOTE:** This resource requires vCenter and is not available on direct ESXi connections.
func GetComputeClusterVmDependencyRule ¶
func GetComputeClusterVmDependencyRule(ctx *pulumi.Context, name string, id pulumi.ID, state *ComputeClusterVmDependencyRuleState, opts ...pulumi.ResourceOpt) (*ComputeClusterVmDependencyRule, error)
GetComputeClusterVmDependencyRule gets an existing ComputeClusterVmDependencyRule resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewComputeClusterVmDependencyRule ¶
func NewComputeClusterVmDependencyRule(ctx *pulumi.Context, name string, args *ComputeClusterVmDependencyRuleArgs, opts ...pulumi.ResourceOpt) (*ComputeClusterVmDependencyRule, error)
NewComputeClusterVmDependencyRule registers a new resource with the given unique name, arguments, and options.
func (*ComputeClusterVmDependencyRule) ComputeClusterId ¶
func (r *ComputeClusterVmDependencyRule) ComputeClusterId() *pulumi.StringOutput
The [managed object reference ID][docs-about-morefs] of the cluster to put the group in. Forces a new resource if changed.
func (*ComputeClusterVmDependencyRule) DependencyVmGroupName ¶
func (r *ComputeClusterVmDependencyRule) DependencyVmGroupName() *pulumi.StringOutput
The name of the VM group that this rule depends on. The VMs defined in the group specified by `vm_group_name` will not be started until the VMs in this group are started.
func (*ComputeClusterVmDependencyRule) Enabled ¶
func (r *ComputeClusterVmDependencyRule) Enabled() *pulumi.BoolOutput
Enable this rule in the cluster. Default: `true`.
func (*ComputeClusterVmDependencyRule) ID ¶
func (r *ComputeClusterVmDependencyRule) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*ComputeClusterVmDependencyRule) Mandatory ¶
func (r *ComputeClusterVmDependencyRule) Mandatory() *pulumi.BoolOutput
When this value is `true`, prevents any virtual machine operations that may violate this rule. Default: `false`.
func (*ComputeClusterVmDependencyRule) Name ¶
func (r *ComputeClusterVmDependencyRule) Name() *pulumi.StringOutput
The name of the rule. This must be unique in the cluster.
func (*ComputeClusterVmDependencyRule) URN ¶
func (r *ComputeClusterVmDependencyRule) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
func (*ComputeClusterVmDependencyRule) VmGroupName ¶
func (r *ComputeClusterVmDependencyRule) VmGroupName() *pulumi.StringOutput
The name of the VM group that is the subject of this rule. The VMs defined in this group will not be started until the VMs in the group specified by `dependency_vm_group_name` are started.
type ComputeClusterVmDependencyRuleArgs ¶
type ComputeClusterVmDependencyRuleArgs struct { // The [managed object reference // ID][docs-about-morefs] of the cluster to put the group in. Forces a new // resource if changed. ComputeClusterId interface{} // The name of the VM group that this // rule depends on. The VMs defined in the group specified by // `vm_group_name` will not be started until the VMs in this // group are started. DependencyVmGroupName interface{} // Enable this rule in the cluster. Default: `true`. Enabled interface{} // When this value is `true`, prevents any virtual // machine operations that may violate this rule. Default: `false`. Mandatory interface{} // The name of the rule. This must be unique in the // cluster. Name interface{} // The name of the VM group that is the subject of // this rule. The VMs defined in this group will not be started until the VMs in // the group specified by // `dependency_vm_group_name` are started. VmGroupName interface{} }
The set of arguments for constructing a ComputeClusterVmDependencyRule resource.
type ComputeClusterVmDependencyRuleState ¶
type ComputeClusterVmDependencyRuleState struct { // The [managed object reference // ID][docs-about-morefs] of the cluster to put the group in. Forces a new // resource if changed. ComputeClusterId interface{} // The name of the VM group that this // rule depends on. The VMs defined in the group specified by // `vm_group_name` will not be started until the VMs in this // group are started. DependencyVmGroupName interface{} // Enable this rule in the cluster. Default: `true`. Enabled interface{} // When this value is `true`, prevents any virtual // machine operations that may violate this rule. Default: `false`. Mandatory interface{} // The name of the rule. This must be unique in the // cluster. Name interface{} // The name of the VM group that is the subject of // this rule. The VMs defined in this group will not be started until the VMs in // the group specified by // `dependency_vm_group_name` are started. VmGroupName interface{} }
Input properties used for looking up and filtering ComputeClusterVmDependencyRule resources.
type ComputeClusterVmGroup ¶
type ComputeClusterVmGroup struct {
// contains filtered or unexported fields
}
The `vsphere_compute_cluster_vm_group` resource can be used to manage groups of virtual machines in a cluster, either created by the [`vsphere_compute_cluster`][tf-vsphere-cluster-resource] resource or looked up by the [`vsphere_compute_cluster`][tf-vsphere-cluster-data-source] data source.
[tf-vsphere-cluster-resource]: /docs/providers/vsphere/r/compute_cluster.html [tf-vsphere-cluster-data-source]: /docs/providers/vsphere/d/compute_cluster.html
This resource mainly serves as an input to the [`vsphere_compute_cluster_vm_dependency_rule`][tf-vsphere-cluster-vm-dependency-rule-resource] and [`vsphere_compute_cluster_vm_host_rule`][tf-vsphere-cluster-vm-host-rule-resource] resources. See the individual resource documentation pages for more information.
[tf-vsphere-cluster-vm-dependency-rule-resource]: /docs/providers/vsphere/r/compute_cluster_vm_dependency_rule.html [tf-vsphere-cluster-vm-host-rule-resource]: /docs/providers/vsphere/r/compute_cluster_vm_host_rule.html
~> **NOTE:** This resource requires vCenter and is not available on direct ESXi connections.
~> **NOTE:** vSphere DRS requires a vSphere Enterprise Plus license.
func GetComputeClusterVmGroup ¶
func GetComputeClusterVmGroup(ctx *pulumi.Context, name string, id pulumi.ID, state *ComputeClusterVmGroupState, opts ...pulumi.ResourceOpt) (*ComputeClusterVmGroup, error)
GetComputeClusterVmGroup gets an existing ComputeClusterVmGroup resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewComputeClusterVmGroup ¶
func NewComputeClusterVmGroup(ctx *pulumi.Context, name string, args *ComputeClusterVmGroupArgs, opts ...pulumi.ResourceOpt) (*ComputeClusterVmGroup, error)
NewComputeClusterVmGroup registers a new resource with the given unique name, arguments, and options.
func (*ComputeClusterVmGroup) ComputeClusterId ¶
func (r *ComputeClusterVmGroup) ComputeClusterId() *pulumi.StringOutput
The [managed object reference ID][docs-about-morefs] of the cluster to put the group in. Forces a new resource if changed.
func (*ComputeClusterVmGroup) ID ¶
func (r *ComputeClusterVmGroup) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*ComputeClusterVmGroup) Name ¶
func (r *ComputeClusterVmGroup) Name() *pulumi.StringOutput
The name of the VM group. This must be unique in the cluster. Forces a new resource if changed.
func (*ComputeClusterVmGroup) URN ¶
func (r *ComputeClusterVmGroup) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
func (*ComputeClusterVmGroup) VirtualMachineIds ¶
func (r *ComputeClusterVmGroup) VirtualMachineIds() *pulumi.ArrayOutput
The UUIDs of the virtual machines in this group.
type ComputeClusterVmGroupArgs ¶
type ComputeClusterVmGroupArgs struct { // The [managed object reference // ID][docs-about-morefs] of the cluster to put the group in. Forces a new // resource if changed. ComputeClusterId interface{} // The name of the VM group. This must be unique in the // cluster. Forces a new resource if changed. Name interface{} // The UUIDs of the virtual machines in this // group. VirtualMachineIds interface{} }
The set of arguments for constructing a ComputeClusterVmGroup resource.
type ComputeClusterVmGroupState ¶
type ComputeClusterVmGroupState struct { // The [managed object reference // ID][docs-about-morefs] of the cluster to put the group in. Forces a new // resource if changed. ComputeClusterId interface{} // The name of the VM group. This must be unique in the // cluster. Forces a new resource if changed. Name interface{} // The UUIDs of the virtual machines in this // group. VirtualMachineIds interface{} }
Input properties used for looking up and filtering ComputeClusterVmGroup resources.
type ComputeClusterVmHostRule ¶
type ComputeClusterVmHostRule struct {
// contains filtered or unexported fields
}
The `vsphere_compute_cluster_vm_host_rule` resource can be used to manage VM-to-host rules in a cluster, either created by the [`vsphere_compute_cluster`][tf-vsphere-cluster-resource] resource or looked up by the [`vsphere_compute_cluster`][tf-vsphere-cluster-data-source] data source.
[tf-vsphere-cluster-resource]: /docs/providers/vsphere/r/compute_cluster.html [tf-vsphere-cluster-data-source]: /docs/providers/vsphere/d/compute_cluster.html
This resource can create both _affinity rules_, where virtual machines run on specified hosts, or _anti-affinity_ rules, where virtual machines run on hosts outside of the ones specified in the rule. Virtual machines and hosts are supplied via groups, which can be managed via the [`vsphere_compute_cluster_vm_group`][tf-vsphere-cluster-vm-group-resource] and [`vsphere_compute_cluster_host_group`][tf-vsphere-cluster-host-group-resource] resources.
[tf-vsphere-cluster-vm-group-resource]: /docs/providers/vsphere/r/compute_cluster_vm_group.html [tf-vsphere-cluster-host-group-resource]: /docs/providers/vsphere/r/compute_cluster_host_group.html
~> **NOTE:** This resource requires vCenter and is not available on direct ESXi connections.
~> **NOTE:** vSphere DRS requires a vSphere Enterprise Plus license.
func GetComputeClusterVmHostRule ¶
func GetComputeClusterVmHostRule(ctx *pulumi.Context, name string, id pulumi.ID, state *ComputeClusterVmHostRuleState, opts ...pulumi.ResourceOpt) (*ComputeClusterVmHostRule, error)
GetComputeClusterVmHostRule gets an existing ComputeClusterVmHostRule resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewComputeClusterVmHostRule ¶
func NewComputeClusterVmHostRule(ctx *pulumi.Context, name string, args *ComputeClusterVmHostRuleArgs, opts ...pulumi.ResourceOpt) (*ComputeClusterVmHostRule, error)
NewComputeClusterVmHostRule registers a new resource with the given unique name, arguments, and options.
func (*ComputeClusterVmHostRule) AffinityHostGroupName ¶
func (r *ComputeClusterVmHostRule) AffinityHostGroupName() *pulumi.StringOutput
When this field is used, the virtual machines defined in `vm_group_name` will be run on the hosts defined in this host group.
func (*ComputeClusterVmHostRule) AntiAffinityHostGroupName ¶
func (r *ComputeClusterVmHostRule) AntiAffinityHostGroupName() *pulumi.StringOutput
When this field is used, the virtual machines defined in `vm_group_name` will _not_ be run on the hosts defined in this host group.
func (*ComputeClusterVmHostRule) ComputeClusterId ¶
func (r *ComputeClusterVmHostRule) ComputeClusterId() *pulumi.StringOutput
The [managed object reference ID][docs-about-morefs] of the cluster to put the group in. Forces a new resource if changed.
func (*ComputeClusterVmHostRule) Enabled ¶
func (r *ComputeClusterVmHostRule) Enabled() *pulumi.BoolOutput
Enable this rule in the cluster. Default: `true`.
func (*ComputeClusterVmHostRule) ID ¶
func (r *ComputeClusterVmHostRule) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*ComputeClusterVmHostRule) Mandatory ¶
func (r *ComputeClusterVmHostRule) Mandatory() *pulumi.BoolOutput
When this value is `true`, prevents any virtual machine operations that may violate this rule. Default: `false`.
func (*ComputeClusterVmHostRule) Name ¶
func (r *ComputeClusterVmHostRule) Name() *pulumi.StringOutput
The name of the rule. This must be unique in the cluster.
func (*ComputeClusterVmHostRule) URN ¶
func (r *ComputeClusterVmHostRule) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
func (*ComputeClusterVmHostRule) VmGroupName ¶
func (r *ComputeClusterVmHostRule) VmGroupName() *pulumi.StringOutput
The name of the virtual machine group to use with this rule.
type ComputeClusterVmHostRuleArgs ¶
type ComputeClusterVmHostRuleArgs struct { // When this field is used, the virtual // machines defined in `vm_group_name` will be run on the // hosts defined in this host group. AffinityHostGroupName interface{} // When this field is used, the // virtual machines defined in `vm_group_name` will _not_ be // run on the hosts defined in this host group. AntiAffinityHostGroupName interface{} // The [managed object reference // ID][docs-about-morefs] of the cluster to put the group in. Forces a new // resource if changed. ComputeClusterId interface{} // Enable this rule in the cluster. Default: `true`. Enabled interface{} // When this value is `true`, prevents any virtual // machine operations that may violate this rule. Default: `false`. Mandatory interface{} // The name of the rule. This must be unique in the // cluster. Name interface{} // The name of the virtual machine group to use // with this rule. VmGroupName interface{} }
The set of arguments for constructing a ComputeClusterVmHostRule resource.
type ComputeClusterVmHostRuleState ¶
type ComputeClusterVmHostRuleState struct { // When this field is used, the virtual // machines defined in `vm_group_name` will be run on the // hosts defined in this host group. AffinityHostGroupName interface{} // When this field is used, the // virtual machines defined in `vm_group_name` will _not_ be // run on the hosts defined in this host group. AntiAffinityHostGroupName interface{} // The [managed object reference // ID][docs-about-morefs] of the cluster to put the group in. Forces a new // resource if changed. ComputeClusterId interface{} // Enable this rule in the cluster. Default: `true`. Enabled interface{} // When this value is `true`, prevents any virtual // machine operations that may violate this rule. Default: `false`. Mandatory interface{} // The name of the rule. This must be unique in the // cluster. Name interface{} // The name of the virtual machine group to use // with this rule. VmGroupName interface{} }
Input properties used for looking up and filtering ComputeClusterVmHostRule resources.
type CustomAttribute ¶
type CustomAttribute struct {
// contains filtered or unexported fields
}
The `vsphere_custom_attribute` resource can be used to create and manage custom attributes, which allow users to associate user-specific meta-information with vSphere managed objects. Custom attribute values must be strings and are stored on the vCenter Server and not the managed object.
For more information about custom attributes, click [here]ext-custom-attributes.
~> **NOTE:** Custom attributes are unsupported on direct ESXi connections and require vCenter.
func GetCustomAttribute ¶
func GetCustomAttribute(ctx *pulumi.Context, name string, id pulumi.ID, state *CustomAttributeState, opts ...pulumi.ResourceOpt) (*CustomAttribute, error)
GetCustomAttribute gets an existing CustomAttribute resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewCustomAttribute ¶
func NewCustomAttribute(ctx *pulumi.Context, name string, args *CustomAttributeArgs, opts ...pulumi.ResourceOpt) (*CustomAttribute, error)
NewCustomAttribute registers a new resource with the given unique name, arguments, and options.
func (*CustomAttribute) ID ¶
func (r *CustomAttribute) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*CustomAttribute) ManagedObjectType ¶
func (r *CustomAttribute) ManagedObjectType() *pulumi.StringOutput
The object type that this attribute may be applied to. If not set, the custom attribute may be applied to any object type. For a full list, click here. Forces a new resource if changed.
func (*CustomAttribute) Name ¶
func (r *CustomAttribute) Name() *pulumi.StringOutput
The name of the custom attribute.
func (*CustomAttribute) URN ¶
func (r *CustomAttribute) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
type CustomAttributeArgs ¶
type CustomAttributeArgs struct { // The object type that this attribute may be // applied to. If not set, the custom attribute may be applied to any object // type. For a full list, click here. Forces a new // resource if changed. ManagedObjectType interface{} // The name of the custom attribute. Name interface{} }
The set of arguments for constructing a CustomAttribute resource.
type CustomAttributeState ¶
type CustomAttributeState struct { // The object type that this attribute may be // applied to. If not set, the custom attribute may be applied to any object // type. For a full list, click here. Forces a new // resource if changed. ManagedObjectType interface{} // The name of the custom attribute. Name interface{} }
Input properties used for looking up and filtering CustomAttribute resources.
type Datacenter ¶
type Datacenter struct {
// contains filtered or unexported fields
}
Provides a VMware vSphere datacenter resource. This can be used as the primary container of inventory objects such as hosts and virtual machines.
func GetDatacenter ¶
func GetDatacenter(ctx *pulumi.Context, name string, id pulumi.ID, state *DatacenterState, opts ...pulumi.ResourceOpt) (*Datacenter, error)
GetDatacenter gets an existing Datacenter resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewDatacenter ¶
func NewDatacenter(ctx *pulumi.Context, name string, args *DatacenterArgs, opts ...pulumi.ResourceOpt) (*Datacenter, error)
NewDatacenter registers a new resource with the given unique name, arguments, and options.
func (*Datacenter) CustomAttributes ¶
func (r *Datacenter) CustomAttributes() *pulumi.MapOutput
Map of custom attribute ids to value strings to set for datacenter resource. See [here][docs-setting-custom-attributes] for a reference on how to set values for custom attributes.
func (*Datacenter) Folder ¶
func (r *Datacenter) Folder() *pulumi.StringOutput
The folder where the datacenter should be created. Forces a new resource if changed.
func (*Datacenter) ID ¶
func (r *Datacenter) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*Datacenter) Moid ¶
func (r *Datacenter) Moid() *pulumi.StringOutput
[Managed object ID][docs-about-morefs] of this datacenter.
func (*Datacenter) Name ¶
func (r *Datacenter) Name() *pulumi.StringOutput
The name of the datacenter. This name needs to be unique within the folder. Forces a new resource if changed.
func (*Datacenter) Tags ¶
func (r *Datacenter) Tags() *pulumi.ArrayOutput
The IDs of any tags to attach to this resource. See [here][docs-applying-tags] for a reference on how to apply tags.
func (*Datacenter) URN ¶
func (r *Datacenter) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
type DatacenterArgs ¶
type DatacenterArgs struct { // Map of custom attribute ids to value // strings to set for datacenter resource. See // [here][docs-setting-custom-attributes] for a reference on how to set values // for custom attributes. CustomAttributes interface{} // The folder where the datacenter should be created. // Forces a new resource if changed. Folder interface{} // The name of the datacenter. This name needs to be unique // within the folder. Forces a new resource if changed. Name interface{} // The IDs of any tags to attach to this resource. See // [here][docs-applying-tags] for a reference on how to apply tags. Tags interface{} }
The set of arguments for constructing a Datacenter resource.
type DatacenterState ¶
type DatacenterState struct { // Map of custom attribute ids to value // strings to set for datacenter resource. See // [here][docs-setting-custom-attributes] for a reference on how to set values // for custom attributes. CustomAttributes interface{} // The folder where the datacenter should be created. // Forces a new resource if changed. Folder interface{} // [Managed object ID][docs-about-morefs] of this datacenter. Moid interface{} // The name of the datacenter. This name needs to be unique // within the folder. Forces a new resource if changed. Name interface{} // The IDs of any tags to attach to this resource. See // [here][docs-applying-tags] for a reference on how to apply tags. Tags interface{} }
Input properties used for looking up and filtering Datacenter resources.
type DatastoreCluster ¶
type DatastoreCluster struct {
// contains filtered or unexported fields
}
The `vsphere_datastore_cluster` resource can be used to create and manage datastore clusters. This can be used to create groups of datastores with a shared management interface, allowing for resource control and load balancing through Storage DRS.
For more information on vSphere datastore clusters and Storage DRS, see [this page]ref-vsphere-datastore-clusters.
~> **NOTE:** This resource requires vCenter and is not available on direct ESXi connections.
~> **NOTE:** Storage DRS requires a vSphere Enterprise Plus license.
func GetDatastoreCluster ¶
func GetDatastoreCluster(ctx *pulumi.Context, name string, id pulumi.ID, state *DatastoreClusterState, opts ...pulumi.ResourceOpt) (*DatastoreCluster, error)
GetDatastoreCluster gets an existing DatastoreCluster resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewDatastoreCluster ¶
func NewDatastoreCluster(ctx *pulumi.Context, name string, args *DatastoreClusterArgs, opts ...pulumi.ResourceOpt) (*DatastoreCluster, error)
NewDatastoreCluster registers a new resource with the given unique name, arguments, and options.
func (*DatastoreCluster) CustomAttributes ¶
func (r *DatastoreCluster) CustomAttributes() *pulumi.MapOutput
A map of custom attribute ids to attribute value strings to set for the datastore cluster. See [here][docs-setting-custom-attributes] for a reference on how to set values for custom attributes.
func (*DatastoreCluster) DatacenterId ¶
func (r *DatastoreCluster) DatacenterId() *pulumi.StringOutput
The [managed object ID][docs-about-morefs] of the datacenter to create the datastore cluster in. Forces a new resource if changed.
func (*DatastoreCluster) Folder ¶
func (r *DatastoreCluster) Folder() *pulumi.StringOutput
The relative path to a folder to put this datastore cluster in. This is a path relative to the datacenter you are deploying the datastore to. Example: for the `dc1` datacenter, and a provided `folder` of `foo/bar`, Terraform will place a datastore cluster named `terraform-datastore-cluster-test` in a datastore folder located at `/dc1/datastore/foo/bar`, with the final inventory path being `/dc1/datastore/foo/bar/terraform-datastore-cluster-test`.
func (*DatastoreCluster) ID ¶
func (r *DatastoreCluster) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*DatastoreCluster) Name ¶
func (r *DatastoreCluster) Name() *pulumi.StringOutput
The name of the datastore cluster.
func (*DatastoreCluster) SdrsAdvancedOptions ¶
func (r *DatastoreCluster) SdrsAdvancedOptions() *pulumi.MapOutput
A key/value map of advanced Storage DRS settings that are not exposed via Terraform or the vSphere client.
func (*DatastoreCluster) SdrsAutomationLevel ¶
func (r *DatastoreCluster) SdrsAutomationLevel() *pulumi.StringOutput
The global automation level for all virtual machines in this datastore cluster. Default: `manual`.
func (*DatastoreCluster) SdrsDefaultIntraVmAffinity ¶
func (r *DatastoreCluster) SdrsDefaultIntraVmAffinity() *pulumi.BoolOutput
When `true`, all disks in a single virtual machine will be kept on the same datastore. Default: `true`.
func (*DatastoreCluster) SdrsEnabled ¶
func (r *DatastoreCluster) SdrsEnabled() *pulumi.BoolOutput
Enable Storage DRS for this datastore cluster. Default: `false`.
func (*DatastoreCluster) SdrsFreeSpaceThreshold ¶
func (r *DatastoreCluster) SdrsFreeSpaceThreshold() *pulumi.IntOutput
The free space threshold to use. When set to `utilization`, `drs_space_utilization_threshold` is used, and when set to `freeSpace`, `drs_free_space_threshold` is used. Default: `utilization`.
func (*DatastoreCluster) SdrsFreeSpaceThresholdMode ¶
func (r *DatastoreCluster) SdrsFreeSpaceThresholdMode() *pulumi.StringOutput
The free space threshold to use. When set to utilization, drs_space_utilization_threshold is used, and when set to freeSpace, drs_free_space_threshold is used.
func (*DatastoreCluster) SdrsFreeSpaceUtilizationDifference ¶
func (r *DatastoreCluster) SdrsFreeSpaceUtilizationDifference() *pulumi.IntOutput
The threshold, in percent, of difference between space utilization in datastores before storage DRS makes decisions to balance the space. Default: `5` percent.
func (*DatastoreCluster) SdrsIoBalanceAutomationLevel ¶
func (r *DatastoreCluster) SdrsIoBalanceAutomationLevel() *pulumi.StringOutput
Overrides the default automation settings when correcting I/O load imbalances.
func (*DatastoreCluster) SdrsIoLatencyThreshold ¶
func (r *DatastoreCluster) SdrsIoLatencyThreshold() *pulumi.IntOutput
The I/O latency threshold, in milliseconds, that storage DRS uses to make recommendations to move disks from this datastore. Default: `15` seconds.
func (*DatastoreCluster) SdrsIoLoadBalanceEnabled ¶
func (r *DatastoreCluster) SdrsIoLoadBalanceEnabled() *pulumi.BoolOutput
Enable I/O load balancing for this datastore cluster. Default: `true`.
func (*DatastoreCluster) SdrsIoLoadImbalanceThreshold ¶
func (r *DatastoreCluster) SdrsIoLoadImbalanceThreshold() *pulumi.IntOutput
The difference between load in datastores in the cluster before storage DRS makes recommendations to balance the load. Default: `5` percent.
func (*DatastoreCluster) SdrsIoReservableIopsThreshold ¶
func (r *DatastoreCluster) SdrsIoReservableIopsThreshold() *pulumi.IntOutput
The threshold of reservable IOPS of all virtual machines on the datastore before storage DRS makes recommendations to move VMs off of a datastore. Note that this setting should only be set if `sdrs_io_reservable_percent_threshold` cannot make an accurate estimate of the capacity of the datastores in your cluster, and should be set to roughly 50-60% of the worst case peak performance of the backing LUNs.
func (*DatastoreCluster) SdrsIoReservablePercentThreshold ¶
func (r *DatastoreCluster) SdrsIoReservablePercentThreshold() *pulumi.IntOutput
The threshold, in percent, of actual estimated performance of the datastore (in IOPS) that storage DRS uses to make recommendations to move VMs off of a datastore when the total reservable IOPS exceeds the threshold. Default: `60` percent.
func (*DatastoreCluster) SdrsIoReservableThresholdMode ¶
func (r *DatastoreCluster) SdrsIoReservableThresholdMode() *pulumi.StringOutput
The reservable IOPS threshold setting to use, `sdrs_io_reservable_percent_threshold` in the event of `automatic`, or `sdrs_io_reservable_iops_threshold` in the event of `manual`. Default: `automatic`.
func (*DatastoreCluster) SdrsLoadBalanceInterval ¶
func (r *DatastoreCluster) SdrsLoadBalanceInterval() *pulumi.IntOutput
The storage DRS poll interval, in minutes. Default: `480` minutes.
func (*DatastoreCluster) SdrsPolicyEnforcementAutomationLevel ¶
func (r *DatastoreCluster) SdrsPolicyEnforcementAutomationLevel() *pulumi.StringOutput
Overrides the default automation settings when correcting storage and VM policy violations.
func (*DatastoreCluster) SdrsRuleEnforcementAutomationLevel ¶
func (r *DatastoreCluster) SdrsRuleEnforcementAutomationLevel() *pulumi.StringOutput
Overrides the default automation settings when correcting affinity rule violations.
func (*DatastoreCluster) SdrsSpaceBalanceAutomationLevel ¶
func (r *DatastoreCluster) SdrsSpaceBalanceAutomationLevel() *pulumi.StringOutput
Overrides the default automation settings when correcting disk space imbalances.
func (*DatastoreCluster) SdrsSpaceUtilizationThreshold ¶
func (r *DatastoreCluster) SdrsSpaceUtilizationThreshold() *pulumi.IntOutput
The threshold, in percent of used space, that storage DRS uses to make decisions to migrate VMs out of a datastore.
func (*DatastoreCluster) SdrsVmEvacuationAutomationLevel ¶
func (r *DatastoreCluster) SdrsVmEvacuationAutomationLevel() *pulumi.StringOutput
Overrides the default automation settings when generating recommendations for datastore evacuation.
func (*DatastoreCluster) Tags ¶
func (r *DatastoreCluster) Tags() *pulumi.ArrayOutput
The IDs of any tags to attach to this resource. See [here][docs-applying-tags] for a reference on how to apply tags.
func (*DatastoreCluster) URN ¶
func (r *DatastoreCluster) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
type DatastoreClusterArgs ¶
type DatastoreClusterArgs struct { // A map of custom attribute ids to attribute // value strings to set for the datastore cluster. See // [here][docs-setting-custom-attributes] for a reference on how to set values // for custom attributes. CustomAttributes interface{} // The [managed object ID][docs-about-morefs] of // the datacenter to create the datastore cluster in. Forces a new resource if // changed. DatacenterId interface{} // The relative path to a folder to put this datastore // cluster in. This is a path relative to the datacenter you are deploying the // datastore to. Example: for the `dc1` datacenter, and a provided `folder` of // `foo/bar`, Terraform will place a datastore cluster named // `terraform-datastore-cluster-test` in a datastore folder located at // `/dc1/datastore/foo/bar`, with the final inventory path being // `/dc1/datastore/foo/bar/terraform-datastore-cluster-test`. Folder interface{} // The name of the datastore cluster. Name interface{} // A key/value map of advanced Storage DRS // settings that are not exposed via Terraform or the vSphere client. SdrsAdvancedOptions interface{} // The global automation level for all // virtual machines in this datastore cluster. Default: `manual`. SdrsAutomationLevel interface{} // When `true`, all disks in a // single virtual machine will be kept on the same datastore. Default: `true`. SdrsDefaultIntraVmAffinity interface{} // Enable Storage DRS for this datastore cluster. // Default: `false`. SdrsEnabled interface{} // The free space threshold to use. // When set to `utilization`, `drs_space_utilization_threshold` is used, and // when set to `freeSpace`, `drs_free_space_threshold` is used. Default: // `utilization`. SdrsFreeSpaceThreshold interface{} // The free space threshold to use. When set to utilization, drs_space_utilization_threshold is used, and when set to // freeSpace, drs_free_space_threshold is used. SdrsFreeSpaceThresholdMode interface{} // The threshold, in // percent, of difference between space utilization in datastores before storage // DRS makes decisions to balance the space. Default: `5` percent. SdrsFreeSpaceUtilizationDifference interface{} // Overrides the default // automation settings when correcting I/O load imbalances. SdrsIoBalanceAutomationLevel interface{} // The I/O latency threshold, in // milliseconds, that storage DRS uses to make recommendations to move disks // from this datastore. Default: `15` seconds. SdrsIoLatencyThreshold interface{} // Enable I/O load balancing for // this datastore cluster. Default: `true`. SdrsIoLoadBalanceEnabled interface{} // The difference between load // in datastores in the cluster before storage DRS makes recommendations to // balance the load. Default: `5` percent. SdrsIoLoadImbalanceThreshold interface{} // The threshold of reservable // IOPS of all virtual machines on the datastore before storage DRS makes // recommendations to move VMs off of a datastore. Note that this setting should // only be set if `sdrs_io_reservable_percent_threshold` cannot make an accurate // estimate of the capacity of the datastores in your cluster, and should be set // to roughly 50-60% of the worst case peak performance of the backing LUNs. SdrsIoReservableIopsThreshold interface{} // The threshold, in // percent, of actual estimated performance of the datastore (in IOPS) that // storage DRS uses to make recommendations to move VMs off of a datastore when // the total reservable IOPS exceeds the threshold. Default: `60` percent. SdrsIoReservablePercentThreshold interface{} // The reservable IOPS // threshold setting to use, `sdrs_io_reservable_percent_threshold` in the event // of `automatic`, or `sdrs_io_reservable_iops_threshold` in the event of // `manual`. Default: `automatic`. SdrsIoReservableThresholdMode interface{} // The storage DRS poll interval, in // minutes. Default: `480` minutes. SdrsLoadBalanceInterval interface{} // Overrides the default // automation settings when correcting storage and VM policy violations. SdrsPolicyEnforcementAutomationLevel interface{} // Overrides the default // automation settings when correcting affinity rule violations. SdrsRuleEnforcementAutomationLevel interface{} // Overrides the default // automation settings when correcting disk space imbalances. SdrsSpaceBalanceAutomationLevel interface{} // The threshold, in percent of used space, that storage DRS uses to make decisions to migrate VMs out of a datastore. SdrsSpaceUtilizationThreshold interface{} // Overrides the default // automation settings when generating recommendations for datastore evacuation. SdrsVmEvacuationAutomationLevel interface{} // The IDs of any tags to attach to this resource. See // [here][docs-applying-tags] for a reference on how to apply tags. Tags interface{} }
The set of arguments for constructing a DatastoreCluster resource.
type DatastoreClusterState ¶
type DatastoreClusterState struct { // A map of custom attribute ids to attribute // value strings to set for the datastore cluster. See // [here][docs-setting-custom-attributes] for a reference on how to set values // for custom attributes. CustomAttributes interface{} // The [managed object ID][docs-about-morefs] of // the datacenter to create the datastore cluster in. Forces a new resource if // changed. DatacenterId interface{} // The relative path to a folder to put this datastore // cluster in. This is a path relative to the datacenter you are deploying the // datastore to. Example: for the `dc1` datacenter, and a provided `folder` of // `foo/bar`, Terraform will place a datastore cluster named // `terraform-datastore-cluster-test` in a datastore folder located at // `/dc1/datastore/foo/bar`, with the final inventory path being // `/dc1/datastore/foo/bar/terraform-datastore-cluster-test`. Folder interface{} // The name of the datastore cluster. Name interface{} // A key/value map of advanced Storage DRS // settings that are not exposed via Terraform or the vSphere client. SdrsAdvancedOptions interface{} // The global automation level for all // virtual machines in this datastore cluster. Default: `manual`. SdrsAutomationLevel interface{} // When `true`, all disks in a // single virtual machine will be kept on the same datastore. Default: `true`. SdrsDefaultIntraVmAffinity interface{} // Enable Storage DRS for this datastore cluster. // Default: `false`. SdrsEnabled interface{} // The free space threshold to use. // When set to `utilization`, `drs_space_utilization_threshold` is used, and // when set to `freeSpace`, `drs_free_space_threshold` is used. Default: // `utilization`. SdrsFreeSpaceThreshold interface{} // The free space threshold to use. When set to utilization, drs_space_utilization_threshold is used, and when set to // freeSpace, drs_free_space_threshold is used. SdrsFreeSpaceThresholdMode interface{} // The threshold, in // percent, of difference between space utilization in datastores before storage // DRS makes decisions to balance the space. Default: `5` percent. SdrsFreeSpaceUtilizationDifference interface{} // Overrides the default // automation settings when correcting I/O load imbalances. SdrsIoBalanceAutomationLevel interface{} // The I/O latency threshold, in // milliseconds, that storage DRS uses to make recommendations to move disks // from this datastore. Default: `15` seconds. SdrsIoLatencyThreshold interface{} // Enable I/O load balancing for // this datastore cluster. Default: `true`. SdrsIoLoadBalanceEnabled interface{} // The difference between load // in datastores in the cluster before storage DRS makes recommendations to // balance the load. Default: `5` percent. SdrsIoLoadImbalanceThreshold interface{} // The threshold of reservable // IOPS of all virtual machines on the datastore before storage DRS makes // recommendations to move VMs off of a datastore. Note that this setting should // only be set if `sdrs_io_reservable_percent_threshold` cannot make an accurate // estimate of the capacity of the datastores in your cluster, and should be set // to roughly 50-60% of the worst case peak performance of the backing LUNs. SdrsIoReservableIopsThreshold interface{} // The threshold, in // percent, of actual estimated performance of the datastore (in IOPS) that // storage DRS uses to make recommendations to move VMs off of a datastore when // the total reservable IOPS exceeds the threshold. Default: `60` percent. SdrsIoReservablePercentThreshold interface{} // The reservable IOPS // threshold setting to use, `sdrs_io_reservable_percent_threshold` in the event // of `automatic`, or `sdrs_io_reservable_iops_threshold` in the event of // `manual`. Default: `automatic`. SdrsIoReservableThresholdMode interface{} // The storage DRS poll interval, in // minutes. Default: `480` minutes. SdrsLoadBalanceInterval interface{} // Overrides the default // automation settings when correcting storage and VM policy violations. SdrsPolicyEnforcementAutomationLevel interface{} // Overrides the default // automation settings when correcting affinity rule violations. SdrsRuleEnforcementAutomationLevel interface{} // Overrides the default // automation settings when correcting disk space imbalances. SdrsSpaceBalanceAutomationLevel interface{} // The threshold, in percent of used space, that storage DRS uses to make decisions to migrate VMs out of a datastore. SdrsSpaceUtilizationThreshold interface{} // Overrides the default // automation settings when generating recommendations for datastore evacuation. SdrsVmEvacuationAutomationLevel interface{} // The IDs of any tags to attach to this resource. See // [here][docs-applying-tags] for a reference on how to apply tags. Tags interface{} }
Input properties used for looking up and filtering DatastoreCluster resources.
type DatastoreClusterVmAntiAffinityRule ¶
type DatastoreClusterVmAntiAffinityRule struct {
// contains filtered or unexported fields
}
The `vsphere_datastore_cluster_vm_anti_affinity_rule` resource can be used to manage VM anti-affinity rules in a datastore cluster, either created by the [`vsphere_datastore_cluster`][tf-vsphere-datastore-cluster-resource] resource or looked up by the [`vsphere_datastore_cluster`][tf-vsphere-datastore-cluster-data-source] data source.
[tf-vsphere-datastore-cluster-resource]: /docs/providers/vsphere/r/datastore_cluster.html [tf-vsphere-datastore-cluster-data-source]: /docs/providers/vsphere/d/datastore_cluster.html
This rule can be used to tell a set to virtual machines to run on different datastores within a cluster, useful for preventing single points of failure in application cluster scenarios. When configured, Storage DRS will make a best effort to ensure that the virtual machines run on different datastores, or prevent any operation that would keep that from happening, depending on the value of the `mandatory` flag.
~> **NOTE:** This resource requires vCenter and is not available on direct ESXi connections.
~> **NOTE:** Storage DRS requires a vSphere Enterprise Plus license.
func GetDatastoreClusterVmAntiAffinityRule ¶
func GetDatastoreClusterVmAntiAffinityRule(ctx *pulumi.Context, name string, id pulumi.ID, state *DatastoreClusterVmAntiAffinityRuleState, opts ...pulumi.ResourceOpt) (*DatastoreClusterVmAntiAffinityRule, error)
GetDatastoreClusterVmAntiAffinityRule gets an existing DatastoreClusterVmAntiAffinityRule resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewDatastoreClusterVmAntiAffinityRule ¶
func NewDatastoreClusterVmAntiAffinityRule(ctx *pulumi.Context, name string, args *DatastoreClusterVmAntiAffinityRuleArgs, opts ...pulumi.ResourceOpt) (*DatastoreClusterVmAntiAffinityRule, error)
NewDatastoreClusterVmAntiAffinityRule registers a new resource with the given unique name, arguments, and options.
func (*DatastoreClusterVmAntiAffinityRule) DatastoreClusterId ¶
func (r *DatastoreClusterVmAntiAffinityRule) DatastoreClusterId() *pulumi.StringOutput
The [managed object reference ID][docs-about-morefs] of the datastore cluster to put the group in. Forces a new resource if changed.
func (*DatastoreClusterVmAntiAffinityRule) Enabled ¶
func (r *DatastoreClusterVmAntiAffinityRule) Enabled() *pulumi.BoolOutput
Enable this rule in the cluster. Default: `true`.
func (*DatastoreClusterVmAntiAffinityRule) ID ¶
func (r *DatastoreClusterVmAntiAffinityRule) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*DatastoreClusterVmAntiAffinityRule) Mandatory ¶
func (r *DatastoreClusterVmAntiAffinityRule) Mandatory() *pulumi.BoolOutput
When this value is `true`, prevents any virtual machine operations that may violate this rule. Default: `false`.
func (*DatastoreClusterVmAntiAffinityRule) Name ¶
func (r *DatastoreClusterVmAntiAffinityRule) Name() *pulumi.StringOutput
The name of the rule. This must be unique in the cluster.
func (*DatastoreClusterVmAntiAffinityRule) URN ¶
func (r *DatastoreClusterVmAntiAffinityRule) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
func (*DatastoreClusterVmAntiAffinityRule) VirtualMachineIds ¶
func (r *DatastoreClusterVmAntiAffinityRule) VirtualMachineIds() *pulumi.ArrayOutput
The UUIDs of the virtual machines to run on different datastores from each other.
type DatastoreClusterVmAntiAffinityRuleArgs ¶
type DatastoreClusterVmAntiAffinityRuleArgs struct { // The [managed object reference // ID][docs-about-morefs] of the datastore cluster to put the group in. Forces // a new resource if changed. DatastoreClusterId interface{} // Enable this rule in the cluster. Default: `true`. Enabled interface{} // When this value is `true`, prevents any virtual // machine operations that may violate this rule. Default: `false`. Mandatory interface{} // The name of the rule. This must be unique in the cluster. Name interface{} // The UUIDs of the virtual machines to run // on different datastores from each other. VirtualMachineIds interface{} }
The set of arguments for constructing a DatastoreClusterVmAntiAffinityRule resource.
type DatastoreClusterVmAntiAffinityRuleState ¶
type DatastoreClusterVmAntiAffinityRuleState struct { // The [managed object reference // ID][docs-about-morefs] of the datastore cluster to put the group in. Forces // a new resource if changed. DatastoreClusterId interface{} // Enable this rule in the cluster. Default: `true`. Enabled interface{} // When this value is `true`, prevents any virtual // machine operations that may violate this rule. Default: `false`. Mandatory interface{} // The name of the rule. This must be unique in the cluster. Name interface{} // The UUIDs of the virtual machines to run // on different datastores from each other. VirtualMachineIds interface{} }
Input properties used for looking up and filtering DatastoreClusterVmAntiAffinityRule resources.
type DistributedPortGroup ¶
type DistributedPortGroup struct {
// contains filtered or unexported fields
}
The `vsphere_distributed_port_group` resource can be used to manage vSphere distributed virtual port groups. These port groups are connected to distributed virtual switches, which can be managed by the [`vsphere_distributed_virtual_switch`][distributed-virtual-switch] resource.
Distributed port groups can be used as networks for virtual machines, allowing VMs to use the networking supplied by a distributed virtual switch (DVS), with a set of policies that apply to that individual newtork, if desired.
For an overview on vSphere networking concepts, see [this page][ref-vsphere-net-concepts]. For more information on vSphere DVS portgroups, see [this page][ref-vsphere-dvportgroup].
[distributed-virtual-switch]: /docs/providers/vsphere/r/distributed_virtual_switch.html [ref-vsphere-net-concepts]: https://docs.vmware.com/en/VMware-vSphere/6.5/com.vmware.vsphere.networking.doc/GUID-2B11DBB8-CB3C-4AFF-8885-EFEA0FC562F4.html [ref-vsphere-dvportgroup]: https://docs.vmware.com/en/VMware-vSphere/6.5/com.vmware.vsphere.networking.doc/GUID-69933F6E-2442-46CF-AA17-1196CB9A0A09.html
~> **NOTE:** This resource requires vCenter and is not available on direct ESXi connections.
func GetDistributedPortGroup ¶
func GetDistributedPortGroup(ctx *pulumi.Context, name string, id pulumi.ID, state *DistributedPortGroupState, opts ...pulumi.ResourceOpt) (*DistributedPortGroup, error)
GetDistributedPortGroup gets an existing DistributedPortGroup resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewDistributedPortGroup ¶
func NewDistributedPortGroup(ctx *pulumi.Context, name string, args *DistributedPortGroupArgs, opts ...pulumi.ResourceOpt) (*DistributedPortGroup, error)
NewDistributedPortGroup registers a new resource with the given unique name, arguments, and options.
func (*DistributedPortGroup) ActiveUplinks ¶
func (r *DistributedPortGroup) ActiveUplinks() *pulumi.ArrayOutput
List of active uplinks used for load balancing, matching the names of the uplinks assigned in the DVS.
func (*DistributedPortGroup) AllowForgedTransmits ¶
func (r *DistributedPortGroup) AllowForgedTransmits() *pulumi.BoolOutput
Controls whether or not the virtual network adapter is allowed to send network traffic with a different MAC address than that of its own.
func (*DistributedPortGroup) AllowMacChanges ¶
func (r *DistributedPortGroup) AllowMacChanges() *pulumi.BoolOutput
Controls whether or not the Media Access Control (MAC) address can be changed.
func (*DistributedPortGroup) AllowPromiscuous ¶
func (r *DistributedPortGroup) AllowPromiscuous() *pulumi.BoolOutput
Enable promiscuous mode on the network. This flag indicates whether or not all traffic is seen on a given port.
func (*DistributedPortGroup) AutoExpand ¶
func (r *DistributedPortGroup) AutoExpand() *pulumi.BoolOutput
Allows the port group to create additional ports past the limit specified in `number_of_ports` if necessary. Default: `true`.
func (*DistributedPortGroup) BlockAllPorts ¶
func (r *DistributedPortGroup) BlockAllPorts() *pulumi.BoolOutput
Indicates whether to block all ports by default.
func (*DistributedPortGroup) BlockOverrideAllowed ¶
func (r *DistributedPortGroup) BlockOverrideAllowed() *pulumi.BoolOutput
Allow the [port shutdown policy][port-shutdown-policy] to be overridden on an individual port.
func (*DistributedPortGroup) CheckBeacon ¶
func (r *DistributedPortGroup) CheckBeacon() *pulumi.BoolOutput
Enable beacon probing on the ports this policy applies to.
func (*DistributedPortGroup) ConfigVersion ¶
func (r *DistributedPortGroup) ConfigVersion() *pulumi.StringOutput
Version string of the configuration that this spec is trying to change.
func (*DistributedPortGroup) CustomAttributes ¶
func (r *DistributedPortGroup) CustomAttributes() *pulumi.MapOutput
Map of custom attribute ids to attribute value string to set for port group. See [here][docs-setting-custom-attributes] for a reference on how to set values for custom attributes.
func (*DistributedPortGroup) Description ¶
func (r *DistributedPortGroup) Description() *pulumi.StringOutput
An optional description for the port group.
func (*DistributedPortGroup) DirectpathGen2Allowed ¶
func (r *DistributedPortGroup) DirectpathGen2Allowed() *pulumi.BoolOutput
Allow VMDirectPath Gen2 on the ports this policy applies to.
func (*DistributedPortGroup) DistributedVirtualSwitchUuid ¶
func (r *DistributedPortGroup) DistributedVirtualSwitchUuid() *pulumi.StringOutput
The ID of the DVS to add the port group to. Forces a new resource if changed.
func (*DistributedPortGroup) EgressShapingAverageBandwidth ¶
func (r *DistributedPortGroup) EgressShapingAverageBandwidth() *pulumi.IntOutput
The average egress bandwidth in bits per second if egress shaping is enabled on the port.
func (*DistributedPortGroup) EgressShapingBurstSize ¶
func (r *DistributedPortGroup) EgressShapingBurstSize() *pulumi.IntOutput
The maximum egress burst size allowed in bytes if egress shaping is enabled on the port.
func (*DistributedPortGroup) EgressShapingEnabled ¶
func (r *DistributedPortGroup) EgressShapingEnabled() *pulumi.BoolOutput
True if the traffic shaper is enabled for egress traffic on the port.
func (*DistributedPortGroup) EgressShapingPeakBandwidth ¶
func (r *DistributedPortGroup) EgressShapingPeakBandwidth() *pulumi.IntOutput
The peak egress bandwidth during bursts in bits per second if egress traffic shaping is enabled on the port.
func (*DistributedPortGroup) Failback ¶
func (r *DistributedPortGroup) Failback() *pulumi.BoolOutput
If true, the teaming policy will re-activate failed interfaces higher in precedence when they come back up.
func (*DistributedPortGroup) ID ¶
func (r *DistributedPortGroup) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*DistributedPortGroup) IngressShapingAverageBandwidth ¶
func (r *DistributedPortGroup) IngressShapingAverageBandwidth() *pulumi.IntOutput
The average ingress bandwidth in bits per second if ingress shaping is enabled on the port.
func (*DistributedPortGroup) IngressShapingBurstSize ¶
func (r *DistributedPortGroup) IngressShapingBurstSize() *pulumi.IntOutput
The maximum ingress burst size allowed in bytes if ingress shaping is enabled on the port.
func (*DistributedPortGroup) IngressShapingEnabled ¶
func (r *DistributedPortGroup) IngressShapingEnabled() *pulumi.BoolOutput
True if the traffic shaper is enabled for ingress traffic on the port.
func (*DistributedPortGroup) IngressShapingPeakBandwidth ¶
func (r *DistributedPortGroup) IngressShapingPeakBandwidth() *pulumi.IntOutput
The peak ingress bandwidth during bursts in bits per second if ingress traffic shaping is enabled on the port.
func (*DistributedPortGroup) Key ¶
func (r *DistributedPortGroup) Key() *pulumi.StringOutput
The generated UUID of the portgroup.
func (*DistributedPortGroup) LacpEnabled ¶
func (r *DistributedPortGroup) LacpEnabled() *pulumi.BoolOutput
Whether or not to enable LACP on all uplink ports.
func (*DistributedPortGroup) LacpMode ¶
func (r *DistributedPortGroup) LacpMode() *pulumi.StringOutput
The uplink LACP mode to use. Can be one of active or passive.
func (*DistributedPortGroup) LivePortMovingAllowed ¶
func (r *DistributedPortGroup) LivePortMovingAllowed() *pulumi.BoolOutput
Allow a port in this port group to be moved to another port group while it is connected.
func (*DistributedPortGroup) Name ¶
func (r *DistributedPortGroup) Name() *pulumi.StringOutput
The name of the port group.
func (*DistributedPortGroup) NetflowEnabled ¶
func (r *DistributedPortGroup) NetflowEnabled() *pulumi.BoolOutput
Indicates whether to enable netflow on all ports.
func (*DistributedPortGroup) NetflowOverrideAllowed ¶
func (r *DistributedPortGroup) NetflowOverrideAllowed() *pulumi.BoolOutput
Allow the [Netflow policy][netflow-policy] on this port group to be overridden on an individual port.
func (*DistributedPortGroup) NetworkResourcePoolKey ¶
func (r *DistributedPortGroup) NetworkResourcePoolKey() *pulumi.StringOutput
The key of a network resource pool to associate with this port group. The default is `-1`, which implies no association.
func (*DistributedPortGroup) NetworkResourcePoolOverrideAllowed ¶
func (r *DistributedPortGroup) NetworkResourcePoolOverrideAllowed() *pulumi.BoolOutput
Allow the network resource pool set on this port group to be overridden on an individual port.
func (*DistributedPortGroup) NotifySwitches ¶
func (r *DistributedPortGroup) NotifySwitches() *pulumi.BoolOutput
If true, the teaming policy will notify the broadcast network of a NIC failover, triggering cache updates.
func (*DistributedPortGroup) NumberOfPorts ¶
func (r *DistributedPortGroup) NumberOfPorts() *pulumi.IntOutput
The number of ports available on this port group. Cannot be decreased below the amount of used ports on the port group.
func (*DistributedPortGroup) PortConfigResetAtDisconnect ¶
func (r *DistributedPortGroup) PortConfigResetAtDisconnect() *pulumi.BoolOutput
Reset a port's settings to the settings defined on this port group policy when the port disconnects.
func (*DistributedPortGroup) PortNameFormat ¶
func (r *DistributedPortGroup) PortNameFormat() *pulumi.StringOutput
An optional formatting policy for naming of the ports in this port group. See the `portNameFormat` attribute listed [here][ext-vsphere-portname-format] for details on the format syntax.
func (*DistributedPortGroup) PortPrivateSecondaryVlanId ¶
func (r *DistributedPortGroup) PortPrivateSecondaryVlanId() *pulumi.IntOutput
The secondary VLAN ID for this port.
func (*DistributedPortGroup) SecurityPolicyOverrideAllowed ¶
func (r *DistributedPortGroup) SecurityPolicyOverrideAllowed() *pulumi.BoolOutput
Allow the [security policy settings][sec-policy-settings] defined in this port group policy to be overridden on an individual port.
func (*DistributedPortGroup) ShapingOverrideAllowed ¶
func (r *DistributedPortGroup) ShapingOverrideAllowed() *pulumi.BoolOutput
Allow the [traffic shaping options][traffic-shaping-settings] on this port group policy to be overridden on an individual port.
func (*DistributedPortGroup) StandbyUplinks ¶
func (r *DistributedPortGroup) StandbyUplinks() *pulumi.ArrayOutput
List of active uplinks used for load balancing, matching the names of the uplinks assigned in the DVS.
func (*DistributedPortGroup) Tags ¶
func (r *DistributedPortGroup) Tags() *pulumi.ArrayOutput
A list of tag IDs to apply to this object.
func (*DistributedPortGroup) TeamingPolicy ¶
func (r *DistributedPortGroup) TeamingPolicy() *pulumi.StringOutput
The network adapter teaming policy. Can be one of loadbalance_ip, loadbalance_srcmac, loadbalance_srcid, failover_explicit, or loadbalance_loadbased.
func (*DistributedPortGroup) TrafficFilterOverrideAllowed ¶
func (r *DistributedPortGroup) TrafficFilterOverrideAllowed() *pulumi.BoolOutput
Allow any traffic filters on this port group to be overridden on an individual port.
func (*DistributedPortGroup) TxUplink ¶
func (r *DistributedPortGroup) TxUplink() *pulumi.BoolOutput
If true, a copy of packets sent to the switch will always be forwarded to an uplink in addition to the regular packet forwarded done by the switch.
func (*DistributedPortGroup) Type ¶
func (r *DistributedPortGroup) Type() *pulumi.StringOutput
The port group type. Can be one of `earlyBinding` (static binding) or `ephemeral`. Default: `earlyBinding`.
func (*DistributedPortGroup) URN ¶
func (r *DistributedPortGroup) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
func (*DistributedPortGroup) UplinkTeamingOverrideAllowed ¶
func (r *DistributedPortGroup) UplinkTeamingOverrideAllowed() *pulumi.BoolOutput
Allow the [uplink teaming options][uplink-teaming-settings] on this port group to be overridden on an individual port.
func (*DistributedPortGroup) VlanId ¶
func (r *DistributedPortGroup) VlanId() *pulumi.IntOutput
The VLAN ID for single VLAN mode. 0 denotes no VLAN.
func (*DistributedPortGroup) VlanOverrideAllowed ¶
func (r *DistributedPortGroup) VlanOverrideAllowed() *pulumi.BoolOutput
Allow the [VLAN settings][vlan-settings] on this port group to be overridden on an individual port.
func (*DistributedPortGroup) VlanRanges ¶
func (r *DistributedPortGroup) VlanRanges() *pulumi.ArrayOutput
The VLAN ID for single VLAN mode. 0 denotes no VLAN.
type DistributedPortGroupArgs ¶
type DistributedPortGroupArgs struct { // List of active uplinks used for load balancing, matching the names of the uplinks assigned in the DVS. ActiveUplinks interface{} // Controls whether or not the virtual network adapter is allowed to send network traffic with a different MAC address // than that of its own. AllowForgedTransmits interface{} // Controls whether or not the Media Access Control (MAC) address can be changed. AllowMacChanges interface{} // Enable promiscuous mode on the network. This flag indicates whether or not all traffic is seen on a given port. AllowPromiscuous interface{} // Allows the port group to create additional ports // past the limit specified in `number_of_ports` if necessary. Default: `true`. AutoExpand interface{} // Indicates whether to block all ports by default. BlockAllPorts interface{} // Allow the [port shutdown // policy][port-shutdown-policy] to be overridden on an individual port. BlockOverrideAllowed interface{} // Enable beacon probing on the ports this policy applies to. CheckBeacon interface{} // Map of custom attribute ids to attribute // value string to set for port group. See [here][docs-setting-custom-attributes] // for a reference on how to set values for custom attributes. CustomAttributes interface{} // An optional description for the port group. Description interface{} // Allow VMDirectPath Gen2 on the ports this policy applies to. DirectpathGen2Allowed interface{} // The ID of the DVS to add the // port group to. Forces a new resource if changed. DistributedVirtualSwitchUuid interface{} // The average egress bandwidth in bits per second if egress shaping is enabled on the port. EgressShapingAverageBandwidth interface{} // The maximum egress burst size allowed in bytes if egress shaping is enabled on the port. EgressShapingBurstSize interface{} // True if the traffic shaper is enabled for egress traffic on the port. EgressShapingEnabled interface{} // The peak egress bandwidth during bursts in bits per second if egress traffic shaping is enabled on the port. EgressShapingPeakBandwidth interface{} // If true, the teaming policy will re-activate failed interfaces higher in precedence when they come back up. Failback interface{} // The average ingress bandwidth in bits per second if ingress shaping is enabled on the port. IngressShapingAverageBandwidth interface{} // The maximum ingress burst size allowed in bytes if ingress shaping is enabled on the port. IngressShapingBurstSize interface{} // True if the traffic shaper is enabled for ingress traffic on the port. IngressShapingEnabled interface{} // The peak ingress bandwidth during bursts in bits per second if ingress traffic shaping is enabled on the port. IngressShapingPeakBandwidth interface{} // Whether or not to enable LACP on all uplink ports. LacpEnabled interface{} // The uplink LACP mode to use. Can be one of active or passive. LacpMode interface{} // Allow a port in this port group to be // moved to another port group while it is connected. LivePortMovingAllowed interface{} // The name of the port group. Name interface{} // Indicates whether to enable netflow on all ports. NetflowEnabled interface{} // Allow the [Netflow // policy][netflow-policy] on this port group to be overridden on an individual // port. NetflowOverrideAllowed interface{} // The key of a network resource pool // to associate with this port group. The default is `-1`, which implies no // association. NetworkResourcePoolKey interface{} // Allow the network // resource pool set on this port group to be overridden on an individual port. NetworkResourcePoolOverrideAllowed interface{} // If true, the teaming policy will notify the broadcast network of a NIC failover, triggering cache updates. NotifySwitches interface{} // The number of ports available on this port // group. Cannot be decreased below the amount of used ports on the port group. NumberOfPorts interface{} // Reset a port's settings to the // settings defined on this port group policy when the port disconnects. PortConfigResetAtDisconnect interface{} // An optional formatting policy for naming of // the ports in this port group. See the `portNameFormat` attribute listed // [here][ext-vsphere-portname-format] for details on the format syntax. PortNameFormat interface{} // The secondary VLAN ID for this port. PortPrivateSecondaryVlanId interface{} // Allow the [security policy // settings][sec-policy-settings] defined in this port group policy to be // overridden on an individual port. SecurityPolicyOverrideAllowed interface{} // Allow the [traffic shaping // options][traffic-shaping-settings] on this port group policy to be overridden // on an individual port. ShapingOverrideAllowed interface{} // List of active uplinks used for load balancing, matching the names of the uplinks assigned in the DVS. StandbyUplinks interface{} // A list of tag IDs to apply to this object. Tags interface{} // The network adapter teaming policy. Can be one of loadbalance_ip, loadbalance_srcmac, loadbalance_srcid, // failover_explicit, or loadbalance_loadbased. TeamingPolicy interface{} // Allow any traffic filters on // this port group to be overridden on an individual port. TrafficFilterOverrideAllowed interface{} // If true, a copy of packets sent to the switch will always be forwarded to an uplink in addition to the regular packet // forwarded done by the switch. TxUplink interface{} // The port group type. Can be one of `earlyBinding` (static // binding) or `ephemeral`. Default: `earlyBinding`. Type interface{} // Allow the [uplink teaming // options][uplink-teaming-settings] on this port group to be overridden on an // individual port. UplinkTeamingOverrideAllowed interface{} // The VLAN ID for single VLAN mode. 0 denotes no VLAN. VlanId interface{} // Allow the [VLAN settings][vlan-settings] // on this port group to be overridden on an individual port. VlanOverrideAllowed interface{} // The VLAN ID for single VLAN mode. 0 denotes no VLAN. VlanRanges interface{} }
The set of arguments for constructing a DistributedPortGroup resource.
type DistributedPortGroupState ¶
type DistributedPortGroupState struct { // List of active uplinks used for load balancing, matching the names of the uplinks assigned in the DVS. ActiveUplinks interface{} // Controls whether or not the virtual network adapter is allowed to send network traffic with a different MAC address // than that of its own. AllowForgedTransmits interface{} // Controls whether or not the Media Access Control (MAC) address can be changed. AllowMacChanges interface{} // Enable promiscuous mode on the network. This flag indicates whether or not all traffic is seen on a given port. AllowPromiscuous interface{} // Allows the port group to create additional ports // past the limit specified in `number_of_ports` if necessary. Default: `true`. AutoExpand interface{} // Indicates whether to block all ports by default. BlockAllPorts interface{} // Allow the [port shutdown // policy][port-shutdown-policy] to be overridden on an individual port. BlockOverrideAllowed interface{} // Enable beacon probing on the ports this policy applies to. CheckBeacon interface{} // Version string of the configuration that this spec is trying to change. ConfigVersion interface{} // Map of custom attribute ids to attribute // value string to set for port group. See [here][docs-setting-custom-attributes] // for a reference on how to set values for custom attributes. CustomAttributes interface{} // An optional description for the port group. Description interface{} // Allow VMDirectPath Gen2 on the ports this policy applies to. DirectpathGen2Allowed interface{} // The ID of the DVS to add the // port group to. Forces a new resource if changed. DistributedVirtualSwitchUuid interface{} // The average egress bandwidth in bits per second if egress shaping is enabled on the port. EgressShapingAverageBandwidth interface{} // The maximum egress burst size allowed in bytes if egress shaping is enabled on the port. EgressShapingBurstSize interface{} // True if the traffic shaper is enabled for egress traffic on the port. EgressShapingEnabled interface{} // The peak egress bandwidth during bursts in bits per second if egress traffic shaping is enabled on the port. EgressShapingPeakBandwidth interface{} // If true, the teaming policy will re-activate failed interfaces higher in precedence when they come back up. Failback interface{} // The average ingress bandwidth in bits per second if ingress shaping is enabled on the port. IngressShapingAverageBandwidth interface{} // The maximum ingress burst size allowed in bytes if ingress shaping is enabled on the port. IngressShapingBurstSize interface{} // True if the traffic shaper is enabled for ingress traffic on the port. IngressShapingEnabled interface{} // The peak ingress bandwidth during bursts in bits per second if ingress traffic shaping is enabled on the port. IngressShapingPeakBandwidth interface{} // The generated UUID of the portgroup. Key interface{} // Whether or not to enable LACP on all uplink ports. LacpEnabled interface{} // The uplink LACP mode to use. Can be one of active or passive. LacpMode interface{} // Allow a port in this port group to be // moved to another port group while it is connected. LivePortMovingAllowed interface{} // The name of the port group. Name interface{} // Indicates whether to enable netflow on all ports. NetflowEnabled interface{} // Allow the [Netflow // policy][netflow-policy] on this port group to be overridden on an individual // port. NetflowOverrideAllowed interface{} // The key of a network resource pool // to associate with this port group. The default is `-1`, which implies no // association. NetworkResourcePoolKey interface{} // Allow the network // resource pool set on this port group to be overridden on an individual port. NetworkResourcePoolOverrideAllowed interface{} // If true, the teaming policy will notify the broadcast network of a NIC failover, triggering cache updates. NotifySwitches interface{} // The number of ports available on this port // group. Cannot be decreased below the amount of used ports on the port group. NumberOfPorts interface{} // Reset a port's settings to the // settings defined on this port group policy when the port disconnects. PortConfigResetAtDisconnect interface{} // An optional formatting policy for naming of // the ports in this port group. See the `portNameFormat` attribute listed // [here][ext-vsphere-portname-format] for details on the format syntax. PortNameFormat interface{} // The secondary VLAN ID for this port. PortPrivateSecondaryVlanId interface{} // Allow the [security policy // settings][sec-policy-settings] defined in this port group policy to be // overridden on an individual port. SecurityPolicyOverrideAllowed interface{} // Allow the [traffic shaping // options][traffic-shaping-settings] on this port group policy to be overridden // on an individual port. ShapingOverrideAllowed interface{} // List of active uplinks used for load balancing, matching the names of the uplinks assigned in the DVS. StandbyUplinks interface{} // A list of tag IDs to apply to this object. Tags interface{} // The network adapter teaming policy. Can be one of loadbalance_ip, loadbalance_srcmac, loadbalance_srcid, // failover_explicit, or loadbalance_loadbased. TeamingPolicy interface{} // Allow any traffic filters on // this port group to be overridden on an individual port. TrafficFilterOverrideAllowed interface{} // If true, a copy of packets sent to the switch will always be forwarded to an uplink in addition to the regular packet // forwarded done by the switch. TxUplink interface{} // The port group type. Can be one of `earlyBinding` (static // binding) or `ephemeral`. Default: `earlyBinding`. Type interface{} // Allow the [uplink teaming // options][uplink-teaming-settings] on this port group to be overridden on an // individual port. UplinkTeamingOverrideAllowed interface{} // The VLAN ID for single VLAN mode. 0 denotes no VLAN. VlanId interface{} // Allow the [VLAN settings][vlan-settings] // on this port group to be overridden on an individual port. VlanOverrideAllowed interface{} // The VLAN ID for single VLAN mode. 0 denotes no VLAN. VlanRanges interface{} }
Input properties used for looking up and filtering DistributedPortGroup resources.
type DistributedVirtualSwitch ¶
type DistributedVirtualSwitch struct {
// contains filtered or unexported fields
}
The `vsphere_distributed_virtual_switch` resource can be used to manage VMware Distributed Virtual Switches.
An essential component of a distributed, scalable VMware datacenter, the vSphere Distributed Virtual Switch (DVS) provides centralized management and monitoring of the networking configuration of all the hosts that are associated with the switch. In addition to adding port groups (see the [`vsphere_distributed_port_group`][distributed-port-group] resource) that can be used as networks for virtual machines, a DVS can be configured to perform advanced high availability, traffic shaping, network monitoring, and more.
For an overview on vSphere networking concepts, see [this page][ref-vsphere-net-concepts]. For more information on vSphere DVS, see [this page][ref-vsphere-dvs].
[distributed-port-group]: /docs/providers/vsphere/r/distributed_port_group.html [ref-vsphere-net-concepts]: https://docs.vmware.com/en/VMware-vSphere/6.5/com.vmware.vsphere.networking.doc/GUID-2B11DBB8-CB3C-4AFF-8885-EFEA0FC562F4.html [ref-vsphere-dvs]: https://docs.vmware.com/en/VMware-vSphere/6.5/com.vmware.vsphere.networking.doc/GUID-375B45C7-684C-4C51-BA3C-70E48DFABF04.html
~> **NOTE:** This resource requires vCenter and is not available on direct ESXi connections.
func GetDistributedVirtualSwitch ¶
func GetDistributedVirtualSwitch(ctx *pulumi.Context, name string, id pulumi.ID, state *DistributedVirtualSwitchState, opts ...pulumi.ResourceOpt) (*DistributedVirtualSwitch, error)
GetDistributedVirtualSwitch gets an existing DistributedVirtualSwitch resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewDistributedVirtualSwitch ¶
func NewDistributedVirtualSwitch(ctx *pulumi.Context, name string, args *DistributedVirtualSwitchArgs, opts ...pulumi.ResourceOpt) (*DistributedVirtualSwitch, error)
NewDistributedVirtualSwitch registers a new resource with the given unique name, arguments, and options.
func (*DistributedVirtualSwitch) ActiveUplinks ¶
func (r *DistributedVirtualSwitch) ActiveUplinks() *pulumi.ArrayOutput
A list of active uplinks to be used in load balancing. These uplinks need to match the definitions in the `uplinks` DVS argument. See here for more details.
func (*DistributedVirtualSwitch) AllowForgedTransmits ¶
func (r *DistributedVirtualSwitch) AllowForgedTransmits() *pulumi.BoolOutput
Controls whether or not a virtual network adapter is allowed to send network traffic with a different MAC address than that of its own.
func (*DistributedVirtualSwitch) AllowMacChanges ¶
func (r *DistributedVirtualSwitch) AllowMacChanges() *pulumi.BoolOutput
Controls whether or not the Media Access Control (MAC) address can be changed.
func (*DistributedVirtualSwitch) AllowPromiscuous ¶
func (r *DistributedVirtualSwitch) AllowPromiscuous() *pulumi.BoolOutput
Enable promiscuous mode on the network. This flag indicates whether or not all traffic is seen on a given port.
func (*DistributedVirtualSwitch) BlockAllPorts ¶
func (r *DistributedVirtualSwitch) BlockAllPorts() *pulumi.BoolOutput
Shuts down all ports in the port groups that this policy applies to, effectively blocking all network access to connected virtual devices.
func (*DistributedVirtualSwitch) CheckBeacon ¶
func (r *DistributedVirtualSwitch) CheckBeacon() *pulumi.BoolOutput
Enables beacon probing as an additional measure to detect NIC failure.
func (*DistributedVirtualSwitch) ConfigVersion ¶
func (r *DistributedVirtualSwitch) ConfigVersion() *pulumi.StringOutput
The version string of the configuration that this spec is trying to change.
func (*DistributedVirtualSwitch) ContactDetail ¶
func (r *DistributedVirtualSwitch) ContactDetail() *pulumi.StringOutput
The detailed contact information for the person who is responsible for the DVS.
func (*DistributedVirtualSwitch) ContactName ¶
func (r *DistributedVirtualSwitch) ContactName() *pulumi.StringOutput
The name of the person who is responsible for the DVS.
func (*DistributedVirtualSwitch) CustomAttributes ¶
func (r *DistributedVirtualSwitch) CustomAttributes() *pulumi.MapOutput
Map of custom attribute ids to attribute value strings to set for virtual switch. See [here][docs-setting-custom-attributes] for a reference on how to set values for custom attributes.
func (*DistributedVirtualSwitch) DatacenterId ¶
func (r *DistributedVirtualSwitch) DatacenterId() *pulumi.StringOutput
The ID of the datacenter where the distributed virtual switch will be created. Forces a new resource if changed.
func (*DistributedVirtualSwitch) Description ¶
func (r *DistributedVirtualSwitch) Description() *pulumi.StringOutput
A detailed description for the DVS.
func (*DistributedVirtualSwitch) DirectpathGen2Allowed ¶
func (r *DistributedVirtualSwitch) DirectpathGen2Allowed() *pulumi.BoolOutput
Allow VMDirectPath Gen2 for the ports for which this policy applies to.
func (*DistributedVirtualSwitch) EgressShapingAverageBandwidth ¶
func (r *DistributedVirtualSwitch) EgressShapingAverageBandwidth() *pulumi.IntOutput
The average bandwidth in bits per second if egress traffic shaping is enabled on the port.
func (*DistributedVirtualSwitch) EgressShapingBurstSize ¶
func (r *DistributedVirtualSwitch) EgressShapingBurstSize() *pulumi.IntOutput
The maximum burst size allowed in bytes if egress traffic shaping is enabled on the port.
func (*DistributedVirtualSwitch) EgressShapingEnabled ¶
func (r *DistributedVirtualSwitch) EgressShapingEnabled() *pulumi.BoolOutput
`true` if the traffic shaper is enabled on the port for egress traffic.
func (*DistributedVirtualSwitch) EgressShapingPeakBandwidth ¶
func (r *DistributedVirtualSwitch) EgressShapingPeakBandwidth() *pulumi.IntOutput
The peak bandwidth during bursts in bits per second if egress traffic shaping is enabled on the port.
func (*DistributedVirtualSwitch) Failback ¶
func (r *DistributedVirtualSwitch) Failback() *pulumi.BoolOutput
If `true`, the teaming policy will re-activate failed uplinks higher in precedence when they come back up.
func (*DistributedVirtualSwitch) FaulttoleranceMaximumMbit ¶
func (r *DistributedVirtualSwitch) FaulttoleranceMaximumMbit() *pulumi.IntOutput
The maximum allowed usage for the faultTolerance traffic class, in Mbits/sec.
func (*DistributedVirtualSwitch) FaulttoleranceReservationMbit ¶
func (r *DistributedVirtualSwitch) FaulttoleranceReservationMbit() *pulumi.IntOutput
The amount of guaranteed bandwidth for the faultTolerance traffic class, in Mbits/sec.
func (*DistributedVirtualSwitch) FaulttoleranceShareCount ¶
func (r *DistributedVirtualSwitch) FaulttoleranceShareCount() *pulumi.IntOutput
The amount of shares to allocate to the faultTolerance traffic class for a custom share level.
func (*DistributedVirtualSwitch) FaulttoleranceShareLevel ¶
func (r *DistributedVirtualSwitch) FaulttoleranceShareLevel() *pulumi.StringOutput
The allocation level for the faultTolerance traffic class. Can be one of high, low, normal, or custom.
func (*DistributedVirtualSwitch) Folder ¶
func (r *DistributedVirtualSwitch) Folder() *pulumi.StringOutput
The folder to create the DVS in. Forces a new resource if changed.
func (*DistributedVirtualSwitch) HbrMaximumMbit ¶
func (r *DistributedVirtualSwitch) HbrMaximumMbit() *pulumi.IntOutput
The maximum allowed usage for the hbr traffic class, in Mbits/sec.
func (*DistributedVirtualSwitch) HbrReservationMbit ¶
func (r *DistributedVirtualSwitch) HbrReservationMbit() *pulumi.IntOutput
The amount of guaranteed bandwidth for the hbr traffic class, in Mbits/sec.
func (*DistributedVirtualSwitch) HbrShareCount ¶
func (r *DistributedVirtualSwitch) HbrShareCount() *pulumi.IntOutput
The amount of shares to allocate to the hbr traffic class for a custom share level.
func (*DistributedVirtualSwitch) HbrShareLevel ¶
func (r *DistributedVirtualSwitch) HbrShareLevel() *pulumi.StringOutput
The allocation level for the hbr traffic class. Can be one of high, low, normal, or custom.
func (*DistributedVirtualSwitch) Hosts ¶
func (r *DistributedVirtualSwitch) Hosts() *pulumi.ArrayOutput
Use the `host` block to declare a host specification. The options are:
func (*DistributedVirtualSwitch) ID ¶
func (r *DistributedVirtualSwitch) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*DistributedVirtualSwitch) IngressShapingAverageBandwidth ¶
func (r *DistributedVirtualSwitch) IngressShapingAverageBandwidth() *pulumi.IntOutput
The average bandwidth in bits per second if ingress traffic shaping is enabled on the port.
func (*DistributedVirtualSwitch) IngressShapingBurstSize ¶
func (r *DistributedVirtualSwitch) IngressShapingBurstSize() *pulumi.IntOutput
The maximum burst size allowed in bytes if ingress traffic shaping is enabled on the port.
func (*DistributedVirtualSwitch) IngressShapingEnabled ¶
func (r *DistributedVirtualSwitch) IngressShapingEnabled() *pulumi.BoolOutput
`true` if the traffic shaper is enabled on the port for ingress traffic.
func (*DistributedVirtualSwitch) IngressShapingPeakBandwidth ¶
func (r *DistributedVirtualSwitch) IngressShapingPeakBandwidth() *pulumi.IntOutput
The peak bandwidth during bursts in bits per second if ingress traffic shaping is enabled on the port.
func (*DistributedVirtualSwitch) Ipv4Address ¶
func (r *DistributedVirtualSwitch) Ipv4Address() *pulumi.StringOutput
An IPv4 address to identify the switch. This is mostly useful when used with the Netflow arguments found below.
func (*DistributedVirtualSwitch) IscsiMaximumMbit ¶
func (r *DistributedVirtualSwitch) IscsiMaximumMbit() *pulumi.IntOutput
The maximum allowed usage for the iSCSI traffic class, in Mbits/sec.
func (*DistributedVirtualSwitch) IscsiReservationMbit ¶
func (r *DistributedVirtualSwitch) IscsiReservationMbit() *pulumi.IntOutput
The amount of guaranteed bandwidth for the iSCSI traffic class, in Mbits/sec.
func (*DistributedVirtualSwitch) IscsiShareCount ¶
func (r *DistributedVirtualSwitch) IscsiShareCount() *pulumi.IntOutput
The amount of shares to allocate to the iSCSI traffic class for a custom share level.
func (*DistributedVirtualSwitch) IscsiShareLevel ¶
func (r *DistributedVirtualSwitch) IscsiShareLevel() *pulumi.StringOutput
The allocation level for the iSCSI traffic class. Can be one of high, low, normal, or custom.
func (*DistributedVirtualSwitch) LacpApiVersion ¶
func (r *DistributedVirtualSwitch) LacpApiVersion() *pulumi.StringOutput
The Link Aggregation Control Protocol group version to use with the switch. Possible values are `singleLag` and `multipleLag`.
func (*DistributedVirtualSwitch) LacpEnabled ¶
func (r *DistributedVirtualSwitch) LacpEnabled() *pulumi.BoolOutput
Enables LACP for the ports that this policy applies to.
func (*DistributedVirtualSwitch) LacpMode ¶
func (r *DistributedVirtualSwitch) LacpMode() *pulumi.StringOutput
The LACP mode. Can be one of `active` or `passive`.
func (*DistributedVirtualSwitch) LinkDiscoveryOperation ¶
func (r *DistributedVirtualSwitch) LinkDiscoveryOperation() *pulumi.StringOutput
Whether to `advertise` or `listen` for link discovery traffic.
func (*DistributedVirtualSwitch) LinkDiscoveryProtocol ¶
func (r *DistributedVirtualSwitch) LinkDiscoveryProtocol() *pulumi.StringOutput
The discovery protocol type. Valid types are `cdp` and `lldp`.
func (*DistributedVirtualSwitch) ManagementMaximumMbit ¶
func (r *DistributedVirtualSwitch) ManagementMaximumMbit() *pulumi.IntOutput
The maximum allowed usage for the management traffic class, in Mbits/sec.
func (*DistributedVirtualSwitch) ManagementReservationMbit ¶
func (r *DistributedVirtualSwitch) ManagementReservationMbit() *pulumi.IntOutput
The amount of guaranteed bandwidth for the management traffic class, in Mbits/sec.
func (*DistributedVirtualSwitch) ManagementShareCount ¶
func (r *DistributedVirtualSwitch) ManagementShareCount() *pulumi.IntOutput
The amount of shares to allocate to the management traffic class for a custom share level.
func (*DistributedVirtualSwitch) ManagementShareLevel ¶
func (r *DistributedVirtualSwitch) ManagementShareLevel() *pulumi.StringOutput
The allocation level for the management traffic class. Can be one of high, low, normal, or custom.
func (*DistributedVirtualSwitch) MaxMtu ¶
func (r *DistributedVirtualSwitch) MaxMtu() *pulumi.IntOutput
The maximum transmission unit (MTU) for the virtual switch.
func (*DistributedVirtualSwitch) MulticastFilteringMode ¶
func (r *DistributedVirtualSwitch) MulticastFilteringMode() *pulumi.StringOutput
The multicast filtering mode to use with the switch. Can be one of `legacyFiltering` or `snooping`.
func (*DistributedVirtualSwitch) Name ¶
func (r *DistributedVirtualSwitch) Name() *pulumi.StringOutput
The name of the distributed virtual switch.
func (*DistributedVirtualSwitch) NetflowActiveFlowTimeout ¶
func (r *DistributedVirtualSwitch) NetflowActiveFlowTimeout() *pulumi.IntOutput
The number of seconds after which active flows are forced to be exported to the collector. Allowed range is `60` to `3600`. Default: `60`.
func (*DistributedVirtualSwitch) NetflowCollectorIpAddress ¶
func (r *DistributedVirtualSwitch) NetflowCollectorIpAddress() *pulumi.StringOutput
IP address for the Netflow collector, using IPv4 or IPv6. IPv6 is supported in vSphere Distributed Switch Version 6.0 or later. Must be set before Netflow can be enabled.
func (*DistributedVirtualSwitch) NetflowCollectorPort ¶
func (r *DistributedVirtualSwitch) NetflowCollectorPort() *pulumi.IntOutput
Port for the Netflow collector. This must be set before Netflow can be enabled.
func (*DistributedVirtualSwitch) NetflowEnabled ¶
func (r *DistributedVirtualSwitch) NetflowEnabled() *pulumi.BoolOutput
Enables Netflow on all ports that this policy applies to.
func (*DistributedVirtualSwitch) NetflowIdleFlowTimeout ¶
func (r *DistributedVirtualSwitch) NetflowIdleFlowTimeout() *pulumi.IntOutput
The number of seconds after which idle flows are forced to be exported to the collector. Allowed range is `10` to `600`. Default: `15`.
func (*DistributedVirtualSwitch) NetflowInternalFlowsOnly ¶
func (r *DistributedVirtualSwitch) NetflowInternalFlowsOnly() *pulumi.BoolOutput
Whether to limit analysis to traffic that has both source and destination served by the same host. Default: `false`.
func (*DistributedVirtualSwitch) NetflowObservationDomainId ¶
func (r *DistributedVirtualSwitch) NetflowObservationDomainId() *pulumi.IntOutput
The observation domain ID for the Netflow collector.
func (*DistributedVirtualSwitch) NetflowSamplingRate ¶
func (r *DistributedVirtualSwitch) NetflowSamplingRate() *pulumi.IntOutput
The ratio of total number of packets to the number of packets analyzed. The default is `0`, which indicates that the switch should analyze all packets. The maximum value is `1000`, which indicates an analysis rate of 0.001%.
func (*DistributedVirtualSwitch) NetworkResourceControlEnabled ¶
func (r *DistributedVirtualSwitch) NetworkResourceControlEnabled() *pulumi.BoolOutput
Set to `true` to enable network I/O control. Default: `false`.
func (*DistributedVirtualSwitch) NetworkResourceControlVersion ¶
func (r *DistributedVirtualSwitch) NetworkResourceControlVersion() *pulumi.StringOutput
The version of network I/O control to use. Can be one of `version2` or `version3`. Default: `version2`.
func (*DistributedVirtualSwitch) NfsMaximumMbit ¶
func (r *DistributedVirtualSwitch) NfsMaximumMbit() *pulumi.IntOutput
The maximum allowed usage for the nfs traffic class, in Mbits/sec.
func (*DistributedVirtualSwitch) NfsReservationMbit ¶
func (r *DistributedVirtualSwitch) NfsReservationMbit() *pulumi.IntOutput
The amount of guaranteed bandwidth for the nfs traffic class, in Mbits/sec.
func (*DistributedVirtualSwitch) NfsShareCount ¶
func (r *DistributedVirtualSwitch) NfsShareCount() *pulumi.IntOutput
The amount of shares to allocate to the nfs traffic class for a custom share level.
func (*DistributedVirtualSwitch) NfsShareLevel ¶
func (r *DistributedVirtualSwitch) NfsShareLevel() *pulumi.StringOutput
The allocation level for the nfs traffic class. Can be one of high, low, normal, or custom.
func (*DistributedVirtualSwitch) NotifySwitches ¶
func (r *DistributedVirtualSwitch) NotifySwitches() *pulumi.BoolOutput
If `true`, the teaming policy will notify the broadcast network of an uplink failover, triggering cache updates.
func (*DistributedVirtualSwitch) PortPrivateSecondaryVlanId ¶
func (r *DistributedVirtualSwitch) PortPrivateSecondaryVlanId() *pulumi.IntOutput
Used to define a secondary VLAN ID when using private VLANs.
func (*DistributedVirtualSwitch) StandbyUplinks ¶
func (r *DistributedVirtualSwitch) StandbyUplinks() *pulumi.ArrayOutput
A list of standby uplinks to be used in failover. These uplinks need to match the definitions in the `uplinks` DVS argument. See here for more details.
func (*DistributedVirtualSwitch) Tags ¶
func (r *DistributedVirtualSwitch) Tags() *pulumi.ArrayOutput
The IDs of any tags to attach to this resource. See [here][docs-applying-tags] for a reference on how to apply tags.
func (*DistributedVirtualSwitch) TeamingPolicy ¶
func (r *DistributedVirtualSwitch) TeamingPolicy() *pulumi.StringOutput
The uplink teaming policy. Can be one of `loadbalance_ip`, `loadbalance_srcmac`, `loadbalance_srcid`, or `failover_explicit`.
func (*DistributedVirtualSwitch) TxUplink ¶
func (r *DistributedVirtualSwitch) TxUplink() *pulumi.BoolOutput
Forward all traffic transmitted by ports for which this policy applies to its DVS uplinks.
func (*DistributedVirtualSwitch) URN ¶
func (r *DistributedVirtualSwitch) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
func (*DistributedVirtualSwitch) Uplinks ¶
func (r *DistributedVirtualSwitch) Uplinks() *pulumi.ArrayOutput
A list of strings that uniquely identifies the names of the uplinks on the DVS across hosts. The number of items in this list controls the number of uplinks that exist on the DVS, in addition to the names. See here for an example on how to use this option.
func (*DistributedVirtualSwitch) VdpMaximumMbit ¶
func (r *DistributedVirtualSwitch) VdpMaximumMbit() *pulumi.IntOutput
The maximum allowed usage for the vdp traffic class, in Mbits/sec.
func (*DistributedVirtualSwitch) VdpReservationMbit ¶
func (r *DistributedVirtualSwitch) VdpReservationMbit() *pulumi.IntOutput
The amount of guaranteed bandwidth for the vdp traffic class, in Mbits/sec.
func (*DistributedVirtualSwitch) VdpShareCount ¶
func (r *DistributedVirtualSwitch) VdpShareCount() *pulumi.IntOutput
The amount of shares to allocate to the vdp traffic class for a custom share level.
func (*DistributedVirtualSwitch) VdpShareLevel ¶
func (r *DistributedVirtualSwitch) VdpShareLevel() *pulumi.StringOutput
The allocation level for the vdp traffic class. Can be one of high, low, normal, or custom.
func (*DistributedVirtualSwitch) Version ¶
func (r *DistributedVirtualSwitch) Version() *pulumi.StringOutput
- The version of the DVS to create. The default is to create the DVS at the latest version supported by the version of vSphere being used. A DVS can be upgraded to another version, but cannot be downgraded.
func (*DistributedVirtualSwitch) VirtualmachineMaximumMbit ¶
func (r *DistributedVirtualSwitch) VirtualmachineMaximumMbit() *pulumi.IntOutput
The maximum allowed usage for the virtualMachine traffic class, in Mbits/sec.
func (*DistributedVirtualSwitch) VirtualmachineReservationMbit ¶
func (r *DistributedVirtualSwitch) VirtualmachineReservationMbit() *pulumi.IntOutput
The amount of guaranteed bandwidth for the virtualMachine traffic class, in Mbits/sec.
func (*DistributedVirtualSwitch) VirtualmachineShareCount ¶
func (r *DistributedVirtualSwitch) VirtualmachineShareCount() *pulumi.IntOutput
The amount of shares to allocate to the virtualMachine traffic class for a custom share level.
func (*DistributedVirtualSwitch) VirtualmachineShareLevel ¶
func (r *DistributedVirtualSwitch) VirtualmachineShareLevel() *pulumi.StringOutput
The allocation level for the virtualMachine traffic class. Can be one of high, low, normal, or custom.
func (*DistributedVirtualSwitch) VlanId ¶
func (r *DistributedVirtualSwitch) VlanId() *pulumi.IntOutput
The VLAN ID for single VLAN mode. 0 denotes no VLAN.
func (*DistributedVirtualSwitch) VlanRanges ¶
func (r *DistributedVirtualSwitch) VlanRanges() *pulumi.ArrayOutput
Used to denote VLAN trunking. Use the `min_vlan` and `max_vlan` sub-arguments to define the tagged VLAN range. Multiple `vlan_range` definitions are allowed, but they must not overlap. Example below:
func (*DistributedVirtualSwitch) VmotionMaximumMbit ¶
func (r *DistributedVirtualSwitch) VmotionMaximumMbit() *pulumi.IntOutput
The maximum allowed usage for the vmotion traffic class, in Mbits/sec.
func (*DistributedVirtualSwitch) VmotionReservationMbit ¶
func (r *DistributedVirtualSwitch) VmotionReservationMbit() *pulumi.IntOutput
The amount of guaranteed bandwidth for the vmotion traffic class, in Mbits/sec.
func (*DistributedVirtualSwitch) VmotionShareCount ¶
func (r *DistributedVirtualSwitch) VmotionShareCount() *pulumi.IntOutput
The amount of shares to allocate to the vmotion traffic class for a custom share level.
func (*DistributedVirtualSwitch) VmotionShareLevel ¶
func (r *DistributedVirtualSwitch) VmotionShareLevel() *pulumi.StringOutput
The allocation level for the vmotion traffic class. Can be one of high, low, normal, or custom.
func (*DistributedVirtualSwitch) VsanMaximumMbit ¶
func (r *DistributedVirtualSwitch) VsanMaximumMbit() *pulumi.IntOutput
The maximum allowed usage for the vsan traffic class, in Mbits/sec.
func (*DistributedVirtualSwitch) VsanReservationMbit ¶
func (r *DistributedVirtualSwitch) VsanReservationMbit() *pulumi.IntOutput
The amount of guaranteed bandwidth for the vsan traffic class, in Mbits/sec.
func (*DistributedVirtualSwitch) VsanShareCount ¶
func (r *DistributedVirtualSwitch) VsanShareCount() *pulumi.IntOutput
The amount of shares to allocate to the vsan traffic class for a custom share level.
func (*DistributedVirtualSwitch) VsanShareLevel ¶
func (r *DistributedVirtualSwitch) VsanShareLevel() *pulumi.StringOutput
The allocation level for the vsan traffic class. Can be one of high, low, normal, or custom.
type DistributedVirtualSwitchArgs ¶
type DistributedVirtualSwitchArgs struct { // A list of active uplinks to be used in load // balancing. These uplinks need to match the definitions in the // `uplinks` DVS argument. See // here for more details. ActiveUplinks interface{} // Controls whether or not a virtual // network adapter is allowed to send network traffic with a different MAC // address than that of its own. AllowForgedTransmits interface{} // Controls whether or not the Media Access // Control (MAC) address can be changed. AllowMacChanges interface{} // Enable promiscuous mode on the network. This // flag indicates whether or not all traffic is seen on a given port. AllowPromiscuous interface{} // Shuts down all ports in the port groups that // this policy applies to, effectively blocking all network access to connected // virtual devices. BlockAllPorts interface{} // Enables beacon probing as an additional measure // to detect NIC failure. CheckBeacon interface{} // The detailed contact information for the person // who is responsible for the DVS. ContactDetail interface{} // The name of the person who is responsible for the // DVS. ContactName interface{} // Map of custom attribute ids to attribute // value strings to set for virtual switch. See // [here][docs-setting-custom-attributes] for a reference on how to set values // for custom attributes. CustomAttributes interface{} // The ID of the datacenter where the distributed // virtual switch will be created. Forces a new resource if changed. DatacenterId interface{} // A detailed description for the DVS. Description interface{} // Allow VMDirectPath Gen2 for the ports // for which this policy applies to. DirectpathGen2Allowed interface{} // The average bandwidth in bits // per second if egress traffic shaping is enabled on the port. EgressShapingAverageBandwidth interface{} // The maximum burst size allowed in // bytes if egress traffic shaping is enabled on the port. EgressShapingBurstSize interface{} // `true` if the traffic shaper is enabled // on the port for egress traffic. EgressShapingEnabled interface{} // The peak bandwidth during bursts // in bits per second if egress traffic shaping is enabled on the port. EgressShapingPeakBandwidth interface{} // If `true`, the teaming policy will re-activate failed // uplinks higher in precedence when they come back up. Failback interface{} // The maximum allowed usage for the faultTolerance traffic class, in Mbits/sec. FaulttoleranceMaximumMbit interface{} // The amount of guaranteed bandwidth for the faultTolerance traffic class, in Mbits/sec. FaulttoleranceReservationMbit interface{} FaulttoleranceShareCount interface{} FaulttoleranceShareLevel interface{} // The folder to create the DVS in. Forces a new resource // if changed. Folder interface{} // The maximum allowed usage for the hbr traffic class, in Mbits/sec. HbrMaximumMbit interface{} // The amount of guaranteed bandwidth for the hbr traffic class, in Mbits/sec. HbrReservationMbit interface{} HbrShareCount interface{} HbrShareLevel interface{} // Use the `host` block to declare a host specification. The // options are: Hosts interface{} // The average bandwidth in // bits per second if ingress traffic shaping is enabled on the port. IngressShapingAverageBandwidth interface{} // The maximum burst size allowed in // bytes if ingress traffic shaping is enabled on the port. IngressShapingBurstSize interface{} // `true` if the traffic shaper is // enabled on the port for ingress traffic. IngressShapingEnabled interface{} // The peak bandwidth during // bursts in bits per second if ingress traffic shaping is enabled on the port. IngressShapingPeakBandwidth interface{} // An IPv4 address to identify the switch. This is // mostly useful when used with the Netflow arguments found // below. Ipv4Address interface{} // The maximum allowed usage for the iSCSI traffic class, in Mbits/sec. IscsiMaximumMbit interface{} // The amount of guaranteed bandwidth for the iSCSI traffic class, in Mbits/sec. IscsiReservationMbit interface{} IscsiShareCount interface{} IscsiShareLevel interface{} // The Link Aggregation Control Protocol group // version to use with the switch. Possible values are `singleLag` and // `multipleLag`. LacpApiVersion interface{} // Enables LACP for the ports that this policy // applies to. LacpEnabled interface{} // The LACP mode. Can be one of `active` or `passive`. LacpMode interface{} // Whether to `advertise` or `listen` // for link discovery traffic. LinkDiscoveryOperation interface{} // The discovery protocol type. Valid // types are `cdp` and `lldp`. LinkDiscoveryProtocol interface{} // The maximum allowed usage for the management traffic class, in Mbits/sec. ManagementMaximumMbit interface{} // The amount of guaranteed bandwidth for the management traffic class, in Mbits/sec. ManagementReservationMbit interface{} ManagementShareCount interface{} ManagementShareLevel interface{} // The maximum transmission unit (MTU) for the virtual // switch. MaxMtu interface{} // The multicast filtering mode to use // with the switch. Can be one of `legacyFiltering` or `snooping`. MulticastFilteringMode interface{} // The name of the distributed virtual switch. Name interface{} // The number of seconds after which // active flows are forced to be exported to the collector. Allowed range is // `60` to `3600`. Default: `60`. NetflowActiveFlowTimeout interface{} // IP address for the Netflow // collector, using IPv4 or IPv6. IPv6 is supported in vSphere Distributed // Switch Version 6.0 or later. Must be set before Netflow can be enabled. NetflowCollectorIpAddress interface{} // Port for the Netflow collector. This // must be set before Netflow can be enabled. NetflowCollectorPort interface{} // Enables Netflow on all ports that this policy // applies to. NetflowEnabled interface{} // The number of seconds after which // idle flows are forced to be exported to the collector. Allowed range is `10` // to `600`. Default: `15`. NetflowIdleFlowTimeout interface{} // Whether to limit analysis to // traffic that has both source and destination served by the same host. // Default: `false`. NetflowInternalFlowsOnly interface{} // The observation domain ID for // the Netflow collector. NetflowObservationDomainId interface{} // The ratio of total number of packets to // the number of packets analyzed. The default is `0`, which indicates that the // switch should analyze all packets. The maximum value is `1000`, which // indicates an analysis rate of 0.001%. NetflowSamplingRate interface{} // Set to `true` to enable // network I/O control. Default: `false`. NetworkResourceControlEnabled interface{} // The version of network I/O // control to use. Can be one of `version2` or `version3`. Default: `version2`. NetworkResourceControlVersion interface{} // The maximum allowed usage for the nfs traffic class, in Mbits/sec. NfsMaximumMbit interface{} // The amount of guaranteed bandwidth for the nfs traffic class, in Mbits/sec. NfsReservationMbit interface{} NfsShareCount interface{} NfsShareLevel interface{} // If `true`, the teaming policy will notify the // broadcast network of an uplink failover, triggering cache updates. NotifySwitches interface{} // Used to define a secondary VLAN // ID when using private VLANs. PortPrivateSecondaryVlanId interface{} // A list of standby uplinks to be used in // failover. These uplinks need to match the definitions in the // `uplinks` DVS argument. See // here for more details. StandbyUplinks interface{} // The IDs of any tags to attach to this resource. See // [here][docs-applying-tags] for a reference on how to apply tags. Tags interface{} // The uplink teaming policy. Can be one of // `loadbalance_ip`, `loadbalance_srcmac`, `loadbalance_srcid`, or // `failover_explicit`. TeamingPolicy interface{} // Forward all traffic transmitted by ports for which // this policy applies to its DVS uplinks. TxUplink interface{} // A list of strings that uniquely identifies the names // of the uplinks on the DVS across hosts. The number of items in this list // controls the number of uplinks that exist on the DVS, in addition to the // names. See here for an example on how to // use this option. Uplinks interface{} // The maximum allowed usage for the vdp traffic class, in Mbits/sec. VdpMaximumMbit interface{} // The amount of guaranteed bandwidth for the vdp traffic class, in Mbits/sec. VdpReservationMbit interface{} VdpShareCount interface{} VdpShareLevel interface{} // - The version of the DVS to create. The default is to // create the DVS at the latest version supported by the version of vSphere // being used. A DVS can be upgraded to another version, but cannot be // downgraded. Version interface{} // The maximum allowed usage for the virtualMachine traffic class, in Mbits/sec. VirtualmachineMaximumMbit interface{} // The amount of guaranteed bandwidth for the virtualMachine traffic class, in Mbits/sec. VirtualmachineReservationMbit interface{} VirtualmachineShareCount interface{} VirtualmachineShareLevel interface{} // The VLAN ID for single VLAN mode. 0 denotes no VLAN. VlanId interface{} // Used to denote VLAN trunking. Use the `min_vlan` // and `max_vlan` sub-arguments to define the tagged VLAN range. Multiple // `vlan_range` definitions are allowed, but they must not overlap. Example // below: VlanRanges interface{} // The maximum allowed usage for the vmotion traffic class, in Mbits/sec. VmotionMaximumMbit interface{} // The amount of guaranteed bandwidth for the vmotion traffic class, in Mbits/sec. VmotionReservationMbit interface{} VmotionShareCount interface{} VmotionShareLevel interface{} // The maximum allowed usage for the vsan traffic class, in Mbits/sec. VsanMaximumMbit interface{} // The amount of guaranteed bandwidth for the vsan traffic class, in Mbits/sec. VsanReservationMbit interface{} VsanShareCount interface{} VsanShareLevel interface{} }
The set of arguments for constructing a DistributedVirtualSwitch resource.
type DistributedVirtualSwitchState ¶
type DistributedVirtualSwitchState struct { // A list of active uplinks to be used in load // balancing. These uplinks need to match the definitions in the // `uplinks` DVS argument. See // here for more details. ActiveUplinks interface{} // Controls whether or not a virtual // network adapter is allowed to send network traffic with a different MAC // address than that of its own. AllowForgedTransmits interface{} // Controls whether or not the Media Access // Control (MAC) address can be changed. AllowMacChanges interface{} // Enable promiscuous mode on the network. This // flag indicates whether or not all traffic is seen on a given port. AllowPromiscuous interface{} // Shuts down all ports in the port groups that // this policy applies to, effectively blocking all network access to connected // virtual devices. BlockAllPorts interface{} // Enables beacon probing as an additional measure // to detect NIC failure. CheckBeacon interface{} // The version string of the configuration that this spec is trying to change. ConfigVersion interface{} // The detailed contact information for the person // who is responsible for the DVS. ContactDetail interface{} // The name of the person who is responsible for the // DVS. ContactName interface{} // Map of custom attribute ids to attribute // value strings to set for virtual switch. See // [here][docs-setting-custom-attributes] for a reference on how to set values // for custom attributes. CustomAttributes interface{} // The ID of the datacenter where the distributed // virtual switch will be created. Forces a new resource if changed. DatacenterId interface{} // A detailed description for the DVS. Description interface{} // Allow VMDirectPath Gen2 for the ports // for which this policy applies to. DirectpathGen2Allowed interface{} // The average bandwidth in bits // per second if egress traffic shaping is enabled on the port. EgressShapingAverageBandwidth interface{} // The maximum burst size allowed in // bytes if egress traffic shaping is enabled on the port. EgressShapingBurstSize interface{} // `true` if the traffic shaper is enabled // on the port for egress traffic. EgressShapingEnabled interface{} // The peak bandwidth during bursts // in bits per second if egress traffic shaping is enabled on the port. EgressShapingPeakBandwidth interface{} // If `true`, the teaming policy will re-activate failed // uplinks higher in precedence when they come back up. Failback interface{} // The maximum allowed usage for the faultTolerance traffic class, in Mbits/sec. FaulttoleranceMaximumMbit interface{} // The amount of guaranteed bandwidth for the faultTolerance traffic class, in Mbits/sec. FaulttoleranceReservationMbit interface{} FaulttoleranceShareCount interface{} FaulttoleranceShareLevel interface{} // The folder to create the DVS in. Forces a new resource // if changed. Folder interface{} // The maximum allowed usage for the hbr traffic class, in Mbits/sec. HbrMaximumMbit interface{} // The amount of guaranteed bandwidth for the hbr traffic class, in Mbits/sec. HbrReservationMbit interface{} HbrShareCount interface{} HbrShareLevel interface{} // Use the `host` block to declare a host specification. The // options are: Hosts interface{} // The average bandwidth in // bits per second if ingress traffic shaping is enabled on the port. IngressShapingAverageBandwidth interface{} // The maximum burst size allowed in // bytes if ingress traffic shaping is enabled on the port. IngressShapingBurstSize interface{} // `true` if the traffic shaper is // enabled on the port for ingress traffic. IngressShapingEnabled interface{} // The peak bandwidth during // bursts in bits per second if ingress traffic shaping is enabled on the port. IngressShapingPeakBandwidth interface{} // An IPv4 address to identify the switch. This is // mostly useful when used with the Netflow arguments found // below. Ipv4Address interface{} // The maximum allowed usage for the iSCSI traffic class, in Mbits/sec. IscsiMaximumMbit interface{} // The amount of guaranteed bandwidth for the iSCSI traffic class, in Mbits/sec. IscsiReservationMbit interface{} IscsiShareCount interface{} IscsiShareLevel interface{} // The Link Aggregation Control Protocol group // version to use with the switch. Possible values are `singleLag` and // `multipleLag`. LacpApiVersion interface{} // Enables LACP for the ports that this policy // applies to. LacpEnabled interface{} // The LACP mode. Can be one of `active` or `passive`. LacpMode interface{} // Whether to `advertise` or `listen` // for link discovery traffic. LinkDiscoveryOperation interface{} // The discovery protocol type. Valid // types are `cdp` and `lldp`. LinkDiscoveryProtocol interface{} // The maximum allowed usage for the management traffic class, in Mbits/sec. ManagementMaximumMbit interface{} // The amount of guaranteed bandwidth for the management traffic class, in Mbits/sec. ManagementReservationMbit interface{} ManagementShareCount interface{} ManagementShareLevel interface{} // The maximum transmission unit (MTU) for the virtual // switch. MaxMtu interface{} // The multicast filtering mode to use // with the switch. Can be one of `legacyFiltering` or `snooping`. MulticastFilteringMode interface{} // The name of the distributed virtual switch. Name interface{} // The number of seconds after which // active flows are forced to be exported to the collector. Allowed range is // `60` to `3600`. Default: `60`. NetflowActiveFlowTimeout interface{} // IP address for the Netflow // collector, using IPv4 or IPv6. IPv6 is supported in vSphere Distributed // Switch Version 6.0 or later. Must be set before Netflow can be enabled. NetflowCollectorIpAddress interface{} // Port for the Netflow collector. This // must be set before Netflow can be enabled. NetflowCollectorPort interface{} // Enables Netflow on all ports that this policy // applies to. NetflowEnabled interface{} // The number of seconds after which // idle flows are forced to be exported to the collector. Allowed range is `10` // to `600`. Default: `15`. NetflowIdleFlowTimeout interface{} // Whether to limit analysis to // traffic that has both source and destination served by the same host. // Default: `false`. NetflowInternalFlowsOnly interface{} // The observation domain ID for // the Netflow collector. NetflowObservationDomainId interface{} // The ratio of total number of packets to // the number of packets analyzed. The default is `0`, which indicates that the // switch should analyze all packets. The maximum value is `1000`, which // indicates an analysis rate of 0.001%. NetflowSamplingRate interface{} // Set to `true` to enable // network I/O control. Default: `false`. NetworkResourceControlEnabled interface{} // The version of network I/O // control to use. Can be one of `version2` or `version3`. Default: `version2`. NetworkResourceControlVersion interface{} // The maximum allowed usage for the nfs traffic class, in Mbits/sec. NfsMaximumMbit interface{} // The amount of guaranteed bandwidth for the nfs traffic class, in Mbits/sec. NfsReservationMbit interface{} NfsShareCount interface{} NfsShareLevel interface{} // If `true`, the teaming policy will notify the // broadcast network of an uplink failover, triggering cache updates. NotifySwitches interface{} // Used to define a secondary VLAN // ID when using private VLANs. PortPrivateSecondaryVlanId interface{} // A list of standby uplinks to be used in // failover. These uplinks need to match the definitions in the // `uplinks` DVS argument. See // here for more details. StandbyUplinks interface{} // The IDs of any tags to attach to this resource. See // [here][docs-applying-tags] for a reference on how to apply tags. Tags interface{} // The uplink teaming policy. Can be one of // `loadbalance_ip`, `loadbalance_srcmac`, `loadbalance_srcid`, or // `failover_explicit`. TeamingPolicy interface{} // Forward all traffic transmitted by ports for which // this policy applies to its DVS uplinks. TxUplink interface{} // A list of strings that uniquely identifies the names // of the uplinks on the DVS across hosts. The number of items in this list // controls the number of uplinks that exist on the DVS, in addition to the // names. See here for an example on how to // use this option. Uplinks interface{} // The maximum allowed usage for the vdp traffic class, in Mbits/sec. VdpMaximumMbit interface{} // The amount of guaranteed bandwidth for the vdp traffic class, in Mbits/sec. VdpReservationMbit interface{} VdpShareCount interface{} VdpShareLevel interface{} // - The version of the DVS to create. The default is to // create the DVS at the latest version supported by the version of vSphere // being used. A DVS can be upgraded to another version, but cannot be // downgraded. Version interface{} // The maximum allowed usage for the virtualMachine traffic class, in Mbits/sec. VirtualmachineMaximumMbit interface{} // The amount of guaranteed bandwidth for the virtualMachine traffic class, in Mbits/sec. VirtualmachineReservationMbit interface{} VirtualmachineShareCount interface{} VirtualmachineShareLevel interface{} // The VLAN ID for single VLAN mode. 0 denotes no VLAN. VlanId interface{} // Used to denote VLAN trunking. Use the `min_vlan` // and `max_vlan` sub-arguments to define the tagged VLAN range. Multiple // `vlan_range` definitions are allowed, but they must not overlap. Example // below: VlanRanges interface{} // The maximum allowed usage for the vmotion traffic class, in Mbits/sec. VmotionMaximumMbit interface{} // The amount of guaranteed bandwidth for the vmotion traffic class, in Mbits/sec. VmotionReservationMbit interface{} VmotionShareCount interface{} VmotionShareLevel interface{} // The maximum allowed usage for the vsan traffic class, in Mbits/sec. VsanMaximumMbit interface{} // The amount of guaranteed bandwidth for the vsan traffic class, in Mbits/sec. VsanReservationMbit interface{} VsanShareCount interface{} VsanShareLevel interface{} }
Input properties used for looking up and filtering DistributedVirtualSwitch resources.
type DpmHostOverride ¶
type DpmHostOverride struct {
// contains filtered or unexported fields
}
The `vsphere_dpm_host_override` resource can be used to add a DPM override to a cluster for a particular host. This allows you to control the power management settings for individual hosts in the cluster while leaving any unspecified ones at the default power management settings.
For more information on DPM within vSphere clusters, see [this page]ref-vsphere-cluster-dpm.
~> **NOTE:** This resource requires vCenter and is not available on direct ESXi connections.
~> **NOTE:** vSphere DRS requires a vSphere Enterprise Plus license.
func GetDpmHostOverride ¶
func GetDpmHostOverride(ctx *pulumi.Context, name string, id pulumi.ID, state *DpmHostOverrideState, opts ...pulumi.ResourceOpt) (*DpmHostOverride, error)
GetDpmHostOverride gets an existing DpmHostOverride resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewDpmHostOverride ¶
func NewDpmHostOverride(ctx *pulumi.Context, name string, args *DpmHostOverrideArgs, opts ...pulumi.ResourceOpt) (*DpmHostOverride, error)
NewDpmHostOverride registers a new resource with the given unique name, arguments, and options.
func (*DpmHostOverride) ComputeClusterId ¶
func (r *DpmHostOverride) ComputeClusterId() *pulumi.StringOutput
The [managed object reference ID][docs-about-morefs] of the cluster to put the override in. Forces a new resource if changed.
func (*DpmHostOverride) DpmAutomationLevel ¶
func (r *DpmHostOverride) DpmAutomationLevel() *pulumi.StringOutput
The automation level for host power operations on this host. Can be one of `manual` or `automated`. Default: `manual`.
func (*DpmHostOverride) DpmEnabled ¶
func (r *DpmHostOverride) DpmEnabled() *pulumi.BoolOutput
Enable DPM support for this host. Default: `false`.
func (*DpmHostOverride) HostSystemId ¶
func (r *DpmHostOverride) HostSystemId() *pulumi.StringOutput
The managed object ID of the host.
func (*DpmHostOverride) ID ¶
func (r *DpmHostOverride) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*DpmHostOverride) URN ¶
func (r *DpmHostOverride) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
type DpmHostOverrideArgs ¶
type DpmHostOverrideArgs struct { // The [managed object reference // ID][docs-about-morefs] of the cluster to put the override in. Forces a new // resource if changed. ComputeClusterId interface{} // The automation level for host power // operations on this host. Can be one of `manual` or `automated`. Default: // `manual`. DpmAutomationLevel interface{} // Enable DPM support for this host. Default: // `false`. DpmEnabled interface{} // The managed object ID of the host. HostSystemId interface{} }
The set of arguments for constructing a DpmHostOverride resource.
type DpmHostOverrideState ¶
type DpmHostOverrideState struct { // The [managed object reference // ID][docs-about-morefs] of the cluster to put the override in. Forces a new // resource if changed. ComputeClusterId interface{} // The automation level for host power // operations on this host. Can be one of `manual` or `automated`. Default: // `manual`. DpmAutomationLevel interface{} // Enable DPM support for this host. Default: // `false`. DpmEnabled interface{} // The managed object ID of the host. HostSystemId interface{} }
Input properties used for looking up and filtering DpmHostOverride resources.
type DrsVmOverride ¶
type DrsVmOverride struct {
// contains filtered or unexported fields
}
The `vsphere_drs_vm_override` resource can be used to add a DRS override to a cluster for a specific virtual machine. With this resource, one can enable or disable DRS and control the automation level for a single virtual machine without affecting the rest of the cluster.
For more information on vSphere clusters and DRS, see [this page]ref-vsphere-drs-clusters.
~> **NOTE:** This resource requires vCenter and is not available on direct ESXi connections.
~> **NOTE:** vSphere DRS requires a vSphere Enterprise Plus license.
func GetDrsVmOverride ¶
func GetDrsVmOverride(ctx *pulumi.Context, name string, id pulumi.ID, state *DrsVmOverrideState, opts ...pulumi.ResourceOpt) (*DrsVmOverride, error)
GetDrsVmOverride gets an existing DrsVmOverride resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewDrsVmOverride ¶
func NewDrsVmOverride(ctx *pulumi.Context, name string, args *DrsVmOverrideArgs, opts ...pulumi.ResourceOpt) (*DrsVmOverride, error)
NewDrsVmOverride registers a new resource with the given unique name, arguments, and options.
func (*DrsVmOverride) ComputeClusterId ¶
func (r *DrsVmOverride) ComputeClusterId() *pulumi.StringOutput
The [managed object reference ID][docs-about-morefs] of the cluster to put the override in. Forces a new resource if changed.
func (*DrsVmOverride) DrsAutomationLevel ¶
func (r *DrsVmOverride) DrsAutomationLevel() *pulumi.StringOutput
Overrides the automation level for this virtual machine in the cluster. Can be one of `manual`, `partiallyAutomated`, or `fullyAutomated`. Default: `manual`.
func (*DrsVmOverride) DrsEnabled ¶
func (r *DrsVmOverride) DrsEnabled() *pulumi.BoolOutput
Overrides the default DRS setting for this virtual machine. Can be either `true` or `false`. Default: `false`.
func (*DrsVmOverride) ID ¶
func (r *DrsVmOverride) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*DrsVmOverride) URN ¶
func (r *DrsVmOverride) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
func (*DrsVmOverride) VirtualMachineId ¶
func (r *DrsVmOverride) VirtualMachineId() *pulumi.StringOutput
The UUID of the virtual machine to create the override for. Forces a new resource if changed.
type DrsVmOverrideArgs ¶
type DrsVmOverrideArgs struct { // The [managed object reference // ID][docs-about-morefs] of the cluster to put the override in. Forces a new // resource if changed. ComputeClusterId interface{} // Overrides the automation level for this virtual // machine in the cluster. Can be one of `manual`, `partiallyAutomated`, or // `fullyAutomated`. Default: `manual`. DrsAutomationLevel interface{} // Overrides the default DRS setting for this virtual // machine. Can be either `true` or `false`. Default: `false`. DrsEnabled interface{} // The UUID of the virtual machine to create // the override for. Forces a new resource if changed. VirtualMachineId interface{} }
The set of arguments for constructing a DrsVmOverride resource.
type DrsVmOverrideState ¶
type DrsVmOverrideState struct { // The [managed object reference // ID][docs-about-morefs] of the cluster to put the override in. Forces a new // resource if changed. ComputeClusterId interface{} // Overrides the automation level for this virtual // machine in the cluster. Can be one of `manual`, `partiallyAutomated`, or // `fullyAutomated`. Default: `manual`. DrsAutomationLevel interface{} // Overrides the default DRS setting for this virtual // machine. Can be either `true` or `false`. Default: `false`. DrsEnabled interface{} // The UUID of the virtual machine to create // the override for. Forces a new resource if changed. VirtualMachineId interface{} }
Input properties used for looking up and filtering DrsVmOverride resources.
type File ¶
type File struct {
// contains filtered or unexported fields
}
The `vsphere_file` resource can be used to upload files (such as virtual disk files) from the host machine that Terraform is running on to a target datastore. The resource can also be used to copy files between datastores, or from one location to another on the same datastore.
Updates to destination parameters such as `datacenter`, `datastore`, or `destination_file` will move the managed file a new destination based on the values of the new settings. If any source parameter is changed, such as `source_datastore`, `source_datacenter` or `source_file`), the resource will be re-created. Depending on if destination parameters are being changed as well, this may result in the destination file either being overwritten or deleted at the old location.
func GetFile ¶
func GetFile(ctx *pulumi.Context, name string, id pulumi.ID, state *FileState, opts ...pulumi.ResourceOpt) (*File, error)
GetFile gets an existing File resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewFile ¶
func NewFile(ctx *pulumi.Context, name string, args *FileArgs, opts ...pulumi.ResourceOpt) (*File, error)
NewFile registers a new resource with the given unique name, arguments, and options.
func (*File) CreateDirectories ¶
func (r *File) CreateDirectories() *pulumi.BoolOutput
Create directories in `destination_file` path parameter if any missing for copy operation.
func (*File) Datacenter ¶
func (r *File) Datacenter() *pulumi.StringOutput
The name of a datacenter in which the file will be uploaded to.
func (*File) Datastore ¶
func (r *File) Datastore() *pulumi.StringOutput
The name of the datastore in which to upload the file to.
func (*File) DestinationFile ¶
func (r *File) DestinationFile() *pulumi.StringOutput
The path to where the file should be uploaded or copied to on vSphere.
func (*File) SourceDatacenter ¶
func (r *File) SourceDatacenter() *pulumi.StringOutput
The name of a datacenter in which the file will be copied from. Forces a new resource if changed.
func (*File) SourceDatastore ¶
func (r *File) SourceDatastore() *pulumi.StringOutput
The name of the datastore in which file will be copied from. Forces a new resource if changed.
func (*File) SourceFile ¶
func (r *File) SourceFile() *pulumi.StringOutput
The path to the file being uploaded from the Terraform host to vSphere or copied within vSphere. Forces a new resource if changed.
type FileArgs ¶
type FileArgs struct { // Create directories in `destination_file` // path parameter if any missing for copy operation. CreateDirectories interface{} // The name of a datacenter in which the file will be // uploaded to. Datacenter interface{} // The name of the datastore in which to upload the // file to. Datastore interface{} // The path to where the file should be uploaded // or copied to on vSphere. DestinationFile interface{} // The name of a datacenter in which the file // will be copied from. Forces a new resource if changed. SourceDatacenter interface{} // The name of the datastore in which file will // be copied from. Forces a new resource if changed. SourceDatastore interface{} // The path to the file being uploaded from the // Terraform host to vSphere or copied within vSphere. Forces a new resource if // changed. SourceFile interface{} }
The set of arguments for constructing a File resource.
type FileState ¶
type FileState struct { // Create directories in `destination_file` // path parameter if any missing for copy operation. CreateDirectories interface{} // The name of a datacenter in which the file will be // uploaded to. Datacenter interface{} // The name of the datastore in which to upload the // file to. Datastore interface{} // The path to where the file should be uploaded // or copied to on vSphere. DestinationFile interface{} // The name of a datacenter in which the file // will be copied from. Forces a new resource if changed. SourceDatacenter interface{} // The name of the datastore in which file will // be copied from. Forces a new resource if changed. SourceDatastore interface{} // The path to the file being uploaded from the // Terraform host to vSphere or copied within vSphere. Forces a new resource if // changed. SourceFile interface{} }
Input properties used for looking up and filtering File resources.
type Folder ¶
type Folder struct {
// contains filtered or unexported fields
}
The `vsphere_folder` resource can be used to manage vSphere inventory folders. The resource supports creating folders of the 5 major types - datacenter folders, host and cluster folders, virtual machine folders, datastore folders, and network folders.
Paths are always relative to the specific type of folder you are creating. Subfolders are discovered by parsing the relative path specified in `path`, so `foo/bar` will create a folder named `bar` in the parent folder `foo`, as long as that folder exists.
func GetFolder ¶
func GetFolder(ctx *pulumi.Context, name string, id pulumi.ID, state *FolderState, opts ...pulumi.ResourceOpt) (*Folder, error)
GetFolder gets an existing Folder resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewFolder ¶
func NewFolder(ctx *pulumi.Context, name string, args *FolderArgs, opts ...pulumi.ResourceOpt) (*Folder, error)
NewFolder registers a new resource with the given unique name, arguments, and options.
func (*Folder) CustomAttributes ¶
Map of custom attribute ids to attribute value strings to set for folder. See [here][docs-setting-custom-attributes] for a reference on how to set values for custom attributes.
func (*Folder) DatacenterId ¶
func (r *Folder) DatacenterId() *pulumi.StringOutput
The ID of the datacenter the folder will be created in. Required for all folder types except for datacenter folders. Forces a new resource if changed.
func (*Folder) Path ¶
func (r *Folder) Path() *pulumi.StringOutput
The path of the folder to be created. This is relative to the root of the type of folder you are creating, and the supplied datacenter. For example, given a default datacenter of `default-dc`, a folder of type `vm` (denoting a virtual machine folder), and a supplied folder of `terraform-test-folder`, the resulting path would be `/default-dc/vm/terraform-test-folder`.
func (*Folder) Tags ¶
func (r *Folder) Tags() *pulumi.ArrayOutput
The IDs of any tags to attach to this resource. See [here][docs-applying-tags] for a reference on how to apply tags.
func (*Folder) Type ¶
func (r *Folder) Type() *pulumi.StringOutput
The type of folder to create. Allowed options are `datacenter` for datacenter folders, `host` for host and cluster folders, `vm` for virtual machine folders, `datastore` for datastore folders, and `network` for network folders. Forces a new resource if changed.
type FolderArgs ¶
type FolderArgs struct { // Map of custom attribute ids to attribute // value strings to set for folder. See [here][docs-setting-custom-attributes] // for a reference on how to set values for custom attributes. CustomAttributes interface{} // The ID of the datacenter the folder will be created in. // Required for all folder types except for datacenter folders. Forces a new // resource if changed. DatacenterId interface{} // The path of the folder to be created. This is relative to // the root of the type of folder you are creating, and the supplied datacenter. // For example, given a default datacenter of `default-dc`, a folder of type // `vm` (denoting a virtual machine folder), and a supplied folder of // `terraform-test-folder`, the resulting path would be // `/default-dc/vm/terraform-test-folder`. Path interface{} // The IDs of any tags to attach to this resource. See // [here][docs-applying-tags] for a reference on how to apply tags. Tags interface{} // The type of folder to create. Allowed options are // `datacenter` for datacenter folders, `host` for host and cluster folders, // `vm` for virtual machine folders, `datastore` for datastore folders, and // `network` for network folders. Forces a new resource if changed. Type interface{} }
The set of arguments for constructing a Folder resource.
type FolderState ¶
type FolderState struct { // Map of custom attribute ids to attribute // value strings to set for folder. See [here][docs-setting-custom-attributes] // for a reference on how to set values for custom attributes. CustomAttributes interface{} // The ID of the datacenter the folder will be created in. // Required for all folder types except for datacenter folders. Forces a new // resource if changed. DatacenterId interface{} // The path of the folder to be created. This is relative to // the root of the type of folder you are creating, and the supplied datacenter. // For example, given a default datacenter of `default-dc`, a folder of type // `vm` (denoting a virtual machine folder), and a supplied folder of // `terraform-test-folder`, the resulting path would be // `/default-dc/vm/terraform-test-folder`. Path interface{} // The IDs of any tags to attach to this resource. See // [here][docs-applying-tags] for a reference on how to apply tags. Tags interface{} // The type of folder to create. Allowed options are // `datacenter` for datacenter folders, `host` for host and cluster folders, // `vm` for virtual machine folders, `datastore` for datastore folders, and // `network` for network folders. Forces a new resource if changed. Type interface{} }
Input properties used for looking up and filtering Folder resources.
type GetComputeClusterArgs ¶
type GetComputeClusterArgs struct { // The [managed object reference // ID][docs-about-morefs] of the datacenter the cluster is located in. This can // be omitted if the search path used in `name` is an absolute path. For // default datacenters, use the id attribute from an empty `vsphere_datacenter` // data source. DatacenterId interface{} // The name or absolute path to the cluster. Name interface{} }
A collection of arguments for invoking getComputeCluster.
type GetComputeClusterResult ¶
type GetComputeClusterResult struct { ResourcePoolId interface{} // id is the provider-assigned unique ID for this managed resource. Id interface{} }
A collection of values returned by getComputeCluster.
func LookupComputeCluster ¶
func LookupComputeCluster(ctx *pulumi.Context, args *GetComputeClusterArgs) (*GetComputeClusterResult, error)
The `vsphere_compute_cluster` data source can be used to discover the ID of a cluster in vSphere. This is useful to fetch the ID of a cluster that you want to use for virtual machine placement via the [`vsphere_virtual_machine`][docs-virtual-machine-resource] resource, allowing you to specify the cluster's root resource pool directly versus using the alias available through the [`vsphere_resource_pool`][docs-resource-pool-data-source] data source.
[docs-virtual-machine-resource]: /docs/providers/vsphere/r/virtual_machine.html [docs-resource-pool-data-source]: /docs/providers/vsphere/d/resource_pool.html
-> You may also wish to see the [`vsphere_compute_cluster`][docs-compute-cluster-resource] resource for further details about clusters or how to work with them in Terraform.
[docs-compute-cluster-resource]: /docs/providers/vsphere/r/compute_cluster.html
type GetCustomAttributeArgs ¶
type GetCustomAttributeArgs struct {
// The name of the custom attribute.
Name interface{}
}
A collection of arguments for invoking getCustomAttribute.
type GetCustomAttributeResult ¶
type GetCustomAttributeResult struct { ManagedObjectType interface{} // id is the provider-assigned unique ID for this managed resource. Id interface{} }
A collection of values returned by getCustomAttribute.
func LookupCustomAttribute ¶
func LookupCustomAttribute(ctx *pulumi.Context, args *GetCustomAttributeArgs) (*GetCustomAttributeResult, error)
The `vsphere_custom_attribute` data source can be used to reference custom attributes that are not managed by Terraform. Its attributes are exactly the same as the [`vsphere_custom_attribute` resource][resource-custom-attribute], and, like importing, the data source takes a name to search on. The `id` and other attributes are then populated with the data found by the search.
[resource-custom-attribute]: /docs/providers/vsphere/r/custom_attribute.html
~> **NOTE:** Custom attributes are unsupported on direct ESXi connections and require vCenter.
type GetDatacenterArgs ¶
type GetDatacenterArgs struct { // The name of the datacenter. This can be a name or path. // Can be omitted if there is only one datacenter in your inventory. Name interface{} }
A collection of arguments for invoking getDatacenter.
type GetDatacenterResult ¶
type GetDatacenterResult struct {
// id is the provider-assigned unique ID for this managed resource.
Id interface{}
}
A collection of values returned by getDatacenter.
func LookupDatacenter ¶
func LookupDatacenter(ctx *pulumi.Context, args *GetDatacenterArgs) (*GetDatacenterResult, error)
The `vsphere_datacenter` data source can be used to discover the ID of a vSphere datacenter. This can then be used with resources or data sources that require a datacenter, such as the [`vsphere_host`][data-source-vsphere-host] data source.
[data-source-vsphere-host]: /docs/providers/vsphere/d/host.html
type GetDatastoreArgs ¶
type GetDatastoreArgs struct { // The [managed object reference // ID][docs-about-morefs] of the datacenter the datastore is located in. This // can be omitted if the search path used in `name` is an absolute path. For // default datacenters, use the id attribute from an empty `vsphere_datacenter` // data source. DatacenterId interface{} // The name of the datastore. This can be a name or path. Name interface{} }
A collection of arguments for invoking getDatastore.
type GetDatastoreClusterArgs ¶
type GetDatastoreClusterArgs struct { // The [managed object reference // ID][docs-about-morefs] of the datacenter the datastore cluster is located in. // This can be omitted if the search path used in `name` is an absolute path. // For default datacenters, use the id attribute from an empty // `vsphere_datacenter` data source. DatacenterId interface{} // The name or absolute path to the datastore cluster. Name interface{} }
A collection of arguments for invoking getDatastoreCluster.
type GetDatastoreClusterResult ¶
type GetDatastoreClusterResult struct {
// id is the provider-assigned unique ID for this managed resource.
Id interface{}
}
A collection of values returned by getDatastoreCluster.
func LookupDatastoreCluster ¶
func LookupDatastoreCluster(ctx *pulumi.Context, args *GetDatastoreClusterArgs) (*GetDatastoreClusterResult, error)
The `vsphere_datastore_cluster` data source can be used to discover the ID of a datastore cluster in vSphere. This is useful to fetch the ID of a datastore cluster that you want to use to assign datastores to using the [`vsphere_nas_datastore`][docs-nas-datastore-resource] or [`vsphere_vmfs_datastore`][docs-vmfs-datastore-resource] resources, or create virtual machines in using the [`vsphere_virtual_machine`][docs-virtual-machine-resource] resource.
[docs-nas-datastore-resource]: /docs/providers/vsphere/r/nas_datastore.html [docs-vmfs-datastore-resource]: /docs/providers/vsphere/r/vmfs_datastore.html [docs-virtual-machine-resource]: /docs/providers/vsphere/r/virtual_machine.html
type GetDatastoreResult ¶
type GetDatastoreResult struct {
// id is the provider-assigned unique ID for this managed resource.
Id interface{}
}
A collection of values returned by getDatastore.
func LookupDatastore ¶
func LookupDatastore(ctx *pulumi.Context, args *GetDatastoreArgs) (*GetDatastoreResult, error)
The `vsphere_datastore` data source can be used to discover the ID of a datastore in vSphere. This is useful to fetch the ID of a datastore that you want to use to create virtual machines in using the [`vsphere_virtual_machine`][docs-virtual-machine-resource] resource.
[docs-virtual-machine-resource]: /docs/providers/vsphere/r/virtual_machine.html
type GetDistributedVirtualSwitchArgs ¶
type GetDistributedVirtualSwitchArgs struct { // The [managed object reference // ID][docs-about-morefs] of the datacenter the DVS is located in. This can be // omitted if the search path used in `name` is an absolute path. For default // datacenters, use the id attribute from an empty `vsphere_datacenter` data // source. DatacenterId interface{} // The name of the distributed virtual switch. This can be a // name or path. Name interface{} }
A collection of arguments for invoking getDistributedVirtualSwitch.
type GetDistributedVirtualSwitchResult ¶
type GetDistributedVirtualSwitchResult struct { Uplinks interface{} // id is the provider-assigned unique ID for this managed resource. Id interface{} }
A collection of values returned by getDistributedVirtualSwitch.
func LookupDistributedVirtualSwitch ¶
func LookupDistributedVirtualSwitch(ctx *pulumi.Context, args *GetDistributedVirtualSwitchArgs) (*GetDistributedVirtualSwitchResult, error)
The `vsphere_distributed_virtual_switch` data source can be used to discover the ID and uplink data of a of a vSphere distributed virtual switch (DVS). This can then be used with resources or data sources that require a DVS, such as the [`vsphere_distributed_port_group`][distributed-port-group] resource, for which an example is shown below.
[distributed-port-group]: /docs/providers/vsphere/r/distributed_port_group.html
~> **NOTE:** This data source requires vCenter and is not available on direct ESXi connections.
type GetHostArgs ¶
type GetHostArgs struct { // The [managed object reference // ID][docs-about-morefs] of a datacenter. DatacenterId interface{} // The name of the host. This can be a name or path. Can be // omitted if there is only one host in your inventory. Name interface{} }
A collection of arguments for invoking getHost.
type GetHostResult ¶
type GetHostResult struct { // The [managed object ID][docs-about-morefs] of the host's // root resource pool. ResourcePoolId interface{} // id is the provider-assigned unique ID for this managed resource. Id interface{} }
A collection of values returned by getHost.
func LookupHost ¶
func LookupHost(ctx *pulumi.Context, args *GetHostArgs) (*GetHostResult, error)
The `vsphere_host` data source can be used to discover the ID of a vSphere host. This can then be used with resources or data sources that require a host managed object reference ID.
type GetNetworkArgs ¶
type GetNetworkArgs struct { // The [managed object reference // ID][docs-about-morefs] of the datacenter the network is located in. This can // be omitted if the search path used in `name` is an absolute path. For default // datacenters, use the id attribute from an empty `vsphere_datacenter` data // source. DatacenterId interface{} // The name of the network. This can be a name or path. Name interface{} }
A collection of arguments for invoking getNetwork.
type GetNetworkResult ¶
type GetNetworkResult struct { Type interface{} // id is the provider-assigned unique ID for this managed resource. Id interface{} }
A collection of values returned by getNetwork.
func LookupNetwork ¶
func LookupNetwork(ctx *pulumi.Context, args *GetNetworkArgs) (*GetNetworkResult, error)
The `vsphere_network` data source can be used to discover the ID of a network in vSphere. This can be any network that can be used as the backing for a network interface for `vsphere_virtual_machine` or any other vSphere resource that requires a network. This includes standard (host-based) port groups, DVS port groups, or opaque networks such as those managed by NSX.
type GetResourcePoolArgs ¶
type GetResourcePoolArgs struct { // The [managed object reference // ID][docs-about-morefs] of the datacenter the resource pool is located in. // This can be omitted if the search path used in `name` is an absolute path. // For default datacenters, use the id attribute from an empty // `vsphere_datacenter` data source. DatacenterId interface{} // The name of the resource pool. This can be a name or // path. This is required when using vCenter. Name interface{} }
A collection of arguments for invoking getResourcePool.
type GetResourcePoolResult ¶
type GetResourcePoolResult struct {
// id is the provider-assigned unique ID for this managed resource.
Id interface{}
}
A collection of values returned by getResourcePool.
func LookupResourcePool ¶
func LookupResourcePool(ctx *pulumi.Context, args *GetResourcePoolArgs) (*GetResourcePoolResult, error)
The `vsphere_resource_pool` data source can be used to discover the ID of a resource pool in vSphere. This is useful to fetch the ID of a resource pool that you want to use to create virtual machines in using the [`vsphere_virtual_machine`][docs-virtual-machine-resource] resource.
[docs-virtual-machine-resource]: /docs/providers/vsphere/r/virtual_machine.html
type GetTagArgs ¶
type GetTagArgs struct { // The ID of the tag category the tag is located in. CategoryId interface{} // The name of the tag. Name interface{} }
A collection of arguments for invoking getTag.
type GetTagCategoryArgs ¶
type GetTagCategoryArgs struct {
// The name of the tag category.
Name interface{}
}
A collection of arguments for invoking getTagCategory.
type GetTagCategoryResult ¶
type GetTagCategoryResult struct { AssociableTypes interface{} Cardinality interface{} Description interface{} // id is the provider-assigned unique ID for this managed resource. Id interface{} }
A collection of values returned by getTagCategory.
func LookupTagCategory ¶
func LookupTagCategory(ctx *pulumi.Context, args *GetTagCategoryArgs) (*GetTagCategoryResult, error)
The `vsphere_tag_category` data source can be used to reference tag categories that are not managed by Terraform. Its attributes are exactly the same as the [`vsphere_tag_category` resource][resource-tag-category], and, like importing, the data source takes a name to search on. The `id` and other attributes are then populated with the data found by the search.
[resource-tag-category]: /docs/providers/vsphere/r/tag_category.html
~> **NOTE:** Tagging support is unsupported on direct ESXi connections and requires vCenter 6.0 or higher.
type GetTagResult ¶
type GetTagResult struct { Description interface{} // id is the provider-assigned unique ID for this managed resource. Id interface{} }
A collection of values returned by getTag.
func LookupTag ¶
func LookupTag(ctx *pulumi.Context, args *GetTagArgs) (*GetTagResult, error)
The `vsphere_tag` data source can be used to reference tags that are not managed by Terraform. Its attributes are exactly the same as the [`vsphere_tag` resource][resource-tag], and, like importing, the data source takes a name and category to search on. The `id` and other attributes are then populated with the data found by the search.
[resource-tag]: /docs/providers/vsphere/r/tag.html
~> **NOTE:** Tagging support is unsupported on direct ESXi connections and requires vCenter 6.0 or higher.
type GetVirtualMachineArgs ¶
type GetVirtualMachineArgs struct { // The [managed object reference // ID][docs-about-morefs] of the datacenter the virtual machine is located in. // This can be omitted if the search path used in `name` is an absolute path. // For default datacenters, use the `id` attribute from an empty // `vsphere_datacenter` data source. DatacenterId interface{} // The name of the virtual machine. This can be a name or // path. Name interface{} // The number of SCSI controllers to // scan for disk attributes and controller types on. Default: `1`. ScsiControllerScanCount interface{} }
A collection of arguments for invoking getVirtualMachine.
type GetVirtualMachineResult ¶
type GetVirtualMachineResult struct { // The alternate guest name of the virtual machine when // guest_id is a non-specific operating system, like `otherGuest`. AlternateGuestName interface{} // Information about each of the disks on this virtual machine or // template. These are sorted by bus and unit number so that they can be applied // to a `vsphere_virtual_machine` resource in the order the resource expects // while cloning. This is useful for discovering certain disk settings while // performing a linked clone, as all settings that are output by this data // source must be the same on the destination virtual machine as the source. // Only the first number of controllers defined by `scsi_controller_scan_count` // are scanned for disks. The sub-attributes are: Disks interface{} // The firmware type for this virtual machine. Can be `bios` or `efi`. Firmware interface{} // The guest ID of the virtual machine or template. GuestId interface{} // The network interface types for each network // interface found on the virtual machine, in device bus order. Will be one of // `e1000`, `e1000e`, `pcnet32`, `sriov`, `vmxnet2`, or `vmxnet3`. NetworkInterfaceTypes interface{} // Mode for sharing the SCSI bus. The modes are // physicalSharing, virtualSharing, and noSharing. Only the first number of // controllers defined by `scsi_controller_scan_count` are scanned. ScsiBusSharing interface{} // The common type of all SCSI controllers on this virtual machine. // Will be one of `lsilogic` (LSI Logic Parallel), `lsilogic-sas` (LSI Logic // SAS), `pvscsi` (VMware Paravirtual), `buslogic` (BusLogic), or `mixed` when // there are multiple controller types. Only the first number of controllers // defined by `scsi_controller_scan_count` are scanned. ScsiType interface{} // id is the provider-assigned unique ID for this managed resource. Id interface{} }
A collection of values returned by getVirtualMachine.
func LookupVirtualMachine ¶
func LookupVirtualMachine(ctx *pulumi.Context, args *GetVirtualMachineArgs) (*GetVirtualMachineResult, error)
The `vsphere_virtual_machine` data source can be used to find the UUID of an existing virtual machine or template. Its most relevant purpose is for finding the UUID of a template to be used as the source for cloning into a new [`vsphere_virtual_machine`][docs-virtual-machine-resource] resource. It also reads the guest ID so that can be supplied as well.
[docs-virtual-machine-resource]: /docs/providers/vsphere/r/virtual_machine.html
type GetVmfsDisksArgs ¶
type GetVmfsDisksArgs struct { // A regular expression to filter the disks against. Only // disks with canonical names that match will be included. Filter interface{} // The [managed object ID][docs-about-morefs] of // the host to look for disks on. HostSystemId interface{} // Whether or not to rescan storage adapters before // searching for disks. This may lengthen the time it takes to perform the // search. Default: `false`. Rescan interface{} }
A collection of arguments for invoking getVmfsDisks.
type GetVmfsDisksResult ¶
type GetVmfsDisksResult struct { // A lexicographically sorted list of devices discovered by the // operation, matching the supplied `filter`, if provided. Disks interface{} // id is the provider-assigned unique ID for this managed resource. Id interface{} }
A collection of values returned by getVmfsDisks.
func LookupVmfsDisks ¶
func LookupVmfsDisks(ctx *pulumi.Context, args *GetVmfsDisksArgs) (*GetVmfsDisksResult, error)
The `vsphere_vmfs_disks` data source can be used to discover the storage devices available on an ESXi host. This data source can be combined with the [`vsphere_vmfs_datastore`][data-source-vmfs-datastore] resource to create VMFS datastores based off a set of discovered disks.
[data-source-vmfs-datastore]: /docs/providers/vsphere/r/vmfs_datastore.html
type HaVmOverride ¶
type HaVmOverride struct {
// contains filtered or unexported fields
}
The `vsphere_ha_vm_override` resource can be used to add an override for vSphere HA settings on a cluster for a specific virtual machine. With this resource, one can control specific HA settings so that they are different than the cluster default, accommodating the needs of that specific virtual machine, while not affecting the rest of the cluster.
For more information on vSphere HA, see [this page]ref-vsphere-ha-clusters.
~> **NOTE:** This resource requires vCenter and is not available on direct ESXi connections.
func GetHaVmOverride ¶
func GetHaVmOverride(ctx *pulumi.Context, name string, id pulumi.ID, state *HaVmOverrideState, opts ...pulumi.ResourceOpt) (*HaVmOverride, error)
GetHaVmOverride gets an existing HaVmOverride resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewHaVmOverride ¶
func NewHaVmOverride(ctx *pulumi.Context, name string, args *HaVmOverrideArgs, opts ...pulumi.ResourceOpt) (*HaVmOverride, error)
NewHaVmOverride registers a new resource with the given unique name, arguments, and options.
func (*HaVmOverride) ComputeClusterId ¶
func (r *HaVmOverride) ComputeClusterId() *pulumi.StringOutput
The [managed object reference ID][docs-about-morefs] of the cluster to put the override in. Forces a new resource if changed.
func (*HaVmOverride) HaDatastoreApdRecoveryAction ¶
func (r *HaVmOverride) HaDatastoreApdRecoveryAction() *pulumi.StringOutput
Controls the action to take on this virtual machine if an APD status on an affected datastore clears in the middle of an APD event. Can be one of `useClusterDefault`, `none` or `reset`. Default: `useClusterDefault`. <sup>[\*][tf-vsphere-cluster-resource-version-restrictions]</sup>
func (*HaVmOverride) HaDatastoreApdResponse ¶
func (r *HaVmOverride) HaDatastoreApdResponse() *pulumi.StringOutput
Controls the action to take on this virtual machine when the cluster has detected loss to all paths to a relevant datastore. Can be one of `clusterDefault`, `disabled`, `warning`, `restartConservative`, or `restartAggressive`. Default: `clusterDefault`. <sup>[\*][tf-vsphere-cluster-resource-version-restrictions]</sup>
func (*HaVmOverride) HaDatastoreApdResponseDelay ¶
func (r *HaVmOverride) HaDatastoreApdResponseDelay() *pulumi.IntOutput
Controls the delay in minutes to wait after an APD timeout event to execute the response action defined in `ha_datastore_apd_response`. Use `-1` to use the cluster default. Default: `-1`. <sup>[\*][tf-vsphere-cluster-resource-version-restrictions]</sup>
func (*HaVmOverride) HaDatastorePdlResponse ¶
func (r *HaVmOverride) HaDatastorePdlResponse() *pulumi.StringOutput
Controls the action to take on this virtual machine when the cluster has detected a permanent device loss to a relevant datastore. Can be one of `clusterDefault`, `disabled`, `warning`, or `restartAggressive`. Default: `clusterDefault`. <sup>[\*][tf-vsphere-cluster-resource-version-restrictions]</sup>
func (*HaVmOverride) HaHostIsolationResponse ¶
func (r *HaVmOverride) HaHostIsolationResponse() *pulumi.StringOutput
The action to take on this virtual machine when a host has detected that it has been isolated from the rest of the cluster. Can be one of `clusterIsolationResponse`, `none`, `powerOff`, or `shutdown`. Default: `clusterIsolationResponse`.
func (*HaVmOverride) HaVmFailureInterval ¶
func (r *HaVmOverride) HaVmFailureInterval() *pulumi.IntOutput
If a heartbeat from this virtual machine is not received within this configured interval, the virtual machine is marked as failed. The value is in seconds. Default: `30`.
func (*HaVmOverride) HaVmMaximumFailureWindow ¶
func (r *HaVmOverride) HaVmMaximumFailureWindow() *pulumi.IntOutput
The length of the reset window in which `ha_vm_maximum_resets` can operate. When this window expires, no more resets are attempted regardless of the setting configured in `ha_vm_maximum_resets`. `-1` means no window, meaning an unlimited reset time is allotted. The value is specified in seconds. Default: `-1` (no window).
func (*HaVmOverride) HaVmMaximumResets ¶
func (r *HaVmOverride) HaVmMaximumResets() *pulumi.IntOutput
The maximum number of resets that HA will perform to this virtual machine when responding to a failure event. Default: `3`
func (*HaVmOverride) HaVmMinimumUptime ¶
func (r *HaVmOverride) HaVmMinimumUptime() *pulumi.IntOutput
The time, in seconds, that HA waits after powering on this virtual machine before monitoring for heartbeats. Default: `120` (2 minutes).
func (*HaVmOverride) HaVmMonitoring ¶
func (r *HaVmOverride) HaVmMonitoring() *pulumi.StringOutput
The type of virtual machine monitoring to use when HA is enabled in the cluster. Can be one of `vmMonitoringDisabled`, `vmMonitoringOnly`, or `vmAndAppMonitoring`. Default: `vmMonitoringDisabled`.
func (*HaVmOverride) HaVmMonitoringUseClusterDefaults ¶
func (r *HaVmOverride) HaVmMonitoringUseClusterDefaults() *pulumi.BoolOutput
Determines whether or not the cluster's default settings or the VM override settings specified in this resource are used for virtual machine monitoring. The default is `true` (use cluster defaults) - set to `false` to have overrides take effect.
func (*HaVmOverride) HaVmRestartPriority ¶
func (r *HaVmOverride) HaVmRestartPriority() *pulumi.StringOutput
The restart priority for the virtual machine when vSphere detects a host failure. Can be one of `clusterRestartPriority`, `lowest`, `low`, `medium`, `high`, or `highest`. Default: `clusterRestartPriority`.
func (*HaVmOverride) HaVmRestartTimeout ¶
func (r *HaVmOverride) HaVmRestartTimeout() *pulumi.IntOutput
The maximum time, in seconds, that vSphere HA will wait for this virtual machine to be ready. Use `-1` to specify the cluster default. Default: `-1`. <sup>[\*][tf-vsphere-cluster-resource-version-restrictions]</sup>
func (*HaVmOverride) ID ¶
func (r *HaVmOverride) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*HaVmOverride) URN ¶
func (r *HaVmOverride) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
func (*HaVmOverride) VirtualMachineId ¶
func (r *HaVmOverride) VirtualMachineId() *pulumi.StringOutput
The UUID of the virtual machine to create the override for. Forces a new resource if changed.
type HaVmOverrideArgs ¶
type HaVmOverrideArgs struct { // The [managed object reference // ID][docs-about-morefs] of the cluster to put the override in. Forces a new // resource if changed. ComputeClusterId interface{} // Controls the action to take // on this virtual machine if an APD status on an affected datastore clears in // the middle of an APD event. Can be one of `useClusterDefault`, `none` or // `reset`. Default: `useClusterDefault`. // <sup>[\*][tf-vsphere-cluster-resource-version-restrictions]</sup> HaDatastoreApdRecoveryAction interface{} // Controls the action to take on this // virtual machine when the cluster has detected loss to all paths to a relevant // datastore. Can be one of `clusterDefault`, `disabled`, `warning`, // `restartConservative`, or `restartAggressive`. Default: `clusterDefault`. // <sup>[\*][tf-vsphere-cluster-resource-version-restrictions]</sup> HaDatastoreApdResponse interface{} // Controls the delay in minutes // to wait after an APD timeout event to execute the response action defined in // `ha_datastore_apd_response`. Use `-1` to use // the cluster default. Default: `-1`. // <sup>[\*][tf-vsphere-cluster-resource-version-restrictions]</sup> HaDatastoreApdResponseDelay interface{} // Controls the action to take on this // virtual machine when the cluster has detected a permanent device loss to a // relevant datastore. Can be one of `clusterDefault`, `disabled`, `warning`, or // `restartAggressive`. Default: `clusterDefault`. // <sup>[\*][tf-vsphere-cluster-resource-version-restrictions]</sup> HaDatastorePdlResponse interface{} // The action to take on this virtual // machine when a host has detected that it has been isolated from the rest of // the cluster. Can be one of `clusterIsolationResponse`, `none`, `powerOff`, or // `shutdown`. Default: `clusterIsolationResponse`. HaHostIsolationResponse interface{} // If a heartbeat from this virtual // machine is not received within this configured interval, the virtual machine // is marked as failed. The value is in seconds. Default: `30`. HaVmFailureInterval interface{} // The length of the reset window in // which `ha_vm_maximum_resets` can operate. When this // window expires, no more resets are attempted regardless of the setting // configured in `ha_vm_maximum_resets`. `-1` means no window, meaning an // unlimited reset time is allotted. The value is specified in seconds. Default: // `-1` (no window). HaVmMaximumFailureWindow interface{} // The maximum number of resets that HA will // perform to this virtual machine when responding to a failure event. Default: // `3` HaVmMaximumResets interface{} // The time, in seconds, that HA waits after // powering on this virtual machine before monitoring for heartbeats. Default: // `120` (2 minutes). HaVmMinimumUptime interface{} // The type of virtual machine monitoring to use // when HA is enabled in the cluster. Can be one of `vmMonitoringDisabled`, // `vmMonitoringOnly`, or `vmAndAppMonitoring`. Default: `vmMonitoringDisabled`. HaVmMonitoring interface{} // Determines whether or // not the cluster's default settings or the VM override settings specified in // this resource are used for virtual machine monitoring. The default is `true` // (use cluster defaults) - set to `false` to have overrides take effect. HaVmMonitoringUseClusterDefaults interface{} // The restart priority for the virtual // machine when vSphere detects a host failure. Can be one of // `clusterRestartPriority`, `lowest`, `low`, `medium`, `high`, or `highest`. // Default: `clusterRestartPriority`. HaVmRestartPriority interface{} // The maximum time, in seconds, that // vSphere HA will wait for this virtual machine to be ready. Use `-1` to // specify the cluster default. Default: `-1`. // <sup>[\*][tf-vsphere-cluster-resource-version-restrictions]</sup> HaVmRestartTimeout interface{} // The UUID of the virtual machine to create // the override for. Forces a new resource if changed. VirtualMachineId interface{} }
The set of arguments for constructing a HaVmOverride resource.
type HaVmOverrideState ¶
type HaVmOverrideState struct { // The [managed object reference // ID][docs-about-morefs] of the cluster to put the override in. Forces a new // resource if changed. ComputeClusterId interface{} // Controls the action to take // on this virtual machine if an APD status on an affected datastore clears in // the middle of an APD event. Can be one of `useClusterDefault`, `none` or // `reset`. Default: `useClusterDefault`. // <sup>[\*][tf-vsphere-cluster-resource-version-restrictions]</sup> HaDatastoreApdRecoveryAction interface{} // Controls the action to take on this // virtual machine when the cluster has detected loss to all paths to a relevant // datastore. Can be one of `clusterDefault`, `disabled`, `warning`, // `restartConservative`, or `restartAggressive`. Default: `clusterDefault`. // <sup>[\*][tf-vsphere-cluster-resource-version-restrictions]</sup> HaDatastoreApdResponse interface{} // Controls the delay in minutes // to wait after an APD timeout event to execute the response action defined in // `ha_datastore_apd_response`. Use `-1` to use // the cluster default. Default: `-1`. // <sup>[\*][tf-vsphere-cluster-resource-version-restrictions]</sup> HaDatastoreApdResponseDelay interface{} // Controls the action to take on this // virtual machine when the cluster has detected a permanent device loss to a // relevant datastore. Can be one of `clusterDefault`, `disabled`, `warning`, or // `restartAggressive`. Default: `clusterDefault`. // <sup>[\*][tf-vsphere-cluster-resource-version-restrictions]</sup> HaDatastorePdlResponse interface{} // The action to take on this virtual // machine when a host has detected that it has been isolated from the rest of // the cluster. Can be one of `clusterIsolationResponse`, `none`, `powerOff`, or // `shutdown`. Default: `clusterIsolationResponse`. HaHostIsolationResponse interface{} // If a heartbeat from this virtual // machine is not received within this configured interval, the virtual machine // is marked as failed. The value is in seconds. Default: `30`. HaVmFailureInterval interface{} // The length of the reset window in // which `ha_vm_maximum_resets` can operate. When this // window expires, no more resets are attempted regardless of the setting // configured in `ha_vm_maximum_resets`. `-1` means no window, meaning an // unlimited reset time is allotted. The value is specified in seconds. Default: // `-1` (no window). HaVmMaximumFailureWindow interface{} // The maximum number of resets that HA will // perform to this virtual machine when responding to a failure event. Default: // `3` HaVmMaximumResets interface{} // The time, in seconds, that HA waits after // powering on this virtual machine before monitoring for heartbeats. Default: // `120` (2 minutes). HaVmMinimumUptime interface{} // The type of virtual machine monitoring to use // when HA is enabled in the cluster. Can be one of `vmMonitoringDisabled`, // `vmMonitoringOnly`, or `vmAndAppMonitoring`. Default: `vmMonitoringDisabled`. HaVmMonitoring interface{} // Determines whether or // not the cluster's default settings or the VM override settings specified in // this resource are used for virtual machine monitoring. The default is `true` // (use cluster defaults) - set to `false` to have overrides take effect. HaVmMonitoringUseClusterDefaults interface{} // The restart priority for the virtual // machine when vSphere detects a host failure. Can be one of // `clusterRestartPriority`, `lowest`, `low`, `medium`, `high`, or `highest`. // Default: `clusterRestartPriority`. HaVmRestartPriority interface{} // The maximum time, in seconds, that // vSphere HA will wait for this virtual machine to be ready. Use `-1` to // specify the cluster default. Default: `-1`. // <sup>[\*][tf-vsphere-cluster-resource-version-restrictions]</sup> HaVmRestartTimeout interface{} // The UUID of the virtual machine to create // the override for. Forces a new resource if changed. VirtualMachineId interface{} }
Input properties used for looking up and filtering HaVmOverride resources.
type HostPortGroup ¶
type HostPortGroup struct {
// contains filtered or unexported fields
}
The `vsphere_host_port_group` resource can be used to manage vSphere standard port groups on an ESXi host. These port groups are connected to standard virtual switches, which can be managed by the [`vsphere_host_virtual_switch`][host-virtual-switch] resource.
For an overview on vSphere networking concepts, see [this page][ref-vsphere-net-concepts].
[host-virtual-switch]: /docs/providers/vsphere/r/host_virtual_switch.html [ref-vsphere-net-concepts]: https://docs.vmware.com/en/VMware-vSphere/6.5/com.vmware.vsphere.networking.doc/GUID-2B11DBB8-CB3C-4AFF-8885-EFEA0FC562F4.html
func GetHostPortGroup ¶
func GetHostPortGroup(ctx *pulumi.Context, name string, id pulumi.ID, state *HostPortGroupState, opts ...pulumi.ResourceOpt) (*HostPortGroup, error)
GetHostPortGroup gets an existing HostPortGroup resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewHostPortGroup ¶
func NewHostPortGroup(ctx *pulumi.Context, name string, args *HostPortGroupArgs, opts ...pulumi.ResourceOpt) (*HostPortGroup, error)
NewHostPortGroup registers a new resource with the given unique name, arguments, and options.
func (*HostPortGroup) ActiveNics ¶
func (r *HostPortGroup) ActiveNics() *pulumi.ArrayOutput
List of active network adapters used for load balancing.
func (*HostPortGroup) AllowForgedTransmits ¶
func (r *HostPortGroup) AllowForgedTransmits() *pulumi.BoolOutput
Controls whether or not the virtual network adapter is allowed to send network traffic with a different MAC address than that of its own.
func (*HostPortGroup) AllowMacChanges ¶
func (r *HostPortGroup) AllowMacChanges() *pulumi.BoolOutput
Controls whether or not the Media Access Control (MAC) address can be changed.
func (*HostPortGroup) AllowPromiscuous ¶
func (r *HostPortGroup) AllowPromiscuous() *pulumi.BoolOutput
Enable promiscuous mode on the network. This flag indicates whether or not all traffic is seen on a given port.
func (*HostPortGroup) CheckBeacon ¶
func (r *HostPortGroup) CheckBeacon() *pulumi.BoolOutput
Enable beacon probing. Requires that the vSwitch has been configured to use a beacon. If disabled, link status is used only.
func (*HostPortGroup) ComputedPolicy ¶
func (r *HostPortGroup) ComputedPolicy() *pulumi.MapOutput
A map with a full set of the [policy options][host-vswitch-policy-options] computed from defaults and overrides, explaining the effective policy for this port group.
func (*HostPortGroup) Failback ¶
func (r *HostPortGroup) Failback() *pulumi.BoolOutput
If true, the teaming policy will re-activate failed interfaces higher in precedence when they come back up.
func (*HostPortGroup) HostSystemId ¶
func (r *HostPortGroup) HostSystemId() *pulumi.StringOutput
The [managed object ID][docs-about-morefs] of the host to set the port group up on. Forces a new resource if changed.
func (*HostPortGroup) ID ¶
func (r *HostPortGroup) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*HostPortGroup) Key ¶
func (r *HostPortGroup) Key() *pulumi.StringOutput
The key for this port group as returned from the vSphere API.
func (*HostPortGroup) Name ¶
func (r *HostPortGroup) Name() *pulumi.StringOutput
The name of the port group. Forces a new resource if changed.
func (*HostPortGroup) NotifySwitches ¶
func (r *HostPortGroup) NotifySwitches() *pulumi.BoolOutput
If true, the teaming policy will notify the broadcast network of a NIC failover, triggering cache updates.
func (*HostPortGroup) Ports ¶
func (r *HostPortGroup) Ports() *pulumi.Output
A list of ports that currently exist and are used on this port group.
func (*HostPortGroup) ShapingAverageBandwidth ¶
func (r *HostPortGroup) ShapingAverageBandwidth() *pulumi.IntOutput
The average bandwidth in bits per second if traffic shaping is enabled.
func (*HostPortGroup) ShapingBurstSize ¶
func (r *HostPortGroup) ShapingBurstSize() *pulumi.IntOutput
The maximum burst size allowed in bytes if traffic shaping is enabled.
func (*HostPortGroup) ShapingEnabled ¶
func (r *HostPortGroup) ShapingEnabled() *pulumi.BoolOutput
Enable traffic shaping on this virtual switch or port group.
func (*HostPortGroup) ShapingPeakBandwidth ¶
func (r *HostPortGroup) ShapingPeakBandwidth() *pulumi.IntOutput
The peak bandwidth during bursts in bits per second if traffic shaping is enabled.
func (*HostPortGroup) StandbyNics ¶
func (r *HostPortGroup) StandbyNics() *pulumi.ArrayOutput
List of standby network adapters used for failover.
func (*HostPortGroup) TeamingPolicy ¶
func (r *HostPortGroup) TeamingPolicy() *pulumi.StringOutput
The network adapter teaming policy. Can be one of loadbalance_ip, loadbalance_srcmac, loadbalance_srcid, or failover_explicit.
func (*HostPortGroup) URN ¶
func (r *HostPortGroup) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
func (*HostPortGroup) VirtualSwitchName ¶
func (r *HostPortGroup) VirtualSwitchName() *pulumi.StringOutput
The name of the virtual switch to bind this port group to. Forces a new resource if changed.
func (*HostPortGroup) VlanId ¶
func (r *HostPortGroup) VlanId() *pulumi.IntOutput
The VLAN ID/trunk mode for this port group. An ID of `0` denotes no tagging, an ID of `1`-`4094` tags with the specific ID, and an ID of `4095` enables trunk mode, allowing the guest to manage its own tagging. Default: `0`.
type HostPortGroupArgs ¶
type HostPortGroupArgs struct { // List of active network adapters used for load balancing. ActiveNics interface{} // Controls whether or not the virtual network adapter is allowed to send network traffic with a different MAC address // than that of its own. AllowForgedTransmits interface{} // Controls whether or not the Media Access Control (MAC) address can be changed. AllowMacChanges interface{} // Enable promiscuous mode on the network. This flag indicates whether or not all traffic is seen on a given port. AllowPromiscuous interface{} // Enable beacon probing. Requires that the vSwitch has been configured to use a beacon. If disabled, link status is used // only. CheckBeacon interface{} // If true, the teaming policy will re-activate failed interfaces higher in precedence when they come back up. Failback interface{} // The [managed object ID][docs-about-morefs] of // the host to set the port group up on. Forces a new resource if changed. HostSystemId interface{} // The name of the port group. Forces a new resource if // changed. Name interface{} // If true, the teaming policy will notify the broadcast network of a NIC failover, triggering cache updates. NotifySwitches interface{} // The average bandwidth in bits per second if traffic shaping is enabled. ShapingAverageBandwidth interface{} // The maximum burst size allowed in bytes if traffic shaping is enabled. ShapingBurstSize interface{} // Enable traffic shaping on this virtual switch or port group. ShapingEnabled interface{} // The peak bandwidth during bursts in bits per second if traffic shaping is enabled. ShapingPeakBandwidth interface{} // List of standby network adapters used for failover. StandbyNics interface{} // The network adapter teaming policy. Can be one of loadbalance_ip, loadbalance_srcmac, loadbalance_srcid, or // failover_explicit. TeamingPolicy interface{} // The name of the virtual switch to bind // this port group to. Forces a new resource if changed. VirtualSwitchName interface{} // The VLAN ID/trunk mode for this port group. An ID of // `0` denotes no tagging, an ID of `1`-`4094` tags with the specific ID, and an // ID of `4095` enables trunk mode, allowing the guest to manage its own // tagging. Default: `0`. VlanId interface{} }
The set of arguments for constructing a HostPortGroup resource.
type HostPortGroupState ¶
type HostPortGroupState struct { // List of active network adapters used for load balancing. ActiveNics interface{} // Controls whether or not the virtual network adapter is allowed to send network traffic with a different MAC address // than that of its own. AllowForgedTransmits interface{} // Controls whether or not the Media Access Control (MAC) address can be changed. AllowMacChanges interface{} // Enable promiscuous mode on the network. This flag indicates whether or not all traffic is seen on a given port. AllowPromiscuous interface{} // Enable beacon probing. Requires that the vSwitch has been configured to use a beacon. If disabled, link status is used // only. CheckBeacon interface{} // A map with a full set of the [policy // options][host-vswitch-policy-options] computed from defaults and overrides, // explaining the effective policy for this port group. ComputedPolicy interface{} // If true, the teaming policy will re-activate failed interfaces higher in precedence when they come back up. Failback interface{} // The [managed object ID][docs-about-morefs] of // the host to set the port group up on. Forces a new resource if changed. HostSystemId interface{} // The key for this port group as returned from the vSphere API. Key interface{} // The name of the port group. Forces a new resource if // changed. Name interface{} // If true, the teaming policy will notify the broadcast network of a NIC failover, triggering cache updates. NotifySwitches interface{} // A list of ports that currently exist and are used on this port group. Ports interface{} // The average bandwidth in bits per second if traffic shaping is enabled. ShapingAverageBandwidth interface{} // The maximum burst size allowed in bytes if traffic shaping is enabled. ShapingBurstSize interface{} // Enable traffic shaping on this virtual switch or port group. ShapingEnabled interface{} // The peak bandwidth during bursts in bits per second if traffic shaping is enabled. ShapingPeakBandwidth interface{} // List of standby network adapters used for failover. StandbyNics interface{} // The network adapter teaming policy. Can be one of loadbalance_ip, loadbalance_srcmac, loadbalance_srcid, or // failover_explicit. TeamingPolicy interface{} // The name of the virtual switch to bind // this port group to. Forces a new resource if changed. VirtualSwitchName interface{} // The VLAN ID/trunk mode for this port group. An ID of // `0` denotes no tagging, an ID of `1`-`4094` tags with the specific ID, and an // ID of `4095` enables trunk mode, allowing the guest to manage its own // tagging. Default: `0`. VlanId interface{} }
Input properties used for looking up and filtering HostPortGroup resources.
type HostVirtualSwitch ¶
type HostVirtualSwitch struct {
// contains filtered or unexported fields
}
The `vsphere_host_virtual_switch` resource can be used to manage vSphere standard switches on an ESXi host. These switches can be used as a backing for standard port groups, which can be managed by the [`vsphere_host_port_group`][host-port-group] resource.
For an overview on vSphere networking concepts, see [this page][ref-vsphere-net-concepts].
[host-port-group]: /docs/providers/vsphere/r/host_port_group.html [ref-vsphere-net-concepts]: https://docs.vmware.com/en/VMware-vSphere/6.5/com.vmware.vsphere.networking.doc/GUID-2B11DBB8-CB3C-4AFF-8885-EFEA0FC562F4.html
func GetHostVirtualSwitch ¶
func GetHostVirtualSwitch(ctx *pulumi.Context, name string, id pulumi.ID, state *HostVirtualSwitchState, opts ...pulumi.ResourceOpt) (*HostVirtualSwitch, error)
GetHostVirtualSwitch gets an existing HostVirtualSwitch resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewHostVirtualSwitch ¶
func NewHostVirtualSwitch(ctx *pulumi.Context, name string, args *HostVirtualSwitchArgs, opts ...pulumi.ResourceOpt) (*HostVirtualSwitch, error)
NewHostVirtualSwitch registers a new resource with the given unique name, arguments, and options.
func (*HostVirtualSwitch) ActiveNics ¶
func (r *HostVirtualSwitch) ActiveNics() *pulumi.ArrayOutput
The list of active network adapters used for load balancing.
func (*HostVirtualSwitch) AllowForgedTransmits ¶
func (r *HostVirtualSwitch) AllowForgedTransmits() *pulumi.BoolOutput
Controls whether or not the virtual network adapter is allowed to send network traffic with a different MAC address than that of its own. Default: `true`.
func (*HostVirtualSwitch) AllowMacChanges ¶
func (r *HostVirtualSwitch) AllowMacChanges() *pulumi.BoolOutput
Controls whether or not the Media Access Control (MAC) address can be changed. Default: `true`.
func (*HostVirtualSwitch) AllowPromiscuous ¶
func (r *HostVirtualSwitch) AllowPromiscuous() *pulumi.BoolOutput
Enable promiscuous mode on the network. This flag indicates whether or not all traffic is seen on a given port. Default: `false`.
func (*HostVirtualSwitch) BeaconInterval ¶
func (r *HostVirtualSwitch) BeaconInterval() *pulumi.IntOutput
The interval, in seconds, that a NIC beacon packet is sent out. This can be used with `check_beacon` to offer link failure capability beyond link status only. Default: `1`.
func (*HostVirtualSwitch) CheckBeacon ¶
func (r *HostVirtualSwitch) CheckBeacon() *pulumi.BoolOutput
Enable beacon probing - this requires that the `beacon_interval` option has been set in the bridge options. If this is set to `false`, only link status is used to check for failed NICs. Default: `false`.
func (*HostVirtualSwitch) Failback ¶
func (r *HostVirtualSwitch) Failback() *pulumi.BoolOutput
If set to `true`, the teaming policy will re-activate failed interfaces higher in precedence when they come back up. Default: `true`.
func (*HostVirtualSwitch) HostSystemId ¶
func (r *HostVirtualSwitch) HostSystemId() *pulumi.StringOutput
The [managed object ID][docs-about-morefs] of the host to set the virtual switch up on. Forces a new resource if changed.
func (*HostVirtualSwitch) ID ¶
func (r *HostVirtualSwitch) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*HostVirtualSwitch) LinkDiscoveryOperation ¶
func (r *HostVirtualSwitch) LinkDiscoveryOperation() *pulumi.StringOutput
Whether to `advertise` or `listen` for link discovery traffic. Default: `listen`.
func (*HostVirtualSwitch) LinkDiscoveryProtocol ¶
func (r *HostVirtualSwitch) LinkDiscoveryProtocol() *pulumi.StringOutput
The discovery protocol type. Valid types are `cpd` and `lldp`. Default: `cdp`.
func (*HostVirtualSwitch) Mtu ¶
func (r *HostVirtualSwitch) Mtu() *pulumi.IntOutput
The maximum transmission unit (MTU) for the virtual switch. Default: `1500`.
func (*HostVirtualSwitch) Name ¶
func (r *HostVirtualSwitch) Name() *pulumi.StringOutput
The name of the virtual switch. Forces a new resource if changed.
func (*HostVirtualSwitch) NetworkAdapters ¶
func (r *HostVirtualSwitch) NetworkAdapters() *pulumi.ArrayOutput
The network interfaces to bind to the bridge.
func (*HostVirtualSwitch) NotifySwitches ¶
func (r *HostVirtualSwitch) NotifySwitches() *pulumi.BoolOutput
If set to `true`, the teaming policy will notify the broadcast network of a NIC failover, triggering cache updates. Default: `true`.
func (*HostVirtualSwitch) NumberOfPorts ¶
func (r *HostVirtualSwitch) NumberOfPorts() *pulumi.IntOutput
The number of ports to create with this virtual switch. Default: `128`.
func (*HostVirtualSwitch) ShapingAverageBandwidth ¶
func (r *HostVirtualSwitch) ShapingAverageBandwidth() *pulumi.IntOutput
The average bandwidth in bits per second if traffic shaping is enabled. Default: `0`
func (*HostVirtualSwitch) ShapingBurstSize ¶
func (r *HostVirtualSwitch) ShapingBurstSize() *pulumi.IntOutput
The maximum burst size allowed in bytes if shaping is enabled. Default: `0`
func (*HostVirtualSwitch) ShapingEnabled ¶
func (r *HostVirtualSwitch) ShapingEnabled() *pulumi.BoolOutput
Set to `true` to enable the traffic shaper for ports managed by this virtual switch. Default: `false`.
func (*HostVirtualSwitch) ShapingPeakBandwidth ¶
func (r *HostVirtualSwitch) ShapingPeakBandwidth() *pulumi.IntOutput
The peak bandwidth during bursts in bits per second if traffic shaping is enabled. Default: `0`
func (*HostVirtualSwitch) StandbyNics ¶
func (r *HostVirtualSwitch) StandbyNics() *pulumi.ArrayOutput
The list of standby network adapters used for failover.
func (*HostVirtualSwitch) TeamingPolicy ¶
func (r *HostVirtualSwitch) TeamingPolicy() *pulumi.StringOutput
The network adapter teaming policy. Can be one of `loadbalance_ip`, `loadbalance_srcmac`, `loadbalance_srcid`, or `failover_explicit`. Default: `loadbalance_srcid`.
func (*HostVirtualSwitch) URN ¶
func (r *HostVirtualSwitch) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
type HostVirtualSwitchArgs ¶
type HostVirtualSwitchArgs struct { // The list of active network adapters used for load // balancing. ActiveNics interface{} // Controls whether or not the virtual // network adapter is allowed to send network traffic with a different MAC // address than that of its own. Default: `true`. AllowForgedTransmits interface{} // Controls whether or not the Media Access // Control (MAC) address can be changed. Default: `true`. AllowMacChanges interface{} // Enable promiscuous mode on the network. This // flag indicates whether or not all traffic is seen on a given port. Default: // `false`. AllowPromiscuous interface{} // The interval, in seconds, that a NIC beacon // packet is sent out. This can be used with `check_beacon` to // offer link failure capability beyond link status only. Default: `1`. BeaconInterval interface{} // Enable beacon probing - this requires that the // `beacon_interval` option has been set in the bridge // options. If this is set to `false`, only link status is used to check for // failed NICs. Default: `false`. CheckBeacon interface{} // If set to `true`, the teaming policy will re-activate // failed interfaces higher in precedence when they come back up. Default: // `true`. Failback interface{} // The [managed object ID][docs-about-morefs] of // the host to set the virtual switch up on. Forces a new resource if changed. HostSystemId interface{} // Whether to `advertise` or `listen` // for link discovery traffic. Default: `listen`. LinkDiscoveryOperation interface{} // The discovery protocol type. Valid // types are `cpd` and `lldp`. Default: `cdp`. LinkDiscoveryProtocol interface{} // The maximum transmission unit (MTU) for the virtual // switch. Default: `1500`. Mtu interface{} // The name of the virtual switch. Forces a new resource if // changed. Name interface{} // The network interfaces to bind to the bridge. NetworkAdapters interface{} // If set to `true`, the teaming policy will // notify the broadcast network of a NIC failover, triggering cache updates. // Default: `true`. NotifySwitches interface{} // The number of ports to create with this // virtual switch. Default: `128`. NumberOfPorts interface{} // The average bandwidth in bits per // second if traffic shaping is enabled. Default: `0` ShapingAverageBandwidth interface{} // The maximum burst size allowed in bytes if // shaping is enabled. Default: `0` ShapingBurstSize interface{} // Set to `true` to enable the traffic shaper for // ports managed by this virtual switch. Default: `false`. ShapingEnabled interface{} // The peak bandwidth during bursts in // bits per second if traffic shaping is enabled. Default: `0` ShapingPeakBandwidth interface{} // The list of standby network adapters used for // failover. StandbyNics interface{} // The network adapter teaming policy. Can be one // of `loadbalance_ip`, `loadbalance_srcmac`, `loadbalance_srcid`, or // `failover_explicit`. Default: `loadbalance_srcid`. TeamingPolicy interface{} }
The set of arguments for constructing a HostVirtualSwitch resource.
type HostVirtualSwitchState ¶
type HostVirtualSwitchState struct { // The list of active network adapters used for load // balancing. ActiveNics interface{} // Controls whether or not the virtual // network adapter is allowed to send network traffic with a different MAC // address than that of its own. Default: `true`. AllowForgedTransmits interface{} // Controls whether or not the Media Access // Control (MAC) address can be changed. Default: `true`. AllowMacChanges interface{} // Enable promiscuous mode on the network. This // flag indicates whether or not all traffic is seen on a given port. Default: // `false`. AllowPromiscuous interface{} // The interval, in seconds, that a NIC beacon // packet is sent out. This can be used with `check_beacon` to // offer link failure capability beyond link status only. Default: `1`. BeaconInterval interface{} // Enable beacon probing - this requires that the // `beacon_interval` option has been set in the bridge // options. If this is set to `false`, only link status is used to check for // failed NICs. Default: `false`. CheckBeacon interface{} // If set to `true`, the teaming policy will re-activate // failed interfaces higher in precedence when they come back up. Default: // `true`. Failback interface{} // The [managed object ID][docs-about-morefs] of // the host to set the virtual switch up on. Forces a new resource if changed. HostSystemId interface{} // Whether to `advertise` or `listen` // for link discovery traffic. Default: `listen`. LinkDiscoveryOperation interface{} // The discovery protocol type. Valid // types are `cpd` and `lldp`. Default: `cdp`. LinkDiscoveryProtocol interface{} // The maximum transmission unit (MTU) for the virtual // switch. Default: `1500`. Mtu interface{} // The name of the virtual switch. Forces a new resource if // changed. Name interface{} // The network interfaces to bind to the bridge. NetworkAdapters interface{} // If set to `true`, the teaming policy will // notify the broadcast network of a NIC failover, triggering cache updates. // Default: `true`. NotifySwitches interface{} // The number of ports to create with this // virtual switch. Default: `128`. NumberOfPorts interface{} // The average bandwidth in bits per // second if traffic shaping is enabled. Default: `0` ShapingAverageBandwidth interface{} // The maximum burst size allowed in bytes if // shaping is enabled. Default: `0` ShapingBurstSize interface{} // Set to `true` to enable the traffic shaper for // ports managed by this virtual switch. Default: `false`. ShapingEnabled interface{} // The peak bandwidth during bursts in // bits per second if traffic shaping is enabled. Default: `0` ShapingPeakBandwidth interface{} // The list of standby network adapters used for // failover. StandbyNics interface{} // The network adapter teaming policy. Can be one // of `loadbalance_ip`, `loadbalance_srcmac`, `loadbalance_srcid`, or // `failover_explicit`. Default: `loadbalance_srcid`. TeamingPolicy interface{} }
Input properties used for looking up and filtering HostVirtualSwitch resources.
type License ¶
type License struct {
// contains filtered or unexported fields
}
Provides a VMware vSphere license resource. This can be used to add and remove license keys.
func GetLicense ¶
func GetLicense(ctx *pulumi.Context, name string, id pulumi.ID, state *LicenseState, opts ...pulumi.ResourceOpt) (*License, error)
GetLicense gets an existing License resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewLicense ¶
func NewLicense(ctx *pulumi.Context, name string, args *LicenseArgs, opts ...pulumi.ResourceOpt) (*License, error)
NewLicense registers a new resource with the given unique name, arguments, and options.
func (*License) EditionKey ¶
func (r *License) EditionKey() *pulumi.StringOutput
The product edition of the license key.
func (*License) Labels ¶
A map of key/value pairs to be attached as labels (tags) to the license key.
func (*License) LicenseKey ¶
func (r *License) LicenseKey() *pulumi.StringOutput
The license key to add.
func (*License) Name ¶
func (r *License) Name() *pulumi.StringOutput
The display name for the license.
type LicenseArgs ¶
type LicenseArgs struct { // A map of key/value pairs to be attached as labels (tags) to the license key. Labels interface{} // The license key to add. LicenseKey interface{} }
The set of arguments for constructing a License resource.
type LicenseState ¶
type LicenseState struct { // The product edition of the license key. EditionKey interface{} // A map of key/value pairs to be attached as labels (tags) to the license key. Labels interface{} // The license key to add. LicenseKey interface{} // The display name for the license. Name interface{} // Total number of units (example: CPUs) contained in the license. Total interface{} // The number of units (example: CPUs) assigned to this license. Used interface{} }
Input properties used for looking up and filtering License resources.
type NasDatastore ¶
type NasDatastore struct {
// contains filtered or unexported fields
}
The `vsphere_nas_datastore` resource can be used to create and manage NAS datastores on an ESXi host or a set of hosts. The resource supports mounting NFS v3 and v4.1 shares to be used as datastores.
~> **NOTE:** Unlike [`vsphere_vmfs_datastore`][resource-vmfs-datastore], a NAS datastore is only mounted on the hosts you choose to mount it on. To mount on multiple hosts, you must specify each host that you want to add in the `host_system_ids` argument.
[resource-vmfs-datastore]: /docs/providers/vsphere/r/vmfs_datastore.html
func GetNasDatastore ¶
func GetNasDatastore(ctx *pulumi.Context, name string, id pulumi.ID, state *NasDatastoreState, opts ...pulumi.ResourceOpt) (*NasDatastore, error)
GetNasDatastore gets an existing NasDatastore resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewNasDatastore ¶
func NewNasDatastore(ctx *pulumi.Context, name string, args *NasDatastoreArgs, opts ...pulumi.ResourceOpt) (*NasDatastore, error)
NewNasDatastore registers a new resource with the given unique name, arguments, and options.
func (*NasDatastore) AccessMode ¶
func (r *NasDatastore) AccessMode() *pulumi.StringOutput
Access mode for the mount point. Can be one of `readOnly` or `readWrite`. Note that `readWrite` does not necessarily mean that the datastore will be read-write depending on the permissions of the actual share. Default: `readWrite`. Forces a new resource if changed.
func (*NasDatastore) Accessible ¶
func (r *NasDatastore) Accessible() *pulumi.BoolOutput
The connectivity status of the datastore. If this is `false`, some other computed attributes may be out of date.
func (*NasDatastore) Capacity ¶
func (r *NasDatastore) Capacity() *pulumi.IntOutput
Maximum capacity of the datastore, in megabytes.
func (*NasDatastore) CustomAttributes ¶
func (r *NasDatastore) CustomAttributes() *pulumi.MapOutput
Map of custom attribute ids to attribute value strings to set on datasource resource. See [here][docs-setting-custom-attributes] for a reference on how to set values for custom attributes.
func (*NasDatastore) DatastoreClusterId ¶
func (r *NasDatastore) DatastoreClusterId() *pulumi.StringOutput
The [managed object ID][docs-about-morefs] of a datastore cluster to put this datastore in. Conflicts with `folder`.
func (*NasDatastore) Folder ¶
func (r *NasDatastore) Folder() *pulumi.StringOutput
The relative path to a folder to put this datastore in. This is a path relative to the datacenter you are deploying the datastore to. Example: for the `dc1` datacenter, and a provided `folder` of `foo/bar`, Terraform will place a datastore named `terraform-test` in a datastore folder located at `/dc1/datastore/foo/bar`, with the final inventory path being `/dc1/datastore/foo/bar/terraform-test`. Conflicts with `datastore_cluster_id`.
func (*NasDatastore) FreeSpace ¶
func (r *NasDatastore) FreeSpace() *pulumi.IntOutput
Available space of this datastore, in megabytes.
func (*NasDatastore) HostSystemIds ¶
func (r *NasDatastore) HostSystemIds() *pulumi.ArrayOutput
The [managed object IDs][docs-about-morefs] of the hosts to mount the datastore on.
func (*NasDatastore) ID ¶
func (r *NasDatastore) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*NasDatastore) MaintenanceMode ¶
func (r *NasDatastore) MaintenanceMode() *pulumi.StringOutput
The current maintenance mode state of the datastore.
func (*NasDatastore) MultipleHostAccess ¶
func (r *NasDatastore) MultipleHostAccess() *pulumi.BoolOutput
If `true`, more than one host in the datacenter has been configured with access to the datastore.
func (*NasDatastore) Name ¶
func (r *NasDatastore) Name() *pulumi.StringOutput
The name of the datastore. Forces a new resource if changed.
func (*NasDatastore) ProtocolEndpoint ¶
func (r *NasDatastore) ProtocolEndpoint() *pulumi.StringOutput
Indicates that this NAS volume is a protocol endpoint. This field is only populated if the host supports virtual datastores.
func (*NasDatastore) RemoteHosts ¶
func (r *NasDatastore) RemoteHosts() *pulumi.ArrayOutput
The hostnames or IP addresses of the remote server or servers. Only one element should be present for NFS v3 but multiple can be present for NFS v4.1. Forces a new resource if changed.
func (*NasDatastore) RemotePath ¶
func (r *NasDatastore) RemotePath() *pulumi.StringOutput
The remote path of the mount point. Forces a new resource if changed.
func (*NasDatastore) SecurityType ¶
func (r *NasDatastore) SecurityType() *pulumi.StringOutput
The security type to use when using NFS v4.1. Can be one of `AUTH_SYS`, `SEC_KRB5`, or `SEC_KRB5I`. Forces a new resource if changed.
func (*NasDatastore) Tags ¶
func (r *NasDatastore) Tags() *pulumi.ArrayOutput
The IDs of any tags to attach to this resource. See [here][docs-applying-tags] for a reference on how to apply tags.
func (*NasDatastore) Type ¶
func (r *NasDatastore) Type() *pulumi.StringOutput
The type of NAS volume. Can be one of `NFS` (to denote v3) or `NFS41` (to denote NFS v4.1). Default: `NFS`. Forces a new resource if changed.
func (*NasDatastore) URN ¶
func (r *NasDatastore) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
func (*NasDatastore) UncommittedSpace ¶
func (r *NasDatastore) UncommittedSpace() *pulumi.IntOutput
Total additional storage space, in megabytes, potentially used by all virtual machines on this datastore.
func (*NasDatastore) Url ¶
func (r *NasDatastore) Url() *pulumi.StringOutput
The unique locator for the datastore.
type NasDatastoreArgs ¶
type NasDatastoreArgs struct { // Access mode for the mount point. Can be one of // `readOnly` or `readWrite`. Note that `readWrite` does not necessarily mean // that the datastore will be read-write depending on the permissions of the // actual share. Default: `readWrite`. Forces a new resource if changed. AccessMode interface{} // Map of custom attribute ids to attribute // value strings to set on datasource resource. See // [here][docs-setting-custom-attributes] for a reference on how to set values // for custom attributes. CustomAttributes interface{} // The [managed object // ID][docs-about-morefs] of a datastore cluster to put this datastore in. // Conflicts with `folder`. DatastoreClusterId interface{} // The relative path to a folder to put this datastore in. // This is a path relative to the datacenter you are deploying the datastore to. // Example: for the `dc1` datacenter, and a provided `folder` of `foo/bar`, // Terraform will place a datastore named `terraform-test` in a datastore folder // located at `/dc1/datastore/foo/bar`, with the final inventory path being // `/dc1/datastore/foo/bar/terraform-test`. Conflicts with // `datastore_cluster_id`. Folder interface{} // The [managed object IDs][docs-about-morefs] of // the hosts to mount the datastore on. HostSystemIds interface{} // The name of the datastore. Forces a new resource if // changed. Name interface{} // The hostnames or IP addresses of the remote // server or servers. Only one element should be present for NFS v3 but multiple // can be present for NFS v4.1. Forces a new resource if changed. RemoteHosts interface{} // The remote path of the mount point. Forces a new // resource if changed. RemotePath interface{} // The security type to use when using NFS v4.1. // Can be one of `AUTH_SYS`, `SEC_KRB5`, or `SEC_KRB5I`. Forces a new resource // if changed. SecurityType interface{} // The IDs of any tags to attach to this resource. See // [here][docs-applying-tags] for a reference on how to apply tags. Tags interface{} // The type of NAS volume. Can be one of `NFS` (to denote // v3) or `NFS41` (to denote NFS v4.1). Default: `NFS`. Forces a new resource if // changed. Type interface{} }
The set of arguments for constructing a NasDatastore resource.
type NasDatastoreState ¶
type NasDatastoreState struct { // Access mode for the mount point. Can be one of // `readOnly` or `readWrite`. Note that `readWrite` does not necessarily mean // that the datastore will be read-write depending on the permissions of the // actual share. Default: `readWrite`. Forces a new resource if changed. AccessMode interface{} // The connectivity status of the datastore. If this is `false`, // some other computed attributes may be out of date. Accessible interface{} // Maximum capacity of the datastore, in megabytes. Capacity interface{} // Map of custom attribute ids to attribute // value strings to set on datasource resource. See // [here][docs-setting-custom-attributes] for a reference on how to set values // for custom attributes. CustomAttributes interface{} // The [managed object // ID][docs-about-morefs] of a datastore cluster to put this datastore in. // Conflicts with `folder`. DatastoreClusterId interface{} // The relative path to a folder to put this datastore in. // This is a path relative to the datacenter you are deploying the datastore to. // Example: for the `dc1` datacenter, and a provided `folder` of `foo/bar`, // Terraform will place a datastore named `terraform-test` in a datastore folder // located at `/dc1/datastore/foo/bar`, with the final inventory path being // `/dc1/datastore/foo/bar/terraform-test`. Conflicts with // `datastore_cluster_id`. Folder interface{} // Available space of this datastore, in megabytes. FreeSpace interface{} // The [managed object IDs][docs-about-morefs] of // the hosts to mount the datastore on. HostSystemIds interface{} // The current maintenance mode state of the datastore. MaintenanceMode interface{} // If `true`, more than one host in the datacenter has // been configured with access to the datastore. MultipleHostAccess interface{} // The name of the datastore. Forces a new resource if // changed. Name interface{} // Indicates that this NAS volume is a protocol endpoint. // This field is only populated if the host supports virtual datastores. ProtocolEndpoint interface{} // The hostnames or IP addresses of the remote // server or servers. Only one element should be present for NFS v3 but multiple // can be present for NFS v4.1. Forces a new resource if changed. RemoteHosts interface{} // The remote path of the mount point. Forces a new // resource if changed. RemotePath interface{} // The security type to use when using NFS v4.1. // Can be one of `AUTH_SYS`, `SEC_KRB5`, or `SEC_KRB5I`. Forces a new resource // if changed. SecurityType interface{} // The IDs of any tags to attach to this resource. See // [here][docs-applying-tags] for a reference on how to apply tags. Tags interface{} // The type of NAS volume. Can be one of `NFS` (to denote // v3) or `NFS41` (to denote NFS v4.1). Default: `NFS`. Forces a new resource if // changed. Type interface{} // Total additional storage space, in megabytes, // potentially used by all virtual machines on this datastore. UncommittedSpace interface{} // The unique locator for the datastore. Url interface{} }
Input properties used for looking up and filtering NasDatastore resources.
type ResourcePool ¶
type ResourcePool struct {
// contains filtered or unexported fields
}
The `vsphere_resource_pool` resource can be used to create and manage resource pools in standalone hosts or on compute clusters.
For more information on vSphere resource pools, see [this page]ref-vsphere-resource_pools.
func GetResourcePool ¶
func GetResourcePool(ctx *pulumi.Context, name string, id pulumi.ID, state *ResourcePoolState, opts ...pulumi.ResourceOpt) (*ResourcePool, error)
GetResourcePool gets an existing ResourcePool resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewResourcePool ¶
func NewResourcePool(ctx *pulumi.Context, name string, args *ResourcePoolArgs, opts ...pulumi.ResourceOpt) (*ResourcePool, error)
NewResourcePool registers a new resource with the given unique name, arguments, and options.
func (*ResourcePool) CpuExpandable ¶
func (r *ResourcePool) CpuExpandable() *pulumi.BoolOutput
Determines if the reservation on a resource pool can grow beyond the specified value if the parent resource pool has unreserved resources. Default: `true`
func (*ResourcePool) CpuLimit ¶
func (r *ResourcePool) CpuLimit() *pulumi.IntOutput
The CPU utilization of a resource pool will not exceed this limit, even if there are available resources. Set to `-1` for unlimited. Default: `-1`
func (*ResourcePool) CpuReservation ¶
func (r *ResourcePool) CpuReservation() *pulumi.IntOutput
Amount of CPU (MHz) that is guaranteed available to the resource pool. Default: `0`
func (*ResourcePool) CpuShareLevel ¶
func (r *ResourcePool) CpuShareLevel() *pulumi.StringOutput
The CPU allocation level. The level is a simplified view of shares. Levels map to a pre-determined set of numeric values for shares. Can be one of `low`, `normal`, `high`, or `custom`. When `low`, `normal`, or `high` are specified values in `cpu_shares` will be ignored. Default: `normal`
func (*ResourcePool) CpuShares ¶
func (r *ResourcePool) CpuShares() *pulumi.IntOutput
The number of shares allocated for CPU. Used to determine resource allocation in case of resource contention. If this is set, `cpu_share_level` must be `custom`.
func (*ResourcePool) CustomAttributes ¶
func (r *ResourcePool) CustomAttributes() *pulumi.MapOutput
A list of custom attributes to set on this resource.
func (*ResourcePool) ID ¶
func (r *ResourcePool) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*ResourcePool) MemoryExpandable ¶
func (r *ResourcePool) MemoryExpandable() *pulumi.BoolOutput
Determines if the reservation on a resource pool can grow beyond the specified value if the parent resource pool has unreserved resources. Default: `true`
func (*ResourcePool) MemoryLimit ¶
func (r *ResourcePool) MemoryLimit() *pulumi.IntOutput
The CPU utilization of a resource pool will not exceed this limit, even if there are available resources. Set to `-1` for unlimited. Default: `-1`
func (*ResourcePool) MemoryReservation ¶
func (r *ResourcePool) MemoryReservation() *pulumi.IntOutput
Amount of CPU (MHz) that is guaranteed available to the resource pool. Default: `0`
func (*ResourcePool) MemoryShareLevel ¶
func (r *ResourcePool) MemoryShareLevel() *pulumi.StringOutput
The CPU allocation level. The level is a simplified view of shares. Levels map to a pre-determined set of numeric values for shares. Can be one of `low`, `normal`, `high`, or `custom`. When `low`, `normal`, or `high` are specified values in `memory_shares` will be ignored. Default: `normal`
func (*ResourcePool) MemoryShares ¶
func (r *ResourcePool) MemoryShares() *pulumi.IntOutput
The number of shares allocated for CPU. Used to determine resource allocation in case of resource contention. If this is set, `memory_share_level` must be `custom`.
func (*ResourcePool) Name ¶
func (r *ResourcePool) Name() *pulumi.StringOutput
The name of the resource pool.
func (*ResourcePool) ParentResourcePoolId ¶
func (r *ResourcePool) ParentResourcePoolId() *pulumi.StringOutput
The [managed object ID][docs-about-morefs] of the parent resource pool. This can be the root resource pool for a cluster or standalone host, or a resource pool itself. When moving a resource pool from one parent resource pool to another, both must share a common root resource pool or the move will fail.
func (*ResourcePool) Tags ¶
func (r *ResourcePool) Tags() *pulumi.ArrayOutput
The IDs of any tags to attach to this resource. See [here][docs-applying-tags] for a reference on how to apply tags.
func (*ResourcePool) URN ¶
func (r *ResourcePool) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
type ResourcePoolArgs ¶
type ResourcePoolArgs struct { // Determines if the reservation on a resource // pool can grow beyond the specified value if the parent resource pool has // unreserved resources. Default: `true` CpuExpandable interface{} // The CPU utilization of a resource pool will not exceed // this limit, even if there are available resources. Set to `-1` for unlimited. // Default: `-1` CpuLimit interface{} // Amount of CPU (MHz) that is guaranteed // available to the resource pool. Default: `0` CpuReservation interface{} // simplified view of shares. Levels map to a pre-determined set of numeric // values for shares. Can be one of `low`, `normal`, `high`, or `custom`. When // `low`, `normal`, or `high` are specified values in `cpu_shares` will be // ignored. Default: `normal` CpuShareLevel interface{} // determine resource allocation in case of resource contention. If this is set, // `cpu_share_level` must be `custom`. CpuShares interface{} // A list of custom attributes to set on this resource. CustomAttributes interface{} // Determines if the reservation on a resource // pool can grow beyond the specified value if the parent resource pool has // unreserved resources. Default: `true` MemoryExpandable interface{} // The CPU utilization of a resource pool will not exceed // this limit, even if there are available resources. Set to `-1` for unlimited. // Default: `-1` MemoryLimit interface{} // Amount of CPU (MHz) that is guaranteed // available to the resource pool. Default: `0` MemoryReservation interface{} // simplified view of shares. Levels map to a pre-determined set of numeric // values for shares. Can be one of `low`, `normal`, `high`, or `custom`. When // `low`, `normal`, or `high` are specified values in `memory_shares` will be // ignored. Default: `normal` MemoryShareLevel interface{} // determine resource allocation in case of resource contention. If this is set, // `memory_share_level` must be `custom`. MemoryShares interface{} // The name of the resource pool. Name interface{} // The [managed object ID][docs-about-morefs] // of the parent resource pool. This can be the root resource pool for a cluster // or standalone host, or a resource pool itself. When moving a resource pool // from one parent resource pool to another, both must share a common root // resource pool or the move will fail. ParentResourcePoolId interface{} // The IDs of any tags to attach to this resource. See // [here][docs-applying-tags] for a reference on how to apply tags. Tags interface{} }
The set of arguments for constructing a ResourcePool resource.
type ResourcePoolState ¶
type ResourcePoolState struct { // Determines if the reservation on a resource // pool can grow beyond the specified value if the parent resource pool has // unreserved resources. Default: `true` CpuExpandable interface{} // The CPU utilization of a resource pool will not exceed // this limit, even if there are available resources. Set to `-1` for unlimited. // Default: `-1` CpuLimit interface{} // Amount of CPU (MHz) that is guaranteed // available to the resource pool. Default: `0` CpuReservation interface{} // simplified view of shares. Levels map to a pre-determined set of numeric // values for shares. Can be one of `low`, `normal`, `high`, or `custom`. When // `low`, `normal`, or `high` are specified values in `cpu_shares` will be // ignored. Default: `normal` CpuShareLevel interface{} // determine resource allocation in case of resource contention. If this is set, // `cpu_share_level` must be `custom`. CpuShares interface{} // A list of custom attributes to set on this resource. CustomAttributes interface{} // Determines if the reservation on a resource // pool can grow beyond the specified value if the parent resource pool has // unreserved resources. Default: `true` MemoryExpandable interface{} // The CPU utilization of a resource pool will not exceed // this limit, even if there are available resources. Set to `-1` for unlimited. // Default: `-1` MemoryLimit interface{} // Amount of CPU (MHz) that is guaranteed // available to the resource pool. Default: `0` MemoryReservation interface{} // simplified view of shares. Levels map to a pre-determined set of numeric // values for shares. Can be one of `low`, `normal`, `high`, or `custom`. When // `low`, `normal`, or `high` are specified values in `memory_shares` will be // ignored. Default: `normal` MemoryShareLevel interface{} // determine resource allocation in case of resource contention. If this is set, // `memory_share_level` must be `custom`. MemoryShares interface{} // The name of the resource pool. Name interface{} // The [managed object ID][docs-about-morefs] // of the parent resource pool. This can be the root resource pool for a cluster // or standalone host, or a resource pool itself. When moving a resource pool // from one parent resource pool to another, both must share a common root // resource pool or the move will fail. ParentResourcePoolId interface{} // The IDs of any tags to attach to this resource. See // [here][docs-applying-tags] for a reference on how to apply tags. Tags interface{} }
Input properties used for looking up and filtering ResourcePool resources.
type StorageDrsVmOverride ¶
type StorageDrsVmOverride struct {
// contains filtered or unexported fields
}
The `vsphere_storage_drs_vm_override` resource can be used to add a Storage DRS override to a datastore cluster for a specific virtual machine. With this resource, one can enable or disable Storage DRS, and control the automation level and disk affinity for a single virtual machine without affecting the rest of the datastore cluster.
For more information on vSphere datastore clusters and Storage DRS, see [this page]ref-vsphere-datastore-clusters.
func GetStorageDrsVmOverride ¶
func GetStorageDrsVmOverride(ctx *pulumi.Context, name string, id pulumi.ID, state *StorageDrsVmOverrideState, opts ...pulumi.ResourceOpt) (*StorageDrsVmOverride, error)
GetStorageDrsVmOverride gets an existing StorageDrsVmOverride resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewStorageDrsVmOverride ¶
func NewStorageDrsVmOverride(ctx *pulumi.Context, name string, args *StorageDrsVmOverrideArgs, opts ...pulumi.ResourceOpt) (*StorageDrsVmOverride, error)
NewStorageDrsVmOverride registers a new resource with the given unique name, arguments, and options.
func (*StorageDrsVmOverride) DatastoreClusterId ¶
func (r *StorageDrsVmOverride) DatastoreClusterId() *pulumi.StringOutput
The [managed object reference ID][docs-about-morefs] of the datastore cluster to put the override in. Forces a new resource if changed.
func (*StorageDrsVmOverride) ID ¶
func (r *StorageDrsVmOverride) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*StorageDrsVmOverride) SdrsAutomationLevel ¶
func (r *StorageDrsVmOverride) SdrsAutomationLevel() *pulumi.StringOutput
Overrides any Storage DRS automation levels for this virtual machine. Can be one of `automated` or `manual`. When not specified, the datastore cluster's settings are used according to the [specific SDRS subsystem][tf-vsphere-datastore-cluster-sdrs-levels].
func (*StorageDrsVmOverride) SdrsEnabled ¶
func (r *StorageDrsVmOverride) SdrsEnabled() *pulumi.StringOutput
Overrides the default Storage DRS setting for this virtual machine. When not specified, the datastore cluster setting is used.
func (*StorageDrsVmOverride) SdrsIntraVmAffinity ¶
func (r *StorageDrsVmOverride) SdrsIntraVmAffinity() *pulumi.StringOutput
Overrides the intra-VM affinity setting for this virtual machine. When `true`, all disks for this virtual machine will be kept on the same datastore. When `false`, Storage DRS may locate individual disks on different datastores if it helps satisfy cluster requirements. When not specified, the datastore cluster's settings are used.
func (*StorageDrsVmOverride) URN ¶
func (r *StorageDrsVmOverride) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
func (*StorageDrsVmOverride) VirtualMachineId ¶
func (r *StorageDrsVmOverride) VirtualMachineId() *pulumi.StringOutput
The UUID of the virtual machine to create the override for. Forces a new resource if changed.
type StorageDrsVmOverrideArgs ¶
type StorageDrsVmOverrideArgs struct { // The [managed object reference // ID][docs-about-morefs] of the datastore cluster to put the override in. // Forces a new resource if changed. DatastoreClusterId interface{} // Overrides any Storage DRS automation // levels for this virtual machine. Can be one of `automated` or `manual`. When // not specified, the datastore cluster's settings are used according to the // [specific SDRS subsystem][tf-vsphere-datastore-cluster-sdrs-levels]. SdrsAutomationLevel interface{} // Overrides the default Storage DRS setting for // this virtual machine. When not specified, the datastore cluster setting is // used. SdrsEnabled interface{} // Overrides the intra-VM affinity setting // for this virtual machine. When `true`, all disks for this virtual machine // will be kept on the same datastore. When `false`, Storage DRS may locate // individual disks on different datastores if it helps satisfy cluster // requirements. When not specified, the datastore cluster's settings are used. SdrsIntraVmAffinity interface{} // The UUID of the virtual machine to create // the override for. Forces a new resource if changed. VirtualMachineId interface{} }
The set of arguments for constructing a StorageDrsVmOverride resource.
type StorageDrsVmOverrideState ¶
type StorageDrsVmOverrideState struct { // The [managed object reference // ID][docs-about-morefs] of the datastore cluster to put the override in. // Forces a new resource if changed. DatastoreClusterId interface{} // Overrides any Storage DRS automation // levels for this virtual machine. Can be one of `automated` or `manual`. When // not specified, the datastore cluster's settings are used according to the // [specific SDRS subsystem][tf-vsphere-datastore-cluster-sdrs-levels]. SdrsAutomationLevel interface{} // Overrides the default Storage DRS setting for // this virtual machine. When not specified, the datastore cluster setting is // used. SdrsEnabled interface{} // Overrides the intra-VM affinity setting // for this virtual machine. When `true`, all disks for this virtual machine // will be kept on the same datastore. When `false`, Storage DRS may locate // individual disks on different datastores if it helps satisfy cluster // requirements. When not specified, the datastore cluster's settings are used. SdrsIntraVmAffinity interface{} // The UUID of the virtual machine to create // the override for. Forces a new resource if changed. VirtualMachineId interface{} }
Input properties used for looking up and filtering StorageDrsVmOverride resources.
type Tag ¶
type Tag struct {
// contains filtered or unexported fields
}
The `vsphere_tag` resource can be used to create and manage tags, which allow you to attach metadata to objects in the vSphere inventory to make these objects more sortable and searchable.
For more information about tags, click [here]ext-tags-general.
~> **NOTE:** Tagging support is unsupported on direct ESXi connections and requires vCenter 6.0 or higher.
func GetTag ¶
func GetTag(ctx *pulumi.Context, name string, id pulumi.ID, state *TagState, opts ...pulumi.ResourceOpt) (*Tag, error)
GetTag gets an existing Tag resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewTag ¶
func NewTag(ctx *pulumi.Context, name string, args *TagArgs, opts ...pulumi.ResourceOpt) (*Tag, error)
NewTag registers a new resource with the given unique name, arguments, and options.
func (*Tag) CategoryId ¶
func (r *Tag) CategoryId() *pulumi.StringOutput
The unique identifier of the parent category in which this tag will be created. Forces a new resource if changed.
func (*Tag) Description ¶
func (r *Tag) Description() *pulumi.StringOutput
A description for the tag.
func (*Tag) Name ¶
func (r *Tag) Name() *pulumi.StringOutput
The display name of the tag. The name must be unique within its category.
type TagArgs ¶
type TagArgs struct { // The unique identifier of the parent category in // which this tag will be created. Forces a new resource if changed. CategoryId interface{} // A description for the tag. Description interface{} // The display name of the tag. The name must be unique // within its category. Name interface{} }
The set of arguments for constructing a Tag resource.
type TagCategory ¶
type TagCategory struct {
// contains filtered or unexported fields
}
The `vsphere_tag_category` resource can be used to create and manage tag categories, which determine how tags are grouped together and applied to specific objects.
For more information about tags, click [here]ext-tags-general. For more information about tag categories specifically, click [here]ext-tag-categories.
~> **NOTE:** Tagging support is unsupported on direct ESXi connections and requires vCenter 6.0 or higher.
func GetTagCategory ¶
func GetTagCategory(ctx *pulumi.Context, name string, id pulumi.ID, state *TagCategoryState, opts ...pulumi.ResourceOpt) (*TagCategory, error)
GetTagCategory gets an existing TagCategory resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewTagCategory ¶
func NewTagCategory(ctx *pulumi.Context, name string, args *TagCategoryArgs, opts ...pulumi.ResourceOpt) (*TagCategory, error)
NewTagCategory registers a new resource with the given unique name, arguments, and options.
func (*TagCategory) AssociableTypes ¶
func (r *TagCategory) AssociableTypes() *pulumi.ArrayOutput
A list object types that this category is valid to be assigned to. For a full list, click here.
func (*TagCategory) Cardinality ¶
func (r *TagCategory) Cardinality() *pulumi.StringOutput
The number of tags that can be assigned from this category to a single object at once. Can be one of `SINGLE` (object can only be assigned one tag in this category), to `MULTIPLE` (object can be assigned multiple tags in this category). Forces a new resource if changed.
func (*TagCategory) Description ¶
func (r *TagCategory) Description() *pulumi.StringOutput
A description for the category.
func (*TagCategory) ID ¶
func (r *TagCategory) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*TagCategory) Name ¶
func (r *TagCategory) Name() *pulumi.StringOutput
The name of the category.
func (*TagCategory) URN ¶
func (r *TagCategory) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
type TagCategoryArgs ¶
type TagCategoryArgs struct { // A list object types that this category is // valid to be assigned to. For a full list, click // here. AssociableTypes interface{} // The number of tags that can be assigned from this // category to a single object at once. Can be one of `SINGLE` (object can only // be assigned one tag in this category), to `MULTIPLE` (object can be assigned // multiple tags in this category). Forces a new resource if changed. Cardinality interface{} // A description for the category. Description interface{} // The name of the category. Name interface{} }
The set of arguments for constructing a TagCategory resource.
type TagCategoryState ¶
type TagCategoryState struct { // A list object types that this category is // valid to be assigned to. For a full list, click // here. AssociableTypes interface{} // The number of tags that can be assigned from this // category to a single object at once. Can be one of `SINGLE` (object can only // be assigned one tag in this category), to `MULTIPLE` (object can be assigned // multiple tags in this category). Forces a new resource if changed. Cardinality interface{} // A description for the category. Description interface{} // The name of the category. Name interface{} }
Input properties used for looking up and filtering TagCategory resources.
type TagState ¶
type TagState struct { // The unique identifier of the parent category in // which this tag will be created. Forces a new resource if changed. CategoryId interface{} // A description for the tag. Description interface{} // The display name of the tag. The name must be unique // within its category. Name interface{} }
Input properties used for looking up and filtering Tag resources.
type VappContainer ¶
type VappContainer struct {
// contains filtered or unexported fields
}
The `vsphere_vapp_container` resource can be used to create and manage vApps.
For more information on vSphere vApps, see [this page]ref-vsphere-vapp.
func GetVappContainer ¶
func GetVappContainer(ctx *pulumi.Context, name string, id pulumi.ID, state *VappContainerState, opts ...pulumi.ResourceOpt) (*VappContainer, error)
GetVappContainer gets an existing VappContainer resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewVappContainer ¶
func NewVappContainer(ctx *pulumi.Context, name string, args *VappContainerArgs, opts ...pulumi.ResourceOpt) (*VappContainer, error)
NewVappContainer registers a new resource with the given unique name, arguments, and options.
func (*VappContainer) CpuExpandable ¶
func (r *VappContainer) CpuExpandable() *pulumi.BoolOutput
Determines if the reservation on a vApp container can grow beyond the specified value if the parent resource pool has unreserved resources. Default: `true`
func (*VappContainer) CpuLimit ¶
func (r *VappContainer) CpuLimit() *pulumi.IntOutput
The CPU utilization of a vApp container will not exceed this limit, even if there are available resources. Set to `-1` for unlimited. Default: `-1`
func (*VappContainer) CpuReservation ¶
func (r *VappContainer) CpuReservation() *pulumi.IntOutput
Amount of CPU (MHz) that is guaranteed available to the vApp container. Default: `0`
func (*VappContainer) CpuShareLevel ¶
func (r *VappContainer) CpuShareLevel() *pulumi.StringOutput
The CPU allocation level. The level is a simplified view of shares. Levels map to a pre-determined set of numeric values for shares. Can be one of `low`, `normal`, `high`, or `custom`. When `low`, `normal`, or `high` are specified values in `cpu_shares` will be ignored. Default: `normal`
func (*VappContainer) CpuShares ¶
func (r *VappContainer) CpuShares() *pulumi.IntOutput
The number of shares allocated for CPU. Used to determine resource allocation in case of resource contention. If this is set, `cpu_share_level` must be `custom`.
func (*VappContainer) CustomAttributes ¶
func (r *VappContainer) CustomAttributes() *pulumi.MapOutput
A list of custom attributes to set on this resource.
func (*VappContainer) ID ¶
func (r *VappContainer) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*VappContainer) MemoryExpandable ¶
func (r *VappContainer) MemoryExpandable() *pulumi.BoolOutput
Determines if the reservation on a vApp container can grow beyond the specified value if the parent resource pool has unreserved resources. Default: `true`
func (*VappContainer) MemoryLimit ¶
func (r *VappContainer) MemoryLimit() *pulumi.IntOutput
The CPU utilization of a vApp container will not exceed this limit, even if there are available resources. Set to `-1` for unlimited. Default: `-1`
func (*VappContainer) MemoryReservation ¶
func (r *VappContainer) MemoryReservation() *pulumi.IntOutput
Amount of CPU (MHz) that is guaranteed available to the vApp container. Default: `0`
func (*VappContainer) MemoryShareLevel ¶
func (r *VappContainer) MemoryShareLevel() *pulumi.StringOutput
The CPU allocation level. The level is a simplified view of shares. Levels map to a pre-determined set of numeric values for shares. Can be one of `low`, `normal`, `high`, or `custom`. When `low`, `normal`, or `high` are specified values in `memory_shares` will be ignored. Default: `normal`
func (*VappContainer) MemoryShares ¶
func (r *VappContainer) MemoryShares() *pulumi.IntOutput
The number of shares allocated for CPU. Used to determine resource allocation in case of resource contention. If this is set, `memory_share_level` must be `custom`.
func (*VappContainer) Name ¶
func (r *VappContainer) Name() *pulumi.StringOutput
The name of the vApp container.
func (*VappContainer) ParentFolderId ¶
func (r *VappContainer) ParentFolderId() *pulumi.StringOutput
The [managed object ID][docs-about-morefs] of the vApp container's parent folder.
func (*VappContainer) ParentResourcePoolId ¶
func (r *VappContainer) ParentResourcePoolId() *pulumi.StringOutput
The [managed object ID][docs-about-morefs] of the parent resource pool. This can be the root resource pool for a cluster or standalone host, or a resource pool itself. When moving a vApp container from one parent resource pool to another, both must share a common root resource pool or the move will fail.
func (*VappContainer) Tags ¶
func (r *VappContainer) Tags() *pulumi.ArrayOutput
The IDs of any tags to attach to this resource. See [here][docs-applying-tags] for a reference on how to apply tags.
func (*VappContainer) URN ¶
func (r *VappContainer) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
type VappContainerArgs ¶
type VappContainerArgs struct { // Determines if the reservation on a vApp // container can grow beyond the specified value if the parent resource pool has // unreserved resources. Default: `true` CpuExpandable interface{} // The CPU utilization of a vApp container will not // exceed this limit, even if there are available resources. Set to `-1` for // unlimited. // Default: `-1` CpuLimit interface{} // Amount of CPU (MHz) that is guaranteed // available to the vApp container. Default: `0` CpuReservation interface{} // simplified view of shares. Levels map to a pre-determined set of numeric // values for shares. Can be one of `low`, `normal`, `high`, or `custom`. When // `low`, `normal`, or `high` are specified values in `cpu_shares` will be // ignored. Default: `normal` CpuShareLevel interface{} // determine resource allocation in case of resource contention. If this is set, // `cpu_share_level` must be `custom`. CpuShares interface{} // A list of custom attributes to set on this resource. CustomAttributes interface{} // Determines if the reservation on a vApp // container can grow beyond the specified value if the parent resource pool has // unreserved resources. Default: `true` MemoryExpandable interface{} // The CPU utilization of a vApp container will not // exceed this limit, even if there are available resources. Set to `-1` for // unlimited. // Default: `-1` MemoryLimit interface{} // Amount of CPU (MHz) that is guaranteed // available to the vApp container. Default: `0` MemoryReservation interface{} // simplified view of shares. Levels map to a pre-determined set of numeric // values for shares. Can be one of `low`, `normal`, `high`, or `custom`. When // `low`, `normal`, or `high` are specified values in `memory_shares` will be // ignored. Default: `normal` MemoryShareLevel interface{} // determine resource allocation in case of resource contention. If this is set, // `memory_share_level` must be `custom`. MemoryShares interface{} // The name of the vApp container. Name interface{} // The [managed object ID][docs-about-morefs] of // the vApp container's parent folder. ParentFolderId interface{} // The [managed object ID][docs-about-morefs] // of the parent resource pool. This can be the root resource pool for a cluster // or standalone host, or a resource pool itself. When moving a vApp container // from one parent resource pool to another, both must share a common root // resource pool or the move will fail. ParentResourcePoolId interface{} // The IDs of any tags to attach to this resource. See // [here][docs-applying-tags] for a reference on how to apply tags. Tags interface{} }
The set of arguments for constructing a VappContainer resource.
type VappContainerState ¶
type VappContainerState struct { // Determines if the reservation on a vApp // container can grow beyond the specified value if the parent resource pool has // unreserved resources. Default: `true` CpuExpandable interface{} // The CPU utilization of a vApp container will not // exceed this limit, even if there are available resources. Set to `-1` for // unlimited. // Default: `-1` CpuLimit interface{} // Amount of CPU (MHz) that is guaranteed // available to the vApp container. Default: `0` CpuReservation interface{} // simplified view of shares. Levels map to a pre-determined set of numeric // values for shares. Can be one of `low`, `normal`, `high`, or `custom`. When // `low`, `normal`, or `high` are specified values in `cpu_shares` will be // ignored. Default: `normal` CpuShareLevel interface{} // determine resource allocation in case of resource contention. If this is set, // `cpu_share_level` must be `custom`. CpuShares interface{} // A list of custom attributes to set on this resource. CustomAttributes interface{} // Determines if the reservation on a vApp // container can grow beyond the specified value if the parent resource pool has // unreserved resources. Default: `true` MemoryExpandable interface{} // The CPU utilization of a vApp container will not // exceed this limit, even if there are available resources. Set to `-1` for // unlimited. // Default: `-1` MemoryLimit interface{} // Amount of CPU (MHz) that is guaranteed // available to the vApp container. Default: `0` MemoryReservation interface{} // simplified view of shares. Levels map to a pre-determined set of numeric // values for shares. Can be one of `low`, `normal`, `high`, or `custom`. When // `low`, `normal`, or `high` are specified values in `memory_shares` will be // ignored. Default: `normal` MemoryShareLevel interface{} // determine resource allocation in case of resource contention. If this is set, // `memory_share_level` must be `custom`. MemoryShares interface{} // The name of the vApp container. Name interface{} // The [managed object ID][docs-about-morefs] of // the vApp container's parent folder. ParentFolderId interface{} // The [managed object ID][docs-about-morefs] // of the parent resource pool. This can be the root resource pool for a cluster // or standalone host, or a resource pool itself. When moving a vApp container // from one parent resource pool to another, both must share a common root // resource pool or the move will fail. ParentResourcePoolId interface{} // The IDs of any tags to attach to this resource. See // [here][docs-applying-tags] for a reference on how to apply tags. Tags interface{} }
Input properties used for looking up and filtering VappContainer resources.
type VirtualDisk ¶
type VirtualDisk struct {
// contains filtered or unexported fields
}
The `vsphere_virtual_disk` resource can be used to create virtual disks outside of any given [`vsphere_virtual_machine`][docs-vsphere-virtual-machine] resource. These disks can be attached to a virtual machine by creating a disk block with the [`attach`][docs-vsphere-virtual-machine-disk-attach] parameter.
[docs-vsphere-virtual-machine]: /docs/providers/vsphere/r/virtual_machine.html [docs-vsphere-virtual-machine-disk-attach]: /docs/providers/vsphere/r/virtual_machine.html#attach
func GetVirtualDisk ¶
func GetVirtualDisk(ctx *pulumi.Context, name string, id pulumi.ID, state *VirtualDiskState, opts ...pulumi.ResourceOpt) (*VirtualDisk, error)
GetVirtualDisk gets an existing VirtualDisk resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewVirtualDisk ¶
func NewVirtualDisk(ctx *pulumi.Context, name string, args *VirtualDiskArgs, opts ...pulumi.ResourceOpt) (*VirtualDisk, error)
NewVirtualDisk registers a new resource with the given unique name, arguments, and options.
func (*VirtualDisk) AdapterType ¶
func (r *VirtualDisk) AdapterType() *pulumi.StringOutput
The adapter type for this virtual disk. Can be one of `ide`, `lsiLogic`, or `busLogic`. Default: `lsiLogic`.
func (*VirtualDisk) CreateDirectories ¶
func (r *VirtualDisk) CreateDirectories() *pulumi.BoolOutput
Tells the resource to create any directories that are a part of the `vmdk_path` parameter if they are missing. Default: `false`.
func (*VirtualDisk) Datacenter ¶
func (r *VirtualDisk) Datacenter() *pulumi.StringOutput
The name of the datacenter in which to create the disk. Can be omitted when when ESXi or if there is only one datacenter in your infrastructure.
func (*VirtualDisk) Datastore ¶
func (r *VirtualDisk) Datastore() *pulumi.StringOutput
The name of the datastore in which to create the disk.
func (*VirtualDisk) ID ¶
func (r *VirtualDisk) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*VirtualDisk) Type ¶
func (r *VirtualDisk) Type() *pulumi.StringOutput
The type of disk to create. Can be one of `eagerZeroedThick`, `lazy`, or `thin`. Default: `eagerZeroedThick`. For information on what each kind of disk provisioning policy means, click [here][docs-vmware-vm-disk-provisioning].
func (*VirtualDisk) URN ¶
func (r *VirtualDisk) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
func (*VirtualDisk) VmdkPath ¶
func (r *VirtualDisk) VmdkPath() *pulumi.StringOutput
The path, including filename, of the virtual disk to be created. This needs to end in `.vmdk`.
type VirtualDiskArgs ¶
type VirtualDiskArgs struct { // The adapter type for this virtual disk. Can be // one of `ide`, `lsiLogic`, or `busLogic`. Default: `lsiLogic`. AdapterType interface{} // Tells the resource to create any // directories that are a part of the `vmdk_path` parameter if they are missing. // Default: `false`. CreateDirectories interface{} // The name of the datacenter in which to create the // disk. Can be omitted when when ESXi or if there is only one datacenter in // your infrastructure. Datacenter interface{} // The name of the datastore in which to create the // disk. Datastore interface{} // Size of the disk (in GB). Size interface{} // The type of disk to create. Can be one of // `eagerZeroedThick`, `lazy`, or `thin`. Default: `eagerZeroedThick`. For // information on what each kind of disk provisioning policy means, click // [here][docs-vmware-vm-disk-provisioning]. Type interface{} // The path, including filename, of the virtual disk to // be created. This needs to end in `.vmdk`. VmdkPath interface{} }
The set of arguments for constructing a VirtualDisk resource.
type VirtualDiskState ¶
type VirtualDiskState struct { // The adapter type for this virtual disk. Can be // one of `ide`, `lsiLogic`, or `busLogic`. Default: `lsiLogic`. AdapterType interface{} // Tells the resource to create any // directories that are a part of the `vmdk_path` parameter if they are missing. // Default: `false`. CreateDirectories interface{} // The name of the datacenter in which to create the // disk. Can be omitted when when ESXi or if there is only one datacenter in // your infrastructure. Datacenter interface{} // The name of the datastore in which to create the // disk. Datastore interface{} // Size of the disk (in GB). Size interface{} // The type of disk to create. Can be one of // `eagerZeroedThick`, `lazy`, or `thin`. Default: `eagerZeroedThick`. For // information on what each kind of disk provisioning policy means, click // [here][docs-vmware-vm-disk-provisioning]. Type interface{} // The path, including filename, of the virtual disk to // be created. This needs to end in `.vmdk`. VmdkPath interface{} }
Input properties used for looking up and filtering VirtualDisk resources.
type VirtualMachine ¶
type VirtualMachine struct {
// contains filtered or unexported fields
}
The `vsphere_virtual_machine` resource can be used to manage the complex lifecycle of a virtual machine. It supports management of disk, network interface, and CDROM devices, creation from scratch or cloning from template, and migration through both host and storage vMotion.
For more details on working with virtual machines in vSphere, see [this page]vmware-docs-vm-management.
func GetVirtualMachine ¶
func GetVirtualMachine(ctx *pulumi.Context, name string, id pulumi.ID, state *VirtualMachineState, opts ...pulumi.ResourceOpt) (*VirtualMachine, error)
GetVirtualMachine gets an existing VirtualMachine resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewVirtualMachine ¶
func NewVirtualMachine(ctx *pulumi.Context, name string, args *VirtualMachineArgs, opts ...pulumi.ResourceOpt) (*VirtualMachine, error)
NewVirtualMachine registers a new resource with the given unique name, arguments, and options.
func (*VirtualMachine) AlternateGuestName ¶
func (r *VirtualMachine) AlternateGuestName() *pulumi.StringOutput
The guest name for the operating system when `guest_id` is `other` or `other-64`.
func (*VirtualMachine) Annotation ¶
func (r *VirtualMachine) Annotation() *pulumi.StringOutput
A user-provided description of the virtual machine. The default is no annotation.
func (*VirtualMachine) BootDelay ¶
func (r *VirtualMachine) BootDelay() *pulumi.IntOutput
The number of milliseconds to wait before starting the boot sequence. The default is no delay.
func (*VirtualMachine) BootRetryDelay ¶
func (r *VirtualMachine) BootRetryDelay() *pulumi.IntOutput
The number of milliseconds to wait before retrying the boot sequence. This only valid if `boot_retry_enabled` is true. Default: `10000` (10 seconds).
func (*VirtualMachine) BootRetryEnabled ¶
func (r *VirtualMachine) BootRetryEnabled() *pulumi.BoolOutput
If set to true, a virtual machine that fails to boot will try again after the delay defined in `boot_retry_delay`. Default: `false`.
func (*VirtualMachine) Cdrom ¶
func (r *VirtualMachine) Cdrom() *pulumi.Output
A specification for a CDROM device on this virtual machine. See CDROM options below.
func (*VirtualMachine) ChangeVersion ¶
func (r *VirtualMachine) ChangeVersion() *pulumi.StringOutput
A unique identifier for a given version of the last configuration applied, such the timestamp of the last update to the configuration.
func (*VirtualMachine) Clone ¶
func (r *VirtualMachine) Clone() *pulumi.Output
When specified, the VM will be created as a clone of a specified template. Optional customization options can be submitted as well. See creating a virtual machine from a template for more details.
func (*VirtualMachine) CpuHotAddEnabled ¶
func (r *VirtualMachine) CpuHotAddEnabled() *pulumi.BoolOutput
Allow CPUs to be added to this virtual machine while it is running.
func (*VirtualMachine) CpuHotRemoveEnabled ¶
func (r *VirtualMachine) CpuHotRemoveEnabled() *pulumi.BoolOutput
Allow CPUs to be removed to this virtual machine while it is running.
func (*VirtualMachine) CpuLimit ¶
func (r *VirtualMachine) CpuLimit() *pulumi.IntOutput
The maximum amount of CPU (in MHz) that this virtual machine can consume, regardless of available resources. The default is no limit.
func (*VirtualMachine) CpuPerformanceCountersEnabled ¶
func (r *VirtualMachine) CpuPerformanceCountersEnabled() *pulumi.BoolOutput
Enable CPU performance counters on this virtual machine. Default: `false`.
func (*VirtualMachine) CpuReservation ¶
func (r *VirtualMachine) CpuReservation() *pulumi.IntOutput
The amount of CPU (in MHz) that this virtual machine is guaranteed. The default is no reservation.
func (*VirtualMachine) CpuShareCount ¶
func (r *VirtualMachine) CpuShareCount() *pulumi.IntOutput
The number of CPU shares allocated to the virtual machine when the `cpu_share_level` is `custom`.
func (*VirtualMachine) CpuShareLevel ¶
func (r *VirtualMachine) CpuShareLevel() *pulumi.StringOutput
The allocation level for CPU resources. Can be one of `high`, `low`, `normal`, or `custom`. Default: `custom`.
func (*VirtualMachine) CustomAttributes ¶
func (r *VirtualMachine) CustomAttributes() *pulumi.MapOutput
Map of custom attribute ids to attribute value strings to set for virtual machine. See [here][docs-setting-custom-attributes] for a reference on how to set values for custom attributes.
func (*VirtualMachine) DatastoreClusterId ¶
func (r *VirtualMachine) DatastoreClusterId() *pulumi.StringOutput
The [managed object reference ID][docs-about-morefs] of the datastore cluster ID to use. This setting applies to entire virtual machine and implies that you wish to use Storage DRS with this virtual machine. See the section on virtual machine migration for details on changing this value.
func (*VirtualMachine) DatastoreId ¶
func (r *VirtualMachine) DatastoreId() *pulumi.StringOutput
The datastore ID that the ISO is located in. Requried for using a datastore ISO. Conflicts with `client_device`.
func (*VirtualMachine) DefaultIpAddress ¶
func (r *VirtualMachine) DefaultIpAddress() *pulumi.StringOutput
The IP address selected by Terraform to be used with any [provisioners][tf-docs-provisioners] configured on this resource. Whenever possible, this is the first IPv4 address that is reachable through the default gateway configured on the machine, then the first reachable IPv6 address, and then the first general discovered address if neither exist. If VMware tools is not running on the virtual machine, or if the VM is powered off, this value will be blank.
func (*VirtualMachine) Disks ¶
func (r *VirtualMachine) Disks() *pulumi.ArrayOutput
A specification for a virtual disk device on this virtual machine. See disk options below.
func (*VirtualMachine) EfiSecureBootEnabled ¶
func (r *VirtualMachine) EfiSecureBootEnabled() *pulumi.BoolOutput
When the `firmware` type is set to is `efi`, this enables EFI secure boot. Default: `false`.
func (*VirtualMachine) EnableDiskUuid ¶
func (r *VirtualMachine) EnableDiskUuid() *pulumi.BoolOutput
Expose the UUIDs of attached virtual disks to the virtual machine, allowing access to them in the guest. Default: `false`.
func (*VirtualMachine) EnableLogging ¶
func (r *VirtualMachine) EnableLogging() *pulumi.BoolOutput
Enable logging of virtual machine events to a log file stored in the virtual machine directory. Default: `false`.
func (*VirtualMachine) EptRviMode ¶
func (r *VirtualMachine) EptRviMode() *pulumi.StringOutput
The EPT/RVI (hardware memory virtualization) setting for this virtual machine. Can be one of `automatic`, `on`, or `off`. Default: `automatic`.
func (*VirtualMachine) ExtraConfig ¶
func (r *VirtualMachine) ExtraConfig() *pulumi.MapOutput
Extra configuration data for this virtual machine. Can be used to supply advanced parameters not normally in configuration, such as data for cloud-config (under the guestinfo namespace).
func (*VirtualMachine) Firmware ¶
func (r *VirtualMachine) Firmware() *pulumi.StringOutput
The firmware interface to use on the virtual machine. Can be one of `bios` or `EFI`. Default: `bios`.
func (*VirtualMachine) Folder ¶
func (r *VirtualMachine) Folder() *pulumi.StringOutput
The path to the folder to put this virtual machine in, relative to the datacenter that the resource pool is in.
func (*VirtualMachine) ForcePowerOff ¶
func (r *VirtualMachine) ForcePowerOff() *pulumi.BoolOutput
If a guest shutdown failed or timed out while updating or destroying (see `shutdown_wait_timeout`), force the power-off of the virtual machine. Default: `true`.
func (*VirtualMachine) GuestId ¶
func (r *VirtualMachine) GuestId() *pulumi.StringOutput
The guest ID for the operating system type. For a full list of possible values, see [here][vmware-docs-guest-ids]. Default: `other-64`.
func (*VirtualMachine) GuestIpAddresses ¶
func (r *VirtualMachine) GuestIpAddresses() *pulumi.ArrayOutput
The current list of IP addresses on this machine, including the value of `default_ip_address`. If VMware tools is not running on the virtual machine, or if the VM is powered off, this list will be empty. * `moid`: The [managed object reference ID][docs-about-morefs] of the created virtual machine.
func (*VirtualMachine) HostSystemId ¶
func (r *VirtualMachine) HostSystemId() *pulumi.StringOutput
An optional [managed object reference ID][docs-about-morefs] of a host to put this virtual machine on. See the section on virtual machine migration for details on changing this value. If a `host_system_id` is not supplied, vSphere will select a host in the resource pool to place the virtual machine, according to any defaults or DRS policies in place.
func (*VirtualMachine) HvMode ¶
func (r *VirtualMachine) HvMode() *pulumi.StringOutput
The (non-nested) hardware virtualization setting for this virtual machine. Can be one of `hvAuto`, `hvOn`, or `hvOff`. Default: `hvAuto`.
func (*VirtualMachine) ID ¶
func (r *VirtualMachine) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*VirtualMachine) Imported ¶
func (r *VirtualMachine) Imported() *pulumi.BoolOutput
This is flagged if the virtual machine has been imported, or the state has been migrated from a previous version of the resource. It influences the behavior of the first post-import apply operation. See the section on importing below.
func (*VirtualMachine) LatencySensitivity ¶
func (r *VirtualMachine) LatencySensitivity() *pulumi.StringOutput
Controls the scheduling delay of the virtual machine. Use a higher sensitivity for applications that require lower latency, such as VOIP, media player applications, or applications that require frequent access to mouse or keyboard devices. Can be one of `low`, `normal`, `medium`, or `high`.
func (*VirtualMachine) Memory ¶
func (r *VirtualMachine) Memory() *pulumi.IntOutput
The size of the virtual machine's memory, in MB. Default: `1024` (1 GB).
func (*VirtualMachine) MemoryHotAddEnabled ¶
func (r *VirtualMachine) MemoryHotAddEnabled() *pulumi.BoolOutput
Allow memory to be added to this virtual machine while it is running.
func (*VirtualMachine) MemoryLimit ¶
func (r *VirtualMachine) MemoryLimit() *pulumi.IntOutput
The maximum amount of memory (in MB) that this virtual machine can consume, regardless of available resources. The default is no limit.
func (*VirtualMachine) MemoryReservation ¶
func (r *VirtualMachine) MemoryReservation() *pulumi.IntOutput
The amount of memory (in MB) that this virtual machine is guaranteed. The default is no reservation.
func (*VirtualMachine) MemoryShareCount ¶
func (r *VirtualMachine) MemoryShareCount() *pulumi.IntOutput
The number of memory shares allocated to the virtual machine when the `memory_share_level` is `custom`.
func (*VirtualMachine) MemoryShareLevel ¶
func (r *VirtualMachine) MemoryShareLevel() *pulumi.StringOutput
The allocation level for memory resources. Can be one of `high`, `low`, `normal`, or `custom`. Default: `custom`.
func (*VirtualMachine) MigrateWaitTimeout ¶
func (r *VirtualMachine) MigrateWaitTimeout() *pulumi.IntOutput
The amount of time, in minutes, to wait for a virtual machine migration to complete before failing. Default: 10 minutes. Also see the section on virtual machine migration.
func (*VirtualMachine) Moid ¶
func (r *VirtualMachine) Moid() *pulumi.StringOutput
The machine object ID from VMWare
func (*VirtualMachine) Name ¶
func (r *VirtualMachine) Name() *pulumi.StringOutput
An alias for both `label` and `path`, the latter when using `attach`. Required if not using `label`.
func (*VirtualMachine) NestedHvEnabled ¶
func (r *VirtualMachine) NestedHvEnabled() *pulumi.BoolOutput
Enable nested hardware virtualization on this virtual machine, facilitating nested virtualization in the guest. Default: `false`.
func (*VirtualMachine) NetworkInterfaces ¶
func (r *VirtualMachine) NetworkInterfaces() *pulumi.ArrayOutput
A specification for a virtual NIC on this virtual machine. See network interface options below.
func (*VirtualMachine) NumCoresPerSocket ¶
func (r *VirtualMachine) NumCoresPerSocket() *pulumi.IntOutput
The number of cores to distribute among the CPUs in this virtual machine. If specified, the value supplied to `num_cpus` must be evenly divisible by this value. Default: `1`.
func (*VirtualMachine) NumCpus ¶
func (r *VirtualMachine) NumCpus() *pulumi.IntOutput
The number of virtual processors to assign to this virtual machine. Default: `1`.
func (*VirtualMachine) RebootRequired ¶
func (r *VirtualMachine) RebootRequired() *pulumi.BoolOutput
Value internal to Terraform used to determine if a configuration set change requires a reboot. This value is only useful during an update process and gets reset on refresh.
func (*VirtualMachine) ResourcePoolId ¶
func (r *VirtualMachine) ResourcePoolId() *pulumi.StringOutput
The [managed object reference ID][docs-about-morefs] of the resource pool to put this virtual machine in. See the section on virtual machine migration for details on changing this value.
func (*VirtualMachine) RunToolsScriptsAfterPowerOn ¶
func (r *VirtualMachine) RunToolsScriptsAfterPowerOn() *pulumi.BoolOutput
Enable the execution of post-power-on scripts when VMware tools is installed. Default: `true`.
func (*VirtualMachine) RunToolsScriptsAfterResume ¶
func (r *VirtualMachine) RunToolsScriptsAfterResume() *pulumi.BoolOutput
Enable the execution of post-resume scripts when VMware tools is installed. Default: `true`.
func (*VirtualMachine) RunToolsScriptsBeforeGuestReboot ¶
func (r *VirtualMachine) RunToolsScriptsBeforeGuestReboot() *pulumi.BoolOutput
Enable the execution of pre-reboot scripts when VMware tools is installed. Default: `false`.
func (*VirtualMachine) RunToolsScriptsBeforeGuestShutdown ¶
func (r *VirtualMachine) RunToolsScriptsBeforeGuestShutdown() *pulumi.BoolOutput
Enable the execution of pre-shutdown scripts when VMware tools is installed. Default: `true`.
func (*VirtualMachine) RunToolsScriptsBeforeGuestStandby ¶
func (r *VirtualMachine) RunToolsScriptsBeforeGuestStandby() *pulumi.BoolOutput
Enable the execution of pre-standby scripts when VMware tools is installed. Default: `true`.
func (*VirtualMachine) ScsiBusSharing ¶
func (r *VirtualMachine) ScsiBusSharing() *pulumi.StringOutput
Mode for sharing the SCSI bus. The modes are physicalSharing, virtualSharing, and noSharing. Default: `noSharing`.
func (*VirtualMachine) ScsiControllerCount ¶
func (r *VirtualMachine) ScsiControllerCount() *pulumi.IntOutput
The number of SCSI controllers that Terraform manages on this virtual machine. This directly affects the amount of disks you can add to the virtual machine and the maximum disk unit number. Note that lowering this value does not remove controllers. Default: `1`.
func (*VirtualMachine) ScsiType ¶
func (r *VirtualMachine) ScsiType() *pulumi.StringOutput
The type of SCSI bus this virtual machine will have. Can be one of lsilogic (LSI Logic Parallel), lsilogic-sas (LSI Logic SAS) or pvscsi (VMware Paravirtual). Defualt: `pvscsi`.
func (*VirtualMachine) ShutdownWaitTimeout ¶
func (r *VirtualMachine) ShutdownWaitTimeout() *pulumi.IntOutput
The amount of time, in minutes, to wait for a graceful guest shutdown when making necessary updates to the virtual machine. If `force_power_off` is set to true, the VM will be force powered-off after this timeout, otherwise an error is returned. Default: 3 minutes.
func (*VirtualMachine) SwapPlacementPolicy ¶
func (r *VirtualMachine) SwapPlacementPolicy() *pulumi.StringOutput
The swap file placement policy for this virtual machine. Can be one of `inherit`, `hostLocal`, or `vmDirectory`. Default: `inherit`.
func (*VirtualMachine) SyncTimeWithHost ¶
func (r *VirtualMachine) SyncTimeWithHost() *pulumi.BoolOutput
Enable guest clock synchronization with the host. Requires VMware tools to be installed. Default: `false`.
func (*VirtualMachine) Tags ¶
func (r *VirtualMachine) Tags() *pulumi.ArrayOutput
The IDs of any tags to attach to this resource. See [here][docs-applying-tags] for a reference on how to apply tags.
func (*VirtualMachine) URN ¶
func (r *VirtualMachine) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
func (*VirtualMachine) Uuid ¶
func (r *VirtualMachine) Uuid() *pulumi.StringOutput
The UUID of the virtual disk's VMDK file. This is used to track the virtual disk on the virtual machine.
func (*VirtualMachine) Vapp ¶
func (r *VirtualMachine) Vapp() *pulumi.Output
Optional vApp configuration. The only sub-key available is `properties`, which is a key/value map of properties for virtual machines imported from OVF or OVA files. See Using vApp properties to supply OVF/OVA configuration for more details.
func (*VirtualMachine) VappTransports ¶
func (r *VirtualMachine) VappTransports() *pulumi.ArrayOutput
Computed value which is only valid for cloned virtual machines. A list of vApp transport methods supported by the source virtual machine or template.
func (*VirtualMachine) VmwareToolsStatus ¶
func (r *VirtualMachine) VmwareToolsStatus() *pulumi.StringOutput
The state of VMware tools in the guest. This will determine the proper course of action for some device operations.
func (*VirtualMachine) VmxPath ¶
func (r *VirtualMachine) VmxPath() *pulumi.StringOutput
The path of the virtual machine's configuration file in the VM's datastore.
func (*VirtualMachine) WaitForGuestNetRoutable ¶
func (r *VirtualMachine) WaitForGuestNetRoutable() *pulumi.BoolOutput
Controls whether or not the guest network waiter waits for a routable address. When `false`, the waiter does not wait for a default gateway, nor are IP addresses checked against any discovered default gateways as part of its success criteria. Default: `true`.
func (*VirtualMachine) WaitForGuestNetTimeout ¶
func (r *VirtualMachine) WaitForGuestNetTimeout() *pulumi.IntOutput
The amount of time, in minutes, to wait for an available IP address on this virtual machine. A value less than 1 disables the waiter. Default: 5 minutes.
type VirtualMachineArgs ¶
type VirtualMachineArgs struct { // The guest name for the operating system // when `guest_id` is `other` or `other-64`. AlternateGuestName interface{} // A user-provided description of the virtual machine. // The default is no annotation. Annotation interface{} // The number of milliseconds to wait before starting // the boot sequence. The default is no delay. BootDelay interface{} // The number of milliseconds to wait before // retrying the boot sequence. This only valid if `boot_retry_enabled` is true. // Default: `10000` (10 seconds). BootRetryDelay interface{} // If set to true, a virtual machine that // fails to boot will try again after the delay defined in `boot_retry_delay`. // Default: `false`. BootRetryEnabled interface{} // A specification for a CDROM device on this virtual // machine. See CDROM options below. Cdrom interface{} // When specified, the VM will be created as a clone of a // specified template. Optional customization options can be submitted as well. // See creating a virtual machine from a // template for more details. Clone interface{} // Allow CPUs to be added to this virtual // machine while it is running. CpuHotAddEnabled interface{} // Allow CPUs to be removed to this // virtual machine while it is running. CpuHotRemoveEnabled interface{} // The maximum amount of CPU (in MHz) that this virtual // machine can consume, regardless of available resources. The default is no // limit. CpuLimit interface{} // Enable CPU performance // counters on this virtual machine. Default: `false`. CpuPerformanceCountersEnabled interface{} // The amount of CPU (in MHz) that this virtual // machine is guaranteed. The default is no reservation. CpuReservation interface{} // virtual machine when the `cpu_share_level` is `custom`. CpuShareCount interface{} // one of `high`, `low`, `normal`, or `custom`. Default: `custom`. CpuShareLevel interface{} // Map of custom attribute ids to attribute // value strings to set for virtual machine. See // [here][docs-setting-custom-attributes] for a reference on how to set values // for custom attributes. CustomAttributes interface{} // The [managed object reference // ID][docs-about-morefs] of the datastore cluster ID to use. This setting // applies to entire virtual machine and implies that you wish to use Storage // DRS with this virtual machine. See the section on virtual machine // migration for details on changing this value. DatastoreClusterId interface{} // The datastore ID that the ISO is located in. // Requried for using a datastore ISO. Conflicts with `client_device`. DatastoreId interface{} // A specification for a virtual disk device on this virtual // machine. See disk options below. Disks interface{} // When the `firmware` type is set to is // `efi`, this enables EFI secure boot. Default: `false`. EfiSecureBootEnabled interface{} // Expose the UUIDs of attached virtual disks to // the virtual machine, allowing access to them in the guest. Default: `false`. EnableDiskUuid interface{} // Enable logging of virtual machine events to a // log file stored in the virtual machine directory. Default: `false`. EnableLogging interface{} // The EPT/RVI (hardware memory virtualization) // setting for this virtual machine. Can be one of `automatic`, `on`, or `off`. // Default: `automatic`. EptRviMode interface{} // Extra configuration data for this virtual // machine. Can be used to supply advanced parameters not normally in // configuration, such as data for cloud-config (under the guestinfo namespace). ExtraConfig interface{} // The firmware interface to use on the virtual machine. // Can be one of `bios` or `EFI`. Default: `bios`. Firmware interface{} // The path to the folder to put this virtual machine in, // relative to the datacenter that the resource pool is in. Folder interface{} // If a guest shutdown failed or timed out while // updating or destroying (see // `shutdown_wait_timeout`), force the power-off of // the virtual machine. Default: `true`. ForcePowerOff interface{} // The guest ID for the operating system type. For a // full list of possible values, see [here][vmware-docs-guest-ids]. Default: `other-64`. GuestId interface{} // An optional [managed object reference // ID][docs-about-morefs] of a host to put this virtual machine on. See the // section on virtual machine migration for // details on changing this value. If a `host_system_id` is not supplied, // vSphere will select a host in the resource pool to place the virtual machine, // according to any defaults or DRS policies in place. HostSystemId interface{} // The (non-nested) hardware virtualization setting for // this virtual machine. Can be one of `hvAuto`, `hvOn`, or `hvOff`. Default: // `hvAuto`. HvMode interface{} // Controls the scheduling delay of the // virtual machine. Use a higher sensitivity for applications that require lower // latency, such as VOIP, media player applications, or applications that // require frequent access to mouse or keyboard devices. Can be one of `low`, // `normal`, `medium`, or `high`. LatencySensitivity interface{} // The size of the virtual machine's memory, in MB. // Default: `1024` (1 GB). Memory interface{} // Allow memory to be added to this // virtual machine while it is running. MemoryHotAddEnabled interface{} // The maximum amount of memory (in MB) that this // virtual machine can consume, regardless of available resources. The default // is no limit. MemoryLimit interface{} // The amount of memory (in MB) that this // virtual machine is guaranteed. The default is no reservation. MemoryReservation interface{} // the virtual machine when the `memory_share_level` is `custom`. MemoryShareCount interface{} // Can be one of `high`, `low`, `normal`, or `custom`. Default: `custom`. MemoryShareLevel interface{} // The amount of time, in minutes, to wait // for a virtual machine migration to complete before failing. Default: 10 // minutes. Also see the section on virtual machine // migration. MigrateWaitTimeout interface{} // An alias for both `label` and `path`, the latter when // using `attach`. Required if not using `label`. Name interface{} // Enable nested hardware virtualization on // this virtual machine, facilitating nested virtualization in the guest. // Default: `false`. NestedHvEnabled interface{} // A specification for a virtual NIC on this // virtual machine. See network interface options // below. NetworkInterfaces interface{} // The number of cores to distribute among // the CPUs in this virtual machine. If specified, the value supplied to // `num_cpus` must be evenly divisible by this value. Default: `1`. NumCoresPerSocket interface{} // The number of virtual processors to assign to this // virtual machine. Default: `1`. NumCpus interface{} // The [managed object reference // ID][docs-about-morefs] of the resource pool to put this virtual machine in. // See the section on virtual machine migration // for details on changing this value. ResourcePoolId interface{} // Enable the execution of // post-power-on scripts when VMware tools is installed. Default: `true`. RunToolsScriptsAfterPowerOn interface{} // Enable the execution of // post-resume scripts when VMware tools is installed. Default: `true`. RunToolsScriptsAfterResume interface{} // Enable the execution of // pre-reboot scripts when VMware tools is installed. Default: `false`. RunToolsScriptsBeforeGuestReboot interface{} // Enable the execution // of pre-shutdown scripts when VMware tools is installed. Default: `true`. RunToolsScriptsBeforeGuestShutdown interface{} // Enable the execution of // pre-standby scripts when VMware tools is installed. Default: `true`. RunToolsScriptsBeforeGuestStandby interface{} // Mode for sharing the SCSI bus. The modes are // physicalSharing, virtualSharing, and noSharing. Default: `noSharing`. ScsiBusSharing interface{} // The number of SCSI controllers that // Terraform manages on this virtual machine. This directly affects the amount // of disks you can add to the virtual machine and the maximum disk unit number. // Note that lowering this value does not remove controllers. Default: `1`. ScsiControllerCount interface{} // The type of SCSI bus this virtual machine will have. // Can be one of lsilogic (LSI Logic Parallel), lsilogic-sas (LSI Logic SAS) or // pvscsi (VMware Paravirtual). Defualt: `pvscsi`. ScsiType interface{} // The amount of time, in minutes, to wait // for a graceful guest shutdown when making necessary updates to the virtual // machine. If `force_power_off` is set to true, the VM will be force powered-off // after this timeout, otherwise an error is returned. Default: 3 minutes. ShutdownWaitTimeout interface{} // The swap file placement policy for this // virtual machine. Can be one of `inherit`, `hostLocal`, or `vmDirectory`. // Default: `inherit`. SwapPlacementPolicy interface{} // Enable guest clock synchronization with // the host. Requires VMware tools to be installed. Default: `false`. SyncTimeWithHost interface{} // The IDs of any tags to attach to this resource. See // [here][docs-applying-tags] for a reference on how to apply tags. Tags interface{} // Optional vApp configuration. The only sub-key available // is `properties`, which is a key/value map of properties for virtual machines // imported from OVF or OVA files. See Using vApp properties to supply OVF/OVA // configuration for // more details. Vapp interface{} // Controls whether or not the guest // network waiter waits for a routable address. When `false`, the waiter does // not wait for a default gateway, nor are IP addresses checked against any // discovered default gateways as part of its success criteria. Default: `true`. WaitForGuestNetRoutable interface{} // The amount of time, in minutes, to // wait for an available IP address on this virtual machine. A value less than 1 // disables the waiter. Default: 5 minutes. WaitForGuestNetTimeout interface{} }
The set of arguments for constructing a VirtualMachine resource.
type VirtualMachineSnapshot ¶
type VirtualMachineSnapshot struct {
// contains filtered or unexported fields
}
The `vsphere_virtual_machine_snapshot` resource can be used to manage snapshots for a virtual machine.
For more information on managing snapshots and how they work in VMware, see [here]ext-vm-snapshot-management.
~> **NOTE:** A snapshot in VMware differs from traditional disk snapshots, and can contain the actual running state of the virtual machine, data for all disks that have not been set to be independent from the snapshot (including ones that have been attached via the [attach][docs-vsphere-virtual-machine-disk-attach] parameter to the `vsphere_virtual_machine` `disk` block), and even the configuration of the virtual machine at the time of the snapshot. Virtual machine, disk activity, and configuration changes post-snapshot are not included in the original state. Use this resource with care! Neither VMware nor HashiCorp recommends retaining snapshots for a extended period of time and does NOT recommend using them as as backup feature. For more information on the limitation of virtual machine snapshots, see [here][ext-vm-snap-limitations].
[docs-vsphere-virtual-machine-disk-attach]: /docs/providers/vsphere/r/virtual_machine.html#attach [ext-vm-snap-limitations]: https://docs.vmware.com/en/VMware-vSphere/6.5/com.vmware.vsphere.vm_admin.doc/GUID-53F65726-A23B-4CF0-A7D5-48E584B88613.html
func GetVirtualMachineSnapshot ¶
func GetVirtualMachineSnapshot(ctx *pulumi.Context, name string, id pulumi.ID, state *VirtualMachineSnapshotState, opts ...pulumi.ResourceOpt) (*VirtualMachineSnapshot, error)
GetVirtualMachineSnapshot gets an existing VirtualMachineSnapshot resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewVirtualMachineSnapshot ¶
func NewVirtualMachineSnapshot(ctx *pulumi.Context, name string, args *VirtualMachineSnapshotArgs, opts ...pulumi.ResourceOpt) (*VirtualMachineSnapshot, error)
NewVirtualMachineSnapshot registers a new resource with the given unique name, arguments, and options.
func (*VirtualMachineSnapshot) Consolidate ¶
func (r *VirtualMachineSnapshot) Consolidate() *pulumi.BoolOutput
If set to `true`, the delta disks involved in this snapshot will be consolidated into the parent when this resource is destroyed.
func (*VirtualMachineSnapshot) Description ¶
func (r *VirtualMachineSnapshot) Description() *pulumi.StringOutput
A description for the snapshot.
func (*VirtualMachineSnapshot) ID ¶
func (r *VirtualMachineSnapshot) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*VirtualMachineSnapshot) Memory ¶
func (r *VirtualMachineSnapshot) Memory() *pulumi.BoolOutput
If set to `true`, a dump of the internal state of the virtual machine is included in the snapshot.
func (*VirtualMachineSnapshot) Quiesce ¶
func (r *VirtualMachineSnapshot) Quiesce() *pulumi.BoolOutput
If set to `true`, and the virtual machine is powered on when the snapshot is taken, VMware Tools is used to quiesce the file system in the virtual machine.
func (*VirtualMachineSnapshot) RemoveChildren ¶
func (r *VirtualMachineSnapshot) RemoveChildren() *pulumi.BoolOutput
If set to `true`, the entire snapshot subtree is removed when this resource is destroyed.
func (*VirtualMachineSnapshot) SnapshotName ¶
func (r *VirtualMachineSnapshot) SnapshotName() *pulumi.StringOutput
The name of the snapshot.
func (*VirtualMachineSnapshot) URN ¶
func (r *VirtualMachineSnapshot) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
func (*VirtualMachineSnapshot) VirtualMachineUuid ¶
func (r *VirtualMachineSnapshot) VirtualMachineUuid() *pulumi.StringOutput
The virtual machine UUID.
type VirtualMachineSnapshotArgs ¶
type VirtualMachineSnapshotArgs struct { // If set to `true`, the delta disks involved in this // snapshot will be consolidated into the parent when this resource is // destroyed. Consolidate interface{} // A description for the snapshot. Description interface{} // If set to `true`, a dump of the internal state of the // virtual machine is included in the snapshot. Memory interface{} // If set to `true`, and the virtual machine is powered // on when the snapshot is taken, VMware Tools is used to quiesce the file // system in the virtual machine. Quiesce interface{} // If set to `true`, the entire snapshot subtree // is removed when this resource is destroyed. RemoveChildren interface{} // The name of the snapshot. SnapshotName interface{} // The virtual machine UUID. VirtualMachineUuid interface{} }
The set of arguments for constructing a VirtualMachineSnapshot resource.
type VirtualMachineSnapshotState ¶
type VirtualMachineSnapshotState struct { // If set to `true`, the delta disks involved in this // snapshot will be consolidated into the parent when this resource is // destroyed. Consolidate interface{} // A description for the snapshot. Description interface{} // If set to `true`, a dump of the internal state of the // virtual machine is included in the snapshot. Memory interface{} // If set to `true`, and the virtual machine is powered // on when the snapshot is taken, VMware Tools is used to quiesce the file // system in the virtual machine. Quiesce interface{} // If set to `true`, the entire snapshot subtree // is removed when this resource is destroyed. RemoveChildren interface{} // The name of the snapshot. SnapshotName interface{} // The virtual machine UUID. VirtualMachineUuid interface{} }
Input properties used for looking up and filtering VirtualMachineSnapshot resources.
type VirtualMachineState ¶
type VirtualMachineState struct { // The guest name for the operating system // when `guest_id` is `other` or `other-64`. AlternateGuestName interface{} // A user-provided description of the virtual machine. // The default is no annotation. Annotation interface{} // The number of milliseconds to wait before starting // the boot sequence. The default is no delay. BootDelay interface{} // The number of milliseconds to wait before // retrying the boot sequence. This only valid if `boot_retry_enabled` is true. // Default: `10000` (10 seconds). BootRetryDelay interface{} // If set to true, a virtual machine that // fails to boot will try again after the delay defined in `boot_retry_delay`. // Default: `false`. BootRetryEnabled interface{} // A specification for a CDROM device on this virtual // machine. See CDROM options below. Cdrom interface{} // A unique identifier for a given version of the last // configuration applied, such the timestamp of the last update to the // configuration. ChangeVersion interface{} // When specified, the VM will be created as a clone of a // specified template. Optional customization options can be submitted as well. // See creating a virtual machine from a // template for more details. Clone interface{} // Allow CPUs to be added to this virtual // machine while it is running. CpuHotAddEnabled interface{} // Allow CPUs to be removed to this // virtual machine while it is running. CpuHotRemoveEnabled interface{} // The maximum amount of CPU (in MHz) that this virtual // machine can consume, regardless of available resources. The default is no // limit. CpuLimit interface{} // Enable CPU performance // counters on this virtual machine. Default: `false`. CpuPerformanceCountersEnabled interface{} // The amount of CPU (in MHz) that this virtual // machine is guaranteed. The default is no reservation. CpuReservation interface{} // virtual machine when the `cpu_share_level` is `custom`. CpuShareCount interface{} // one of `high`, `low`, `normal`, or `custom`. Default: `custom`. CpuShareLevel interface{} // Map of custom attribute ids to attribute // value strings to set for virtual machine. See // [here][docs-setting-custom-attributes] for a reference on how to set values // for custom attributes. CustomAttributes interface{} // The [managed object reference // ID][docs-about-morefs] of the datastore cluster ID to use. This setting // applies to entire virtual machine and implies that you wish to use Storage // DRS with this virtual machine. See the section on virtual machine // migration for details on changing this value. DatastoreClusterId interface{} // The datastore ID that the ISO is located in. // Requried for using a datastore ISO. Conflicts with `client_device`. DatastoreId interface{} // The IP address selected by Terraform to be used with // any [provisioners][tf-docs-provisioners] configured on this resource. // Whenever possible, this is the first IPv4 address that is reachable through // the default gateway configured on the machine, then the first reachable IPv6 // address, and then the first general discovered address if neither exist. If // VMware tools is not running on the virtual machine, or if the VM is powered // off, this value will be blank. DefaultIpAddress interface{} // A specification for a virtual disk device on this virtual // machine. See disk options below. Disks interface{} // When the `firmware` type is set to is // `efi`, this enables EFI secure boot. Default: `false`. EfiSecureBootEnabled interface{} // Expose the UUIDs of attached virtual disks to // the virtual machine, allowing access to them in the guest. Default: `false`. EnableDiskUuid interface{} // Enable logging of virtual machine events to a // log file stored in the virtual machine directory. Default: `false`. EnableLogging interface{} // The EPT/RVI (hardware memory virtualization) // setting for this virtual machine. Can be one of `automatic`, `on`, or `off`. // Default: `automatic`. EptRviMode interface{} // Extra configuration data for this virtual // machine. Can be used to supply advanced parameters not normally in // configuration, such as data for cloud-config (under the guestinfo namespace). ExtraConfig interface{} // The firmware interface to use on the virtual machine. // Can be one of `bios` or `EFI`. Default: `bios`. Firmware interface{} // The path to the folder to put this virtual machine in, // relative to the datacenter that the resource pool is in. Folder interface{} // If a guest shutdown failed or timed out while // updating or destroying (see // `shutdown_wait_timeout`), force the power-off of // the virtual machine. Default: `true`. ForcePowerOff interface{} // The guest ID for the operating system type. For a // full list of possible values, see [here][vmware-docs-guest-ids]. Default: `other-64`. GuestId interface{} // The current list of IP addresses on this machine, // including the value of `default_ip_address`. If VMware tools is not running // on the virtual machine, or if the VM is powered off, this list will be empty. // * `moid`: The [managed object reference ID][docs-about-morefs] of the created // virtual machine. GuestIpAddresses interface{} // An optional [managed object reference // ID][docs-about-morefs] of a host to put this virtual machine on. See the // section on virtual machine migration for // details on changing this value. If a `host_system_id` is not supplied, // vSphere will select a host in the resource pool to place the virtual machine, // according to any defaults or DRS policies in place. HostSystemId interface{} // The (non-nested) hardware virtualization setting for // this virtual machine. Can be one of `hvAuto`, `hvOn`, or `hvOff`. Default: // `hvAuto`. HvMode interface{} // This is flagged if the virtual machine has been imported, or the // state has been migrated from a previous version of the resource. It // influences the behavior of the first post-import apply operation. See the // section on importing below. Imported interface{} // Controls the scheduling delay of the // virtual machine. Use a higher sensitivity for applications that require lower // latency, such as VOIP, media player applications, or applications that // require frequent access to mouse or keyboard devices. Can be one of `low`, // `normal`, `medium`, or `high`. LatencySensitivity interface{} // The size of the virtual machine's memory, in MB. // Default: `1024` (1 GB). Memory interface{} // Allow memory to be added to this // virtual machine while it is running. MemoryHotAddEnabled interface{} // The maximum amount of memory (in MB) that this // virtual machine can consume, regardless of available resources. The default // is no limit. MemoryLimit interface{} // The amount of memory (in MB) that this // virtual machine is guaranteed. The default is no reservation. MemoryReservation interface{} // the virtual machine when the `memory_share_level` is `custom`. MemoryShareCount interface{} // Can be one of `high`, `low`, `normal`, or `custom`. Default: `custom`. MemoryShareLevel interface{} // The amount of time, in minutes, to wait // for a virtual machine migration to complete before failing. Default: 10 // minutes. Also see the section on virtual machine // migration. MigrateWaitTimeout interface{} // The machine object ID from VMWare Moid interface{} // An alias for both `label` and `path`, the latter when // using `attach`. Required if not using `label`. Name interface{} // Enable nested hardware virtualization on // this virtual machine, facilitating nested virtualization in the guest. // Default: `false`. NestedHvEnabled interface{} // A specification for a virtual NIC on this // virtual machine. See network interface options // below. NetworkInterfaces interface{} // The number of cores to distribute among // the CPUs in this virtual machine. If specified, the value supplied to // `num_cpus` must be evenly divisible by this value. Default: `1`. NumCoresPerSocket interface{} // The number of virtual processors to assign to this // virtual machine. Default: `1`. NumCpus interface{} // Value internal to Terraform used to determine if a // configuration set change requires a reboot. This value is only useful during // an update process and gets reset on refresh. RebootRequired interface{} // The [managed object reference // ID][docs-about-morefs] of the resource pool to put this virtual machine in. // See the section on virtual machine migration // for details on changing this value. ResourcePoolId interface{} // Enable the execution of // post-power-on scripts when VMware tools is installed. Default: `true`. RunToolsScriptsAfterPowerOn interface{} // Enable the execution of // post-resume scripts when VMware tools is installed. Default: `true`. RunToolsScriptsAfterResume interface{} // Enable the execution of // pre-reboot scripts when VMware tools is installed. Default: `false`. RunToolsScriptsBeforeGuestReboot interface{} // Enable the execution // of pre-shutdown scripts when VMware tools is installed. Default: `true`. RunToolsScriptsBeforeGuestShutdown interface{} // Enable the execution of // pre-standby scripts when VMware tools is installed. Default: `true`. RunToolsScriptsBeforeGuestStandby interface{} // Mode for sharing the SCSI bus. The modes are // physicalSharing, virtualSharing, and noSharing. Default: `noSharing`. ScsiBusSharing interface{} // The number of SCSI controllers that // Terraform manages on this virtual machine. This directly affects the amount // of disks you can add to the virtual machine and the maximum disk unit number. // Note that lowering this value does not remove controllers. Default: `1`. ScsiControllerCount interface{} // The type of SCSI bus this virtual machine will have. // Can be one of lsilogic (LSI Logic Parallel), lsilogic-sas (LSI Logic SAS) or // pvscsi (VMware Paravirtual). Defualt: `pvscsi`. ScsiType interface{} // The amount of time, in minutes, to wait // for a graceful guest shutdown when making necessary updates to the virtual // machine. If `force_power_off` is set to true, the VM will be force powered-off // after this timeout, otherwise an error is returned. Default: 3 minutes. ShutdownWaitTimeout interface{} // The swap file placement policy for this // virtual machine. Can be one of `inherit`, `hostLocal`, or `vmDirectory`. // Default: `inherit`. SwapPlacementPolicy interface{} // Enable guest clock synchronization with // the host. Requires VMware tools to be installed. Default: `false`. SyncTimeWithHost interface{} // The IDs of any tags to attach to this resource. See // [here][docs-applying-tags] for a reference on how to apply tags. Tags interface{} // The UUID of the virtual disk's VMDK file. This is used to track the // virtual disk on the virtual machine. Uuid interface{} // Optional vApp configuration. The only sub-key available // is `properties`, which is a key/value map of properties for virtual machines // imported from OVF or OVA files. See Using vApp properties to supply OVF/OVA // configuration for // more details. Vapp interface{} // Computed value which is only valid for cloned virtual // machines. A list of vApp transport methods supported by the source virtual // machine or template. VappTransports interface{} // The state of VMware tools in the guest. This will // determine the proper course of action for some device operations. VmwareToolsStatus interface{} // The path of the virtual machine's configuration file in the VM's // datastore. VmxPath interface{} // Controls whether or not the guest // network waiter waits for a routable address. When `false`, the waiter does // not wait for a default gateway, nor are IP addresses checked against any // discovered default gateways as part of its success criteria. Default: `true`. WaitForGuestNetRoutable interface{} // The amount of time, in minutes, to // wait for an available IP address on this virtual machine. A value less than 1 // disables the waiter. Default: 5 minutes. WaitForGuestNetTimeout interface{} }
Input properties used for looking up and filtering VirtualMachine resources.
type Virtual_machineArgs ¶
type Virtual_machineArgs struct { // The [managed object reference // ID][docs-about-morefs] of the datacenter the virtual machine is located in. // This can be omitted if the search path used in `name` is an absolute path. // For default datacenters, use the `id` attribute from an empty // `vsphere_datacenter` data source. DatacenterId interface{} // The name of the virtual machine. This can be a name or // path. Name interface{} // The number of SCSI controllers to // scan for disk attributes and controller types on. Default: `1`. ScsiControllerScanCount interface{} }
A collection of arguments for invoking Virtual_machine.
type Virtual_machineResult ¶
type Virtual_machineResult struct { // The alternate guest name of the virtual machine when // guest_id is a non-specific operating system, like `otherGuest`. AlternateGuestName interface{} // Information about each of the disks on this virtual machine or // template. These are sorted by bus and unit number so that they can be applied // to a `vsphere_virtual_machine` resource in the order the resource expects // while cloning. This is useful for discovering certain disk settings while // performing a linked clone, as all settings that are output by this data // source must be the same on the destination virtual machine as the source. // Only the first number of controllers defined by `scsi_controller_scan_count` // are scanned for disks. The sub-attributes are: Disks interface{} // The firmware type for this virtual machine. Can be `bios` or `efi`. Firmware interface{} // The guest ID of the virtual machine or template. GuestId interface{} // The network interface types for each network // interface found on the virtual machine, in device bus order. Will be one of // `e1000`, `e1000e`, `pcnet32`, `sriov`, `vmxnet2`, or `vmxnet3`. NetworkInterfaceTypes interface{} // Mode for sharing the SCSI bus. The modes are // physicalSharing, virtualSharing, and noSharing. Only the first number of // controllers defined by `scsi_controller_scan_count` are scanned. ScsiBusSharing interface{} // The common type of all SCSI controllers on this virtual machine. // Will be one of `lsilogic` (LSI Logic Parallel), `lsilogic-sas` (LSI Logic // SAS), `pvscsi` (VMware Paravirtual), `buslogic` (BusLogic), or `mixed` when // there are multiple controller types. Only the first number of controllers // defined by `scsi_controller_scan_count` are scanned. ScsiType interface{} // id is the provider-assigned unique ID for this managed resource. Id interface{} }
A collection of values returned by Virtual_machine.
func Virtual_machine ¶
func Virtual_machine(ctx *pulumi.Context, args *Virtual_machineArgs) (*Virtual_machineResult, error)
The `vsphere_virtual_machine` data source can be used to find the UUID of an existing virtual machine or template. Its most relevant purpose is for finding the UUID of a template to be used as the source for cloning into a new [`vsphere_virtual_machine`][docs-virtual-machine-resource] resource. It also reads the guest ID so that can be supplied as well.
[docs-virtual-machine-resource]: /docs/providers/vsphere/r/virtual_machine.html
type VmfsDatastore ¶
type VmfsDatastore struct {
// contains filtered or unexported fields
}
The `vsphere_vmfs_datastore` resource can be used to create and manage VMFS datastores on an ESXi host or a set of hosts. The resource supports using any SCSI device that can generally be used in a datastore, such as local disks, or disks presented to a host or multiple hosts over Fibre Channel or iSCSI. Devices can be specified manually, or discovered using the [`vsphere_vmfs_disks`][data-source-vmfs-disks] data source.
[data-source-vmfs-disks]: /docs/providers/vsphere/d/vmfs_disks.html
func GetVmfsDatastore ¶
func GetVmfsDatastore(ctx *pulumi.Context, name string, id pulumi.ID, state *VmfsDatastoreState, opts ...pulumi.ResourceOpt) (*VmfsDatastore, error)
GetVmfsDatastore gets an existing VmfsDatastore resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewVmfsDatastore ¶
func NewVmfsDatastore(ctx *pulumi.Context, name string, args *VmfsDatastoreArgs, opts ...pulumi.ResourceOpt) (*VmfsDatastore, error)
NewVmfsDatastore registers a new resource with the given unique name, arguments, and options.
func (*VmfsDatastore) Accessible ¶
func (r *VmfsDatastore) Accessible() *pulumi.BoolOutput
The connectivity status of the datastore. If this is `false`, some other computed attributes may be out of date.
func (*VmfsDatastore) Capacity ¶
func (r *VmfsDatastore) Capacity() *pulumi.IntOutput
Maximum capacity of the datastore, in megabytes.
func (*VmfsDatastore) CustomAttributes ¶
func (r *VmfsDatastore) CustomAttributes() *pulumi.MapOutput
Map of custom attribute ids to attribute value string to set on datastore resource. See [here][docs-setting-custom-attributes] for a reference on how to set values for custom attributes.
func (*VmfsDatastore) DatastoreClusterId ¶
func (r *VmfsDatastore) DatastoreClusterId() *pulumi.StringOutput
The [managed object ID][docs-about-morefs] of a datastore cluster to put this datastore in. Conflicts with `folder`.
func (*VmfsDatastore) Disks ¶
func (r *VmfsDatastore) Disks() *pulumi.ArrayOutput
The disks to use with the datastore.
func (*VmfsDatastore) Folder ¶
func (r *VmfsDatastore) Folder() *pulumi.StringOutput
The relative path to a folder to put this datastore in. This is a path relative to the datacenter you are deploying the datastore to. Example: for the `dc1` datacenter, and a provided `folder` of `foo/bar`, Terraform will place a datastore named `terraform-test` in a datastore folder located at `/dc1/datastore/foo/bar`, with the final inventory path being `/dc1/datastore/foo/bar/terraform-test`. Conflicts with `datastore_cluster_id`.
func (*VmfsDatastore) FreeSpace ¶
func (r *VmfsDatastore) FreeSpace() *pulumi.IntOutput
Available space of this datastore, in megabytes.
func (*VmfsDatastore) HostSystemId ¶
func (r *VmfsDatastore) HostSystemId() *pulumi.StringOutput
The [managed object ID][docs-about-morefs] of the host to set the datastore up on. Note that this is not necessarily the only host that the datastore will be set up on - see here for more info. Forces a new resource if changed.
func (*VmfsDatastore) ID ¶
func (r *VmfsDatastore) ID() *pulumi.IDOutput
ID is this resource's unique identifier assigned by its provider.
func (*VmfsDatastore) MaintenanceMode ¶
func (r *VmfsDatastore) MaintenanceMode() *pulumi.StringOutput
The current maintenance mode state of the datastore.
func (*VmfsDatastore) MultipleHostAccess ¶
func (r *VmfsDatastore) MultipleHostAccess() *pulumi.BoolOutput
If `true`, more than one host in the datacenter has been configured with access to the datastore.
func (*VmfsDatastore) Name ¶
func (r *VmfsDatastore) Name() *pulumi.StringOutput
The name of the datastore. Forces a new resource if changed.
func (*VmfsDatastore) Tags ¶
func (r *VmfsDatastore) Tags() *pulumi.ArrayOutput
The IDs of any tags to attach to this resource. See [here][docs-applying-tags] for a reference on how to apply tags.
func (*VmfsDatastore) URN ¶
func (r *VmfsDatastore) URN() *pulumi.URNOutput
URN is this resource's unique name assigned by Pulumi.
func (*VmfsDatastore) UncommittedSpace ¶
func (r *VmfsDatastore) UncommittedSpace() *pulumi.IntOutput
Total additional storage space, in megabytes, potentially used by all virtual machines on this datastore.
func (*VmfsDatastore) Url ¶
func (r *VmfsDatastore) Url() *pulumi.StringOutput
The unique locator for the datastore.
type VmfsDatastoreArgs ¶
type VmfsDatastoreArgs struct { // Map of custom attribute ids to attribute // value string to set on datastore resource. See // [here][docs-setting-custom-attributes] for a reference on how to set values // for custom attributes. CustomAttributes interface{} // The [managed object // ID][docs-about-morefs] of a datastore cluster to put this datastore in. // Conflicts with `folder`. DatastoreClusterId interface{} // The disks to use with the datastore. Disks interface{} // The relative path to a folder to put this datastore in. // This is a path relative to the datacenter you are deploying the datastore to. // Example: for the `dc1` datacenter, and a provided `folder` of `foo/bar`, // Terraform will place a datastore named `terraform-test` in a datastore folder // located at `/dc1/datastore/foo/bar`, with the final inventory path being // `/dc1/datastore/foo/bar/terraform-test`. Conflicts with // `datastore_cluster_id`. Folder interface{} // The [managed object ID][docs-about-morefs] of // the host to set the datastore up on. Note that this is not necessarily the // only host that the datastore will be set up on - see // here for more info. Forces a // new resource if changed. HostSystemId interface{} // The name of the datastore. Forces a new resource if // changed. Name interface{} // The IDs of any tags to attach to this resource. See // [here][docs-applying-tags] for a reference on how to apply tags. Tags interface{} }
The set of arguments for constructing a VmfsDatastore resource.
type VmfsDatastoreState ¶
type VmfsDatastoreState struct { // The connectivity status of the datastore. If this is `false`, // some other computed attributes may be out of date. Accessible interface{} // Maximum capacity of the datastore, in megabytes. Capacity interface{} // Map of custom attribute ids to attribute // value string to set on datastore resource. See // [here][docs-setting-custom-attributes] for a reference on how to set values // for custom attributes. CustomAttributes interface{} // The [managed object // ID][docs-about-morefs] of a datastore cluster to put this datastore in. // Conflicts with `folder`. DatastoreClusterId interface{} // The disks to use with the datastore. Disks interface{} // The relative path to a folder to put this datastore in. // This is a path relative to the datacenter you are deploying the datastore to. // Example: for the `dc1` datacenter, and a provided `folder` of `foo/bar`, // Terraform will place a datastore named `terraform-test` in a datastore folder // located at `/dc1/datastore/foo/bar`, with the final inventory path being // `/dc1/datastore/foo/bar/terraform-test`. Conflicts with // `datastore_cluster_id`. Folder interface{} // Available space of this datastore, in megabytes. FreeSpace interface{} // The [managed object ID][docs-about-morefs] of // the host to set the datastore up on. Note that this is not necessarily the // only host that the datastore will be set up on - see // here for more info. Forces a // new resource if changed. HostSystemId interface{} // The current maintenance mode state of the datastore. MaintenanceMode interface{} // If `true`, more than one host in the datacenter has // been configured with access to the datastore. MultipleHostAccess interface{} // The name of the datastore. Forces a new resource if // changed. Name interface{} // The IDs of any tags to attach to this resource. See // [here][docs-applying-tags] for a reference on how to apply tags. Tags interface{} // Total additional storage space, in megabytes, // potentially used by all virtual machines on this datastore. UncommittedSpace interface{} // The unique locator for the datastore. Url interface{} }
Input properties used for looking up and filtering VmfsDatastore resources.
Source Files ¶
- computeCluster.go
- computeClusterHostGroup.go
- computeClusterVmAffinityRule.go
- computeClusterVmDependencyRule.go
- computeClusterVmGroup.go
- computeClusterVmHostRule.go
- customAttribute.go
- datacenter.go
- datastoreCluster.go
- datastoreClusterVmAntiAffinityRule.go
- distributedPortGroup.go
- distributedVirtualSwitch.go
- dpmHostOverride.go
- drsVmOverride.go
- file.go
- folder.go
- getComputeCluster.go
- getCustomAttribute.go
- getDatacenter.go
- getDatastore.go
- getDatastoreCluster.go
- getDistributedVirtualSwitch.go
- getHost.go
- getNetwork.go
- getResourcePool.go
- getTag.go
- getTagCategory.go
- getVirtualMachine.go
- getVmfsDisks.go
- haVmOverride.go
- hostPortGroup.go
- hostVirtualSwitch.go
- license.go
- nasDatastore.go
- resourcePool.go
- storageDrsVmOverride.go
- tag.go
- tagCategory.go
- vappContainer.go
- virtualDisk.go
- virtualMachine.go
- virtualMachineSnapshot.go
- virtual_machine.go
- vmfsDatastore.go