DataController

class DataController : KotlinCustomResource

Data controller resource Uses Azure REST API version 2023-01-15-preview. In version 1.x of the Azure Native provider, it used API version 2021-06-01-preview. Other available API versions: 2024-01-01, 2024-05-01-preview, 2025-03-01-preview.

Example Usage

Create or update a Data Controller.

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var dataController = new AzureNative.AzureArcData.DataController("dataController", new()
{
DataControllerName = "testdataController",
ExtendedLocation = new AzureNative.AzureArcData.Inputs.ExtendedLocationArgs
{
Name = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.ExtendedLocation/customLocations/arclocation",
Type = AzureNative.AzureArcData.ExtendedLocationTypes.CustomLocation,
},
Location = "northeurope",
Properties = new AzureNative.AzureArcData.Inputs.DataControllerPropertiesArgs
{
BasicLoginInformation = new AzureNative.AzureArcData.Inputs.BasicLoginInformationArgs
{
Password = "********",
Username = "username",
},
ClusterId = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Kubernetes/connectedClusters/connectedk8s",
ExtensionId = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Kubernetes/connectedClusters/connectedk8s/providers/Microsoft.KubernetesConfiguration/extensions/extension",
Infrastructure = AzureNative.AzureArcData.Infrastructure.Onpremises,
LogAnalyticsWorkspaceConfig = new AzureNative.AzureArcData.Inputs.LogAnalyticsWorkspaceConfigArgs
{
PrimaryKey = "********",
WorkspaceId = "00000000-1111-2222-3333-444444444444",
},
LogsDashboardCredential = new AzureNative.AzureArcData.Inputs.BasicLoginInformationArgs
{
Password = "********",
Username = "username",
},
MetricsDashboardCredential = new AzureNative.AzureArcData.Inputs.BasicLoginInformationArgs
{
Password = "********",
Username = "username",
},
OnPremiseProperty = new AzureNative.AzureArcData.Inputs.OnPremisePropertyArgs
{
Id = "12345678-1234-1234-ab12-1a2b3c4d5e6f",
PublicSigningKey = "publicOnPremSigningKey",
},
UploadServicePrincipal = new AzureNative.AzureArcData.Inputs.UploadServicePrincipalArgs
{
Authority = "https://login.microsoftonline.com/",
ClientId = "00000000-1111-2222-3333-444444444444",
ClientSecret = "********",
TenantId = "00000000-1111-2222-3333-444444444444",
},
UploadWatermark = new AzureNative.AzureArcData.Inputs.UploadWatermarkArgs
{
Logs = "2020-01-01T17:18:19.1234567Z",
Metrics = "2020-01-01T17:18:19.1234567Z",
Usages = "2020-01-01T17:18:19.1234567Z",
},
},
ResourceGroupName = "testrg",
Tags =
{
{ "mytag", "myval" },
},
});
});
package main
import (
azurearcdata "github.com/pulumi/pulumi-azure-native-sdk/azurearcdata/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := azurearcdata.NewDataController(ctx, "dataController", &azurearcdata.DataControllerArgs{
DataControllerName: pulumi.String("testdataController"),
ExtendedLocation: &azurearcdata.ExtendedLocationArgs{
Name: pulumi.String("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.ExtendedLocation/customLocations/arclocation"),
Type: pulumi.String(azurearcdata.ExtendedLocationTypesCustomLocation),
},
Location: pulumi.String("northeurope"),
Properties: &azurearcdata.DataControllerPropertiesArgs{
BasicLoginInformation: &azurearcdata.BasicLoginInformationArgs{
Password: pulumi.String("********"),
Username: pulumi.String("username"),
},
ClusterId: pulumi.String("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Kubernetes/connectedClusters/connectedk8s"),
ExtensionId: pulumi.String("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Kubernetes/connectedClusters/connectedk8s/providers/Microsoft.KubernetesConfiguration/extensions/extension"),
Infrastructure: azurearcdata.InfrastructureOnpremises,
LogAnalyticsWorkspaceConfig: &azurearcdata.LogAnalyticsWorkspaceConfigArgs{
PrimaryKey: pulumi.String("********"),
WorkspaceId: pulumi.String("00000000-1111-2222-3333-444444444444"),
},
LogsDashboardCredential: &azurearcdata.BasicLoginInformationArgs{
Password: pulumi.String("********"),
Username: pulumi.String("username"),
},
MetricsDashboardCredential: &azurearcdata.BasicLoginInformationArgs{
Password: pulumi.String("********"),
Username: pulumi.String("username"),
},
OnPremiseProperty: &azurearcdata.OnPremisePropertyArgs{
Id: pulumi.String("12345678-1234-1234-ab12-1a2b3c4d5e6f"),
PublicSigningKey: pulumi.String("publicOnPremSigningKey"),
},
UploadServicePrincipal: &azurearcdata.UploadServicePrincipalArgs{
Authority: pulumi.String("https://login.microsoftonline.com/"),
ClientId: pulumi.String("00000000-1111-2222-3333-444444444444"),
ClientSecret: pulumi.String("********"),
TenantId: pulumi.String("00000000-1111-2222-3333-444444444444"),
},
UploadWatermark: &azurearcdata.UploadWatermarkArgs{
Logs: pulumi.String("2020-01-01T17:18:19.1234567Z"),
Metrics: pulumi.String("2020-01-01T17:18:19.1234567Z"),
Usages: pulumi.String("2020-01-01T17:18:19.1234567Z"),
},
},
ResourceGroupName: pulumi.String("testrg"),
Tags: pulumi.StringMap{
"mytag": pulumi.String("myval"),
},
})
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.azurearcdata.DataController;
import com.pulumi.azurenative.azurearcdata.DataControllerArgs;
import com.pulumi.azurenative.azurearcdata.inputs.ExtendedLocationArgs;
import com.pulumi.azurenative.azurearcdata.inputs.DataControllerPropertiesArgs;
import com.pulumi.azurenative.azurearcdata.inputs.BasicLoginInformationArgs;
import com.pulumi.azurenative.azurearcdata.inputs.LogAnalyticsWorkspaceConfigArgs;
import com.pulumi.azurenative.azurearcdata.inputs.OnPremisePropertyArgs;
import com.pulumi.azurenative.azurearcdata.inputs.UploadServicePrincipalArgs;
import com.pulumi.azurenative.azurearcdata.inputs.UploadWatermarkArgs;
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 dataController = new DataController("dataController", DataControllerArgs.builder()
.dataControllerName("testdataController")
.extendedLocation(ExtendedLocationArgs.builder()
.name("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.ExtendedLocation/customLocations/arclocation")
.type("CustomLocation")
.build())
.location("northeurope")
.properties(DataControllerPropertiesArgs.builder()
.basicLoginInformation(BasicLoginInformationArgs.builder()
.password("********")
.username("username")
.build())
.clusterId("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Kubernetes/connectedClusters/connectedk8s")
.extensionId("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Kubernetes/connectedClusters/connectedk8s/providers/Microsoft.KubernetesConfiguration/extensions/extension")
.infrastructure("onpremises")
.logAnalyticsWorkspaceConfig(LogAnalyticsWorkspaceConfigArgs.builder()
.primaryKey("********")
.workspaceId("00000000-1111-2222-3333-444444444444")
.build())
.logsDashboardCredential(BasicLoginInformationArgs.builder()
.password("********")
.username("username")
.build())
.metricsDashboardCredential(BasicLoginInformationArgs.builder()
.password("********")
.username("username")
.build())
.onPremiseProperty(OnPremisePropertyArgs.builder()
.id("12345678-1234-1234-ab12-1a2b3c4d5e6f")
.publicSigningKey("publicOnPremSigningKey")
.build())
.uploadServicePrincipal(UploadServicePrincipalArgs.builder()
.authority("https://login.microsoftonline.com/")
.clientId("00000000-1111-2222-3333-444444444444")
.clientSecret("********")
.tenantId("00000000-1111-2222-3333-444444444444")
.build())
.uploadWatermark(UploadWatermarkArgs.builder()
.logs("2020-01-01T17:18:19.1234567Z")
.metrics("2020-01-01T17:18:19.1234567Z")
.usages("2020-01-01T17:18:19.1234567Z")
.build())
.build())
.resourceGroupName("testrg")
.tags(Map.of("mytag", "myval"))
.build());
}
}

Import

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

$ pulumi import azure-native:azurearcdata:DataController testdataController /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureArcData/dataControllers/{dataControllerName}

Properties

Link copied to clipboard

The extendedLocation of the resource.

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

The geo-location where the resource lives

Link copied to clipboard
val name: Output<String>

The name of the resource

Link copied to clipboard

The data controller's properties

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
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>