Machine

class Machine : KotlinCustomResource

Describes a hybrid machine. Uses Azure REST API version 2024-07-10. In version 2.x of the Azure Native provider, it used API version 2022-12-27. Other available API versions: 2020-08-15-preview, 2021-01-28-preview, 2021-03-25-preview, 2021-04-22-preview, 2021-05-17-preview, 2021-05-20, 2021-06-10-preview, 2021-12-10-preview, 2022-03-10, 2022-05-10-preview, 2022-08-11-preview, 2022-11-10, 2022-12-27, 2022-12-27-preview, 2023-03-15-preview, 2023-06-20-preview, 2023-10-03-preview, 2024-03-31-preview, 2024-05-20-preview, 2024-07-31-preview, 2024-09-10-preview, 2024-11-10-preview, 2025-01-13. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native hybridcompute [ApiVersion]. See the ../../../version-guide/#accessing-any-api-version-via-local-packages for details.

Example Usage

Create or Update a Machine

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var machine = new AzureNative.HybridCompute.Machine("machine", new()
{
ClientPublicKey = "string",
Identity = new AzureNative.HybridCompute.Inputs.IdentityArgs
{
Type = AzureNative.HybridCompute.ResourceIdentityType.SystemAssigned,
},
Location = "eastus2euap",
LocationData = new AzureNative.HybridCompute.Inputs.LocationDataArgs
{
Name = "Redmond",
},
MachineName = "myMachine",
OsProfile = new AzureNative.HybridCompute.Inputs.OSProfileArgs
{
WindowsConfiguration = new AzureNative.HybridCompute.Inputs.OSProfileWindowsConfigurationArgs
{
EnableHotpatching = true,
},
},
ParentClusterResourceId = "{AzureStackHCIResourceId}",
PrivateLinkScopeResourceId = "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName",
ResourceGroupName = "myResourceGroup",
VmId = "b7a098cc-b0b8-46e8-a205-62f301a62a8f",
});
});
package main
import (
hybridcompute "github.com/pulumi/pulumi-azure-native-sdk/hybridcompute/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := hybridcompute.NewMachine(ctx, "machine", &hybridcompute.MachineArgs{
ClientPublicKey: pulumi.String("string"),
Identity: &hybridcompute.IdentityArgs{
Type: hybridcompute.ResourceIdentityTypeSystemAssigned,
},
Location: pulumi.String("eastus2euap"),
LocationData: &hybridcompute.LocationDataArgs{
Name: pulumi.String("Redmond"),
},
MachineName: pulumi.String("myMachine"),
OsProfile: &hybridcompute.OSProfileArgs{
WindowsConfiguration: &hybridcompute.OSProfileWindowsConfigurationArgs{
EnableHotpatching: pulumi.Bool(true),
},
},
ParentClusterResourceId: pulumi.String("{AzureStackHCIResourceId}"),
PrivateLinkScopeResourceId: pulumi.String("/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName"),
ResourceGroupName: pulumi.String("myResourceGroup"),
VmId: pulumi.String("b7a098cc-b0b8-46e8-a205-62f301a62a8f"),
})
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.hybridcompute.Machine;
import com.pulumi.azurenative.hybridcompute.MachineArgs;
import com.pulumi.azurenative.hybridcompute.inputs.IdentityArgs;
import com.pulumi.azurenative.hybridcompute.inputs.LocationDataArgs;
import com.pulumi.azurenative.hybridcompute.inputs.OSProfileArgs;
import com.pulumi.azurenative.hybridcompute.inputs.OSProfileWindowsConfigurationArgs;
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 machine = new Machine("machine", MachineArgs.builder()
.clientPublicKey("string")
.identity(IdentityArgs.builder()
.type("SystemAssigned")
.build())
.location("eastus2euap")
.locationData(LocationDataArgs.builder()
.name("Redmond")
.build())
.machineName("myMachine")
.osProfile(OSProfileArgs.builder()
.windowsConfiguration(OSProfileWindowsConfigurationArgs.builder()
.enableHotpatching(true)
.build())
.build())
.parentClusterResourceId("{AzureStackHCIResourceId}")
.privateLinkScopeResourceId("/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName")
.resourceGroupName("myResourceGroup")
.vmId("b7a098cc-b0b8-46e8-a205-62f301a62a8f")
.build());
}
}

