PlacementPolicy

class PlacementPolicy : KotlinCustomResource

A vSphere Distributed Resource Scheduler (DRS) placement policy Uses Azure REST API version 2022-05-01. In version 1.x of the Azure Native provider, it used API version 2021-12-01. Other available API versions: 2023-03-01, 2023-09-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
{
AffinityStrength = AzureNative.AVS.AffinityStrength.Must,
AffinityType = AzureNative.AVS.AffinityType.AntiAffinity,
AzureHybridBenefitType = AzureNative.AVS.AzureHybridBenefitType.SqlHost,
HostMembers = new[]
{
"fakehost22.nyc1.kubernetes.center",
"fakehost23.nyc1.kubernetes.center",
"fakehost24.nyc1.kubernetes.center",
},
Type = "VmHost",
VmMembers = new[]
{
"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1/virtualMachines/vm-128",
"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1/virtualMachines/vm-256",
},
},
ResourceGroupName = "group1",
});
});
package main
import (
avs "github.com/pulumi/pulumi-azure-native-sdk/avs/v2"
"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.VmHostPlacementPolicyPropertiesArgs{
AffinityStrength: pulumi.String(avs.AffinityStrengthMust),
AffinityType: pulumi.String(avs.AffinityTypeAntiAffinity),
AzureHybridBenefitType: pulumi.String(avs.AzureHybridBenefitTypeSqlHost),
HostMembers: pulumi.StringArray{
pulumi.String("fakehost22.nyc1.kubernetes.center"),
pulumi.String("fakehost23.nyc1.kubernetes.center"),
pulumi.String("fakehost24.nyc1.kubernetes.center"),
},
Type: pulumi.String("VmHost"),
VmMembers: pulumi.StringArray{
pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1/virtualMachines/vm-128"),
pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1/virtualMachines/vm-256"),
},
},
ResourceGroupName: pulumi.String("group1"),
})
if err != nil {
return err
}
return nil
})
}
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(VmHostPlacementPolicyPropertiesArgs.builder()
.affinityStrength("Must")
.affinityType("AntiAffinity")
.azureHybridBenefitType("SqlHost")
.hostMembers(
"fakehost22.nyc1.kubernetes.center",
"fakehost23.nyc1.kubernetes.center",
"fakehost24.nyc1.kubernetes.center")
.type("VmHost")
.vmMembers(
"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1/virtualMachines/vm-128",
"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.AVS/privateClouds/cloud1/clusters/cluster1/virtualMachines/vm-256")
.build())
.resourceGroupName("group1")
.build());
}
}

Import

An existing resource can be imported using its type token, name, and identifier, e.g.

$ pulumi import azure-native:avs:PlacementPolicy policy1 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/clusters/{clusterName}/placementPolicies/{placementPolicyName}

Properties

Link copied to clipboard
val id: Output<String>
Link copied to clipboard
val name: Output<String>

Resource name.

Link copied to clipboard
Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val type: Output<String>

Resource type.

Link copied to clipboard
val urn: Output<String>