Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.azurenative.workloads.kotlin.SAPVirtualInstanceArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.workloads.kotlin
import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs.builder
import com.pulumi.azurenative.workloads.kotlin.enums.SAPEnvironmentType
import com.pulumi.azurenative.workloads.kotlin.enums.SAPProductType
import com.pulumi.azurenative.workloads.kotlin.inputs.ManagedRGConfigurationArgs
import com.pulumi.azurenative.workloads.kotlin.inputs.ManagedRGConfigurationArgsBuilder
import com.pulumi.azurenative.workloads.kotlin.inputs.UserAssignedServiceIdentityArgs
import com.pulumi.azurenative.workloads.kotlin.inputs.UserAssignedServiceIdentityArgsBuilder
import com.pulumi.core.Either
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Any
import kotlin.Pair
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.Map
import kotlin.jvm.JvmName
/**
* Define the Virtual Instance for SAP solutions resource.
* Azure REST API version: 2023-04-01. Prior API version in Azure Native 1.x: 2021-12-01-preview.
* Other available API versions: 2023-10-01-preview.
* ## Example Usage
* ### Create Infrastructure (with OS configuration) with custom resource names for Distributed System
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "DeploymentWithOSConfig",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
* {
* AppResourceGroup = "X00-RG",
* ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
* {
* InstanceCount = 6,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
* {
* InstanceCount = 1,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E16ds_v4",
* },
* },
* CustomResourceNames = new AzureNative.Workloads.Inputs.ThreeTierFullResourceNamesArgs
* {
* ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerFullResourceNamesArgs
* {
* AvailabilitySetName = "appAvSet",
* VirtualMachines = new[]
* {
* new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
* {
* DataDiskNames =
* {
* { "default", new[]
* {
* "app0disk0",
* } },
* },
* HostName = "apphostName0",
* NetworkInterfaces = new[]
* {
* new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
* {
* NetworkInterfaceName = "appnic0",
* },
* },
* OsDiskName = "app0osdisk",
* VmName = "appvm0",
* },
* new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
* {
* DataDiskNames =
* {
* { "default", new[]
* {
* "app1disk0",
* } },
* },
* HostName = "apphostName1",
* NetworkInterfaces = new[]
* {
* new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
* {
* NetworkInterfaceName = "appnic1",
* },
* },
* OsDiskName = "app1osdisk",
* VmName = "appvm1",
* },
* },
* },
* CentralServer = new AzureNative.Workloads.Inputs.CentralServerFullResourceNamesArgs
* {
* VirtualMachines = new[]
* {
* new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
* {
* DataDiskNames =
* {
* { "default", new[]
* {
* "ascsdisk0",
* } },
* },
* HostName = "ascshostName",
* NetworkInterfaces = new[]
* {
* new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
* {
* NetworkInterfaceName = "ascsnic",
* },
* },
* OsDiskName = "ascsosdisk",
* VmName = "ascsvm",
* },
* },
* },
* DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseServerFullResourceNamesArgs
* {
* VirtualMachines = new[]
* {
* new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
* {
* DataDiskNames =
* {
* { "hanaData", new[]
* {
* "hanadata0",
* "hanadata1",
* } },
* { "hanaLog", new[]
* {
* "hanalog0",
* "hanalog1",
* "hanalog2",
* } },
* { "hanaShared", new[]
* {
* "hanashared0",
* "hanashared1",
* } },
* { "usrSap", new[]
* {
* "usrsap0",
* } },
* },
* HostName = "dbhostName",
* NetworkInterfaces = new[]
* {
* new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
* {
* NetworkInterfaceName = "dbnic",
* },
* },
* OsDiskName = "dbosdisk",
* VmName = "dbvm",
* },
* },
* },
* NamingPatternType = "FullResourceName",
* SharedStorage = new AzureNative.Workloads.Inputs.SharedStorageResourceNamesArgs
* {
* SharedStorageAccountName = "storageacc",
* SharedStorageAccountPrivateEndPointName = "peForxNFS",
* },
* },
* DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
* {
* DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
* InstanceCount = 1,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_M32ts",
* },
* },
* DeploymentType = "ThreeTier",
* },
* OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
* {
* SapFqdn = "xyz.test.com",
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
* Location = "westcentralus",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentWithOSConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
* InfrastructureConfiguration: workloads.ThreeTierConfiguration{
* AppResourceGroup: "X00-RG",
* ApplicationServer: workloads.ApplicationServerConfiguration{
* InstanceCount: 6,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* CentralServer: workloads.CentralServerConfiguration{
* InstanceCount: 1,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E16ds_v4",
* },
* },
* CustomResourceNames: workloads.ThreeTierFullResourceNames{
* ApplicationServer: workloads.ApplicationServerFullResourceNames{
* AvailabilitySetName: "appAvSet",
* VirtualMachines: []workloads.VirtualMachineResourceNames{
* {
* DataDiskNames: {
* "default": []string{
* "app0disk0",
* },
* },
* HostName: "apphostName0",
* NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
* {
* NetworkInterfaceName: "appnic0",
* },
* },
* OsDiskName: "app0osdisk",
* VmName: "appvm0",
* },
* {
* DataDiskNames: {
* "default": []string{
* "app1disk0",
* },
* },
* HostName: "apphostName1",
* NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
* {
* NetworkInterfaceName: "appnic1",
* },
* },
* OsDiskName: "app1osdisk",
* VmName: "appvm1",
* },
* },
* },
* CentralServer: workloads.CentralServerFullResourceNames{
* VirtualMachines: []workloads.VirtualMachineResourceNames{
* {
* DataDiskNames: {
* "default": []string{
* "ascsdisk0",
* },
* },
* HostName: "ascshostName",
* NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
* {
* NetworkInterfaceName: "ascsnic",
* },
* },
* OsDiskName: "ascsosdisk",
* VmName: "ascsvm",
* },
* },
* },
* DatabaseServer: workloads.DatabaseServerFullResourceNames{
* VirtualMachines: []workloads.VirtualMachineResourceNames{
* {
* DataDiskNames: {
* "hanaData": []string{
* "hanadata0",
* "hanadata1",
* },
* "hanaLog": []string{
* "hanalog0",
* "hanalog1",
* "hanalog2",
* },
* "hanaShared": []string{
* "hanashared0",
* "hanashared1",
* },
* "usrSap": []string{
* "usrsap0",
* },
* },
* HostName: "dbhostName",
* NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
* {
* NetworkInterfaceName: "dbnic",
* },
* },
* OsDiskName: "dbosdisk",
* VmName: "dbvm",
* },
* },
* },
* NamingPatternType: "FullResourceName",
* SharedStorage: workloads.SharedStorageResourceNames{
* SharedStorageAccountName: "storageacc",
* SharedStorageAccountPrivateEndPointName: "peForxNFS",
* },
* },
* DatabaseServer: workloads.DatabaseConfiguration{
* DatabaseType: workloads.SAPDatabaseTypeHANA,
* InstanceCount: 1,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_M32ts",
* },
* },
* DeploymentType: "ThreeTier",
* },
* OsSapConfiguration: &workloads.OsSapConfigurationArgs{
* SapFqdn: pulumi.String("xyz.test.com"),
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeProd),
* Location: pulumi.String("westcentralus"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentWithOSConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("DeploymentWithOSConfig")
* .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
* .appResourceGroup("X00-RG")
* .applicationServer(ApplicationServerConfigurationArgs.builder()
* .instanceCount(6)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .centralServer(CentralServerConfigurationArgs.builder()
* .instanceCount(1)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E16ds_v4")
* .build())
* .build())
* .customResourceNames(ThreeTierFullResourceNamesArgs.builder()
* .applicationServer(ApplicationServerFullResourceNamesArgs.builder()
* .availabilitySetName("appAvSet")
* .virtualMachines(
* VirtualMachineResourceNamesArgs.builder()
* .dataDiskNames(Map.of("default", "app0disk0"))
* .hostName("apphostName0")
* .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
* .networkInterfaceName("appnic0")
* .build())
* .osDiskName("app0osdisk")
* .vmName("appvm0")
* .build(),
* VirtualMachineResourceNamesArgs.builder()
* .dataDiskNames(Map.of("default", "app1disk0"))
* .hostName("apphostName1")
* .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
* .networkInterfaceName("appnic1")
* .build())
* .osDiskName("app1osdisk")
* .vmName("appvm1")
* .build())
* .build())
* .centralServer(CentralServerFullResourceNamesArgs.builder()
* .virtualMachines(VirtualMachineResourceNamesArgs.builder()
* .dataDiskNames(Map.of("default", "ascsdisk0"))
* .hostName("ascshostName")
* .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
* .networkInterfaceName("ascsnic")
* .build())
* .osDiskName("ascsosdisk")
* .vmName("ascsvm")
* .build())
* .build())
* .databaseServer(DatabaseServerFullResourceNamesArgs.builder()
* .virtualMachines(VirtualMachineResourceNamesArgs.builder()
* .dataDiskNames(Map.ofEntries(
* Map.entry("hanaData",
* "hanadata0",
* "hanadata1"),
* Map.entry("hanaLog",
* "hanalog0",
* "hanalog1",
* "hanalog2"),
* Map.entry("hanaShared",
* "hanashared0",
* "hanashared1"),
* Map.entry("usrSap", "usrsap0")
* ))
* .hostName("dbhostName")
* .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
* .networkInterfaceName("dbnic")
* .build())
* .osDiskName("dbosdisk")
* .vmName("dbvm")
* .build())
* .build())
* .namingPatternType("FullResourceName")
* .sharedStorage(SharedStorageResourceNamesArgs.builder()
* .sharedStorageAccountName("storageacc")
* .sharedStorageAccountPrivateEndPointName("peForxNFS")
* .build())
* .build())
* .databaseServer(DatabaseConfigurationArgs.builder()
* .databaseType("HANA")
* .instanceCount(1)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_M32ts")
* .build())
* .build())
* .deploymentType("ThreeTier")
* .build())
* .osSapConfiguration(OsSapConfigurationArgs.builder()
* .sapFqdn("xyz.test.com")
* .build())
* .build())
* .environment("Prod")
* .location("westcentralus")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Create Infrastructure (with OS configuration) with custom resource names for HA System with Availability Set
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "DeploymentWithOSConfig",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
* {
* AppResourceGroup = "X00-RG",
* ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
* {
* InstanceCount = 6,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
* {
* InstanceCount = 2,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E16ds_v4",
* },
* },
* CustomResourceNames = new AzureNative.Workloads.Inputs.ThreeTierFullResourceNamesArgs
* {
* ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerFullResourceNamesArgs
* {
* AvailabilitySetName = "appAvSet",
* VirtualMachines = new[]
* {
* new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
* {
* DataDiskNames =
* {
* { "default", new[]
* {
* "app0disk0",
* } },
* },
* HostName = "apphostName0",
* NetworkInterfaces = new[]
* {
* new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
* {
* NetworkInterfaceName = "appnic0",
* },
* },
* OsDiskName = "app0osdisk",
* VmName = "appvm0",
* },
* new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
* {
* DataDiskNames =
* {
* { "default", new[]
* {
* "app1disk0",
* } },
* },
* HostName = "apphostName1",
* NetworkInterfaces = new[]
* {
* new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
* {
* NetworkInterfaceName = "appnic1",
* },
* },
* OsDiskName = "app1osdisk",
* VmName = "appvm1",
* },
* },
* },
* CentralServer = new AzureNative.Workloads.Inputs.CentralServerFullResourceNamesArgs
* {
* AvailabilitySetName = "csAvSet",
* LoadBalancer = new AzureNative.Workloads.Inputs.LoadBalancerResourceNamesArgs
* {
* BackendPoolNames = new[]
* {
* "ascsBackendPool",
* },
* FrontendIpConfigurationNames = new[]
* {
* "ascsip0",
* "ersip0",
* },
* HealthProbeNames = new[]
* {
* "ascsHealthProbe",
* "ersHealthProbe",
* },
* LoadBalancerName = "ascslb",
* },
* VirtualMachines = new[]
* {
* new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
* {
* HostName = "ascshostName",
* NetworkInterfaces = new[]
* {
* new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
* {
* NetworkInterfaceName = "ascsnic",
* },
* },
* OsDiskName = "ascsosdisk",
* VmName = "ascsvm",
* },
* new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
* {
* HostName = "ershostName",
* NetworkInterfaces = new[]
* {
* new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
* {
* NetworkInterfaceName = "ersnic",
* },
* },
* OsDiskName = "ersosdisk",
* VmName = "ersvm",
* },
* },
* },
* DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseServerFullResourceNamesArgs
* {
* AvailabilitySetName = "dbAvSet",
* LoadBalancer = new AzureNative.Workloads.Inputs.LoadBalancerResourceNamesArgs
* {
* BackendPoolNames = new[]
* {
* "dbBackendPool",
* },
* FrontendIpConfigurationNames = new[]
* {
* "dbip",
* },
* HealthProbeNames = new[]
* {
* "dbHealthProbe",
* },
* LoadBalancerName = "dblb",
* },
* VirtualMachines = new[]
* {
* new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
* {
* DataDiskNames =
* {
* { "hanaData", new[]
* {
* "hanadatapr0",
* "hanadatapr1",
* } },
* { "hanaLog", new[]
* {
* "hanalogpr0",
* "hanalogpr1",
* "hanalogpr2",
* } },
* { "hanaShared", new[]
* {
* "hanasharedpr0",
* "hanasharedpr1",
* } },
* { "usrSap", new[]
* {
* "usrsappr0",
* } },
* },
* HostName = "dbprhostName",
* NetworkInterfaces = new[]
* {
* new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
* {
* NetworkInterfaceName = "dbprnic",
* },
* },
* OsDiskName = "dbprosdisk",
* VmName = "dbvmpr",
* },
* new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
* {
* DataDiskNames =
* {
* { "hanaData", new[]
* {
* "hanadatasr0",
* "hanadatasr1",
* } },
* { "hanaLog", new[]
* {
* "hanalogsr0",
* "hanalogsr1",
* "hanalogsr2",
* } },
* { "hanaShared", new[]
* {
* "hanasharedsr0",
* "hanasharedsr1",
* } },
* { "usrSap", new[]
* {
* "usrsapsr0",
* } },
* },
* HostName = "dbsrhostName",
* NetworkInterfaces = new[]
* {
* new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
* {
* NetworkInterfaceName = "dbsrnic",
* },
* },
* OsDiskName = "dbsrosdisk",
* VmName = "dbvmsr",
* },
* },
* },
* NamingPatternType = "FullResourceName",
* SharedStorage = new AzureNative.Workloads.Inputs.SharedStorageResourceNamesArgs
* {
* SharedStorageAccountName = "storageacc",
* SharedStorageAccountPrivateEndPointName = "peForxNFS",
* },
* },
* DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
* {
* DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
* InstanceCount = 2,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_M32ts",
* },
* },
* DeploymentType = "ThreeTier",
* HighAvailabilityConfig = new AzureNative.Workloads.Inputs.HighAvailabilityConfigurationArgs
* {
* HighAvailabilityType = AzureNative.Workloads.SAPHighAvailabilityType.AvailabilitySet,
* },
* },
* OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
* {
* SapFqdn = "xyz.test.com",
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
* Location = "westcentralus",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentWithOSConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
* InfrastructureConfiguration: workloads.ThreeTierConfiguration{
* AppResourceGroup: "X00-RG",
* ApplicationServer: workloads.ApplicationServerConfiguration{
* InstanceCount: 6,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* CentralServer: workloads.CentralServerConfiguration{
* InstanceCount: 2,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E16ds_v4",
* },
* },
* CustomResourceNames: workloads.ThreeTierFullResourceNames{
* ApplicationServer: workloads.ApplicationServerFullResourceNames{
* AvailabilitySetName: "appAvSet",
* VirtualMachines: []workloads.VirtualMachineResourceNames{
* {
* DataDiskNames: {
* "default": []string{
* "app0disk0",
* },
* },
* HostName: "apphostName0",
* NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
* {
* NetworkInterfaceName: "appnic0",
* },
* },
* OsDiskName: "app0osdisk",
* VmName: "appvm0",
* },
* {
* DataDiskNames: {
* "default": []string{
* "app1disk0",
* },
* },
* HostName: "apphostName1",
* NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
* {
* NetworkInterfaceName: "appnic1",
* },
* },
* OsDiskName: "app1osdisk",
* VmName: "appvm1",
* },
* },
* },
* CentralServer: workloads.CentralServerFullResourceNames{
* AvailabilitySetName: "csAvSet",
* LoadBalancer: workloads.LoadBalancerResourceNames{
* BackendPoolNames: []string{
* "ascsBackendPool",
* },
* FrontendIpConfigurationNames: []string{
* "ascsip0",
* "ersip0",
* },
* HealthProbeNames: []string{
* "ascsHealthProbe",
* "ersHealthProbe",
* },
* LoadBalancerName: "ascslb",
* },
* VirtualMachines: []workloads.VirtualMachineResourceNames{
* {
* HostName: "ascshostName",
* NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
* {
* NetworkInterfaceName: "ascsnic",
* },
* },
* OsDiskName: "ascsosdisk",
* VmName: "ascsvm",
* },
* {
* HostName: "ershostName",
* NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
* {
* NetworkInterfaceName: "ersnic",
* },
* },
* OsDiskName: "ersosdisk",
* VmName: "ersvm",
* },
* },
* },
* DatabaseServer: workloads.DatabaseServerFullResourceNames{
* AvailabilitySetName: "dbAvSet",
* LoadBalancer: workloads.LoadBalancerResourceNames{
* BackendPoolNames: []string{
* "dbBackendPool",
* },
* FrontendIpConfigurationNames: []string{
* "dbip",
* },
* HealthProbeNames: []string{
* "dbHealthProbe",
* },
* LoadBalancerName: "dblb",
* },
* VirtualMachines: []workloads.VirtualMachineResourceNames{
* {
* DataDiskNames: {
* "hanaData": []string{
* "hanadatapr0",
* "hanadatapr1",
* },
* "hanaLog": []string{
* "hanalogpr0",
* "hanalogpr1",
* "hanalogpr2",
* },
* "hanaShared": []string{
* "hanasharedpr0",
* "hanasharedpr1",
* },
* "usrSap": []string{
* "usrsappr0",
* },
* },
* HostName: "dbprhostName",
* NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
* {
* NetworkInterfaceName: "dbprnic",
* },
* },
* OsDiskName: "dbprosdisk",
* VmName: "dbvmpr",
* },
* {
* DataDiskNames: {
* "hanaData": []string{
* "hanadatasr0",
* "hanadatasr1",
* },
* "hanaLog": []string{
* "hanalogsr0",
* "hanalogsr1",
* "hanalogsr2",
* },
* "hanaShared": []string{
* "hanasharedsr0",
* "hanasharedsr1",
* },
* "usrSap": []string{
* "usrsapsr0",
* },
* },
* HostName: "dbsrhostName",
* NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
* {
* NetworkInterfaceName: "dbsrnic",
* },
* },
* OsDiskName: "dbsrosdisk",
* VmName: "dbvmsr",
* },
* },
* },
* NamingPatternType: "FullResourceName",
* SharedStorage: workloads.SharedStorageResourceNames{
* SharedStorageAccountName: "storageacc",
* SharedStorageAccountPrivateEndPointName: "peForxNFS",
* },
* },
* DatabaseServer: workloads.DatabaseConfiguration{
* DatabaseType: workloads.SAPDatabaseTypeHANA,
* InstanceCount: 2,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_M32ts",
* },
* },
* DeploymentType: "ThreeTier",
* HighAvailabilityConfig: workloads.HighAvailabilityConfiguration{
* HighAvailabilityType: workloads.SAPHighAvailabilityTypeAvailabilitySet,
* },
* },
* OsSapConfiguration: &workloads.OsSapConfigurationArgs{
* SapFqdn: pulumi.String("xyz.test.com"),
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeProd),
* Location: pulumi.String("westcentralus"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentWithOSConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("DeploymentWithOSConfig")
* .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
* .appResourceGroup("X00-RG")
* .applicationServer(ApplicationServerConfigurationArgs.builder()
* .instanceCount(6)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .centralServer(CentralServerConfigurationArgs.builder()
* .instanceCount(2)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E16ds_v4")
* .build())
* .build())
* .customResourceNames(ThreeTierFullResourceNamesArgs.builder()
* .applicationServer(ApplicationServerFullResourceNamesArgs.builder()
* .availabilitySetName("appAvSet")
* .virtualMachines(
* VirtualMachineResourceNamesArgs.builder()
* .dataDiskNames(Map.of("default", "app0disk0"))
* .hostName("apphostName0")
* .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
* .networkInterfaceName("appnic0")
* .build())
* .osDiskName("app0osdisk")
* .vmName("appvm0")
* .build(),
* VirtualMachineResourceNamesArgs.builder()
* .dataDiskNames(Map.of("default", "app1disk0"))
* .hostName("apphostName1")
* .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
* .networkInterfaceName("appnic1")
* .build())
* .osDiskName("app1osdisk")
* .vmName("appvm1")
* .build())
* .build())
* .centralServer(CentralServerFullResourceNamesArgs.builder()
* .availabilitySetName("csAvSet")
* .loadBalancer(LoadBalancerResourceNamesArgs.builder()
* .backendPoolNames("ascsBackendPool")
* .frontendIpConfigurationNames(
* "ascsip0",
* "ersip0")
* .healthProbeNames(
* "ascsHealthProbe",
* "ersHealthProbe")
* .loadBalancerName("ascslb")
* .build())
* .virtualMachines(
* VirtualMachineResourceNamesArgs.builder()
* .hostName("ascshostName")
* .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
* .networkInterfaceName("ascsnic")
* .build())
* .osDiskName("ascsosdisk")
* .vmName("ascsvm")
* .build(),
* VirtualMachineResourceNamesArgs.builder()
* .hostName("ershostName")
* .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
* .networkInterfaceName("ersnic")
* .build())
* .osDiskName("ersosdisk")
* .vmName("ersvm")
* .build())
* .build())
* .databaseServer(DatabaseServerFullResourceNamesArgs.builder()
* .availabilitySetName("dbAvSet")
* .loadBalancer(LoadBalancerResourceNamesArgs.builder()
* .backendPoolNames("dbBackendPool")
* .frontendIpConfigurationNames("dbip")
* .healthProbeNames("dbHealthProbe")
* .loadBalancerName("dblb")
* .build())
* .virtualMachines(
* VirtualMachineResourceNamesArgs.builder()
* .dataDiskNames(Map.ofEntries(
* Map.entry("hanaData",
* "hanadatapr0",
* "hanadatapr1"),
* Map.entry("hanaLog",
* "hanalogpr0",
* "hanalogpr1",
* "hanalogpr2"),
* Map.entry("hanaShared",
* "hanasharedpr0",
* "hanasharedpr1"),
* Map.entry("usrSap", "usrsappr0")
* ))
* .hostName("dbprhostName")
* .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
* .networkInterfaceName("dbprnic")
* .build())
* .osDiskName("dbprosdisk")
* .vmName("dbvmpr")
* .build(),
* VirtualMachineResourceNamesArgs.builder()
* .dataDiskNames(Map.ofEntries(
* Map.entry("hanaData",
* "hanadatasr0",
* "hanadatasr1"),
* Map.entry("hanaLog",
* "hanalogsr0",
* "hanalogsr1",
* "hanalogsr2"),
* Map.entry("hanaShared",
* "hanasharedsr0",
* "hanasharedsr1"),
* Map.entry("usrSap", "usrsapsr0")
* ))
* .hostName("dbsrhostName")
* .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
* .networkInterfaceName("dbsrnic")
* .build())
* .osDiskName("dbsrosdisk")
* .vmName("dbvmsr")
* .build())
* .build())
* .namingPatternType("FullResourceName")
* .sharedStorage(SharedStorageResourceNamesArgs.builder()
* .sharedStorageAccountName("storageacc")
* .sharedStorageAccountPrivateEndPointName("peForxNFS")
* .build())
* .build())
* .databaseServer(DatabaseConfigurationArgs.builder()
* .databaseType("HANA")
* .instanceCount(2)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_M32ts")
* .build())
* .build())
* .deploymentType("ThreeTier")
* .highAvailabilityConfig(HighAvailabilityConfigurationArgs.builder()
* .highAvailabilityType("AvailabilitySet")
* .build())
* .build())
* .osSapConfiguration(OsSapConfigurationArgs.builder()
* .sapFqdn("xyz.test.com")
* .build())
* .build())
* .environment("Prod")
* .location("westcentralus")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Create Infrastructure (with OS configuration) with custom resource names for HA system with Availability Zone
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "DeploymentWithOSConfig",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
* {
* AppResourceGroup = "X00-RG",
* ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
* {
* InstanceCount = 6,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
* {
* InstanceCount = 2,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E16ds_v4",
* },
* },
* CustomResourceNames = new AzureNative.Workloads.Inputs.ThreeTierFullResourceNamesArgs
* {
* ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerFullResourceNamesArgs
* {
* VirtualMachines = new[]
* {
* new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
* {
* DataDiskNames =
* {
* { "default", new[]
* {
* "app0disk0",
* } },
* },
* HostName = "apphostName0",
* NetworkInterfaces = new[]
* {
* new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
* {
* NetworkInterfaceName = "appnic0",
* },
* },
* OsDiskName = "app0osdisk",
* VmName = "appvm0",
* },
* new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
* {
* DataDiskNames =
* {
* { "default", new[]
* {
* "app1disk0",
* } },
* },
* HostName = "apphostName1",
* NetworkInterfaces = new[]
* {
* new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
* {
* NetworkInterfaceName = "appnic1",
* },
* },
* OsDiskName = "app1osdisk",
* VmName = "appvm1",
* },
* },
* },
* CentralServer = new AzureNative.Workloads.Inputs.CentralServerFullResourceNamesArgs
* {
* LoadBalancer = new AzureNative.Workloads.Inputs.LoadBalancerResourceNamesArgs
* {
* BackendPoolNames = new[]
* {
* "ascsBackendPool",
* },
* FrontendIpConfigurationNames = new[]
* {
* "ascsip0",
* "ersip0",
* },
* HealthProbeNames = new[]
* {
* "ascsHealthProbe",
* "ersHealthProbe",
* },
* LoadBalancerName = "ascslb",
* },
* VirtualMachines = new[]
* {
* new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
* {
* HostName = "ascshostName",
* NetworkInterfaces = new[]
* {
* new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
* {
* NetworkInterfaceName = "ascsnic",
* },
* },
* OsDiskName = "ascsosdisk",
* VmName = "ascsvm",
* },
* new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
* {
* HostName = "ershostName",
* NetworkInterfaces = new[]
* {
* new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
* {
* NetworkInterfaceName = "ersnic",
* },
* },
* OsDiskName = "ersosdisk",
* VmName = "ersvm",
* },
* },
* },
* DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseServerFullResourceNamesArgs
* {
* LoadBalancer = new AzureNative.Workloads.Inputs.LoadBalancerResourceNamesArgs
* {
* BackendPoolNames = new[]
* {
* "dbBackendPool",
* },
* FrontendIpConfigurationNames = new[]
* {
* "dbip",
* },
* HealthProbeNames = new[]
* {
* "dbHealthProbe",
* },
* LoadBalancerName = "dblb",
* },
* VirtualMachines = new[]
* {
* new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
* {
* DataDiskNames =
* {
* { "hanaData", new[]
* {
* "hanadatapr0",
* "hanadatapr1",
* } },
* { "hanaLog", new[]
* {
* "hanalogpr0",
* "hanalogpr1",
* "hanalogpr2",
* } },
* { "hanaShared", new[]
* {
* "hanasharedpr0",
* "hanasharedpr1",
* } },
* { "usrSap", new[]
* {
* "usrsappr0",
* } },
* },
* HostName = "dbprhostName",
* NetworkInterfaces = new[]
* {
* new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
* {
* NetworkInterfaceName = "dbprnic",
* },
* },
* OsDiskName = "dbprosdisk",
* VmName = "dbvmpr",
* },
* new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
* {
* DataDiskNames =
* {
* { "hanaData", new[]
* {
* "hanadatasr0",
* "hanadatasr1",
* } },
* { "hanaLog", new[]
* {
* "hanalogsr0",
* "hanalogsr1",
* "hanalogsr2",
* } },
* { "hanaShared", new[]
* {
* "hanasharedsr0",
* "hanasharedsr1",
* } },
* { "usrSap", new[]
* {
* "usrsapsr0",
* } },
* },
* HostName = "dbsrhostName",
* NetworkInterfaces = new[]
* {
* new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
* {
* NetworkInterfaceName = "dbsrnic",
* },
* },
* OsDiskName = "dbsrosdisk",
* VmName = "dbvmsr",
* },
* },
* },
* NamingPatternType = "FullResourceName",
* SharedStorage = new AzureNative.Workloads.Inputs.SharedStorageResourceNamesArgs
* {
* SharedStorageAccountName = "storageacc",
* SharedStorageAccountPrivateEndPointName = "peForxNFS",
* },
* },
* DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
* {
* DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
* InstanceCount = 2,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_M32ts",
* },
* },
* DeploymentType = "ThreeTier",
* HighAvailabilityConfig = new AzureNative.Workloads.Inputs.HighAvailabilityConfigurationArgs
* {
* HighAvailabilityType = AzureNative.Workloads.SAPHighAvailabilityType.AvailabilityZone,
* },
* },
* OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
* {
* SapFqdn = "xyz.test.com",
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
* Location = "westcentralus",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentWithOSConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
* InfrastructureConfiguration: workloads.ThreeTierConfiguration{
* AppResourceGroup: "X00-RG",
* ApplicationServer: workloads.ApplicationServerConfiguration{
* InstanceCount: 6,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* CentralServer: workloads.CentralServerConfiguration{
* InstanceCount: 2,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E16ds_v4",
* },
* },
* CustomResourceNames: workloads.ThreeTierFullResourceNames{
* ApplicationServer: workloads.ApplicationServerFullResourceNames{
* VirtualMachines: []workloads.VirtualMachineResourceNames{
* {
* DataDiskNames: {
* "default": []string{
* "app0disk0",
* },
* },
* HostName: "apphostName0",
* NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
* {
* NetworkInterfaceName: "appnic0",
* },
* },
* OsDiskName: "app0osdisk",
* VmName: "appvm0",
* },
* {
* DataDiskNames: {
* "default": []string{
* "app1disk0",
* },
* },
* HostName: "apphostName1",
* NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
* {
* NetworkInterfaceName: "appnic1",
* },
* },
* OsDiskName: "app1osdisk",
* VmName: "appvm1",
* },
* },
* },
* CentralServer: workloads.CentralServerFullResourceNames{
* LoadBalancer: workloads.LoadBalancerResourceNames{
* BackendPoolNames: []string{
* "ascsBackendPool",
* },
* FrontendIpConfigurationNames: []string{
* "ascsip0",
* "ersip0",
* },
* HealthProbeNames: []string{
* "ascsHealthProbe",
* "ersHealthProbe",
* },
* LoadBalancerName: "ascslb",
* },
* VirtualMachines: []workloads.VirtualMachineResourceNames{
* {
* HostName: "ascshostName",
* NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
* {
* NetworkInterfaceName: "ascsnic",
* },
* },
* OsDiskName: "ascsosdisk",
* VmName: "ascsvm",
* },
* {
* HostName: "ershostName",
* NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
* {
* NetworkInterfaceName: "ersnic",
* },
* },
* OsDiskName: "ersosdisk",
* VmName: "ersvm",
* },
* },
* },
* DatabaseServer: workloads.DatabaseServerFullResourceNames{
* LoadBalancer: workloads.LoadBalancerResourceNames{
* BackendPoolNames: []string{
* "dbBackendPool",
* },
* FrontendIpConfigurationNames: []string{
* "dbip",
* },
* HealthProbeNames: []string{
* "dbHealthProbe",
* },
* LoadBalancerName: "dblb",
* },
* VirtualMachines: []workloads.VirtualMachineResourceNames{
* {
* DataDiskNames: {
* "hanaData": []string{
* "hanadatapr0",
* "hanadatapr1",
* },
* "hanaLog": []string{
* "hanalogpr0",
* "hanalogpr1",
* "hanalogpr2",
* },
* "hanaShared": []string{
* "hanasharedpr0",
* "hanasharedpr1",
* },
* "usrSap": []string{
* "usrsappr0",
* },
* },
* HostName: "dbprhostName",
* NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
* {
* NetworkInterfaceName: "dbprnic",
* },
* },
* OsDiskName: "dbprosdisk",
* VmName: "dbvmpr",
* },
* {
* DataDiskNames: {
* "hanaData": []string{
* "hanadatasr0",
* "hanadatasr1",
* },
* "hanaLog": []string{
* "hanalogsr0",
* "hanalogsr1",
* "hanalogsr2",
* },
* "hanaShared": []string{
* "hanasharedsr0",
* "hanasharedsr1",
* },
* "usrSap": []string{
* "usrsapsr0",
* },
* },
* HostName: "dbsrhostName",
* NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
* {
* NetworkInterfaceName: "dbsrnic",
* },
* },
* OsDiskName: "dbsrosdisk",
* VmName: "dbvmsr",
* },
* },
* },
* NamingPatternType: "FullResourceName",
* SharedStorage: workloads.SharedStorageResourceNames{
* SharedStorageAccountName: "storageacc",
* SharedStorageAccountPrivateEndPointName: "peForxNFS",
* },
* },
* DatabaseServer: workloads.DatabaseConfiguration{
* DatabaseType: workloads.SAPDatabaseTypeHANA,
* InstanceCount: 2,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_M32ts",
* },
* },
* DeploymentType: "ThreeTier",
* HighAvailabilityConfig: workloads.HighAvailabilityConfiguration{
* HighAvailabilityType: workloads.SAPHighAvailabilityTypeAvailabilityZone,
* },
* },
* OsSapConfiguration: &workloads.OsSapConfigurationArgs{
* SapFqdn: pulumi.String("xyz.test.com"),
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeProd),
* Location: pulumi.String("westcentralus"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentWithOSConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("DeploymentWithOSConfig")
* .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
* .appResourceGroup("X00-RG")
* .applicationServer(ApplicationServerConfigurationArgs.builder()
* .instanceCount(6)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .centralServer(CentralServerConfigurationArgs.builder()
* .instanceCount(2)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E16ds_v4")
* .build())
* .build())
* .customResourceNames(ThreeTierFullResourceNamesArgs.builder()
* .applicationServer(ApplicationServerFullResourceNamesArgs.builder()
* .virtualMachines(
* VirtualMachineResourceNamesArgs.builder()
* .dataDiskNames(Map.of("default", "app0disk0"))
* .hostName("apphostName0")
* .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
* .networkInterfaceName("appnic0")
* .build())
* .osDiskName("app0osdisk")
* .vmName("appvm0")
* .build(),
* VirtualMachineResourceNamesArgs.builder()
* .dataDiskNames(Map.of("default", "app1disk0"))
* .hostName("apphostName1")
* .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
* .networkInterfaceName("appnic1")
* .build())
* .osDiskName("app1osdisk")
* .vmName("appvm1")
* .build())
* .build())
* .centralServer(CentralServerFullResourceNamesArgs.builder()
* .loadBalancer(LoadBalancerResourceNamesArgs.builder()
* .backendPoolNames("ascsBackendPool")
* .frontendIpConfigurationNames(
* "ascsip0",
* "ersip0")
* .healthProbeNames(
* "ascsHealthProbe",
* "ersHealthProbe")
* .loadBalancerName("ascslb")
* .build())
* .virtualMachines(
* VirtualMachineResourceNamesArgs.builder()
* .hostName("ascshostName")
* .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
* .networkInterfaceName("ascsnic")
* .build())
* .osDiskName("ascsosdisk")
* .vmName("ascsvm")
* .build(),
* VirtualMachineResourceNamesArgs.builder()
* .hostName("ershostName")
* .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
* .networkInterfaceName("ersnic")
* .build())
* .osDiskName("ersosdisk")
* .vmName("ersvm")
* .build())
* .build())
* .databaseServer(DatabaseServerFullResourceNamesArgs.builder()
* .loadBalancer(LoadBalancerResourceNamesArgs.builder()
* .backendPoolNames("dbBackendPool")
* .frontendIpConfigurationNames("dbip")
* .healthProbeNames("dbHealthProbe")
* .loadBalancerName("dblb")
* .build())
* .virtualMachines(
* VirtualMachineResourceNamesArgs.builder()
* .dataDiskNames(Map.ofEntries(
* Map.entry("hanaData",
* "hanadatapr0",
* "hanadatapr1"),
* Map.entry("hanaLog",
* "hanalogpr0",
* "hanalogpr1",
* "hanalogpr2"),
* Map.entry("hanaShared",
* "hanasharedpr0",
* "hanasharedpr1"),
* Map.entry("usrSap", "usrsappr0")
* ))
* .hostName("dbprhostName")
* .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
* .networkInterfaceName("dbprnic")
* .build())
* .osDiskName("dbprosdisk")
* .vmName("dbvmpr")
* .build(),
* VirtualMachineResourceNamesArgs.builder()
* .dataDiskNames(Map.ofEntries(
* Map.entry("hanaData",
* "hanadatasr0",
* "hanadatasr1"),
* Map.entry("hanaLog",
* "hanalogsr0",
* "hanalogsr1",
* "hanalogsr2"),
* Map.entry("hanaShared",
* "hanasharedsr0",
* "hanasharedsr1"),
* Map.entry("usrSap", "usrsapsr0")
* ))
* .hostName("dbsrhostName")
* .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
* .networkInterfaceName("dbsrnic")
* .build())
* .osDiskName("dbsrosdisk")
* .vmName("dbvmsr")
* .build())
* .build())
* .namingPatternType("FullResourceName")
* .sharedStorage(SharedStorageResourceNamesArgs.builder()
* .sharedStorageAccountName("storageacc")
* .sharedStorageAccountPrivateEndPointName("peForxNFS")
* .build())
* .build())
* .databaseServer(DatabaseConfigurationArgs.builder()
* .databaseType("HANA")
* .instanceCount(2)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_M32ts")
* .build())
* .build())
* .deploymentType("ThreeTier")
* .highAvailabilityConfig(HighAvailabilityConfigurationArgs.builder()
* .highAvailabilityType("AvailabilityZone")
* .build())
* .build())
* .osSapConfiguration(OsSapConfigurationArgs.builder()
* .sapFqdn("xyz.test.com")
* .build())
* .build())
* .environment("Prod")
* .location("westcentralus")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Create Infrastructure (with OS configuration) with custom resource names for Single Server System
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "DeploymentWithOSConfig",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.SingleServerConfigurationArgs
* {
* AppResourceGroup = "X00-RG",
* DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
* DeploymentType = "SingleServer",
* NetworkConfiguration = new AzureNative.Workloads.Inputs.NetworkConfigurationArgs
* {
* IsSecondaryIpEnabled = true,
* },
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
* {
* SapFqdn = "xyz.test.com",
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.NonProd,
* Location = "westcentralus",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentWithOSConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
* InfrastructureConfiguration: workloads.SingleServerConfiguration{
* AppResourceGroup: "X00-RG",
* DatabaseType: workloads.SAPDatabaseTypeHANA,
* DeploymentType: "SingleServer",
* NetworkConfiguration: workloads.NetworkConfiguration{
* IsSecondaryIpEnabled: true,
* },
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* OsSapConfiguration: &workloads.OsSapConfigurationArgs{
* SapFqdn: pulumi.String("xyz.test.com"),
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeNonProd),
* Location: pulumi.String("westcentralus"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentWithOSConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("DeploymentWithOSConfig")
* .infrastructureConfiguration(SingleServerConfigurationArgs.builder()
* .appResourceGroup("X00-RG")
* .databaseType("HANA")
* .deploymentType("SingleServer")
* .networkConfiguration(NetworkConfigurationArgs.builder()
* .isSecondaryIpEnabled(true)
* .build())
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .osSapConfiguration(OsSapConfigurationArgs.builder()
* .sapFqdn("xyz.test.com")
* .build())
* .build())
* .environment("NonProd")
* .location("westcentralus")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Create Infrastructure only for Distributed System
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "Deployment",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
* {
* AppResourceGroup = "X00-RG",
* ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
* {
* InstanceCount = 6,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* Ssh = new AzureNative.Workloads.Inputs.SshConfigurationArgs
* {
* PublicKeys = new[]
* {
* new AzureNative.Workloads.Inputs.SshPublicKeyArgs
* {
* KeyData = "ssh-rsa public key",
* },
* },
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
* {
* InstanceCount = 1,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* Ssh = new AzureNative.Workloads.Inputs.SshConfigurationArgs
* {
* PublicKeys = new[]
* {
* new AzureNative.Workloads.Inputs.SshPublicKeyArgs
* {
* KeyData = "ssh-rsa public key",
* },
* },
* },
* },
* },
* VmSize = "Standard_E16ds_v4",
* },
* },
* DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
* {
* DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
* InstanceCount = 1,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* Ssh = new AzureNative.Workloads.Inputs.SshConfigurationArgs
* {
* PublicKeys = new[]
* {
* new AzureNative.Workloads.Inputs.SshPublicKeyArgs
* {
* KeyData = "ssh-rsa public key",
* },
* },
* },
* },
* },
* VmSize = "Standard_M32ts",
* },
* },
* DeploymentType = "ThreeTier",
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
* Location = "westcentralus",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("Deployment"),
* InfrastructureConfiguration: workloads.ThreeTierConfiguration{
* AppResourceGroup: "X00-RG",
* ApplicationServer: workloads.ApplicationServerConfiguration{
* InstanceCount: 6,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* Ssh: workloads.SshConfiguration{
* PublicKeys: []workloads.SshPublicKey{
* {
* KeyData: "ssh-rsa public key",
* },
* },
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* CentralServer: workloads.CentralServerConfiguration{
* InstanceCount: 1,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* Ssh: workloads.SshConfiguration{
* PublicKeys: []workloads.SshPublicKey{
* {
* KeyData: "ssh-rsa public key",
* },
* },
* },
* },
* },
* VmSize: "Standard_E16ds_v4",
* },
* },
* DatabaseServer: workloads.DatabaseConfiguration{
* DatabaseType: workloads.SAPDatabaseTypeHANA,
* InstanceCount: 1,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* Ssh: workloads.SshConfiguration{
* PublicKeys: []workloads.SshPublicKey{
* {
* KeyData: "ssh-rsa public key",
* },
* },
* },
* },
* },
* VmSize: "Standard_M32ts",
* },
* },
* DeploymentType: "ThreeTier",
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeProd),
* Location: pulumi.String("westcentralus"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("Deployment")
* .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
* .appResourceGroup("X00-RG")
* .applicationServer(ApplicationServerConfigurationArgs.builder()
* .instanceCount(6)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .ssh(SshConfigurationArgs.builder()
* .publicKeys(SshPublicKeyArgs.builder()
* .keyData("ssh-rsa public key")
* .build())
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .centralServer(CentralServerConfigurationArgs.builder()
* .instanceCount(1)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .ssh(SshConfigurationArgs.builder()
* .publicKeys(SshPublicKeyArgs.builder()
* .keyData("ssh-rsa public key")
* .build())
* .build())
* .build())
* .build())
* .vmSize("Standard_E16ds_v4")
* .build())
* .build())
* .databaseServer(DatabaseConfigurationArgs.builder()
* .databaseType("HANA")
* .instanceCount(1)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .ssh(SshConfigurationArgs.builder()
* .publicKeys(SshPublicKeyArgs.builder()
* .keyData("ssh-rsa public key")
* .build())
* .build())
* .build())
* .build())
* .vmSize("Standard_M32ts")
* .build())
* .build())
* .deploymentType("ThreeTier")
* .build())
* .build())
* .environment("Prod")
* .location("westcentralus")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Create Infrastructure only for HA System with Availability Set
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "Deployment",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
* {
* AppResourceGroup = "X00-RG",
* ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
* {
* InstanceCount = 5,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* Ssh = new AzureNative.Workloads.Inputs.SshConfigurationArgs
* {
* PublicKeys = new[]
* {
* new AzureNative.Workloads.Inputs.SshPublicKeyArgs
* {
* KeyData = "ssh-rsa public key",
* },
* },
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
* {
* InstanceCount = 2,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* Ssh = new AzureNative.Workloads.Inputs.SshConfigurationArgs
* {
* PublicKeys = new[]
* {
* new AzureNative.Workloads.Inputs.SshPublicKeyArgs
* {
* KeyData = "ssh-rsa public key",
* },
* },
* },
* },
* },
* VmSize = "Standard_E16ds_v4",
* },
* },
* DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
* {
* DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
* InstanceCount = 2,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* Ssh = new AzureNative.Workloads.Inputs.SshConfigurationArgs
* {
* PublicKeys = new[]
* {
* new AzureNative.Workloads.Inputs.SshPublicKeyArgs
* {
* KeyData = "ssh-rsa public key",
* },
* },
* },
* },
* },
* VmSize = "Standard_M32ts",
* },
* },
* DeploymentType = "ThreeTier",
* HighAvailabilityConfig = new AzureNative.Workloads.Inputs.HighAvailabilityConfigurationArgs
* {
* HighAvailabilityType = AzureNative.Workloads.SAPHighAvailabilityType.AvailabilitySet,
* },
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
* Location = "westcentralus",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("Deployment"),
* InfrastructureConfiguration: workloads.ThreeTierConfiguration{
* AppResourceGroup: "X00-RG",
* ApplicationServer: workloads.ApplicationServerConfiguration{
* InstanceCount: 5,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* Ssh: workloads.SshConfiguration{
* PublicKeys: []workloads.SshPublicKey{
* {
* KeyData: "ssh-rsa public key",
* },
* },
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* CentralServer: workloads.CentralServerConfiguration{
* InstanceCount: 2,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* Ssh: workloads.SshConfiguration{
* PublicKeys: []workloads.SshPublicKey{
* {
* KeyData: "ssh-rsa public key",
* },
* },
* },
* },
* },
* VmSize: "Standard_E16ds_v4",
* },
* },
* DatabaseServer: workloads.DatabaseConfiguration{
* DatabaseType: workloads.SAPDatabaseTypeHANA,
* InstanceCount: 2,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* Ssh: workloads.SshConfiguration{
* PublicKeys: []workloads.SshPublicKey{
* {
* KeyData: "ssh-rsa public key",
* },
* },
* },
* },
* },
* VmSize: "Standard_M32ts",
* },
* },
* DeploymentType: "ThreeTier",
* HighAvailabilityConfig: workloads.HighAvailabilityConfiguration{
* HighAvailabilityType: workloads.SAPHighAvailabilityTypeAvailabilitySet,
* },
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeProd),
* Location: pulumi.String("westcentralus"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("Deployment")
* .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
* .appResourceGroup("X00-RG")
* .applicationServer(ApplicationServerConfigurationArgs.builder()
* .instanceCount(5)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .ssh(SshConfigurationArgs.builder()
* .publicKeys(SshPublicKeyArgs.builder()
* .keyData("ssh-rsa public key")
* .build())
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .centralServer(CentralServerConfigurationArgs.builder()
* .instanceCount(2)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .ssh(SshConfigurationArgs.builder()
* .publicKeys(SshPublicKeyArgs.builder()
* .keyData("ssh-rsa public key")
* .build())
* .build())
* .build())
* .build())
* .vmSize("Standard_E16ds_v4")
* .build())
* .build())
* .databaseServer(DatabaseConfigurationArgs.builder()
* .databaseType("HANA")
* .instanceCount(2)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .ssh(SshConfigurationArgs.builder()
* .publicKeys(SshPublicKeyArgs.builder()
* .keyData("ssh-rsa public key")
* .build())
* .build())
* .build())
* .build())
* .vmSize("Standard_M32ts")
* .build())
* .build())
* .deploymentType("ThreeTier")
* .highAvailabilityConfig(HighAvailabilityConfigurationArgs.builder()
* .highAvailabilityType("AvailabilitySet")
* .build())
* .build())
* .build())
* .environment("Prod")
* .location("westcentralus")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Create Infrastructure only for HA System with Availability Zone
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "Deployment",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
* {
* AppResourceGroup = "X00-RG",
* ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
* {
* InstanceCount = 6,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* Ssh = new AzureNative.Workloads.Inputs.SshConfigurationArgs
* {
* PublicKeys = new[]
* {
* new AzureNative.Workloads.Inputs.SshPublicKeyArgs
* {
* KeyData = "ssh-rsa public key",
* },
* },
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
* {
* InstanceCount = 2,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* Ssh = new AzureNative.Workloads.Inputs.SshConfigurationArgs
* {
* PublicKeys = new[]
* {
* new AzureNative.Workloads.Inputs.SshPublicKeyArgs
* {
* KeyData = "ssh-rsa public key",
* },
* },
* },
* },
* },
* VmSize = "Standard_E16ds_v4",
* },
* },
* DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
* {
* DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
* InstanceCount = 2,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* Ssh = new AzureNative.Workloads.Inputs.SshConfigurationArgs
* {
* PublicKeys = new[]
* {
* new AzureNative.Workloads.Inputs.SshPublicKeyArgs
* {
* KeyData = "ssh-rsa public key",
* },
* },
* },
* },
* },
* VmSize = "Standard_M32ts",
* },
* },
* DeploymentType = "ThreeTier",
* HighAvailabilityConfig = new AzureNative.Workloads.Inputs.HighAvailabilityConfigurationArgs
* {
* HighAvailabilityType = AzureNative.Workloads.SAPHighAvailabilityType.AvailabilityZone,
* },
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
* Location = "westcentralus",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("Deployment"),
* InfrastructureConfiguration: workloads.ThreeTierConfiguration{
* AppResourceGroup: "X00-RG",
* ApplicationServer: workloads.ApplicationServerConfiguration{
* InstanceCount: 6,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* Ssh: workloads.SshConfiguration{
* PublicKeys: []workloads.SshPublicKey{
* {
* KeyData: "ssh-rsa public key",
* },
* },
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* CentralServer: workloads.CentralServerConfiguration{
* InstanceCount: 2,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* Ssh: workloads.SshConfiguration{
* PublicKeys: []workloads.SshPublicKey{
* {
* KeyData: "ssh-rsa public key",
* },
* },
* },
* },
* },
* VmSize: "Standard_E16ds_v4",
* },
* },
* DatabaseServer: workloads.DatabaseConfiguration{
* DatabaseType: workloads.SAPDatabaseTypeHANA,
* InstanceCount: 2,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* Ssh: workloads.SshConfiguration{
* PublicKeys: []workloads.SshPublicKey{
* {
* KeyData: "ssh-rsa public key",
* },
* },
* },
* },
* },
* VmSize: "Standard_M32ts",
* },
* },
* DeploymentType: "ThreeTier",
* HighAvailabilityConfig: workloads.HighAvailabilityConfiguration{
* HighAvailabilityType: workloads.SAPHighAvailabilityTypeAvailabilityZone,
* },
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeProd),
* Location: pulumi.String("westcentralus"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("Deployment")
* .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
* .appResourceGroup("X00-RG")
* .applicationServer(ApplicationServerConfigurationArgs.builder()
* .instanceCount(6)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .ssh(SshConfigurationArgs.builder()
* .publicKeys(SshPublicKeyArgs.builder()
* .keyData("ssh-rsa public key")
* .build())
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .centralServer(CentralServerConfigurationArgs.builder()
* .instanceCount(2)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .ssh(SshConfigurationArgs.builder()
* .publicKeys(SshPublicKeyArgs.builder()
* .keyData("ssh-rsa public key")
* .build())
* .build())
* .build())
* .build())
* .vmSize("Standard_E16ds_v4")
* .build())
* .build())
* .databaseServer(DatabaseConfigurationArgs.builder()
* .databaseType("HANA")
* .instanceCount(2)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .ssh(SshConfigurationArgs.builder()
* .publicKeys(SshPublicKeyArgs.builder()
* .keyData("ssh-rsa public key")
* .build())
* .build())
* .build())
* .build())
* .vmSize("Standard_M32ts")
* .build())
* .build())
* .deploymentType("ThreeTier")
* .highAvailabilityConfig(HighAvailabilityConfigurationArgs.builder()
* .highAvailabilityType("AvailabilityZone")
* .build())
* .build())
* .build())
* .environment("Prod")
* .location("westcentralus")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Create Infrastructure only for Single Server System
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "Deployment",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.SingleServerConfigurationArgs
* {
* AppResourceGroup = "X00-RG",
* DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
* DeploymentType = "SingleServer",
* NetworkConfiguration = new AzureNative.Workloads.Inputs.NetworkConfigurationArgs
* {
* IsSecondaryIpEnabled = true,
* },
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* Ssh = new AzureNative.Workloads.Inputs.SshConfigurationArgs
* {
* PublicKeys = new[]
* {
* new AzureNative.Workloads.Inputs.SshPublicKeyArgs
* {
* KeyData = "ssh-rsa public key",
* },
* },
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.NonProd,
* Location = "westcentralus",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("Deployment"),
* InfrastructureConfiguration: workloads.SingleServerConfiguration{
* AppResourceGroup: "X00-RG",
* DatabaseType: workloads.SAPDatabaseTypeHANA,
* DeploymentType: "SingleServer",
* NetworkConfiguration: workloads.NetworkConfiguration{
* IsSecondaryIpEnabled: true,
* },
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* Ssh: workloads.SshConfiguration{
* PublicKeys: []workloads.SshPublicKey{
* {
* KeyData: "ssh-rsa public key",
* },
* },
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeNonProd),
* Location: pulumi.String("westcentralus"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("Deployment")
* .infrastructureConfiguration(SingleServerConfigurationArgs.builder()
* .appResourceGroup("X00-RG")
* .databaseType("HANA")
* .deploymentType("SingleServer")
* .networkConfiguration(NetworkConfigurationArgs.builder()
* .isSecondaryIpEnabled(true)
* .build())
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .ssh(SshConfigurationArgs.builder()
* .publicKeys(SshPublicKeyArgs.builder()
* .keyData("ssh-rsa public key")
* .build())
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .build())
* .environment("NonProd")
* .location("westcentralus")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Create Infrastructure with Disk and OS configuration for Distributed System (Recommended)
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "DeploymentWithOSConfig",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
* {
* AppResourceGroup = "X00-RG",
* ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
* {
* InstanceCount = 6,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
* {
* InstanceCount = 1,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E16ds_v4",
* },
* },
* DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
* {
* DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
* DiskConfiguration = new AzureNative.Workloads.Inputs.DiskConfigurationArgs
* {
* DiskVolumeConfigurations =
* {
* { "backup", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 2,
* SizeGB = 256,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
* },
* } },
* { "hana/data", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 4,
* SizeGB = 128,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
* },
* } },
* { "hana/log", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 3,
* SizeGB = 128,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
* },
* } },
* { "hana/shared", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 1,
* SizeGB = 256,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
* },
* } },
* { "os", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 1,
* SizeGB = 64,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
* },
* } },
* { "usr/sap", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 1,
* SizeGB = 128,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
* },
* } },
* },
* },
* InstanceCount = 1,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_M32ts",
* },
* },
* DeploymentType = "ThreeTier",
* },
* OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
* {
* SapFqdn = "xyz.test.com",
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
* Location = "westcentralus",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentWithOSConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
* InfrastructureConfiguration: workloads.ThreeTierConfiguration{
* AppResourceGroup: "X00-RG",
* ApplicationServer: workloads.ApplicationServerConfiguration{
* InstanceCount: 6,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* CentralServer: workloads.CentralServerConfiguration{
* InstanceCount: 1,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E16ds_v4",
* },
* },
* DatabaseServer: workloads.DatabaseConfiguration{
* DatabaseType: workloads.SAPDatabaseTypeHANA,
* DiskConfiguration: workloads.DiskConfiguration{
* DiskVolumeConfigurations: map[string]workloads.DiskVolumeConfiguration{
* "backup": workloads.DiskVolumeConfiguration{
* Count: 2,
* SizeGB: 256,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_StandardSSD_LRS,
* },
* },
* "hana/data": workloads.DiskVolumeConfiguration{
* Count: 4,
* SizeGB: 128,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_Premium_LRS,
* },
* },
* "hana/log": workloads.DiskVolumeConfiguration{
* Count: 3,
* SizeGB: 128,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_Premium_LRS,
* },
* },
* "hana/shared": workloads.DiskVolumeConfiguration{
* Count: 1,
* SizeGB: 256,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_StandardSSD_LRS,
* },
* },
* "os": workloads.DiskVolumeConfiguration{
* Count: 1,
* SizeGB: 64,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_StandardSSD_LRS,
* },
* },
* "usr/sap": workloads.DiskVolumeConfiguration{
* Count: 1,
* SizeGB: 128,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_Premium_LRS,
* },
* },
* },
* },
* InstanceCount: 1,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_M32ts",
* },
* },
* DeploymentType: "ThreeTier",
* },
* OsSapConfiguration: &workloads.OsSapConfigurationArgs{
* SapFqdn: pulumi.String("xyz.test.com"),
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeProd),
* Location: pulumi.String("westcentralus"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentWithOSConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("DeploymentWithOSConfig")
* .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
* .appResourceGroup("X00-RG")
* .applicationServer(ApplicationServerConfigurationArgs.builder()
* .instanceCount(6)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .centralServer(CentralServerConfigurationArgs.builder()
* .instanceCount(1)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E16ds_v4")
* .build())
* .build())
* .databaseServer(DatabaseConfigurationArgs.builder()
* .databaseType("HANA")
* .diskConfiguration(DiskConfigurationArgs.builder()
* .diskVolumeConfigurations(Map.ofEntries(
* Map.entry("backup", Map.ofEntries(
* Map.entry("count", 2),
* Map.entry("sizeGB", 256),
* Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
* )),
* Map.entry("hana/data", Map.ofEntries(
* Map.entry("count", 4),
* Map.entry("sizeGB", 128),
* Map.entry("sku", Map.of("name", "Premium_LRS"))
* )),
* Map.entry("hana/log", Map.ofEntries(
* Map.entry("count", 3),
* Map.entry("sizeGB", 128),
* Map.entry("sku", Map.of("name", "Premium_LRS"))
* )),
* Map.entry("hana/shared", Map.ofEntries(
* Map.entry("count", 1),
* Map.entry("sizeGB", 256),
* Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
* )),
* Map.entry("os", Map.ofEntries(
* Map.entry("count", 1),
* Map.entry("sizeGB", 64),
* Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
* )),
* Map.entry("usr/sap", Map.ofEntries(
* Map.entry("count", 1),
* Map.entry("sizeGB", 128),
* Map.entry("sku", Map.of("name", "Premium_LRS"))
* ))
* ))
* .build())
* .instanceCount(1)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_M32ts")
* .build())
* .build())
* .deploymentType("ThreeTier")
* .build())
* .osSapConfiguration(OsSapConfigurationArgs.builder()
* .sapFqdn("xyz.test.com")
* .build())
* .build())
* .environment("Prod")
* .location("westcentralus")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Create Infrastructure with Disk and OS configuration for HA System with Availability Set (Recommended)
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "DeploymentWithOSConfig",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
* {
* AppResourceGroup = "X00-RG",
* ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
* {
* InstanceCount = 6,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
* {
* InstanceCount = 2,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E16ds_v4",
* },
* },
* DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
* {
* DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
* DiskConfiguration = new AzureNative.Workloads.Inputs.DiskConfigurationArgs
* {
* DiskVolumeConfigurations =
* {
* { "backup", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 2,
* SizeGB = 256,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
* },
* } },
* { "hana/data", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 4,
* SizeGB = 128,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
* },
* } },
* { "hana/log", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 3,
* SizeGB = 128,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
* },
* } },
* { "hana/shared", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 1,
* SizeGB = 256,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
* },
* } },
* { "os", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 1,
* SizeGB = 64,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
* },
* } },
* { "usr/sap", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 1,
* SizeGB = 128,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
* },
* } },
* },
* },
* InstanceCount = 2,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_M32ts",
* },
* },
* DeploymentType = "ThreeTier",
* HighAvailabilityConfig = new AzureNative.Workloads.Inputs.HighAvailabilityConfigurationArgs
* {
* HighAvailabilityType = AzureNative.Workloads.SAPHighAvailabilityType.AvailabilitySet,
* },
* },
* OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
* {
* SapFqdn = "xyz.test.com",
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
* Location = "westcentralus",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentWithOSConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
* InfrastructureConfiguration: workloads.ThreeTierConfiguration{
* AppResourceGroup: "X00-RG",
* ApplicationServer: workloads.ApplicationServerConfiguration{
* InstanceCount: 6,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* CentralServer: workloads.CentralServerConfiguration{
* InstanceCount: 2,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E16ds_v4",
* },
* },
* DatabaseServer: workloads.DatabaseConfiguration{
* DatabaseType: workloads.SAPDatabaseTypeHANA,
* DiskConfiguration: workloads.DiskConfiguration{
* DiskVolumeConfigurations: map[string]workloads.DiskVolumeConfiguration{
* "backup": workloads.DiskVolumeConfiguration{
* Count: 2,
* SizeGB: 256,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_StandardSSD_LRS,
* },
* },
* "hana/data": workloads.DiskVolumeConfiguration{
* Count: 4,
* SizeGB: 128,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_Premium_LRS,
* },
* },
* "hana/log": workloads.DiskVolumeConfiguration{
* Count: 3,
* SizeGB: 128,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_Premium_LRS,
* },
* },
* "hana/shared": workloads.DiskVolumeConfiguration{
* Count: 1,
* SizeGB: 256,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_StandardSSD_LRS,
* },
* },
* "os": workloads.DiskVolumeConfiguration{
* Count: 1,
* SizeGB: 64,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_StandardSSD_LRS,
* },
* },
* "usr/sap": workloads.DiskVolumeConfiguration{
* Count: 1,
* SizeGB: 128,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_Premium_LRS,
* },
* },
* },
* },
* InstanceCount: 2,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_M32ts",
* },
* },
* DeploymentType: "ThreeTier",
* HighAvailabilityConfig: workloads.HighAvailabilityConfiguration{
* HighAvailabilityType: workloads.SAPHighAvailabilityTypeAvailabilitySet,
* },
* },
* OsSapConfiguration: &workloads.OsSapConfigurationArgs{
* SapFqdn: pulumi.String("xyz.test.com"),
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeProd),
* Location: pulumi.String("westcentralus"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentWithOSConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("DeploymentWithOSConfig")
* .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
* .appResourceGroup("X00-RG")
* .applicationServer(ApplicationServerConfigurationArgs.builder()
* .instanceCount(6)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .centralServer(CentralServerConfigurationArgs.builder()
* .instanceCount(2)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E16ds_v4")
* .build())
* .build())
* .databaseServer(DatabaseConfigurationArgs.builder()
* .databaseType("HANA")
* .diskConfiguration(DiskConfigurationArgs.builder()
* .diskVolumeConfigurations(Map.ofEntries(
* Map.entry("backup", Map.ofEntries(
* Map.entry("count", 2),
* Map.entry("sizeGB", 256),
* Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
* )),
* Map.entry("hana/data", Map.ofEntries(
* Map.entry("count", 4),
* Map.entry("sizeGB", 128),
* Map.entry("sku", Map.of("name", "Premium_LRS"))
* )),
* Map.entry("hana/log", Map.ofEntries(
* Map.entry("count", 3),
* Map.entry("sizeGB", 128),
* Map.entry("sku", Map.of("name", "Premium_LRS"))
* )),
* Map.entry("hana/shared", Map.ofEntries(
* Map.entry("count", 1),
* Map.entry("sizeGB", 256),
* Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
* )),
* Map.entry("os", Map.ofEntries(
* Map.entry("count", 1),
* Map.entry("sizeGB", 64),
* Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
* )),
* Map.entry("usr/sap", Map.ofEntries(
* Map.entry("count", 1),
* Map.entry("sizeGB", 128),
* Map.entry("sku", Map.of("name", "Premium_LRS"))
* ))
* ))
* .build())
* .instanceCount(2)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_M32ts")
* .build())
* .build())
* .deploymentType("ThreeTier")
* .highAvailabilityConfig(HighAvailabilityConfigurationArgs.builder()
* .highAvailabilityType("AvailabilitySet")
* .build())
* .build())
* .osSapConfiguration(OsSapConfigurationArgs.builder()
* .sapFqdn("xyz.test.com")
* .build())
* .build())
* .environment("Prod")
* .location("westcentralus")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Create Infrastructure with Disk and OS configuration for HA System with Availability Zone (Recommended)
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "DeploymentWithOSConfig",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
* {
* AppResourceGroup = "X00-RG",
* ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
* {
* InstanceCount = 6,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
* {
* InstanceCount = 2,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E16ds_v4",
* },
* },
* DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
* {
* DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
* DiskConfiguration = new AzureNative.Workloads.Inputs.DiskConfigurationArgs
* {
* DiskVolumeConfigurations =
* {
* { "backup", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 2,
* SizeGB = 256,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
* },
* } },
* { "hana/data", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 4,
* SizeGB = 128,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
* },
* } },
* { "hana/log", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 3,
* SizeGB = 128,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
* },
* } },
* { "hana/shared", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 1,
* SizeGB = 256,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
* },
* } },
* { "os", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 1,
* SizeGB = 64,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
* },
* } },
* { "usr/sap", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 1,
* SizeGB = 128,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
* },
* } },
* },
* },
* InstanceCount = 2,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_M32ts",
* },
* },
* DeploymentType = "ThreeTier",
* HighAvailabilityConfig = new AzureNative.Workloads.Inputs.HighAvailabilityConfigurationArgs
* {
* HighAvailabilityType = AzureNative.Workloads.SAPHighAvailabilityType.AvailabilityZone,
* },
* },
* OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
* {
* SapFqdn = "xyz.test.com",
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
* Location = "westcentralus",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentWithOSConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
* InfrastructureConfiguration: workloads.ThreeTierConfiguration{
* AppResourceGroup: "X00-RG",
* ApplicationServer: workloads.ApplicationServerConfiguration{
* InstanceCount: 6,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* CentralServer: workloads.CentralServerConfiguration{
* InstanceCount: 2,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E16ds_v4",
* },
* },
* DatabaseServer: workloads.DatabaseConfiguration{
* DatabaseType: workloads.SAPDatabaseTypeHANA,
* DiskConfiguration: workloads.DiskConfiguration{
* DiskVolumeConfigurations: map[string]workloads.DiskVolumeConfiguration{
* "backup": workloads.DiskVolumeConfiguration{
* Count: 2,
* SizeGB: 256,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_StandardSSD_LRS,
* },
* },
* "hana/data": workloads.DiskVolumeConfiguration{
* Count: 4,
* SizeGB: 128,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_Premium_LRS,
* },
* },
* "hana/log": workloads.DiskVolumeConfiguration{
* Count: 3,
* SizeGB: 128,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_Premium_LRS,
* },
* },
* "hana/shared": workloads.DiskVolumeConfiguration{
* Count: 1,
* SizeGB: 256,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_StandardSSD_LRS,
* },
* },
* "os": workloads.DiskVolumeConfiguration{
* Count: 1,
* SizeGB: 64,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_StandardSSD_LRS,
* },
* },
* "usr/sap": workloads.DiskVolumeConfiguration{
* Count: 1,
* SizeGB: 128,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_Premium_LRS,
* },
* },
* },
* },
* InstanceCount: 2,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_M32ts",
* },
* },
* DeploymentType: "ThreeTier",
* HighAvailabilityConfig: workloads.HighAvailabilityConfiguration{
* HighAvailabilityType: workloads.SAPHighAvailabilityTypeAvailabilityZone,
* },
* },
* OsSapConfiguration: &workloads.OsSapConfigurationArgs{
* SapFqdn: pulumi.String("xyz.test.com"),
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeProd),
* Location: pulumi.String("westcentralus"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentWithOSConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("DeploymentWithOSConfig")
* .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
* .appResourceGroup("X00-RG")
* .applicationServer(ApplicationServerConfigurationArgs.builder()
* .instanceCount(6)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .centralServer(CentralServerConfigurationArgs.builder()
* .instanceCount(2)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E16ds_v4")
* .build())
* .build())
* .databaseServer(DatabaseConfigurationArgs.builder()
* .databaseType("HANA")
* .diskConfiguration(DiskConfigurationArgs.builder()
* .diskVolumeConfigurations(Map.ofEntries(
* Map.entry("backup", Map.ofEntries(
* Map.entry("count", 2),
* Map.entry("sizeGB", 256),
* Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
* )),
* Map.entry("hana/data", Map.ofEntries(
* Map.entry("count", 4),
* Map.entry("sizeGB", 128),
* Map.entry("sku", Map.of("name", "Premium_LRS"))
* )),
* Map.entry("hana/log", Map.ofEntries(
* Map.entry("count", 3),
* Map.entry("sizeGB", 128),
* Map.entry("sku", Map.of("name", "Premium_LRS"))
* )),
* Map.entry("hana/shared", Map.ofEntries(
* Map.entry("count", 1),
* Map.entry("sizeGB", 256),
* Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
* )),
* Map.entry("os", Map.ofEntries(
* Map.entry("count", 1),
* Map.entry("sizeGB", 64),
* Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
* )),
* Map.entry("usr/sap", Map.ofEntries(
* Map.entry("count", 1),
* Map.entry("sizeGB", 128),
* Map.entry("sku", Map.of("name", "Premium_LRS"))
* ))
* ))
* .build())
* .instanceCount(2)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_M32ts")
* .build())
* .build())
* .deploymentType("ThreeTier")
* .highAvailabilityConfig(HighAvailabilityConfigurationArgs.builder()
* .highAvailabilityType("AvailabilityZone")
* .build())
* .build())
* .osSapConfiguration(OsSapConfigurationArgs.builder()
* .sapFqdn("xyz.test.com")
* .build())
* .build())
* .environment("Prod")
* .location("westcentralus")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Create Infrastructure with Disk and OS configurations for Single Server System (Recommended)
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "DeploymentWithOSConfig",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.SingleServerConfigurationArgs
* {
* AppResourceGroup = "X00-RG",
* DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
* DbDiskConfiguration = new AzureNative.Workloads.Inputs.DiskConfigurationArgs
* {
* DiskVolumeConfigurations =
* {
* { "backup", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 2,
* SizeGB = 256,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
* },
* } },
* { "hana/data", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 4,
* SizeGB = 128,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
* },
* } },
* { "hana/log", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 3,
* SizeGB = 128,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
* },
* } },
* { "hana/shared", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 1,
* SizeGB = 256,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
* },
* } },
* { "os", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 1,
* SizeGB = 64,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
* },
* } },
* { "usr/sap", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
* {
* Count = 1,
* SizeGB = 128,
* Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
* {
* Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
* },
* } },
* },
* },
* DeploymentType = "SingleServer",
* NetworkConfiguration = new AzureNative.Workloads.Inputs.NetworkConfigurationArgs
* {
* IsSecondaryIpEnabled = true,
* },
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
* {
* SapFqdn = "xyz.test.com",
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.NonProd,
* Location = "westcentralus",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentWithOSConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
* InfrastructureConfiguration: workloads.SingleServerConfiguration{
* AppResourceGroup: "X00-RG",
* DatabaseType: workloads.SAPDatabaseTypeHANA,
* DbDiskConfiguration: workloads.DiskConfiguration{
* DiskVolumeConfigurations: map[string]workloads.DiskVolumeConfiguration{
* "backup": workloads.DiskVolumeConfiguration{
* Count: 2,
* SizeGB: 256,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_StandardSSD_LRS,
* },
* },
* "hana/data": workloads.DiskVolumeConfiguration{
* Count: 4,
* SizeGB: 128,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_Premium_LRS,
* },
* },
* "hana/log": workloads.DiskVolumeConfiguration{
* Count: 3,
* SizeGB: 128,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_Premium_LRS,
* },
* },
* "hana/shared": workloads.DiskVolumeConfiguration{
* Count: 1,
* SizeGB: 256,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_StandardSSD_LRS,
* },
* },
* "os": workloads.DiskVolumeConfiguration{
* Count: 1,
* SizeGB: 64,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_StandardSSD_LRS,
* },
* },
* "usr/sap": workloads.DiskVolumeConfiguration{
* Count: 1,
* SizeGB: 128,
* Sku: workloads.DiskSku{
* Name: workloads.DiskSkuName_Premium_LRS,
* },
* },
* },
* },
* DeploymentType: "SingleServer",
* NetworkConfiguration: workloads.NetworkConfiguration{
* IsSecondaryIpEnabled: true,
* },
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* OsSapConfiguration: &workloads.OsSapConfigurationArgs{
* SapFqdn: pulumi.String("xyz.test.com"),
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeNonProd),
* Location: pulumi.String("westcentralus"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentWithOSConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("DeploymentWithOSConfig")
* .infrastructureConfiguration(SingleServerConfigurationArgs.builder()
* .appResourceGroup("X00-RG")
* .databaseType("HANA")
* .dbDiskConfiguration(DiskConfigurationArgs.builder()
* .diskVolumeConfigurations(Map.ofEntries(
* Map.entry("backup", Map.ofEntries(
* Map.entry("count", 2),
* Map.entry("sizeGB", 256),
* Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
* )),
* Map.entry("hana/data", Map.ofEntries(
* Map.entry("count", 4),
* Map.entry("sizeGB", 128),
* Map.entry("sku", Map.of("name", "Premium_LRS"))
* )),
* Map.entry("hana/log", Map.ofEntries(
* Map.entry("count", 3),
* Map.entry("sizeGB", 128),
* Map.entry("sku", Map.of("name", "Premium_LRS"))
* )),
* Map.entry("hana/shared", Map.ofEntries(
* Map.entry("count", 1),
* Map.entry("sizeGB", 256),
* Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
* )),
* Map.entry("os", Map.ofEntries(
* Map.entry("count", 1),
* Map.entry("sizeGB", 64),
* Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
* )),
* Map.entry("usr/sap", Map.ofEntries(
* Map.entry("count", 1),
* Map.entry("sizeGB", 128),
* Map.entry("sku", Map.of("name", "Premium_LRS"))
* ))
* ))
* .build())
* .deploymentType("SingleServer")
* .networkConfiguration(NetworkConfigurationArgs.builder()
* .isSecondaryIpEnabled(true)
* .build())
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .osSapConfiguration(OsSapConfigurationArgs.builder()
* .sapFqdn("xyz.test.com")
* .build())
* .build())
* .environment("NonProd")
* .location("westcentralus")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Create Infrastructure with OS configuration for Distributed System (Recommended)
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "DeploymentWithOSConfig",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
* {
* AppResourceGroup = "X00-RG",
* ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
* {
* InstanceCount = 6,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
* {
* InstanceCount = 1,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E16ds_v4",
* },
* },
* DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
* {
* DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
* InstanceCount = 1,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_M32ts",
* },
* },
* DeploymentType = "ThreeTier",
* },
* OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
* {
* SapFqdn = "xyz.test.com",
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
* Location = "westcentralus",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentWithOSConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
* InfrastructureConfiguration: workloads.ThreeTierConfiguration{
* AppResourceGroup: "X00-RG",
* ApplicationServer: workloads.ApplicationServerConfiguration{
* InstanceCount: 6,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* CentralServer: workloads.CentralServerConfiguration{
* InstanceCount: 1,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E16ds_v4",
* },
* },
* DatabaseServer: workloads.DatabaseConfiguration{
* DatabaseType: workloads.SAPDatabaseTypeHANA,
* InstanceCount: 1,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_M32ts",
* },
* },
* DeploymentType: "ThreeTier",
* },
* OsSapConfiguration: &workloads.OsSapConfigurationArgs{
* SapFqdn: pulumi.String("xyz.test.com"),
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeProd),
* Location: pulumi.String("westcentralus"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentWithOSConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("DeploymentWithOSConfig")
* .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
* .appResourceGroup("X00-RG")
* .applicationServer(ApplicationServerConfigurationArgs.builder()
* .instanceCount(6)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .centralServer(CentralServerConfigurationArgs.builder()
* .instanceCount(1)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E16ds_v4")
* .build())
* .build())
* .databaseServer(DatabaseConfigurationArgs.builder()
* .databaseType("HANA")
* .instanceCount(1)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_M32ts")
* .build())
* .build())
* .deploymentType("ThreeTier")
* .build())
* .osSapConfiguration(OsSapConfigurationArgs.builder()
* .sapFqdn("xyz.test.com")
* .build())
* .build())
* .environment("Prod")
* .location("westcentralus")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Create Infrastructure with OS configuration for HA System with Availability Set (Recommended)
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "DeploymentWithOSConfig",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
* {
* AppResourceGroup = "X00-RG",
* ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
* {
* InstanceCount = 6,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
* {
* InstanceCount = 2,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E16ds_v4",
* },
* },
* DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
* {
* DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
* InstanceCount = 2,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_M32ts",
* },
* },
* DeploymentType = "ThreeTier",
* HighAvailabilityConfig = new AzureNative.Workloads.Inputs.HighAvailabilityConfigurationArgs
* {
* HighAvailabilityType = AzureNative.Workloads.SAPHighAvailabilityType.AvailabilitySet,
* },
* },
* OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
* {
* SapFqdn = "xyz.test.com",
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
* Location = "westcentralus",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentWithOSConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
* InfrastructureConfiguration: workloads.ThreeTierConfiguration{
* AppResourceGroup: "X00-RG",
* ApplicationServer: workloads.ApplicationServerConfiguration{
* InstanceCount: 6,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* CentralServer: workloads.CentralServerConfiguration{
* InstanceCount: 2,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E16ds_v4",
* },
* },
* DatabaseServer: workloads.DatabaseConfiguration{
* DatabaseType: workloads.SAPDatabaseTypeHANA,
* InstanceCount: 2,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_M32ts",
* },
* },
* DeploymentType: "ThreeTier",
* HighAvailabilityConfig: workloads.HighAvailabilityConfiguration{
* HighAvailabilityType: workloads.SAPHighAvailabilityTypeAvailabilitySet,
* },
* },
* OsSapConfiguration: &workloads.OsSapConfigurationArgs{
* SapFqdn: pulumi.String("xyz.test.com"),
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeProd),
* Location: pulumi.String("westcentralus"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentWithOSConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("DeploymentWithOSConfig")
* .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
* .appResourceGroup("X00-RG")
* .applicationServer(ApplicationServerConfigurationArgs.builder()
* .instanceCount(6)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .centralServer(CentralServerConfigurationArgs.builder()
* .instanceCount(2)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E16ds_v4")
* .build())
* .build())
* .databaseServer(DatabaseConfigurationArgs.builder()
* .databaseType("HANA")
* .instanceCount(2)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_M32ts")
* .build())
* .build())
* .deploymentType("ThreeTier")
* .highAvailabilityConfig(HighAvailabilityConfigurationArgs.builder()
* .highAvailabilityType("AvailabilitySet")
* .build())
* .build())
* .osSapConfiguration(OsSapConfigurationArgs.builder()
* .sapFqdn("xyz.test.com")
* .build())
* .build())
* .environment("Prod")
* .location("westcentralus")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Create Infrastructure with OS configuration for HA System with Availability Zone (Recommended)
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "DeploymentWithOSConfig",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
* {
* AppResourceGroup = "X00-RG",
* ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
* {
* InstanceCount = 6,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
* {
* InstanceCount = 2,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E16ds_v4",
* },
* },
* DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
* {
* DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
* InstanceCount = 2,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_M32ts",
* },
* },
* DeploymentType = "ThreeTier",
* HighAvailabilityConfig = new AzureNative.Workloads.Inputs.HighAvailabilityConfigurationArgs
* {
* HighAvailabilityType = AzureNative.Workloads.SAPHighAvailabilityType.AvailabilityZone,
* },
* },
* OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
* {
* SapFqdn = "xyz.test.com",
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
* Location = "westcentralus",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentWithOSConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
* InfrastructureConfiguration: workloads.ThreeTierConfiguration{
* AppResourceGroup: "X00-RG",
* ApplicationServer: workloads.ApplicationServerConfiguration{
* InstanceCount: 6,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* CentralServer: workloads.CentralServerConfiguration{
* InstanceCount: 2,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E16ds_v4",
* },
* },
* DatabaseServer: workloads.DatabaseConfiguration{
* DatabaseType: workloads.SAPDatabaseTypeHANA,
* InstanceCount: 2,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_M32ts",
* },
* },
* DeploymentType: "ThreeTier",
* HighAvailabilityConfig: workloads.HighAvailabilityConfiguration{
* HighAvailabilityType: workloads.SAPHighAvailabilityTypeAvailabilityZone,
* },
* },
* OsSapConfiguration: &workloads.OsSapConfigurationArgs{
* SapFqdn: pulumi.String("xyz.test.com"),
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeProd),
* Location: pulumi.String("westcentralus"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentWithOSConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("DeploymentWithOSConfig")
* .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
* .appResourceGroup("X00-RG")
* .applicationServer(ApplicationServerConfigurationArgs.builder()
* .instanceCount(6)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .centralServer(CentralServerConfigurationArgs.builder()
* .instanceCount(2)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E16ds_v4")
* .build())
* .build())
* .databaseServer(DatabaseConfigurationArgs.builder()
* .databaseType("HANA")
* .instanceCount(2)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_M32ts")
* .build())
* .build())
* .deploymentType("ThreeTier")
* .highAvailabilityConfig(HighAvailabilityConfigurationArgs.builder()
* .highAvailabilityType("AvailabilityZone")
* .build())
* .build())
* .osSapConfiguration(OsSapConfigurationArgs.builder()
* .sapFqdn("xyz.test.com")
* .build())
* .build())
* .environment("Prod")
* .location("westcentralus")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Create Infrastructure with OS configuration for Single Server System (Recommended)
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "DeploymentWithOSConfig",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.SingleServerConfigurationArgs
* {
* AppResourceGroup = "X00-RG",
* DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
* DeploymentType = "SingleServer",
* NetworkConfiguration = new AzureNative.Workloads.Inputs.NetworkConfigurationArgs
* {
* IsSecondaryIpEnabled = true,
* },
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
* {
* SapFqdn = "xyz.test.com",
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.NonProd,
* Location = "westcentralus",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentWithOSConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
* InfrastructureConfiguration: workloads.SingleServerConfiguration{
* AppResourceGroup: "X00-RG",
* DatabaseType: workloads.SAPDatabaseTypeHANA,
* DeploymentType: "SingleServer",
* NetworkConfiguration: workloads.NetworkConfiguration{
* IsSecondaryIpEnabled: true,
* },
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* OsSapConfiguration: &workloads.OsSapConfigurationArgs{
* SapFqdn: pulumi.String("xyz.test.com"),
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeNonProd),
* Location: pulumi.String("westcentralus"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentWithOSConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("DeploymentWithOSConfig")
* .infrastructureConfiguration(SingleServerConfigurationArgs.builder()
* .appResourceGroup("X00-RG")
* .databaseType("HANA")
* .deploymentType("SingleServer")
* .networkConfiguration(NetworkConfigurationArgs.builder()
* .isSecondaryIpEnabled(true)
* .build())
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .osSapConfiguration(OsSapConfigurationArgs.builder()
* .sapFqdn("xyz.test.com")
* .build())
* .build())
* .environment("NonProd")
* .location("westcentralus")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Create Infrastructure with a new SAP Transport Directory Fileshare
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "DeploymentWithOSConfig",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
* {
* AppResourceGroup = "X00-RG",
* ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
* {
* InstanceCount = 6,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
* {
* InstanceCount = 1,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E16ds_v4",
* },
* },
* DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
* {
* DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
* InstanceCount = 1,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_M32ts",
* },
* },
* DeploymentType = "ThreeTier",
* StorageConfiguration = new AzureNative.Workloads.Inputs.StorageConfigurationArgs
* {
* TransportFileShareConfiguration = new AzureNative.Workloads.Inputs.CreateAndMountFileShareConfigurationArgs
* {
* ConfigurationType = "CreateAndMount",
* ResourceGroup = "rgName",
* StorageAccountName = "storageName",
* },
* },
* },
* OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
* {
* SapFqdn = "xyz.test.com",
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
* Location = "westcentralus",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentWithOSConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
* InfrastructureConfiguration: workloads.ThreeTierConfiguration{
* AppResourceGroup: "X00-RG",
* ApplicationServer: workloads.ApplicationServerConfiguration{
* InstanceCount: 6,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* CentralServer: workloads.CentralServerConfiguration{
* InstanceCount: 1,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E16ds_v4",
* },
* },
* DatabaseServer: workloads.DatabaseConfiguration{
* DatabaseType: workloads.SAPDatabaseTypeHANA,
* InstanceCount: 1,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_M32ts",
* },
* },
* DeploymentType: "ThreeTier",
* StorageConfiguration: workloads.StorageConfiguration{
* TransportFileShareConfiguration: workloads.CreateAndMountFileShareConfiguration{
* ConfigurationType: "CreateAndMount",
* ResourceGroup: "rgName",
* StorageAccountName: "storageName",
* },
* },
* },
* OsSapConfiguration: &workloads.OsSapConfigurationArgs{
* SapFqdn: pulumi.String("xyz.test.com"),
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeProd),
* Location: pulumi.String("westcentralus"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentWithOSConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("DeploymentWithOSConfig")
* .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
* .appResourceGroup("X00-RG")
* .applicationServer(ApplicationServerConfigurationArgs.builder()
* .instanceCount(6)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .centralServer(CentralServerConfigurationArgs.builder()
* .instanceCount(1)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E16ds_v4")
* .build())
* .build())
* .databaseServer(DatabaseConfigurationArgs.builder()
* .databaseType("HANA")
* .instanceCount(1)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_M32ts")
* .build())
* .build())
* .deploymentType("ThreeTier")
* .storageConfiguration(StorageConfigurationArgs.builder()
* .transportFileShareConfiguration(CreateAndMountFileShareConfigurationArgs.builder()
* .configurationType("CreateAndMount")
* .resourceGroup("rgName")
* .storageAccountName("storageName")
* .build())
* .build())
* .build())
* .osSapConfiguration(OsSapConfigurationArgs.builder()
* .sapFqdn("xyz.test.com")
* .build())
* .build())
* .environment("Prod")
* .location("westcentralus")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Create Infrastructure with an existing SAP Transport Directory Fileshare
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "DeploymentWithOSConfig",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
* {
* AppResourceGroup = "X00-RG",
* ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
* {
* InstanceCount = 6,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
* {
* InstanceCount = 1,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E16ds_v4",
* },
* },
* DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
* {
* DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
* InstanceCount = 1,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_M32ts",
* },
* },
* DeploymentType = "ThreeTier",
* StorageConfiguration = new AzureNative.Workloads.Inputs.StorageConfigurationArgs
* {
* TransportFileShareConfiguration = new AzureNative.Workloads.Inputs.MountFileShareConfigurationArgs
* {
* ConfigurationType = "Mount",
* Id = "/subscriptions/49d64d54-e888-4c46-a868-1936802b762c/resourceGroups/testrg/providers/Microsoft.Network/privateEndpoints/endpoint",
* PrivateEndpointId = "/subscriptions/49d64d54-e888-4c46-a868-1936802b762c/resourceGroups/testrg/providers/Microsoft.Network/privateEndpoints/endpoint",
* },
* },
* },
* OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
* {
* SapFqdn = "xyz.test.com",
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
* Location = "westcentralus",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentWithOSConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
* InfrastructureConfiguration: workloads.ThreeTierConfiguration{
* AppResourceGroup: "X00-RG",
* ApplicationServer: workloads.ApplicationServerConfiguration{
* InstanceCount: 6,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* CentralServer: workloads.CentralServerConfiguration{
* InstanceCount: 1,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E16ds_v4",
* },
* },
* DatabaseServer: workloads.DatabaseConfiguration{
* DatabaseType: workloads.SAPDatabaseTypeHANA,
* InstanceCount: 1,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_M32ts",
* },
* },
* DeploymentType: "ThreeTier",
* StorageConfiguration: workloads.StorageConfiguration{
* TransportFileShareConfiguration: workloads.MountFileShareConfiguration{
* ConfigurationType: "Mount",
* Id: "/subscriptions/49d64d54-e888-4c46-a868-1936802b762c/resourceGroups/testrg/providers/Microsoft.Network/privateEndpoints/endpoint",
* PrivateEndpointId: "/subscriptions/49d64d54-e888-4c46-a868-1936802b762c/resourceGroups/testrg/providers/Microsoft.Network/privateEndpoints/endpoint",
* },
* },
* },
* OsSapConfiguration: &workloads.OsSapConfigurationArgs{
* SapFqdn: pulumi.String("xyz.test.com"),
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeProd),
* Location: pulumi.String("westcentralus"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentWithOSConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("DeploymentWithOSConfig")
* .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
* .appResourceGroup("X00-RG")
* .applicationServer(ApplicationServerConfigurationArgs.builder()
* .instanceCount(6)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .centralServer(CentralServerConfigurationArgs.builder()
* .instanceCount(1)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E16ds_v4")
* .build())
* .build())
* .databaseServer(DatabaseConfigurationArgs.builder()
* .databaseType("HANA")
* .instanceCount(1)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_M32ts")
* .build())
* .build())
* .deploymentType("ThreeTier")
* .storageConfiguration(StorageConfigurationArgs.builder()
* .transportFileShareConfiguration(CreateAndMountFileShareConfigurationArgs.builder()
* .configurationType("Mount")
* .id("/subscriptions/49d64d54-e888-4c46-a868-1936802b762c/resourceGroups/testrg/providers/Microsoft.Network/privateEndpoints/endpoint")
* .privateEndpointId("/subscriptions/49d64d54-e888-4c46-a868-1936802b762c/resourceGroups/testrg/providers/Microsoft.Network/privateEndpoints/endpoint")
* .build())
* .build())
* .build())
* .osSapConfiguration(OsSapConfigurationArgs.builder()
* .sapFqdn("xyz.test.com")
* .build())
* .build())
* .environment("Prod")
* .location("westcentralus")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Create Infrastructure without a SAP Transport Directory Fileshare
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "DeploymentWithOSConfig",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
* {
* AppResourceGroup = "X00-RG",
* ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
* {
* InstanceCount = 6,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
* {
* InstanceCount = 1,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E16ds_v4",
* },
* },
* DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
* {
* DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
* InstanceCount = 1,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_M32ts",
* },
* },
* DeploymentType = "ThreeTier",
* StorageConfiguration = new AzureNative.Workloads.Inputs.StorageConfigurationArgs
* {
* TransportFileShareConfiguration = new AzureNative.Workloads.Inputs.SkipFileShareConfigurationArgs
* {
* ConfigurationType = "Skip",
* },
* },
* },
* OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
* {
* SapFqdn = "xyz.test.com",
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
* Location = "westcentralus",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentWithOSConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
* InfrastructureConfiguration: workloads.ThreeTierConfiguration{
* AppResourceGroup: "X00-RG",
* ApplicationServer: workloads.ApplicationServerConfiguration{
* InstanceCount: 6,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* CentralServer: workloads.CentralServerConfiguration{
* InstanceCount: 1,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E16ds_v4",
* },
* },
* DatabaseServer: workloads.DatabaseConfiguration{
* DatabaseType: workloads.SAPDatabaseTypeHANA,
* InstanceCount: 1,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_M32ts",
* },
* },
* DeploymentType: "ThreeTier",
* StorageConfiguration: workloads.StorageConfiguration{
* TransportFileShareConfiguration: workloads.SkipFileShareConfiguration{
* ConfigurationType: "Skip",
* },
* },
* },
* OsSapConfiguration: &workloads.OsSapConfigurationArgs{
* SapFqdn: pulumi.String("xyz.test.com"),
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeProd),
* Location: pulumi.String("westcentralus"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentWithOSConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("DeploymentWithOSConfig")
* .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
* .appResourceGroup("X00-RG")
* .applicationServer(ApplicationServerConfigurationArgs.builder()
* .instanceCount(6)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .centralServer(CentralServerConfigurationArgs.builder()
* .instanceCount(1)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E16ds_v4")
* .build())
* .build())
* .databaseServer(DatabaseConfigurationArgs.builder()
* .databaseType("HANA")
* .instanceCount(1)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_M32ts")
* .build())
* .build())
* .deploymentType("ThreeTier")
* .storageConfiguration(StorageConfigurationArgs.builder()
* .transportFileShareConfiguration(SkipFileShareConfigurationArgs.builder()
* .configurationType("Skip")
* .build())
* .build())
* .build())
* .osSapConfiguration(OsSapConfigurationArgs.builder()
* .sapFqdn("xyz.test.com")
* .build())
* .build())
* .environment("Prod")
* .location("westcentralus")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Detect SAP Software Installation on a Distributed System
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "DeploymentWithOSConfig",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
* {
* AppResourceGroup = "{{resourcegrp}}",
* ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
* {
* InstanceCount = 2,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP-HA",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "azureuser",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "{{privateKey}}",
* PublicKey = "{{sshkey}}",
* },
* },
* },
* VmSize = "Standard_E4ds_v4",
* },
* },
* CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
* {
* InstanceCount = 1,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP-HA",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "azureuser",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "{{privateKey}}",
* PublicKey = "{{sshkey}}",
* },
* },
* },
* VmSize = "Standard_E4ds_v4",
* },
* },
* DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
* {
* InstanceCount = 1,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP-HA",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "azureuser",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "{{privateKey}}",
* PublicKey = "{{sshkey}}",
* },
* },
* },
* VmSize = "Standard_M32ts",
* },
* },
* DeploymentType = "ThreeTier",
* NetworkConfiguration = new AzureNative.Workloads.Inputs.NetworkConfigurationArgs
* {
* IsSecondaryIpEnabled = true,
* },
* },
* OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
* {
* SapFqdn = "sap.bpaas.com",
* },
* SoftwareConfiguration = new AzureNative.Workloads.Inputs.ExternalInstallationSoftwareConfigurationArgs
* {
* CentralServerVmId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
* SoftwareInstallationType = "External",
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
* Location = "eastus2",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags =
* {
* { "created by", "azureuser" },
* },
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentWithOSConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
* InfrastructureConfiguration: workloads.ThreeTierConfiguration{
* AppResourceGroup: "{{resourcegrp}}",
* ApplicationServer: workloads.ApplicationServerConfiguration{
* InstanceCount: 2,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP-HA",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "azureuser",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "{{privateKey}}",
* PublicKey: "{{sshkey}}",
* },
* },
* },
* VmSize: "Standard_E4ds_v4",
* },
* },
* CentralServer: workloads.CentralServerConfiguration{
* InstanceCount: 1,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP-HA",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "azureuser",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "{{privateKey}}",
* PublicKey: "{{sshkey}}",
* },
* },
* },
* VmSize: "Standard_E4ds_v4",
* },
* },
* DatabaseServer: workloads.DatabaseConfiguration{
* InstanceCount: 1,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP-HA",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "azureuser",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "{{privateKey}}",
* PublicKey: "{{sshkey}}",
* },
* },
* },
* VmSize: "Standard_M32ts",
* },
* },
* DeploymentType: "ThreeTier",
* NetworkConfiguration: workloads.NetworkConfiguration{
* IsSecondaryIpEnabled: true,
* },
* },
* OsSapConfiguration: &workloads.OsSapConfigurationArgs{
* SapFqdn: pulumi.String("sap.bpaas.com"),
* },
* SoftwareConfiguration: workloads.ExternalInstallationSoftwareConfiguration{
* CentralServerVmId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
* SoftwareInstallationType: "External",
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeProd),
* Location: pulumi.String("eastus2"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: pulumi.StringMap{
* "created by": pulumi.String("azureuser"),
* },
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentWithOSConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("DeploymentWithOSConfig")
* .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
* .appResourceGroup("{{resourcegrp}}")
* .applicationServer(ApplicationServerConfigurationArgs.builder()
* .instanceCount(2)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP-HA")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("azureuser")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("{{privateKey}}")
* .publicKey("{{sshkey}}")
* .build())
* .build())
* .build())
* .vmSize("Standard_E4ds_v4")
* .build())
* .build())
* .centralServer(CentralServerConfigurationArgs.builder()
* .instanceCount(1)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP-HA")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("azureuser")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("{{privateKey}}")
* .publicKey("{{sshkey}}")
* .build())
* .build())
* .build())
* .vmSize("Standard_E4ds_v4")
* .build())
* .build())
* .databaseServer(DatabaseConfigurationArgs.builder()
* .instanceCount(1)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP-HA")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("azureuser")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("{{privateKey}}")
* .publicKey("{{sshkey}}")
* .build())
* .build())
* .build())
* .vmSize("Standard_M32ts")
* .build())
* .build())
* .deploymentType("ThreeTier")
* .networkConfiguration(NetworkConfigurationArgs.builder()
* .isSecondaryIpEnabled(true)
* .build())
* .build())
* .osSapConfiguration(OsSapConfigurationArgs.builder()
* .sapFqdn("sap.bpaas.com")
* .build())
* .softwareConfiguration(ExternalInstallationSoftwareConfigurationArgs.builder()
* .centralServerVmId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0")
* .softwareInstallationType("External")
* .build())
* .build())
* .environment("Prod")
* .location("eastus2")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags(Map.of("created by", "azureuser"))
* .build());
* }
* }
* ```
* ### Detect SAP Software Installation on a Single Server System
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "DeploymentWithOSConfig",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.SingleServerConfigurationArgs
* {
* AppResourceGroup = "X00-RG",
* DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
* DeploymentType = "SingleServer",
* NetworkConfiguration = new AzureNative.Workloads.Inputs.NetworkConfigurationArgs
* {
* IsSecondaryIpEnabled = true,
* },
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP-HA",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
* {
* SapFqdn = "xyz.test.com",
* },
* SoftwareConfiguration = new AzureNative.Workloads.Inputs.ExternalInstallationSoftwareConfigurationArgs
* {
* CentralServerVmId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
* SoftwareInstallationType = "External",
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.NonProd,
* Location = "westcentralus",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentWithOSConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
* InfrastructureConfiguration: workloads.SingleServerConfiguration{
* AppResourceGroup: "X00-RG",
* DatabaseType: workloads.SAPDatabaseTypeHANA,
* DeploymentType: "SingleServer",
* NetworkConfiguration: workloads.NetworkConfiguration{
* IsSecondaryIpEnabled: true,
* },
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP-HA",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* OsSapConfiguration: &workloads.OsSapConfigurationArgs{
* SapFqdn: pulumi.String("xyz.test.com"),
* },
* SoftwareConfiguration: workloads.ExternalInstallationSoftwareConfiguration{
* CentralServerVmId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
* SoftwareInstallationType: "External",
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeNonProd),
* Location: pulumi.String("westcentralus"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentWithOSConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("DeploymentWithOSConfig")
* .infrastructureConfiguration(SingleServerConfigurationArgs.builder()
* .appResourceGroup("X00-RG")
* .databaseType("HANA")
* .deploymentType("SingleServer")
* .networkConfiguration(NetworkConfigurationArgs.builder()
* .isSecondaryIpEnabled(true)
* .build())
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP-HA")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .osSapConfiguration(OsSapConfigurationArgs.builder()
* .sapFqdn("xyz.test.com")
* .build())
* .softwareConfiguration(ExternalInstallationSoftwareConfigurationArgs.builder()
* .centralServerVmId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0")
* .softwareInstallationType("External")
* .build())
* .build())
* .environment("NonProd")
* .location("westcentralus")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Detect SAP Software Installation on an HA System with Availability Set
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "DeploymentWithOSConfig",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
* {
* AppResourceGroup = "X00-RG",
* ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
* {
* InstanceCount = 6,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP-HA",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
* {
* InstanceCount = 2,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP-HA",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E16ds_v4",
* },
* },
* DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
* {
* DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
* InstanceCount = 2,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP-HA",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_M32ts",
* },
* },
* DeploymentType = "ThreeTier",
* HighAvailabilityConfig = new AzureNative.Workloads.Inputs.HighAvailabilityConfigurationArgs
* {
* HighAvailabilityType = AzureNative.Workloads.SAPHighAvailabilityType.AvailabilitySet,
* },
* },
* OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
* {
* SapFqdn = "xyz.test.com",
* },
* SoftwareConfiguration = new AzureNative.Workloads.Inputs.ExternalInstallationSoftwareConfigurationArgs
* {
* CentralServerVmId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
* SoftwareInstallationType = "External",
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
* Location = "westcentralus",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentWithOSConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
* InfrastructureConfiguration: workloads.ThreeTierConfiguration{
* AppResourceGroup: "X00-RG",
* ApplicationServer: workloads.ApplicationServerConfiguration{
* InstanceCount: 6,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP-HA",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* CentralServer: workloads.CentralServerConfiguration{
* InstanceCount: 2,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP-HA",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E16ds_v4",
* },
* },
* DatabaseServer: workloads.DatabaseConfiguration{
* DatabaseType: workloads.SAPDatabaseTypeHANA,
* InstanceCount: 2,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP-HA",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_M32ts",
* },
* },
* DeploymentType: "ThreeTier",
* HighAvailabilityConfig: workloads.HighAvailabilityConfiguration{
* HighAvailabilityType: workloads.SAPHighAvailabilityTypeAvailabilitySet,
* },
* },
* OsSapConfiguration: &workloads.OsSapConfigurationArgs{
* SapFqdn: pulumi.String("xyz.test.com"),
* },
* SoftwareConfiguration: workloads.ExternalInstallationSoftwareConfiguration{
* CentralServerVmId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
* SoftwareInstallationType: "External",
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeProd),
* Location: pulumi.String("westcentralus"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentWithOSConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("DeploymentWithOSConfig")
* .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
* .appResourceGroup("X00-RG")
* .applicationServer(ApplicationServerConfigurationArgs.builder()
* .instanceCount(6)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP-HA")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .centralServer(CentralServerConfigurationArgs.builder()
* .instanceCount(2)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP-HA")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E16ds_v4")
* .build())
* .build())
* .databaseServer(DatabaseConfigurationArgs.builder()
* .databaseType("HANA")
* .instanceCount(2)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP-HA")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_M32ts")
* .build())
* .build())
* .deploymentType("ThreeTier")
* .highAvailabilityConfig(HighAvailabilityConfigurationArgs.builder()
* .highAvailabilityType("AvailabilitySet")
* .build())
* .build())
* .osSapConfiguration(OsSapConfigurationArgs.builder()
* .sapFqdn("xyz.test.com")
* .build())
* .softwareConfiguration(ExternalInstallationSoftwareConfigurationArgs.builder()
* .centralServerVmId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0")
* .softwareInstallationType("External")
* .build())
* .build())
* .environment("Prod")
* .location("westcentralus")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Detect SAP Software Installation on an HA System with Availability Zone
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "DeploymentWithOSConfig",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
* {
* AppResourceGroup = "X00-RG",
* ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
* {
* InstanceCount = 6,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP-HA",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
* {
* InstanceCount = 2,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP-HA",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_E16ds_v4",
* },
* },
* DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
* {
* DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
* InstanceCount = 2,
* SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP-HA",
* Publisher = "RedHat",
* Sku = "84sapha-gen2",
* Version = "latest",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "{your-username}",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "xyz",
* PublicKey = "abc",
* },
* },
* },
* VmSize = "Standard_M32ts",
* },
* },
* DeploymentType = "ThreeTier",
* HighAvailabilityConfig = new AzureNative.Workloads.Inputs.HighAvailabilityConfigurationArgs
* {
* HighAvailabilityType = AzureNative.Workloads.SAPHighAvailabilityType.AvailabilityZone,
* },
* },
* OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
* {
* SapFqdn = "xyz.test.com",
* },
* SoftwareConfiguration = new AzureNative.Workloads.Inputs.ExternalInstallationSoftwareConfigurationArgs
* {
* CentralServerVmId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
* SoftwareInstallationType = "External",
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
* Location = "westcentralus",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentWithOSConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
* InfrastructureConfiguration: workloads.ThreeTierConfiguration{
* AppResourceGroup: "X00-RG",
* ApplicationServer: workloads.ApplicationServerConfiguration{
* InstanceCount: 6,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP-HA",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* CentralServer: workloads.CentralServerConfiguration{
* InstanceCount: 2,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP-HA",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_E16ds_v4",
* },
* },
* DatabaseServer: workloads.DatabaseConfiguration{
* DatabaseType: workloads.SAPDatabaseTypeHANA,
* InstanceCount: 2,
* SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP-HA",
* Publisher: "RedHat",
* Sku: "84sapha-gen2",
* Version: "latest",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "{your-username}",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "xyz",
* PublicKey: "abc",
* },
* },
* },
* VmSize: "Standard_M32ts",
* },
* },
* DeploymentType: "ThreeTier",
* HighAvailabilityConfig: workloads.HighAvailabilityConfiguration{
* HighAvailabilityType: workloads.SAPHighAvailabilityTypeAvailabilityZone,
* },
* },
* OsSapConfiguration: &workloads.OsSapConfigurationArgs{
* SapFqdn: pulumi.String("xyz.test.com"),
* },
* SoftwareConfiguration: workloads.ExternalInstallationSoftwareConfiguration{
* CentralServerVmId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
* SoftwareInstallationType: "External",
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeProd),
* Location: pulumi.String("westcentralus"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentWithOSConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("DeploymentWithOSConfig")
* .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
* .appResourceGroup("X00-RG")
* .applicationServer(ApplicationServerConfigurationArgs.builder()
* .instanceCount(6)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP-HA")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .centralServer(CentralServerConfigurationArgs.builder()
* .instanceCount(2)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP-HA")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_E16ds_v4")
* .build())
* .build())
* .databaseServer(DatabaseConfigurationArgs.builder()
* .databaseType("HANA")
* .instanceCount(2)
* .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP-HA")
* .publisher("RedHat")
* .sku("84sapha-gen2")
* .version("latest")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("{your-username}")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("xyz")
* .publicKey("abc")
* .build())
* .build())
* .build())
* .vmSize("Standard_M32ts")
* .build())
* .build())
* .deploymentType("ThreeTier")
* .highAvailabilityConfig(HighAvailabilityConfigurationArgs.builder()
* .highAvailabilityType("AvailabilityZone")
* .build())
* .build())
* .osSapConfiguration(OsSapConfigurationArgs.builder()
* .sapFqdn("xyz.test.com")
* .build())
* .softwareConfiguration(ExternalInstallationSoftwareConfigurationArgs.builder()
* .centralServerVmId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0")
* .softwareInstallationType("External")
* .build())
* .build())
* .environment("Prod")
* .location("westcentralus")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Install SAP Software on Distributed System
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "DeploymentWithOSConfig",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
* {
* AppResourceGroup = "{{resourcegrp}}",
* ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
* {
* InstanceCount = 2,
* SubnetId = "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP-HA",
* Publisher = "RedHat",
* Sku = "8.2",
* Version = "8.2.2021091201",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "azureuser",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "{{privateKey}}",
* PublicKey = "{{sshkey}}",
* },
* },
* },
* VmSize = "Standard_E4ds_v4",
* },
* },
* CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
* {
* InstanceCount = 1,
* SubnetId = "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP-HA",
* Publisher = "RedHat",
* Sku = "8.2",
* Version = "8.2.2021091201",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "azureuser",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "{{privateKey}}",
* PublicKey = "{{sshkey}}",
* },
* },
* },
* VmSize = "Standard_E4ds_v4",
* },
* },
* DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
* {
* InstanceCount = 1,
* SubnetId = "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "RHEL-SAP-HA",
* Publisher = "RedHat",
* Sku = "8.2",
* Version = "8.2.2021091201",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "azureuser",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "{{privateKey}}",
* PublicKey = "{{sshkey}}",
* },
* },
* },
* VmSize = "Standard_M32ts",
* },
* },
* DeploymentType = "ThreeTier",
* NetworkConfiguration = new AzureNative.Workloads.Inputs.NetworkConfigurationArgs
* {
* IsSecondaryIpEnabled = true,
* },
* },
* OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
* {
* SapFqdn = "sap.bpaas.com",
* },
* SoftwareConfiguration = new AzureNative.Workloads.Inputs.SAPInstallWithoutOSConfigSoftwareConfigurationArgs
* {
* BomUrl = "https://teststorageaccount.blob.core.windows.net/sapbits/sapfiles/boms/S41909SPS03_v0011ms/S41909SPS03_v0011ms.yaml",
* SapBitsStorageAccountId = "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Storage/storageAccounts/teststorageaccount",
* SoftwareInstallationType = "SAPInstallWithoutOSConfig",
* SoftwareVersion = "SAP S/4HANA 1909 SPS 03",
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
* Location = "eastus2",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags =
* {
* { "created by", "azureuser" },
* },
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentWithOSConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
* InfrastructureConfiguration: workloads.ThreeTierConfiguration{
* AppResourceGroup: "{{resourcegrp}}",
* ApplicationServer: workloads.ApplicationServerConfiguration{
* InstanceCount: 2,
* SubnetId: "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP-HA",
* Publisher: "RedHat",
* Sku: "8.2",
* Version: "8.2.2021091201",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "azureuser",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "{{privateKey}}",
* PublicKey: "{{sshkey}}",
* },
* },
* },
* VmSize: "Standard_E4ds_v4",
* },
* },
* CentralServer: workloads.CentralServerConfiguration{
* InstanceCount: 1,
* SubnetId: "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP-HA",
* Publisher: "RedHat",
* Sku: "8.2",
* Version: "8.2.2021091201",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "azureuser",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "{{privateKey}}",
* PublicKey: "{{sshkey}}",
* },
* },
* },
* VmSize: "Standard_E4ds_v4",
* },
* },
* DatabaseServer: workloads.DatabaseConfiguration{
* InstanceCount: 1,
* SubnetId: "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "RHEL-SAP-HA",
* Publisher: "RedHat",
* Sku: "8.2",
* Version: "8.2.2021091201",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "azureuser",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "{{privateKey}}",
* PublicKey: "{{sshkey}}",
* },
* },
* },
* VmSize: "Standard_M32ts",
* },
* },
* DeploymentType: "ThreeTier",
* NetworkConfiguration: workloads.NetworkConfiguration{
* IsSecondaryIpEnabled: true,
* },
* },
* OsSapConfiguration: &workloads.OsSapConfigurationArgs{
* SapFqdn: pulumi.String("sap.bpaas.com"),
* },
* SoftwareConfiguration: workloads.SAPInstallWithoutOSConfigSoftwareConfiguration{
* BomUrl: "https://teststorageaccount.blob.core.windows.net/sapbits/sapfiles/boms/S41909SPS03_v0011ms/S41909SPS03_v0011ms.yaml",
* SapBitsStorageAccountId: "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Storage/storageAccounts/teststorageaccount",
* SoftwareInstallationType: "SAPInstallWithoutOSConfig",
* SoftwareVersion: "SAP S/4HANA 1909 SPS 03",
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeProd),
* Location: pulumi.String("eastus2"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: pulumi.StringMap{
* "created by": pulumi.String("azureuser"),
* },
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentWithOSConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("DeploymentWithOSConfig")
* .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
* .appResourceGroup("{{resourcegrp}}")
* .applicationServer(ApplicationServerConfigurationArgs.builder()
* .instanceCount(2)
* .subnetId("/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP-HA")
* .publisher("RedHat")
* .sku("8.2")
* .version("8.2.2021091201")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("azureuser")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("{{privateKey}}")
* .publicKey("{{sshkey}}")
* .build())
* .build())
* .build())
* .vmSize("Standard_E4ds_v4")
* .build())
* .build())
* .centralServer(CentralServerConfigurationArgs.builder()
* .instanceCount(1)
* .subnetId("/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP-HA")
* .publisher("RedHat")
* .sku("8.2")
* .version("8.2.2021091201")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("azureuser")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("{{privateKey}}")
* .publicKey("{{sshkey}}")
* .build())
* .build())
* .build())
* .vmSize("Standard_E4ds_v4")
* .build())
* .build())
* .databaseServer(DatabaseConfigurationArgs.builder()
* .instanceCount(1)
* .subnetId("/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("RHEL-SAP-HA")
* .publisher("RedHat")
* .sku("8.2")
* .version("8.2.2021091201")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("azureuser")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("{{privateKey}}")
* .publicKey("{{sshkey}}")
* .build())
* .build())
* .build())
* .vmSize("Standard_M32ts")
* .build())
* .build())
* .deploymentType("ThreeTier")
* .networkConfiguration(NetworkConfigurationArgs.builder()
* .isSecondaryIpEnabled(true)
* .build())
* .build())
* .osSapConfiguration(OsSapConfigurationArgs.builder()
* .sapFqdn("sap.bpaas.com")
* .build())
* .softwareConfiguration(SAPInstallWithoutOSConfigSoftwareConfigurationArgs.builder()
* .bomUrl("https://teststorageaccount.blob.core.windows.net/sapbits/sapfiles/boms/S41909SPS03_v0011ms/S41909SPS03_v0011ms.yaml")
* .sapBitsStorageAccountId("/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Storage/storageAccounts/teststorageaccount")
* .softwareInstallationType("SAPInstallWithoutOSConfig")
* .softwareVersion("SAP S/4HANA 1909 SPS 03")
* .build())
* .build())
* .environment("Prod")
* .location("eastus2")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags(Map.of("created by", "azureuser"))
* .build());
* }
* }
* ```
* ### Install SAP Software on Single Server System
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
* {
* AppLocation = "eastus",
* ConfigurationType = "DeploymentWithOSConfig",
* InfrastructureConfiguration = new AzureNative.Workloads.Inputs.SingleServerConfigurationArgs
* {
* AppResourceGroup = "test-rg",
* DeploymentType = "SingleServer",
* SubnetId = "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/testsubnet",
* VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
* {
* ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
* {
* Offer = "SLES-SAP",
* Publisher = "SUSE",
* Sku = "12-sp4-gen2",
* Version = "2022.02.01",
* },
* OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
* {
* AdminUsername = "azureappadmin",
* OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
* {
* DisablePasswordAuthentication = true,
* OsType = "Linux",
* SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
* {
* PrivateKey = "{{privateKey}}",
* PublicKey = "{{sshkey}}",
* },
* },
* },
* VmSize = "Standard_E32ds_v4",
* },
* },
* OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
* {
* SapFqdn = "sap.bpaas.com",
* },
* SoftwareConfiguration = new AzureNative.Workloads.Inputs.SAPInstallWithoutOSConfigSoftwareConfigurationArgs
* {
* BomUrl = "https://teststorageaccount.blob.core.windows.net/sapbits/sapfiles/boms/S41909SPS03_v0011ms/S41909SPS03_v0011ms.yaml",
* SapBitsStorageAccountId = "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Storage/storageAccounts/teststorageaccount",
* SoftwareInstallationType = "SAPInstallWithoutOSConfig",
* SoftwareVersion = "SAP S/4HANA 1909 SPS 03",
* },
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.NonProd,
* Location = "eastus2",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags = null,
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DeploymentWithOSConfigurationArgs{
* AppLocation: pulumi.String("eastus"),
* ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
* InfrastructureConfiguration: workloads.SingleServerConfiguration{
* AppResourceGroup: "test-rg",
* DeploymentType: "SingleServer",
* SubnetId: "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/testsubnet",
* VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
* ImageReference: workloads.ImageReference{
* Offer: "SLES-SAP",
* Publisher: "SUSE",
* Sku: "12-sp4-gen2",
* Version: "2022.02.01",
* },
* OsProfile: workloads.OSProfile{
* AdminUsername: "azureappadmin",
* OsConfiguration: workloads.LinuxConfiguration{
* DisablePasswordAuthentication: true,
* OsType: "Linux",
* SshKeyPair: workloads.SshKeyPair{
* PrivateKey: "{{privateKey}}",
* PublicKey: "{{sshkey}}",
* },
* },
* },
* VmSize: "Standard_E32ds_v4",
* },
* },
* OsSapConfiguration: &workloads.OsSapConfigurationArgs{
* SapFqdn: pulumi.String("sap.bpaas.com"),
* },
* SoftwareConfiguration: workloads.SAPInstallWithoutOSConfigSoftwareConfiguration{
* BomUrl: "https://teststorageaccount.blob.core.windows.net/sapbits/sapfiles/boms/S41909SPS03_v0011ms/S41909SPS03_v0011ms.yaml",
* SapBitsStorageAccountId: "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Storage/storageAccounts/teststorageaccount",
* SoftwareInstallationType: "SAPInstallWithoutOSConfig",
* SoftwareVersion: "SAP S/4HANA 1909 SPS 03",
* },
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeNonProd),
* Location: pulumi.String("eastus2"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: nil,
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DeploymentWithOSConfigurationArgs.builder()
* .appLocation("eastus")
* .configurationType("DeploymentWithOSConfig")
* .infrastructureConfiguration(SingleServerConfigurationArgs.builder()
* .appResourceGroup("test-rg")
* .deploymentType("SingleServer")
* .subnetId("/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/testsubnet")
* .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
* .imageReference(ImageReferenceArgs.builder()
* .offer("SLES-SAP")
* .publisher("SUSE")
* .sku("12-sp4-gen2")
* .version("2022.02.01")
* .build())
* .osProfile(OSProfileArgs.builder()
* .adminUsername("azureappadmin")
* .osConfiguration(LinuxConfigurationArgs.builder()
* .disablePasswordAuthentication(true)
* .osType("Linux")
* .sshKeyPair(SshKeyPairArgs.builder()
* .privateKey("{{privateKey}}")
* .publicKey("{{sshkey}}")
* .build())
* .build())
* .build())
* .vmSize("Standard_E32ds_v4")
* .build())
* .build())
* .osSapConfiguration(OsSapConfigurationArgs.builder()
* .sapFqdn("sap.bpaas.com")
* .build())
* .softwareConfiguration(SAPInstallWithoutOSConfigSoftwareConfigurationArgs.builder()
* .bomUrl("https://teststorageaccount.blob.core.windows.net/sapbits/sapfiles/boms/S41909SPS03_v0011ms/S41909SPS03_v0011ms.yaml")
* .sapBitsStorageAccountId("/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Storage/storageAccounts/teststorageaccount")
* .softwareInstallationType("SAPInstallWithoutOSConfig")
* .softwareVersion("SAP S/4HANA 1909 SPS 03")
* .build())
* .build())
* .environment("NonProd")
* .location("eastus2")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags()
* .build());
* }
* }
* ```
* ### Register existing SAP system as Virtual Instance for SAP solutions with optional customizations.
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DiscoveryConfigurationArgs
* {
* CentralServerVmId = "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
* ConfigurationType = "Discovery",
* ManagedRgStorageAccountName = "q20saacssgrs",
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.NonProd,
* Location = "northeurope",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags =
* {
* { "createdby", "[email protected] " },
* { "test", "abc" },
* },
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DiscoveryConfigurationArgs{
* CentralServerVmId: pulumi.String("/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0"),
* ConfigurationType: pulumi.String("Discovery"),
* ManagedRgStorageAccountName: pulumi.String("q20saacssgrs"),
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeNonProd),
* Location: pulumi.String("northeurope"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: pulumi.StringMap{
* "createdby": pulumi.String("[email protected] "),
* "test": pulumi.String("abc"),
* },
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DiscoveryConfigurationArgs.builder()
* .centralServerVmId("/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0")
* .configurationType("Discovery")
* .managedRgStorageAccountName("q20saacssgrs")
* .build())
* .environment("NonProd")
* .location("northeurope")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags(Map.ofEntries(
* Map.entry("createdby", "[email protected] "),
* Map.entry("test", "abc")
* ))
* .build());
* }
* }
* ```
* ### Register existing SAP system as Virtual Instance for SAP solutions.
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
* {
* Configuration = new AzureNative.Workloads.Inputs.DiscoveryConfigurationArgs
* {
* CentralServerVmId = "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
* ConfigurationType = "Discovery",
* },
* Environment = AzureNative.Workloads.SAPEnvironmentType.NonProd,
* Location = "northeurope",
* ResourceGroupName = "test-rg",
* SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
* SapVirtualInstanceName = "X00",
* Tags =
* {
* { "createdby", "[email protected] " },
* { "test", "abc" },
* },
* });
* });
* ```
* ```go
* package main
* import (
* workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
* Configuration: &workloads.DiscoveryConfigurationArgs{
* CentralServerVmId: pulumi.String("/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0"),
* ConfigurationType: pulumi.String("Discovery"),
* },
* Environment: pulumi.String(workloads.SAPEnvironmentTypeNonProd),
* Location: pulumi.String("northeurope"),
* ResourceGroupName: pulumi.String("test-rg"),
* SapProduct: pulumi.String(workloads.SAPProductTypeS4HANA),
* SapVirtualInstanceName: pulumi.String("X00"),
* Tags: pulumi.StringMap{
* "createdby": pulumi.String("[email protected] "),
* "test": pulumi.String("abc"),
* },
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.workloads.SAPVirtualInstance;
* import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
* 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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
* .configuration(DiscoveryConfigurationArgs.builder()
* .centralServerVmId("/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0")
* .configurationType("Discovery")
* .build())
* .environment("NonProd")
* .location("northeurope")
* .resourceGroupName("test-rg")
* .sapProduct("S4HANA")
* .sapVirtualInstanceName("X00")
* .tags(Map.ofEntries(
* Map.entry("createdby", "[email protected] "),
* Map.entry("test", "abc")
* ))
* .build());
* }
* }
* ```
* ## Import
* An existing resource can be imported using its type token, name, and identifier, e.g.
* ```sh
* $ pulumi import azure-native:workloads:SAPVirtualInstance Q20 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Workloads/sapVirtualInstances/{sapVirtualInstanceName}
* ```
* @property configuration Defines if the SAP system is being created using Azure Center for SAP solutions (ACSS) or if an existing SAP system is being registered with ACSS
* @property environment Defines the environment type - Production/Non Production.
* @property identity A pre-created user assigned identity with appropriate roles assigned. To learn more on identity and roles required, visit the ACSS how-to-guide.
* @property location The geo-location where the resource lives
* @property managedResourceGroupConfiguration Managed resource group configuration
* @property resourceGroupName The name of the resource group. The name is case insensitive.
* @property sapProduct Defines the SAP Product type.
* @property sapVirtualInstanceName The name of the Virtual Instances for SAP solutions resource
* @property tags Resource tags.
*/
public data class SAPVirtualInstanceArgs(
public val configuration: Output? = null,
public val environment: Output>? = null,
public val identity: Output? = null,
public val location: Output? = null,
public val managedResourceGroupConfiguration: Output? = null,
public val resourceGroupName: Output? = null,
public val sapProduct: Output>? = null,
public val sapVirtualInstanceName: Output? = null,
public val tags: Output>? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs =
com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs.builder()
.configuration(configuration?.applyValue({ args0 -> args0 }))
.environment(
environment?.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.identity(identity?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.location(location?.applyValue({ args0 -> args0 }))
.managedResourceGroupConfiguration(
managedResourceGroupConfiguration?.applyValue({ args0 ->
args0.let({ args0 -> args0.toJava() })
}),
)
.resourceGroupName(resourceGroupName?.applyValue({ args0 -> args0 }))
.sapProduct(
sapProduct?.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.sapVirtualInstanceName(sapVirtualInstanceName?.applyValue({ args0 -> args0 }))
.tags(
tags?.applyValue({ args0 ->
args0.map({ args0 ->
args0.key.to(args0.value)
}).toMap()
}),
).build()
}
/**
* Builder for [SAPVirtualInstanceArgs].
*/
@PulumiTagMarker
public class SAPVirtualInstanceArgsBuilder internal constructor() {
private var configuration: Output? = null
private var environment: Output>? = null
private var identity: Output? = null
private var location: Output? = null
private var managedResourceGroupConfiguration: Output? = null
private var resourceGroupName: Output? = null
private var sapProduct: Output>? = null
private var sapVirtualInstanceName: Output? = null
private var tags: Output>? = null
/**
* @param value Defines if the SAP system is being created using Azure Center for SAP solutions (ACSS) or if an existing SAP system is being registered with ACSS
*/
@JvmName("lxiahdrhfgbihxem")
public suspend fun configuration(`value`: Output) {
this.configuration = value
}
/**
* @param value Defines the environment type - Production/Non Production.
*/
@JvmName("cqpxojqwnkrttsyt")
public suspend fun environment(`value`: Output>) {
this.environment = value
}
/**
* @param value A pre-created user assigned identity with appropriate roles assigned. To learn more on identity and roles required, visit the ACSS how-to-guide.
*/
@JvmName("pcphsomenivaybfh")
public suspend fun identity(`value`: Output) {
this.identity = value
}
/**
* @param value The geo-location where the resource lives
*/
@JvmName("wpeiaowadsbyvymt")
public suspend fun location(`value`: Output) {
this.location = value
}
/**
* @param value Managed resource group configuration
*/
@JvmName("uugrthcnsskuijbe")
public suspend fun managedResourceGroupConfiguration(`value`: Output) {
this.managedResourceGroupConfiguration = value
}
/**
* @param value The name of the resource group. The name is case insensitive.
*/
@JvmName("fwmsiksyafsahwmh")
public suspend fun resourceGroupName(`value`: Output) {
this.resourceGroupName = value
}
/**
* @param value Defines the SAP Product type.
*/
@JvmName("ihllkjdhnyjdbmrc")
public suspend fun sapProduct(`value`: Output>) {
this.sapProduct = value
}
/**
* @param value The name of the Virtual Instances for SAP solutions resource
*/
@JvmName("fdiwgpvscoruppdh")
public suspend fun sapVirtualInstanceName(`value`: Output) {
this.sapVirtualInstanceName = value
}
/**
* @param value Resource tags.
*/
@JvmName("qdupmuibavishuli")
public suspend fun tags(`value`: Output>) {
this.tags = value
}
/**
* @param value Defines if the SAP system is being created using Azure Center for SAP solutions (ACSS) or if an existing SAP system is being registered with ACSS
*/
@JvmName("nittypyrorbnmfxu")
public suspend fun configuration(`value`: Any?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.configuration = mapped
}
/**
* @param value Defines the environment type - Production/Non Production.
*/
@JvmName("pcggkplavwfujfke")
public suspend fun environment(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.environment = mapped
}
/**
* @param value Defines the environment type - Production/Non Production.
*/
@JvmName("kyrhtdqbeejqcrxa")
public fun environment(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.environment = mapped
}
/**
* @param value Defines the environment type - Production/Non Production.
*/
@JvmName("mlpiiqngphwqfbwf")
public fun environment(`value`: SAPEnvironmentType) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.environment = mapped
}
/**
* @param value A pre-created user assigned identity with appropriate roles assigned. To learn more on identity and roles required, visit the ACSS how-to-guide.
*/
@JvmName("muhwyxxrbsvraxvd")
public suspend fun identity(`value`: UserAssignedServiceIdentityArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.identity = mapped
}
/**
* @param argument A pre-created user assigned identity with appropriate roles assigned. To learn more on identity and roles required, visit the ACSS how-to-guide.
*/
@JvmName("eptyqnpekxnvsvsa")
public suspend fun identity(argument: suspend UserAssignedServiceIdentityArgsBuilder.() -> Unit) {
val toBeMapped = UserAssignedServiceIdentityArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.identity = mapped
}
/**
* @param value The geo-location where the resource lives
*/
@JvmName("msyebnpfytgjsnqw")
public suspend fun location(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.location = mapped
}
/**
* @param value Managed resource group configuration
*/
@JvmName("vhavhwjmemgfrclt")
public suspend fun managedResourceGroupConfiguration(`value`: ManagedRGConfigurationArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.managedResourceGroupConfiguration = mapped
}
/**
* @param argument Managed resource group configuration
*/
@JvmName("dmhutfjybmeomalu")
public suspend fun managedResourceGroupConfiguration(argument: suspend ManagedRGConfigurationArgsBuilder.() -> Unit) {
val toBeMapped = ManagedRGConfigurationArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.managedResourceGroupConfiguration = mapped
}
/**
* @param value The name of the resource group. The name is case insensitive.
*/
@JvmName("olfyxjpccamtpurf")
public suspend fun resourceGroupName(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.resourceGroupName = mapped
}
/**
* @param value Defines the SAP Product type.
*/
@JvmName("duxaxkvugjjdxmtu")
public suspend fun sapProduct(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.sapProduct = mapped
}
/**
* @param value Defines the SAP Product type.
*/
@JvmName("wcsaoukrycxupmvf")
public fun sapProduct(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.sapProduct = mapped
}
/**
* @param value Defines the SAP Product type.
*/
@JvmName("cfoqooelwhgeqrqb")
public fun sapProduct(`value`: SAPProductType) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.sapProduct = mapped
}
/**
* @param value The name of the Virtual Instances for SAP solutions resource
*/
@JvmName("hfetvhyrhbgdjcca")
public suspend fun sapVirtualInstanceName(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.sapVirtualInstanceName = mapped
}
/**
* @param value Resource tags.
*/
@JvmName("vsgmdqbbwrvwumjr")
public suspend fun tags(`value`: Map?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.tags = mapped
}
/**
* @param values Resource tags.
*/
@JvmName("fsjfhqcvcyxoxxfa")
public fun tags(vararg values: Pair) {
val toBeMapped = values.toMap()
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.tags = mapped
}
internal fun build(): SAPVirtualInstanceArgs = SAPVirtualInstanceArgs(
configuration = configuration,
environment = environment,
identity = identity,
location = location,
managedResourceGroupConfiguration = managedResourceGroupConfiguration,
resourceGroupName = resourceGroupName,
sapProduct = sapProduct,
sapVirtualInstanceName = sapVirtualInstanceName,
tags = tags,
)
}