Import

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

$ pulumi import azure-native:hybridcompute:Machine myMachine /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{machineName}

Properties

Link copied to clipboard
val adFqdn: Output<String>

Specifies the AD fully qualified display name.

Link copied to clipboard

Configurable properties that the user can set locally via the azcmagent config command, or remotely via ARM.

Link copied to clipboard

The info of the machine w.r.t Agent Upgrade

Link copied to clipboard
val agentVersion: Output<String>

The hybrid machine agent full version.

Link copied to clipboard
val azureApiVersion: Output<String>

The Azure API version of the resource.

Link copied to clipboard
val clientPublicKey: Output<String>?

Public Key that the client provides to be used during initial resource onboarding

Link copied to clipboard

The metadata of the cloud environment (Azure/GCP/AWS/OCI...).

Link copied to clipboard

Detected properties from the machine.

Link copied to clipboard
val displayName: Output<String>

Specifies the hybrid machine display name.

Link copied to clipboard
val dnsFqdn: Output<String>

Specifies the DNS fully qualified display name.

Link copied to clipboard
val domainName: Output<String>

Specifies the Windows domain name.

Link copied to clipboard

Details about the error state.

Link copied to clipboard

Machine Extensions information (deprecated field)

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

Identity for the resource.

Link copied to clipboard
val kind: Output<String>?

Indicates which kind of Arc machine placement on-premises, such as HCI, SCVMM or VMware etc.

Link copied to clipboard

The time of the last status change.

Link copied to clipboard

Specifies the License related properties for a machine.

Link copied to clipboard
val location: Output<String>

The geo-location where the resource lives

Link copied to clipboard

Metadata pertaining to the geographic location of the resource.

Link copied to clipboard
val machineFqdn: Output<String>

Specifies the hybrid machine FQDN.

Link copied to clipboard
val mssqlDiscovered: Output<String>?

Specifies whether any MS SQL instance is discovered on the machine.

Link copied to clipboard
val name: Output<String>

The name of the resource

Link copied to clipboard

Information about the network the machine is on.

Link copied to clipboard
val osEdition: Output<String>

The edition of the Operating System.

Link copied to clipboard
val osName: Output<String>

The Operating System running on the hybrid machine.

Link copied to clipboard

Specifies the operating system settings for the hybrid machine.

Link copied to clipboard
val osSku: Output<String>

Specifies the Operating System product SKU.

Link copied to clipboard
val osType: Output<String>?

The type of Operating System (windows/linux).

Link copied to clipboard
val osVersion: Output<String>

The version of Operating System running on the hybrid machine.

Link copied to clipboard

The resource id of the parent cluster (Azure HCI) this machine is assigned to, if any.

Link copied to clipboard

The resource id of the private link scope this machine is assigned to, if any.

Link copied to clipboard

The provisioning state, which only appears in the response.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

The list of extensions affiliated to the machine

Link copied to clipboard

Statuses of dependent services that are reported back to ARM.

Link copied to clipboard
val status: Output<String>

The status of the hybrid machine agent.

Link copied to clipboard

Azure Resource Manager metadata containing createdBy and modifiedBy information.

Link copied to clipboard
val tags: Output<Map<String, String>>?

Resource tags.

Link copied to clipboard
val type: Output<String>

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

Link copied to clipboard
val urn: Output<String>
Link copied to clipboard
val vmId: Output<String>?

Specifies the hybrid machine unique ID.

Link copied to clipboard
val vmUuid: Output<String>

Specifies the Arc Machine's unique SMBIOS ID