FlexibleServer

class FlexibleServer : KotlinCustomResource

Manages a MySQL Flexible Server.

Example Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.network.VirtualNetwork;
import com.pulumi.azure.network.VirtualNetworkArgs;
import com.pulumi.azure.network.Subnet;
import com.pulumi.azure.network.SubnetArgs;
import com.pulumi.azure.network.inputs.SubnetDelegationArgs;
import com.pulumi.azure.network.inputs.SubnetDelegationServiceDelegationArgs;
import com.pulumi.azure.privatedns.Zone;
import com.pulumi.azure.privatedns.ZoneArgs;
import com.pulumi.azure.privatedns.ZoneVirtualNetworkLink;
import com.pulumi.azure.privatedns.ZoneVirtualNetworkLinkArgs;
import com.pulumi.azure.mysql.FlexibleServer;
import com.pulumi.azure.mysql.FlexibleServerArgs;
import com.pulumi.resources.CustomResourceOptions;
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 exampleResourceGroup = new ResourceGroup("exampleResourceGroup", ResourceGroupArgs.builder()
.location("West Europe")
.build());
var exampleVirtualNetwork = new VirtualNetwork("exampleVirtualNetwork", VirtualNetworkArgs.builder()
.location(exampleResourceGroup.location())
.resourceGroupName(exampleResourceGroup.name())
.addressSpaces("10.0.0.0/16")
.build());
var exampleSubnet = new Subnet("exampleSubnet", SubnetArgs.builder()
.resourceGroupName(exampleResourceGroup.name())
.virtualNetworkName(exampleVirtualNetwork.name())
.addressPrefixes("10.0.2.0/24")
.serviceEndpoints("Microsoft.Storage")
.delegations(SubnetDelegationArgs.builder()
.name("fs")
.serviceDelegation(SubnetDelegationServiceDelegationArgs.builder()
.name("Microsoft.DBforMySQL/flexibleServers")
.actions("Microsoft.Network/virtualNetworks/subnets/join/action")
.build())
.build())
.build());
var exampleZone = new Zone("exampleZone", ZoneArgs.builder()
.resourceGroupName(exampleResourceGroup.name())
.build());
var exampleZoneVirtualNetworkLink = new ZoneVirtualNetworkLink("exampleZoneVirtualNetworkLink", ZoneVirtualNetworkLinkArgs.builder()
.privateDnsZoneName(exampleZone.name())
.virtualNetworkId(exampleVirtualNetwork.id())
.resourceGroupName(exampleResourceGroup.name())
.build());
var exampleFlexibleServer = new FlexibleServer("exampleFlexibleServer", FlexibleServerArgs.builder()
.resourceGroupName(exampleResourceGroup.name())
.location(exampleResourceGroup.location())
.administratorLogin("psqladmin")
.administratorPassword("H@Sh1CoR3!")
.backupRetentionDays(7)
.delegatedSubnetId(exampleSubnet.id())
.privateDnsZoneId(exampleZone.id())
.skuName("GP_Standard_D2ds_v4")
.build(), CustomResourceOptions.builder()
.dependsOn(exampleZoneVirtualNetworkLink)
.build());
}
}

Import

MySQL Flexible Servers can be imported using the resource id, e.g.

$ pulumi import azure:mysql/flexibleServer:FlexibleServer example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.DBforMySQL/flexibleServers/flexibleServer1

Properties

Link copied to clipboard

The Administrator login for the MySQL Flexible Server. Required when create_mode is Default. Changing this forces a new MySQL Flexible Server to be created.

Link copied to clipboard

The Password associated with the administrator_login for the MySQL Flexible Server. Required when create_mode is Default.

Link copied to clipboard
val backupRetentionDays: Output<Int>?

The backup retention days for the MySQL Flexible Server. Possible values are between 1 and 35 days. Defaults to 7.

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

The creation mode which can be used to restore or replicate existing servers. Possible values are Default, PointInTimeRestore, GeoRestore, and Replica. Changing this forces a new MySQL Flexible Server to be created.

Link copied to clipboard

A customer_managed_key block as defined below.

Link copied to clipboard

The ID of the virtual network subnet to create the MySQL Flexible Server. Changing this forces a new MySQL Flexible Server to be created.

Link copied to clipboard
val fqdn: Output<String>

The fully qualified domain name of the MySQL Flexible Server.

Link copied to clipboard

Should geo redundant backup enabled? Defaults to false. Changing this forces a new MySQL Flexible Server to be created.

Link copied to clipboard

A high_availability block as defined below.

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

An identity block as defined below.

Link copied to clipboard
val location: Output<String>

The Azure Region where the MySQL Flexible Server should exist. Changing this forces a new MySQL Flexible Server to be created.

Link copied to clipboard

A maintenance_window block as defined below.

Link copied to clipboard
val name: Output<String>

The name which should be used for this MySQL Flexible Server. Changing this forces a new MySQL Flexible Server to be created.

Link copied to clipboard

The point in time to restore from creation_source_server_id when create_mode is PointInTimeRestore. Changing this forces a new MySQL Flexible Server to be created.

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

The ID of the private DNS zone to create the MySQL Flexible Server. Changing this forces a new MySQL Flexible Server to be created.

Link copied to clipboard

Is the public network access enabled?

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val replicaCapacity: Output<Int>

The maximum number of replicas that a primary MySQL Flexible Server can have.

Link copied to clipboard
val replicationRole: Output<String>

The replication role. Possible value is None.

Link copied to clipboard

The name of the Resource Group where the MySQL Flexible Server should exist. Changing this forces a new MySQL Flexible Server to be created.

Link copied to clipboard
val skuName: Output<String>

The SKU Name for the MySQL Flexible Server.

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

The resource ID of the source MySQL Flexible Server to be restored. Required when create_mode is PointInTimeRestore, GeoRestore, and Replica. Changing this forces a new MySQL Flexible Server to be created.

Link copied to clipboard

A storage block as defined below.

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

A mapping of tags which should be assigned to the MySQL Flexible Server.

Link copied to clipboard
val urn: Output<String>
Link copied to clipboard
val version: Output<String>

The version of the MySQL Flexible Server to use. Possible values are 5.7, and 8.0.21. Changing this forces a new MySQL Flexible Server to be created.

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