Placement Policy Args
data class PlacementPolicyArgs(val clusterName: Output<String>? = null, val placementPolicyName: Output<String>? = null, val privateCloudName: Output<String>? = null, val properties: Output<Either<VmHostPlacementPolicyPropertiesArgs, VmVmPlacementPolicyPropertiesArgs>>? = null, val resourceGroupName: Output<String>? = null) : ConvertibleToJava<PlacementPolicyArgs>
A vSphere Distributed Resource Scheduler (DRS) placement policy API Version: 2021-12-01.
Example Usage
PlacementPolicies_CreateOrUpdate
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var placementPolicy = new AzureNative.AVS.PlacementPolicy("placementPolicy", new()
{
ClusterName = "cluster1",
PlacementPolicyName = "policy1",
PrivateCloudName = "cloud1",
Properties = new AzureNative.AVS.Inputs.VmHostPlacementPolicyPropertiesArgs
{
AffinityType = "AntiAffinity",
HostMembers = new[]
{
"fakehost22.nyc1.kubernetes.center",
"fakehost23.nyc1.kubernetes.center",
"fakehost24.nyc1.kubernetes.center",
},
Type = "VmHost",
VmMembers = new[]
{
"/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1/virtualMachines/vm-128",
"/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1/virtualMachines/vm-256",
},
},
ResourceGroupName = "group1",
});
});
Content copied to clipboard
package main
import (
avs "github.com/pulumi/pulumi-azure-native-sdk/avs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := avs.NewPlacementPolicy(ctx, "placementPolicy", &avs.PlacementPolicyArgs{
ClusterName: pulumi.String("cluster1"),
PlacementPolicyName: pulumi.String("policy1"),
PrivateCloudName: pulumi.String("cloud1"),
Properties: avs.VmHostPlacementPolicyProperties{
AffinityType: "AntiAffinity",
HostMembers: []string{
"fakehost22.nyc1.kubernetes.center",
"fakehost23.nyc1.kubernetes.center",
"fakehost24.nyc1.kubernetes.center",
},
Type: "VmHost",
VmMembers: []string{
"/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1/virtualMachines/vm-128",
"/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1/virtualMachines/vm-256",
},
},
ResourceGroupName: pulumi.String("group1"),
})
if err != nil {
return err
}
return nil
})
}
Content copied to clipboard
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.avs.PlacementPolicy;
import com.pulumi.azurenative.avs.PlacementPolicyArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var placementPolicy = new PlacementPolicy("placementPolicy", PlacementPolicyArgs.builder()
.clusterName("cluster1")
.placementPolicyName("policy1")
.privateCloudName("cloud1")
.properties(Map.ofEntries(
Map.entry("affinityType", "AntiAffinity"),
Map.entry("hostMembers",
"fakehost22.nyc1.kubernetes.center",
"fakehost23.nyc1.kubernetes.center",
"fakehost24.nyc1.kubernetes.center"),
Map.entry("type", "VmHost"),
Map.entry("vmMembers",
"/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1/virtualMachines/vm-128",
"/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1/virtualMachines/vm-256")
))
.resourceGroupName("group1")
.build());
}
}
Content copied to clipboard
Import
An existing resource can be imported using its type token, name, and identifier, e.g.
$ pulumi import azure-native:avs:PlacementPolicy policy1 /subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1/placementPolicies/policy1
Content copied to clipboard
Constructors
Link copied to clipboard
constructor(clusterName: Output<String>? = null, placementPolicyName: Output<String>? = null, privateCloudName: Output<String>? = null, properties: Output<Either<VmHostPlacementPolicyPropertiesArgs, VmVmPlacementPolicyPropertiesArgs>>? = null, resourceGroupName: Output<String>? = null)
Properties
Link copied to clipboard
Name of the cluster in the private cloud
Link copied to clipboard
Name of the VMware vSphere Distributed Resource Scheduler (DRS) placement policy
Link copied to clipboard
Name of the private cloud
Link copied to clipboard
val properties: Output<Either<VmHostPlacementPolicyPropertiesArgs, VmVmPlacementPolicyPropertiesArgs>>? = null
placement policy properties
Link copied to clipboard
The name of the resource group. The name is case insensitive.