published on Monday, Mar 30, 2026 by g-core
published on Monday, Mar 30, 2026 by g-core
Bare metal servers are dedicated physical machines with direct hardware access, supporting provisioning, rebuilding, and network configuration within a cloud region.
Example Usage
Baremetal server with one public interface
Create a basic baremetal server with a single external IPv4 interface.
import * as pulumi from "@pulumi/pulumi";
import * as gcore from "@pulumi/gcore";
// Create an SSH key for baremetal server access
const myKey = new gcore.CloudSshKey("my_key", {
projectId: 1,
name: "my-keypair",
publicKey: "ssh-ed25519 ...your public key... user@example.com",
});
// Create a baremetal server with a single external interface
const server = new gcore.CloudBaremetalServer("server", {
projectId: 1,
regionId: 1,
flavor: "bm1-infrastructure-small",
name: "my-bare-metal",
imageId: "0f25a566-91a4-4507-aa42-bdd732fb998d",
sshKeyName: myKey.name,
interfaces: [{
type: "external",
ipFamily: "ipv4",
}],
});
import pulumi
import pulumi_gcore as gcore
# Create an SSH key for baremetal server access
my_key = gcore.CloudSshKey("my_key",
project_id=1,
name="my-keypair",
public_key="ssh-ed25519 ...your public key... user@example.com")
# Create a baremetal server with a single external interface
server = gcore.CloudBaremetalServer("server",
project_id=1,
region_id=1,
flavor="bm1-infrastructure-small",
name="my-bare-metal",
image_id="0f25a566-91a4-4507-aa42-bdd732fb998d",
ssh_key_name=my_key.name,
interfaces=[{
"type": "external",
"ip_family": "ipv4",
}])
package main
import (
"github.com/pulumi/pulumi-terraform-provider/sdks/go/gcore/v2/gcore"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
// Create an SSH key for baremetal server access
myKey, err := gcore.NewCloudSshKey(ctx, "my_key", &gcore.CloudSshKeyArgs{
ProjectId: pulumi.Float64(1),
Name: pulumi.String("my-keypair"),
PublicKey: pulumi.String("ssh-ed25519 ...your public key... user@example.com"),
})
if err != nil {
return err
}
// Create a baremetal server with a single external interface
_, err = gcore.NewCloudBaremetalServer(ctx, "server", &gcore.CloudBaremetalServerArgs{
ProjectId: pulumi.Float64(1),
RegionId: pulumi.Float64(1),
Flavor: pulumi.String("bm1-infrastructure-small"),
Name: pulumi.String("my-bare-metal"),
ImageId: pulumi.String("0f25a566-91a4-4507-aa42-bdd732fb998d"),
SshKeyName: myKey.Name,
Interfaces: gcore.CloudBaremetalServerInterfaceArray{
&gcore.CloudBaremetalServerInterfaceArgs{
Type: pulumi.String("external"),
IpFamily: pulumi.String("ipv4"),
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcore = Pulumi.Gcore;
return await Deployment.RunAsync(() =>
{
// Create an SSH key for baremetal server access
var myKey = new Gcore.CloudSshKey("my_key", new()
{
ProjectId = 1,
Name = "my-keypair",
PublicKey = "ssh-ed25519 ...your public key... user@example.com",
});
// Create a baremetal server with a single external interface
var server = new Gcore.CloudBaremetalServer("server", new()
{
ProjectId = 1,
RegionId = 1,
Flavor = "bm1-infrastructure-small",
Name = "my-bare-metal",
ImageId = "0f25a566-91a4-4507-aa42-bdd732fb998d",
SshKeyName = myKey.Name,
Interfaces = new[]
{
new Gcore.Inputs.CloudBaremetalServerInterfaceArgs
{
Type = "external",
IpFamily = "ipv4",
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcore.CloudSshKey;
import com.pulumi.gcore.CloudSshKeyArgs;
import com.pulumi.gcore.CloudBaremetalServer;
import com.pulumi.gcore.CloudBaremetalServerArgs;
import com.pulumi.gcore.inputs.CloudBaremetalServerInterfaceArgs;
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) {
// Create an SSH key for baremetal server access
var myKey = new CloudSshKey("myKey", CloudSshKeyArgs.builder()
.projectId(1.0)
.name("my-keypair")
.publicKey("ssh-ed25519 ...your public key... user@example.com")
.build());
// Create a baremetal server with a single external interface
var server = new CloudBaremetalServer("server", CloudBaremetalServerArgs.builder()
.projectId(1.0)
.regionId(1.0)
.flavor("bm1-infrastructure-small")
.name("my-bare-metal")
.imageId("0f25a566-91a4-4507-aa42-bdd732fb998d")
.sshKeyName(myKey.name())
.interfaces(CloudBaremetalServerInterfaceArgs.builder()
.type("external")
.ipFamily("ipv4")
.build())
.build());
}
}
resources:
# Create an SSH key for baremetal server access
myKey:
type: gcore:CloudSshKey
name: my_key
properties:
projectId: 1
name: my-keypair
publicKey: ssh-ed25519 ...your public key... user@example.com
# Create a baremetal server with a single external interface
server:
type: gcore:CloudBaremetalServer
properties:
projectId: 1
regionId: 1
flavor: bm1-infrastructure-small
name: my-bare-metal
imageId: 0f25a566-91a4-4507-aa42-bdd732fb998d
sshKeyName: ${myKey.name}
interfaces:
- type: external
ipFamily: ipv4
Baremetal server with two interfaces
Create a baremetal server with two network interfaces: one public and one private.
import * as pulumi from "@pulumi/pulumi";
import * as gcore from "@pulumi/gcore";
// Create a private network and subnet (baremetal requires vlan, not vxlan)
const network = new gcore.CloudNetwork("network", {
projectId: 1,
regionId: 1,
name: "my-network",
type: "vlan",
});
const subnet = new gcore.CloudNetworkSubnet("subnet", {
projectId: 1,
regionId: 1,
name: "my-subnet",
cidr: "192.168.10.0/24",
networkId: network.id,
dnsNameservers: [
"8.8.4.4",
"1.1.1.1",
],
});
// Create an SSH key for baremetal server access
const myKey = new gcore.CloudSshKey("my_key", {
projectId: 1,
name: "my-keypair",
publicKey: "ssh-ed25519 ...your public key... user@example.com",
});
// Create a baremetal server with two interfaces: one public, one private
const serverWithTwoInterfaces = new gcore.CloudBaremetalServer("server_with_two_interfaces", {
projectId: 1,
regionId: 1,
flavor: "bm1-infrastructure-small",
name: "my-bare-metal",
imageId: "0f25a566-91a4-4507-aa42-bdd732fb998d",
sshKeyName: myKey.name,
interfaces: [
{
type: "external",
ipFamily: "ipv4",
},
{
type: "subnet",
networkId: network.id,
subnetId: subnet.id,
},
],
});
import pulumi
import pulumi_gcore as gcore
# Create a private network and subnet (baremetal requires vlan, not vxlan)
network = gcore.CloudNetwork("network",
project_id=1,
region_id=1,
name="my-network",
type="vlan")
subnet = gcore.CloudNetworkSubnet("subnet",
project_id=1,
region_id=1,
name="my-subnet",
cidr="192.168.10.0/24",
network_id=network.id,
dns_nameservers=[
"8.8.4.4",
"1.1.1.1",
])
# Create an SSH key for baremetal server access
my_key = gcore.CloudSshKey("my_key",
project_id=1,
name="my-keypair",
public_key="ssh-ed25519 ...your public key... user@example.com")
# Create a baremetal server with two interfaces: one public, one private
server_with_two_interfaces = gcore.CloudBaremetalServer("server_with_two_interfaces",
project_id=1,
region_id=1,
flavor="bm1-infrastructure-small",
name="my-bare-metal",
image_id="0f25a566-91a4-4507-aa42-bdd732fb998d",
ssh_key_name=my_key.name,
interfaces=[
{
"type": "external",
"ip_family": "ipv4",
},
{
"type": "subnet",
"network_id": network.id,
"subnet_id": subnet.id,
},
])
package main
import (
"github.com/pulumi/pulumi-terraform-provider/sdks/go/gcore/v2/gcore"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
// Create a private network and subnet (baremetal requires vlan, not vxlan)
network, err := gcore.NewCloudNetwork(ctx, "network", &gcore.CloudNetworkArgs{
ProjectId: pulumi.Float64(1),
RegionId: pulumi.Float64(1),
Name: pulumi.String("my-network"),
Type: pulumi.String("vlan"),
})
if err != nil {
return err
}
subnet, err := gcore.NewCloudNetworkSubnet(ctx, "subnet", &gcore.CloudNetworkSubnetArgs{
ProjectId: pulumi.Float64(1),
RegionId: pulumi.Float64(1),
Name: pulumi.String("my-subnet"),
Cidr: pulumi.String("192.168.10.0/24"),
NetworkId: network.ID(),
DnsNameservers: pulumi.StringArray{
pulumi.String("8.8.4.4"),
pulumi.String("1.1.1.1"),
},
})
if err != nil {
return err
}
// Create an SSH key for baremetal server access
myKey, err := gcore.NewCloudSshKey(ctx, "my_key", &gcore.CloudSshKeyArgs{
ProjectId: pulumi.Float64(1),
Name: pulumi.String("my-keypair"),
PublicKey: pulumi.String("ssh-ed25519 ...your public key... user@example.com"),
})
if err != nil {
return err
}
// Create a baremetal server with two interfaces: one public, one private
_, err = gcore.NewCloudBaremetalServer(ctx, "server_with_two_interfaces", &gcore.CloudBaremetalServerArgs{
ProjectId: pulumi.Float64(1),
RegionId: pulumi.Float64(1),
Flavor: pulumi.String("bm1-infrastructure-small"),
Name: pulumi.String("my-bare-metal"),
ImageId: pulumi.String("0f25a566-91a4-4507-aa42-bdd732fb998d"),
SshKeyName: myKey.Name,
Interfaces: gcore.CloudBaremetalServerInterfaceArray{
&gcore.CloudBaremetalServerInterfaceArgs{
Type: pulumi.String("external"),
IpFamily: pulumi.String("ipv4"),
},
&gcore.CloudBaremetalServerInterfaceArgs{
Type: pulumi.String("subnet"),
NetworkId: network.ID(),
SubnetId: subnet.ID(),
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcore = Pulumi.Gcore;
return await Deployment.RunAsync(() =>
{
// Create a private network and subnet (baremetal requires vlan, not vxlan)
var network = new Gcore.CloudNetwork("network", new()
{
ProjectId = 1,
RegionId = 1,
Name = "my-network",
Type = "vlan",
});
var subnet = new Gcore.CloudNetworkSubnet("subnet", new()
{
ProjectId = 1,
RegionId = 1,
Name = "my-subnet",
Cidr = "192.168.10.0/24",
NetworkId = network.Id,
DnsNameservers = new[]
{
"8.8.4.4",
"1.1.1.1",
},
});
// Create an SSH key for baremetal server access
var myKey = new Gcore.CloudSshKey("my_key", new()
{
ProjectId = 1,
Name = "my-keypair",
PublicKey = "ssh-ed25519 ...your public key... user@example.com",
});
// Create a baremetal server with two interfaces: one public, one private
var serverWithTwoInterfaces = new Gcore.CloudBaremetalServer("server_with_two_interfaces", new()
{
ProjectId = 1,
RegionId = 1,
Flavor = "bm1-infrastructure-small",
Name = "my-bare-metal",
ImageId = "0f25a566-91a4-4507-aa42-bdd732fb998d",
SshKeyName = myKey.Name,
Interfaces = new[]
{
new Gcore.Inputs.CloudBaremetalServerInterfaceArgs
{
Type = "external",
IpFamily = "ipv4",
},
new Gcore.Inputs.CloudBaremetalServerInterfaceArgs
{
Type = "subnet",
NetworkId = network.Id,
SubnetId = subnet.Id,
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcore.CloudNetwork;
import com.pulumi.gcore.CloudNetworkArgs;
import com.pulumi.gcore.CloudNetworkSubnet;
import com.pulumi.gcore.CloudNetworkSubnetArgs;
import com.pulumi.gcore.CloudSshKey;
import com.pulumi.gcore.CloudSshKeyArgs;
import com.pulumi.gcore.CloudBaremetalServer;
import com.pulumi.gcore.CloudBaremetalServerArgs;
import com.pulumi.gcore.inputs.CloudBaremetalServerInterfaceArgs;
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) {
// Create a private network and subnet (baremetal requires vlan, not vxlan)
var network = new CloudNetwork("network", CloudNetworkArgs.builder()
.projectId(1.0)
.regionId(1.0)
.name("my-network")
.type("vlan")
.build());
var subnet = new CloudNetworkSubnet("subnet", CloudNetworkSubnetArgs.builder()
.projectId(1.0)
.regionId(1.0)
.name("my-subnet")
.cidr("192.168.10.0/24")
.networkId(network.id())
.dnsNameservers(
"8.8.4.4",
"1.1.1.1")
.build());
// Create an SSH key for baremetal server access
var myKey = new CloudSshKey("myKey", CloudSshKeyArgs.builder()
.projectId(1.0)
.name("my-keypair")
.publicKey("ssh-ed25519 ...your public key... user@example.com")
.build());
// Create a baremetal server with two interfaces: one public, one private
var serverWithTwoInterfaces = new CloudBaremetalServer("serverWithTwoInterfaces", CloudBaremetalServerArgs.builder()
.projectId(1.0)
.regionId(1.0)
.flavor("bm1-infrastructure-small")
.name("my-bare-metal")
.imageId("0f25a566-91a4-4507-aa42-bdd732fb998d")
.sshKeyName(myKey.name())
.interfaces(
CloudBaremetalServerInterfaceArgs.builder()
.type("external")
.ipFamily("ipv4")
.build(),
CloudBaremetalServerInterfaceArgs.builder()
.type("subnet")
.networkId(network.id())
.subnetId(subnet.id())
.build())
.build());
}
}
resources:
# Create a private network and subnet (baremetal requires vlan, not vxlan)
network:
type: gcore:CloudNetwork
properties:
projectId: 1
regionId: 1
name: my-network
type: vlan
subnet:
type: gcore:CloudNetworkSubnet
properties:
projectId: 1
regionId: 1
name: my-subnet
cidr: 192.168.10.0/24
networkId: ${network.id}
dnsNameservers:
- 8.8.4.4
- 1.1.1.1
# Create an SSH key for baremetal server access
myKey:
type: gcore:CloudSshKey
name: my_key
properties:
projectId: 1
name: my-keypair
publicKey: ssh-ed25519 ...your public key... user@example.com
# Create a baremetal server with two interfaces: one public, one private
serverWithTwoInterfaces:
type: gcore:CloudBaremetalServer
name: server_with_two_interfaces
properties:
projectId: 1
regionId: 1
flavor: bm1-infrastructure-small
name: my-bare-metal
imageId: 0f25a566-91a4-4507-aa42-bdd732fb998d
sshKeyName: ${myKey.name}
interfaces:
- type: external
ipFamily: ipv4
- type: subnet
networkId: ${network.id}
subnetId: ${subnet.id}
Windows baremetal server
Create a Windows baremetal server with a public interface.
import * as pulumi from "@pulumi/pulumi";
import * as gcore from "@pulumi/gcore";
// Create a Windows baremetal server with a public interface
const windowsServer = new gcore.CloudBaremetalServer("windows_server", {
projectId: 1,
regionId: 1,
flavor: "bm1-infrastructure-small",
name: "my-windows-bare-metal",
imageId: "408a0e4d-6a28-4bae-93fa-f738d964f555",
passwordWo: "my-s3cR3tP@ssw0rd",
passwordWoVersion: 1,
interfaces: [{
type: "external",
ipFamily: "ipv4",
}],
});
import pulumi
import pulumi_gcore as gcore
# Create a Windows baremetal server with a public interface
windows_server = gcore.CloudBaremetalServer("windows_server",
project_id=1,
region_id=1,
flavor="bm1-infrastructure-small",
name="my-windows-bare-metal",
image_id="408a0e4d-6a28-4bae-93fa-f738d964f555",
password_wo="my-s3cR3tP@ssw0rd",
password_wo_version=1,
interfaces=[{
"type": "external",
"ip_family": "ipv4",
}])
package main
import (
"github.com/pulumi/pulumi-terraform-provider/sdks/go/gcore/v2/gcore"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
// Create a Windows baremetal server with a public interface
_, err := gcore.NewCloudBaremetalServer(ctx, "windows_server", &gcore.CloudBaremetalServerArgs{
ProjectId: pulumi.Float64(1),
RegionId: pulumi.Float64(1),
Flavor: pulumi.String("bm1-infrastructure-small"),
Name: pulumi.String("my-windows-bare-metal"),
ImageId: pulumi.String("408a0e4d-6a28-4bae-93fa-f738d964f555"),
PasswordWo: pulumi.String("my-s3cR3tP@ssw0rd"),
PasswordWoVersion: pulumi.Float64(1),
Interfaces: gcore.CloudBaremetalServerInterfaceArray{
&gcore.CloudBaremetalServerInterfaceArgs{
Type: pulumi.String("external"),
IpFamily: pulumi.String("ipv4"),
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcore = Pulumi.Gcore;
return await Deployment.RunAsync(() =>
{
// Create a Windows baremetal server with a public interface
var windowsServer = new Gcore.CloudBaremetalServer("windows_server", new()
{
ProjectId = 1,
RegionId = 1,
Flavor = "bm1-infrastructure-small",
Name = "my-windows-bare-metal",
ImageId = "408a0e4d-6a28-4bae-93fa-f738d964f555",
PasswordWo = "my-s3cR3tP@ssw0rd",
PasswordWoVersion = 1,
Interfaces = new[]
{
new Gcore.Inputs.CloudBaremetalServerInterfaceArgs
{
Type = "external",
IpFamily = "ipv4",
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcore.CloudBaremetalServer;
import com.pulumi.gcore.CloudBaremetalServerArgs;
import com.pulumi.gcore.inputs.CloudBaremetalServerInterfaceArgs;
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) {
// Create a Windows baremetal server with a public interface
var windowsServer = new CloudBaremetalServer("windowsServer", CloudBaremetalServerArgs.builder()
.projectId(1.0)
.regionId(1.0)
.flavor("bm1-infrastructure-small")
.name("my-windows-bare-metal")
.imageId("408a0e4d-6a28-4bae-93fa-f738d964f555")
.passwordWo("my-s3cR3tP@ssw0rd")
.passwordWoVersion(1.0)
.interfaces(CloudBaremetalServerInterfaceArgs.builder()
.type("external")
.ipFamily("ipv4")
.build())
.build());
}
}
resources:
# Create a Windows baremetal server with a public interface
windowsServer:
type: gcore:CloudBaremetalServer
name: windows_server
properties:
projectId: 1
regionId: 1
flavor: bm1-infrastructure-small
name: my-windows-bare-metal
imageId: 408a0e4d-6a28-4bae-93fa-f738d964f555
passwordWo: my-s3cR3tP@ssw0rd
passwordWoVersion: 1
interfaces:
- type: external
ipFamily: ipv4
Baremetal server with reserved public IP
Create a baremetal server using a pre-allocated reserved fixed IP address.
import * as pulumi from "@pulumi/pulumi";
import * as gcore from "@pulumi/gcore";
// Create an SSH key for baremetal server access
const myKey = new gcore.CloudSshKey("my_key", {
projectId: 1,
name: "my-keypair",
publicKey: "ssh-ed25519 ...your public key... user@example.com",
});
// Reserve a public IP address
const externalFixedIp = new gcore.CloudReservedFixedIp("external_fixed_ip", {
projectId: 1,
regionId: 1,
type: "external",
});
// Create a baremetal server using the reserved public IP
const serverWithReservedAddress = new gcore.CloudBaremetalServer("server_with_reserved_address", {
projectId: 1,
regionId: 1,
flavor: "bm1-infrastructure-small",
name: "my-bare-metal",
imageId: "0f25a566-91a4-4507-aa42-bdd732fb998d",
sshKeyName: myKey.name,
interfaces: [{
type: "reserved_fixed_ip",
portId: externalFixedIp.portId,
}],
});
import pulumi
import pulumi_gcore as gcore
# Create an SSH key for baremetal server access
my_key = gcore.CloudSshKey("my_key",
project_id=1,
name="my-keypair",
public_key="ssh-ed25519 ...your public key... user@example.com")
# Reserve a public IP address
external_fixed_ip = gcore.CloudReservedFixedIp("external_fixed_ip",
project_id=1,
region_id=1,
type="external")
# Create a baremetal server using the reserved public IP
server_with_reserved_address = gcore.CloudBaremetalServer("server_with_reserved_address",
project_id=1,
region_id=1,
flavor="bm1-infrastructure-small",
name="my-bare-metal",
image_id="0f25a566-91a4-4507-aa42-bdd732fb998d",
ssh_key_name=my_key.name,
interfaces=[{
"type": "reserved_fixed_ip",
"port_id": external_fixed_ip.port_id,
}])
package main
import (
"github.com/pulumi/pulumi-terraform-provider/sdks/go/gcore/v2/gcore"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
// Create an SSH key for baremetal server access
myKey, err := gcore.NewCloudSshKey(ctx, "my_key", &gcore.CloudSshKeyArgs{
ProjectId: pulumi.Float64(1),
Name: pulumi.String("my-keypair"),
PublicKey: pulumi.String("ssh-ed25519 ...your public key... user@example.com"),
})
if err != nil {
return err
}
// Reserve a public IP address
externalFixedIp, err := gcore.NewCloudReservedFixedIp(ctx, "external_fixed_ip", &gcore.CloudReservedFixedIpArgs{
ProjectId: pulumi.Float64(1),
RegionId: pulumi.Float64(1),
Type: pulumi.String("external"),
})
if err != nil {
return err
}
// Create a baremetal server using the reserved public IP
_, err = gcore.NewCloudBaremetalServer(ctx, "server_with_reserved_address", &gcore.CloudBaremetalServerArgs{
ProjectId: pulumi.Float64(1),
RegionId: pulumi.Float64(1),
Flavor: pulumi.String("bm1-infrastructure-small"),
Name: pulumi.String("my-bare-metal"),
ImageId: pulumi.String("0f25a566-91a4-4507-aa42-bdd732fb998d"),
SshKeyName: myKey.Name,
Interfaces: gcore.CloudBaremetalServerInterfaceArray{
&gcore.CloudBaremetalServerInterfaceArgs{
Type: pulumi.String("reserved_fixed_ip"),
PortId: externalFixedIp.PortId,
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcore = Pulumi.Gcore;
return await Deployment.RunAsync(() =>
{
// Create an SSH key for baremetal server access
var myKey = new Gcore.CloudSshKey("my_key", new()
{
ProjectId = 1,
Name = "my-keypair",
PublicKey = "ssh-ed25519 ...your public key... user@example.com",
});
// Reserve a public IP address
var externalFixedIp = new Gcore.CloudReservedFixedIp("external_fixed_ip", new()
{
ProjectId = 1,
RegionId = 1,
Type = "external",
});
// Create a baremetal server using the reserved public IP
var serverWithReservedAddress = new Gcore.CloudBaremetalServer("server_with_reserved_address", new()
{
ProjectId = 1,
RegionId = 1,
Flavor = "bm1-infrastructure-small",
Name = "my-bare-metal",
ImageId = "0f25a566-91a4-4507-aa42-bdd732fb998d",
SshKeyName = myKey.Name,
Interfaces = new[]
{
new Gcore.Inputs.CloudBaremetalServerInterfaceArgs
{
Type = "reserved_fixed_ip",
PortId = externalFixedIp.PortId,
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcore.CloudSshKey;
import com.pulumi.gcore.CloudSshKeyArgs;
import com.pulumi.gcore.CloudReservedFixedIp;
import com.pulumi.gcore.CloudReservedFixedIpArgs;
import com.pulumi.gcore.CloudBaremetalServer;
import com.pulumi.gcore.CloudBaremetalServerArgs;
import com.pulumi.gcore.inputs.CloudBaremetalServerInterfaceArgs;
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) {
// Create an SSH key for baremetal server access
var myKey = new CloudSshKey("myKey", CloudSshKeyArgs.builder()
.projectId(1.0)
.name("my-keypair")
.publicKey("ssh-ed25519 ...your public key... user@example.com")
.build());
// Reserve a public IP address
var externalFixedIp = new CloudReservedFixedIp("externalFixedIp", CloudReservedFixedIpArgs.builder()
.projectId(1.0)
.regionId(1.0)
.type("external")
.build());
// Create a baremetal server using the reserved public IP
var serverWithReservedAddress = new CloudBaremetalServer("serverWithReservedAddress", CloudBaremetalServerArgs.builder()
.projectId(1.0)
.regionId(1.0)
.flavor("bm1-infrastructure-small")
.name("my-bare-metal")
.imageId("0f25a566-91a4-4507-aa42-bdd732fb998d")
.sshKeyName(myKey.name())
.interfaces(CloudBaremetalServerInterfaceArgs.builder()
.type("reserved_fixed_ip")
.portId(externalFixedIp.portId())
.build())
.build());
}
}
resources:
# Create an SSH key for baremetal server access
myKey:
type: gcore:CloudSshKey
name: my_key
properties:
projectId: 1
name: my-keypair
publicKey: ssh-ed25519 ...your public key... user@example.com
# Reserve a public IP address
externalFixedIp:
type: gcore:CloudReservedFixedIp
name: external_fixed_ip
properties:
projectId: 1
regionId: 1
type: external
# Create a baremetal server using the reserved public IP
serverWithReservedAddress:
type: gcore:CloudBaremetalServer
name: server_with_reserved_address
properties:
projectId: 1
regionId: 1
flavor: bm1-infrastructure-small
name: my-bare-metal
imageId: 0f25a566-91a4-4507-aa42-bdd732fb998d
sshKeyName: ${myKey.name}
interfaces:
- type: reserved_fixed_ip
portId: ${externalFixedIp.portId}
Create CloudBaremetalServer Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new CloudBaremetalServer(name: string, args: CloudBaremetalServerArgs, opts?: CustomResourceOptions);@overload
def CloudBaremetalServer(resource_name: str,
args: CloudBaremetalServerArgs,
opts: Optional[ResourceOptions] = None)
@overload
def CloudBaremetalServer(resource_name: str,
opts: Optional[ResourceOptions] = None,
flavor: Optional[str] = None,
interfaces: Optional[Sequence[CloudBaremetalServerInterfaceArgs]] = None,
name_template: Optional[str] = None,
image_id: Optional[str] = None,
apptemplate_id: Optional[str] = None,
name: Optional[str] = None,
app_config: Optional[Mapping[str, str]] = None,
password_wo: Optional[str] = None,
password_wo_version: Optional[float] = None,
project_id: Optional[float] = None,
region_id: Optional[float] = None,
ssh_key_name: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None,
user_data: Optional[str] = None,
username: Optional[str] = None)func NewCloudBaremetalServer(ctx *Context, name string, args CloudBaremetalServerArgs, opts ...ResourceOption) (*CloudBaremetalServer, error)public CloudBaremetalServer(string name, CloudBaremetalServerArgs args, CustomResourceOptions? opts = null)
public CloudBaremetalServer(String name, CloudBaremetalServerArgs args)
public CloudBaremetalServer(String name, CloudBaremetalServerArgs args, CustomResourceOptions options)
type: gcore:CloudBaremetalServer
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args CloudBaremetalServerArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args CloudBaremetalServerArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args CloudBaremetalServerArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args CloudBaremetalServerArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args CloudBaremetalServerArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var cloudBaremetalServerResource = new Gcore.Index.CloudBaremetalServer("cloudBaremetalServerResource", new()
{
Flavor = "string",
Interfaces = new[]
{
new Gcore.Inputs.CloudBaremetalServerInterfaceArgs
{
Type = "string",
FloatingIp = new Gcore.Inputs.CloudBaremetalServerInterfaceFloatingIpArgs
{
Source = "string",
ExistingFloatingId = "string",
},
InterfaceName = "string",
IpAddress = "string",
IpFamily = "string",
NetworkId = "string",
PortGroup = 0,
PortId = "string",
SubnetId = "string",
},
},
NameTemplate = "string",
ImageId = "string",
ApptemplateId = "string",
Name = "string",
AppConfig =
{
{ "string", "string" },
},
PasswordWo = "string",
PasswordWoVersion = 0,
ProjectId = 0,
RegionId = 0,
SshKeyName = "string",
Tags =
{
{ "string", "string" },
},
UserData = "string",
Username = "string",
});
example, err := gcore.NewCloudBaremetalServer(ctx, "cloudBaremetalServerResource", &gcore.CloudBaremetalServerArgs{
Flavor: pulumi.String("string"),
Interfaces: gcore.CloudBaremetalServerInterfaceArray{
&gcore.CloudBaremetalServerInterfaceArgs{
Type: pulumi.String("string"),
FloatingIp: &gcore.CloudBaremetalServerInterfaceFloatingIpArgs{
Source: pulumi.String("string"),
ExistingFloatingId: pulumi.String("string"),
},
InterfaceName: pulumi.String("string"),
IpAddress: pulumi.String("string"),
IpFamily: pulumi.String("string"),
NetworkId: pulumi.String("string"),
PortGroup: pulumi.Float64(0),
PortId: pulumi.String("string"),
SubnetId: pulumi.String("string"),
},
},
NameTemplate: pulumi.String("string"),
ImageId: pulumi.String("string"),
ApptemplateId: pulumi.String("string"),
Name: pulumi.String("string"),
AppConfig: pulumi.StringMap{
"string": pulumi.String("string"),
},
PasswordWo: pulumi.String("string"),
PasswordWoVersion: pulumi.Float64(0),
ProjectId: pulumi.Float64(0),
RegionId: pulumi.Float64(0),
SshKeyName: pulumi.String("string"),
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
UserData: pulumi.String("string"),
Username: pulumi.String("string"),
})
var cloudBaremetalServerResource = new CloudBaremetalServer("cloudBaremetalServerResource", CloudBaremetalServerArgs.builder()
.flavor("string")
.interfaces(CloudBaremetalServerInterfaceArgs.builder()
.type("string")
.floatingIp(CloudBaremetalServerInterfaceFloatingIpArgs.builder()
.source("string")
.existingFloatingId("string")
.build())
.interfaceName("string")
.ipAddress("string")
.ipFamily("string")
.networkId("string")
.portGroup(0.0)
.portId("string")
.subnetId("string")
.build())
.nameTemplate("string")
.imageId("string")
.apptemplateId("string")
.name("string")
.appConfig(Map.of("string", "string"))
.passwordWo("string")
.passwordWoVersion(0.0)
.projectId(0.0)
.regionId(0.0)
.sshKeyName("string")
.tags(Map.of("string", "string"))
.userData("string")
.username("string")
.build());
cloud_baremetal_server_resource = gcore.CloudBaremetalServer("cloudBaremetalServerResource",
flavor="string",
interfaces=[{
"type": "string",
"floating_ip": {
"source": "string",
"existing_floating_id": "string",
},
"interface_name": "string",
"ip_address": "string",
"ip_family": "string",
"network_id": "string",
"port_group": 0,
"port_id": "string",
"subnet_id": "string",
}],
name_template="string",
image_id="string",
apptemplate_id="string",
name="string",
app_config={
"string": "string",
},
password_wo="string",
password_wo_version=0,
project_id=0,
region_id=0,
ssh_key_name="string",
tags={
"string": "string",
},
user_data="string",
username="string")
const cloudBaremetalServerResource = new gcore.CloudBaremetalServer("cloudBaremetalServerResource", {
flavor: "string",
interfaces: [{
type: "string",
floatingIp: {
source: "string",
existingFloatingId: "string",
},
interfaceName: "string",
ipAddress: "string",
ipFamily: "string",
networkId: "string",
portGroup: 0,
portId: "string",
subnetId: "string",
}],
nameTemplate: "string",
imageId: "string",
apptemplateId: "string",
name: "string",
appConfig: {
string: "string",
},
passwordWo: "string",
passwordWoVersion: 0,
projectId: 0,
regionId: 0,
sshKeyName: "string",
tags: {
string: "string",
},
userData: "string",
username: "string",
});
type: gcore:CloudBaremetalServer
properties:
appConfig:
string: string
apptemplateId: string
flavor: string
imageId: string
interfaces:
- floatingIp:
existingFloatingId: string
source: string
interfaceName: string
ipAddress: string
ipFamily: string
networkId: string
portGroup: 0
portId: string
subnetId: string
type: string
name: string
nameTemplate: string
passwordWo: string
passwordWoVersion: 0
projectId: 0
regionId: 0
sshKeyName: string
tags:
string: string
userData: string
username: string
CloudBaremetalServer Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The CloudBaremetalServer resource accepts the following input properties:
- Flavor string
- The flavor of the instance.
- Interfaces
List<Cloud
Baremetal Server Interface> - A list of network interfaces for the server. You can create one or more interfaces - private, public, or both.
- App
Config Dictionary<string, string> - Parameters for the application template if creating the instance from an
apptemplate. - Apptemplate
Id string - Apptemplate ID. Either
image_idorapptemplate_idis required. - Image
Id string - Image ID. Either
image_idorapptemplate_idis required. - Name string
- Server name.
- Name
Template string - If you want server names to be automatically generated based on IP addresses, you can provide a name template instead of specifying the name manually. The template should include a placeholder that will be replaced during provisioning. Supported placeholders are:
{ip_octets}(last 3 octets of the IP),{two_ip_octets}, and{one_ip_octet}. - Password
Wo string - For Linux instances, 'username' and 'password' are used to create a new user. When only 'password' is provided, it is set as the password for the default user of the image. For Windows instances, 'username' cannot be specified. Use the 'password' field to set the password for the 'Admin' user on Windows. Use the 'user_data' field to provide a script to create new users on Windows. The password of the Admin user cannot be updated via 'user_data'.
- Password
Wo doubleVersion - Version of the password write-only field. Increment this value to trigger a replacement when changing the password.
- Project
Id double - Project ID
- Region
Id double - Region ID
- Ssh
Key stringName - Specifies the name of the SSH keypair, created via the
/v1/
ssh_keysendpoint. - Dictionary<string, string>
- Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
- User
Data string - String in base64 format. For Linux instances, 'user_data' is ignored when 'password' field is provided. For Windows instances, Admin user password is set by 'password' field and cannot be updated via 'user_data'. Examples of the
user_data: https://cloudinit.readthedocs.io/en/latest/topics/examples.html - Username string
- For Linux instances, 'username' and 'password' are used to create a new user. For Windows instances, 'username' cannot be specified. Use 'password' field to set the password for the 'Admin' user on Windows.
- Flavor string
- The flavor of the instance.
- Interfaces
[]Cloud
Baremetal Server Interface Args - A list of network interfaces for the server. You can create one or more interfaces - private, public, or both.
- App
Config map[string]string - Parameters for the application template if creating the instance from an
apptemplate. - Apptemplate
Id string - Apptemplate ID. Either
image_idorapptemplate_idis required. - Image
Id string - Image ID. Either
image_idorapptemplate_idis required. - Name string
- Server name.
- Name
Template string - If you want server names to be automatically generated based on IP addresses, you can provide a name template instead of specifying the name manually. The template should include a placeholder that will be replaced during provisioning. Supported placeholders are:
{ip_octets}(last 3 octets of the IP),{two_ip_octets}, and{one_ip_octet}. - Password
Wo string - For Linux instances, 'username' and 'password' are used to create a new user. When only 'password' is provided, it is set as the password for the default user of the image. For Windows instances, 'username' cannot be specified. Use the 'password' field to set the password for the 'Admin' user on Windows. Use the 'user_data' field to provide a script to create new users on Windows. The password of the Admin user cannot be updated via 'user_data'.
- Password
Wo float64Version - Version of the password write-only field. Increment this value to trigger a replacement when changing the password.
- Project
Id float64 - Project ID
- Region
Id float64 - Region ID
- Ssh
Key stringName - Specifies the name of the SSH keypair, created via the
/v1/
ssh_keysendpoint. - map[string]string
- Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
- User
Data string - String in base64 format. For Linux instances, 'user_data' is ignored when 'password' field is provided. For Windows instances, Admin user password is set by 'password' field and cannot be updated via 'user_data'. Examples of the
user_data: https://cloudinit.readthedocs.io/en/latest/topics/examples.html - Username string
- For Linux instances, 'username' and 'password' are used to create a new user. For Windows instances, 'username' cannot be specified. Use 'password' field to set the password for the 'Admin' user on Windows.
- flavor String
- The flavor of the instance.
- interfaces
List<Cloud
Baremetal Server Interface> - A list of network interfaces for the server. You can create one or more interfaces - private, public, or both.
- app
Config Map<String,String> - Parameters for the application template if creating the instance from an
apptemplate. - apptemplate
Id String - Apptemplate ID. Either
image_idorapptemplate_idis required. - image
Id String - Image ID. Either
image_idorapptemplate_idis required. - name String
- Server name.
- name
Template String - If you want server names to be automatically generated based on IP addresses, you can provide a name template instead of specifying the name manually. The template should include a placeholder that will be replaced during provisioning. Supported placeholders are:
{ip_octets}(last 3 octets of the IP),{two_ip_octets}, and{one_ip_octet}. - password
Wo String - For Linux instances, 'username' and 'password' are used to create a new user. When only 'password' is provided, it is set as the password for the default user of the image. For Windows instances, 'username' cannot be specified. Use the 'password' field to set the password for the 'Admin' user on Windows. Use the 'user_data' field to provide a script to create new users on Windows. The password of the Admin user cannot be updated via 'user_data'.
- password
Wo DoubleVersion - Version of the password write-only field. Increment this value to trigger a replacement when changing the password.
- project
Id Double - Project ID
- region
Id Double - Region ID
- ssh
Key StringName - Specifies the name of the SSH keypair, created via the
/v1/
ssh_keysendpoint. - Map<String,String>
- Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
- user
Data String - String in base64 format. For Linux instances, 'user_data' is ignored when 'password' field is provided. For Windows instances, Admin user password is set by 'password' field and cannot be updated via 'user_data'. Examples of the
user_data: https://cloudinit.readthedocs.io/en/latest/topics/examples.html - username String
- For Linux instances, 'username' and 'password' are used to create a new user. For Windows instances, 'username' cannot be specified. Use 'password' field to set the password for the 'Admin' user on Windows.
- flavor string
- The flavor of the instance.
- interfaces
Cloud
Baremetal Server Interface[] - A list of network interfaces for the server. You can create one or more interfaces - private, public, or both.
- app
Config {[key: string]: string} - Parameters for the application template if creating the instance from an
apptemplate. - apptemplate
Id string - Apptemplate ID. Either
image_idorapptemplate_idis required. - image
Id string - Image ID. Either
image_idorapptemplate_idis required. - name string
- Server name.
- name
Template string - If you want server names to be automatically generated based on IP addresses, you can provide a name template instead of specifying the name manually. The template should include a placeholder that will be replaced during provisioning. Supported placeholders are:
{ip_octets}(last 3 octets of the IP),{two_ip_octets}, and{one_ip_octet}. - password
Wo string - For Linux instances, 'username' and 'password' are used to create a new user. When only 'password' is provided, it is set as the password for the default user of the image. For Windows instances, 'username' cannot be specified. Use the 'password' field to set the password for the 'Admin' user on Windows. Use the 'user_data' field to provide a script to create new users on Windows. The password of the Admin user cannot be updated via 'user_data'.
- password
Wo numberVersion - Version of the password write-only field. Increment this value to trigger a replacement when changing the password.
- project
Id number - Project ID
- region
Id number - Region ID
- ssh
Key stringName - Specifies the name of the SSH keypair, created via the
/v1/
ssh_keysendpoint. - {[key: string]: string}
- Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
- user
Data string - String in base64 format. For Linux instances, 'user_data' is ignored when 'password' field is provided. For Windows instances, Admin user password is set by 'password' field and cannot be updated via 'user_data'. Examples of the
user_data: https://cloudinit.readthedocs.io/en/latest/topics/examples.html - username string
- For Linux instances, 'username' and 'password' are used to create a new user. For Windows instances, 'username' cannot be specified. Use 'password' field to set the password for the 'Admin' user on Windows.
- flavor str
- The flavor of the instance.
- interfaces
Sequence[Cloud
Baremetal Server Interface Args] - A list of network interfaces for the server. You can create one or more interfaces - private, public, or both.
- app_
config Mapping[str, str] - Parameters for the application template if creating the instance from an
apptemplate. - apptemplate_
id str - Apptemplate ID. Either
image_idorapptemplate_idis required. - image_
id str - Image ID. Either
image_idorapptemplate_idis required. - name str
- Server name.
- name_
template str - If you want server names to be automatically generated based on IP addresses, you can provide a name template instead of specifying the name manually. The template should include a placeholder that will be replaced during provisioning. Supported placeholders are:
{ip_octets}(last 3 octets of the IP),{two_ip_octets}, and{one_ip_octet}. - password_
wo str - For Linux instances, 'username' and 'password' are used to create a new user. When only 'password' is provided, it is set as the password for the default user of the image. For Windows instances, 'username' cannot be specified. Use the 'password' field to set the password for the 'Admin' user on Windows. Use the 'user_data' field to provide a script to create new users on Windows. The password of the Admin user cannot be updated via 'user_data'.
- password_
wo_ floatversion - Version of the password write-only field. Increment this value to trigger a replacement when changing the password.
- project_
id float - Project ID
- region_
id float - Region ID
- ssh_
key_ strname - Specifies the name of the SSH keypair, created via the
/v1/
ssh_keysendpoint. - Mapping[str, str]
- Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
- user_
data str - String in base64 format. For Linux instances, 'user_data' is ignored when 'password' field is provided. For Windows instances, Admin user password is set by 'password' field and cannot be updated via 'user_data'. Examples of the
user_data: https://cloudinit.readthedocs.io/en/latest/topics/examples.html - username str
- For Linux instances, 'username' and 'password' are used to create a new user. For Windows instances, 'username' cannot be specified. Use 'password' field to set the password for the 'Admin' user on Windows.
- flavor String
- The flavor of the instance.
- interfaces List<Property Map>
- A list of network interfaces for the server. You can create one or more interfaces - private, public, or both.
- app
Config Map<String> - Parameters for the application template if creating the instance from an
apptemplate. - apptemplate
Id String - Apptemplate ID. Either
image_idorapptemplate_idis required. - image
Id String - Image ID. Either
image_idorapptemplate_idis required. - name String
- Server name.
- name
Template String - If you want server names to be automatically generated based on IP addresses, you can provide a name template instead of specifying the name manually. The template should include a placeholder that will be replaced during provisioning. Supported placeholders are:
{ip_octets}(last 3 octets of the IP),{two_ip_octets}, and{one_ip_octet}. - password
Wo String - For Linux instances, 'username' and 'password' are used to create a new user. When only 'password' is provided, it is set as the password for the default user of the image. For Windows instances, 'username' cannot be specified. Use the 'password' field to set the password for the 'Admin' user on Windows. Use the 'user_data' field to provide a script to create new users on Windows. The password of the Admin user cannot be updated via 'user_data'.
- password
Wo NumberVersion - Version of the password write-only field. Increment this value to trigger a replacement when changing the password.
- project
Id Number - Project ID
- region
Id Number - Region ID
- ssh
Key StringName - Specifies the name of the SSH keypair, created via the
/v1/
ssh_keysendpoint. - Map<String>
- Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
- user
Data String - String in base64 format. For Linux instances, 'user_data' is ignored when 'password' field is provided. For Windows instances, Admin user password is set by 'password' field and cannot be updated via 'user_data'. Examples of the
user_data: https://cloudinit.readthedocs.io/en/latest/topics/examples.html - username String
- For Linux instances, 'username' and 'password' are used to create a new user. For Windows instances, 'username' cannot be specified. Use 'password' field to set the password for the 'Admin' user on Windows.
Outputs
All input properties are implicitly available as output properties. Additionally, the CloudBaremetalServer resource produces the following output properties:
- Addresses
Dictionary<string, Immutable
Array<Cloud Baremetal Server Addresses>> - Map of
network_nameto list of addresses in that network - Blackhole
Ports List<CloudBaremetal Server Blackhole Port> - IP addresses of the instances that are blackholed by DDoS mitigation system
- Created
At string - Datetime when bare metal server was created
- Fixed
Ip List<CloudAssignments Baremetal Server Fixed Ip Assignment> - Fixed IP assigned to instance
- Id string
- The provider-assigned unique ID for this managed resource.
- Instance
Isolation CloudBaremetal Server Instance Isolation - Instance isolation information
- Region string
- Region name
- Status string
- Bare metal server status Available values: "ACTIVE", "BUILD", "DELETED", "ERROR", "HARD_REBOOT", "MIGRATING", "PASSWORD", "PAUSED", "REBOOT", "REBUILD", "RESCUE", "RESIZE", "REVERT_RESIZE", "SHELVED", "SHELVED_OFFLOADED", "SHUTOFF", "SOFT_DELETED", "SUSPENDED", "UNKNOWN", "VERIFY_RESIZE".
- Vm
State string - Bare metal server state Available values: "active", "building", "deleted", "error", "paused", "rescued", "resized", "shelved", "shelved_offloaded", "soft-deleted", "stopped", "suspended".
- Addresses
map[string][]Cloud
Baremetal Server Addresses - Map of
network_nameto list of addresses in that network - Blackhole
Ports []CloudBaremetal Server Blackhole Port - IP addresses of the instances that are blackholed by DDoS mitigation system
- Created
At string - Datetime when bare metal server was created
- Fixed
Ip []CloudAssignments Baremetal Server Fixed Ip Assignment - Fixed IP assigned to instance
- Id string
- The provider-assigned unique ID for this managed resource.
- Instance
Isolation CloudBaremetal Server Instance Isolation - Instance isolation information
- Region string
- Region name
- Status string
- Bare metal server status Available values: "ACTIVE", "BUILD", "DELETED", "ERROR", "HARD_REBOOT", "MIGRATING", "PASSWORD", "PAUSED", "REBOOT", "REBUILD", "RESCUE", "RESIZE", "REVERT_RESIZE", "SHELVED", "SHELVED_OFFLOADED", "SHUTOFF", "SOFT_DELETED", "SUSPENDED", "UNKNOWN", "VERIFY_RESIZE".
- Vm
State string - Bare metal server state Available values: "active", "building", "deleted", "error", "paused", "rescued", "resized", "shelved", "shelved_offloaded", "soft-deleted", "stopped", "suspended".
- addresses
Map<String,List<Cloud
Baremetal Server Addresses>> - Map of
network_nameto list of addresses in that network - blackhole
Ports List<CloudBaremetal Server Blackhole Port> - IP addresses of the instances that are blackholed by DDoS mitigation system
- created
At String - Datetime when bare metal server was created
- fixed
Ip List<CloudAssignments Baremetal Server Fixed Ip Assignment> - Fixed IP assigned to instance
- id String
- The provider-assigned unique ID for this managed resource.
- instance
Isolation CloudBaremetal Server Instance Isolation - Instance isolation information
- region String
- Region name
- status String
- Bare metal server status Available values: "ACTIVE", "BUILD", "DELETED", "ERROR", "HARD_REBOOT", "MIGRATING", "PASSWORD", "PAUSED", "REBOOT", "REBUILD", "RESCUE", "RESIZE", "REVERT_RESIZE", "SHELVED", "SHELVED_OFFLOADED", "SHUTOFF", "SOFT_DELETED", "SUSPENDED", "UNKNOWN", "VERIFY_RESIZE".
- vm
State String - Bare metal server state Available values: "active", "building", "deleted", "error", "paused", "rescued", "resized", "shelved", "shelved_offloaded", "soft-deleted", "stopped", "suspended".
- addresses
{[key: string]: Cloud
Baremetal Server Addresses[]} - Map of
network_nameto list of addresses in that network - blackhole
Ports CloudBaremetal Server Blackhole Port[] - IP addresses of the instances that are blackholed by DDoS mitigation system
- created
At string - Datetime when bare metal server was created
- fixed
Ip CloudAssignments Baremetal Server Fixed Ip Assignment[] - Fixed IP assigned to instance
- id string
- The provider-assigned unique ID for this managed resource.
- instance
Isolation CloudBaremetal Server Instance Isolation - Instance isolation information
- region string
- Region name
- status string
- Bare metal server status Available values: "ACTIVE", "BUILD", "DELETED", "ERROR", "HARD_REBOOT", "MIGRATING", "PASSWORD", "PAUSED", "REBOOT", "REBUILD", "RESCUE", "RESIZE", "REVERT_RESIZE", "SHELVED", "SHELVED_OFFLOADED", "SHUTOFF", "SOFT_DELETED", "SUSPENDED", "UNKNOWN", "VERIFY_RESIZE".
- vm
State string - Bare metal server state Available values: "active", "building", "deleted", "error", "paused", "rescued", "resized", "shelved", "shelved_offloaded", "soft-deleted", "stopped", "suspended".
- addresses
Mapping[str, Sequence[Cloud
Baremetal Server Addresses]] - Map of
network_nameto list of addresses in that network - blackhole_
ports Sequence[CloudBaremetal Server Blackhole Port] - IP addresses of the instances that are blackholed by DDoS mitigation system
- created_
at str - Datetime when bare metal server was created
- fixed_
ip_ Sequence[Cloudassignments Baremetal Server Fixed Ip Assignment] - Fixed IP assigned to instance
- id str
- The provider-assigned unique ID for this managed resource.
- instance_
isolation CloudBaremetal Server Instance Isolation - Instance isolation information
- region str
- Region name
- status str
- Bare metal server status Available values: "ACTIVE", "BUILD", "DELETED", "ERROR", "HARD_REBOOT", "MIGRATING", "PASSWORD", "PAUSED", "REBOOT", "REBUILD", "RESCUE", "RESIZE", "REVERT_RESIZE", "SHELVED", "SHELVED_OFFLOADED", "SHUTOFF", "SOFT_DELETED", "SUSPENDED", "UNKNOWN", "VERIFY_RESIZE".
- vm_
state str - Bare metal server state Available values: "active", "building", "deleted", "error", "paused", "rescued", "resized", "shelved", "shelved_offloaded", "soft-deleted", "stopped", "suspended".
- addresses Map<List<Property Map>>
- Map of
network_nameto list of addresses in that network - blackhole
Ports List<Property Map> - IP addresses of the instances that are blackholed by DDoS mitigation system
- created
At String - Datetime when bare metal server was created
- fixed
Ip List<Property Map>Assignments - Fixed IP assigned to instance
- id String
- The provider-assigned unique ID for this managed resource.
- instance
Isolation Property Map - Instance isolation information
- region String
- Region name
- status String
- Bare metal server status Available values: "ACTIVE", "BUILD", "DELETED", "ERROR", "HARD_REBOOT", "MIGRATING", "PASSWORD", "PAUSED", "REBOOT", "REBUILD", "RESCUE", "RESIZE", "REVERT_RESIZE", "SHELVED", "SHELVED_OFFLOADED", "SHUTOFF", "SOFT_DELETED", "SUSPENDED", "UNKNOWN", "VERIFY_RESIZE".
- vm
State String - Bare metal server state Available values: "active", "building", "deleted", "error", "paused", "rescued", "resized", "shelved", "shelved_offloaded", "soft-deleted", "stopped", "suspended".
Look up Existing CloudBaremetalServer Resource
Get an existing CloudBaremetalServer resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: CloudBaremetalServerState, opts?: CustomResourceOptions): CloudBaremetalServer@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
addresses: Optional[Mapping[str, Sequence[CloudBaremetalServerAddressesArgs]]] = None,
app_config: Optional[Mapping[str, str]] = None,
apptemplate_id: Optional[str] = None,
blackhole_ports: Optional[Sequence[CloudBaremetalServerBlackholePortArgs]] = None,
created_at: Optional[str] = None,
fixed_ip_assignments: Optional[Sequence[CloudBaremetalServerFixedIpAssignmentArgs]] = None,
flavor: Optional[str] = None,
image_id: Optional[str] = None,
instance_isolation: Optional[CloudBaremetalServerInstanceIsolationArgs] = None,
interfaces: Optional[Sequence[CloudBaremetalServerInterfaceArgs]] = None,
name: Optional[str] = None,
name_template: Optional[str] = None,
password_wo: Optional[str] = None,
password_wo_version: Optional[float] = None,
project_id: Optional[float] = None,
region: Optional[str] = None,
region_id: Optional[float] = None,
ssh_key_name: Optional[str] = None,
status: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None,
user_data: Optional[str] = None,
username: Optional[str] = None,
vm_state: Optional[str] = None) -> CloudBaremetalServerfunc GetCloudBaremetalServer(ctx *Context, name string, id IDInput, state *CloudBaremetalServerState, opts ...ResourceOption) (*CloudBaremetalServer, error)public static CloudBaremetalServer Get(string name, Input<string> id, CloudBaremetalServerState? state, CustomResourceOptions? opts = null)public static CloudBaremetalServer get(String name, Output<String> id, CloudBaremetalServerState state, CustomResourceOptions options)resources: _: type: gcore:CloudBaremetalServer get: id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Addresses
Dictionary<string, Immutable
Array<Cloud Baremetal Server Addresses Args>> - Map of
network_nameto list of addresses in that network - App
Config Dictionary<string, string> - Parameters for the application template if creating the instance from an
apptemplate. - Apptemplate
Id string - Apptemplate ID. Either
image_idorapptemplate_idis required. - Blackhole
Ports List<CloudBaremetal Server Blackhole Port> - IP addresses of the instances that are blackholed by DDoS mitigation system
- Created
At string - Datetime when bare metal server was created
- Fixed
Ip List<CloudAssignments Baremetal Server Fixed Ip Assignment> - Fixed IP assigned to instance
- Flavor string
- The flavor of the instance.
- Image
Id string - Image ID. Either
image_idorapptemplate_idis required. - Instance
Isolation CloudBaremetal Server Instance Isolation - Instance isolation information
- Interfaces
List<Cloud
Baremetal Server Interface> - A list of network interfaces for the server. You can create one or more interfaces - private, public, or both.
- Name string
- Server name.
- Name
Template string - If you want server names to be automatically generated based on IP addresses, you can provide a name template instead of specifying the name manually. The template should include a placeholder that will be replaced during provisioning. Supported placeholders are:
{ip_octets}(last 3 octets of the IP),{two_ip_octets}, and{one_ip_octet}. - Password
Wo string - For Linux instances, 'username' and 'password' are used to create a new user. When only 'password' is provided, it is set as the password for the default user of the image. For Windows instances, 'username' cannot be specified. Use the 'password' field to set the password for the 'Admin' user on Windows. Use the 'user_data' field to provide a script to create new users on Windows. The password of the Admin user cannot be updated via 'user_data'.
- Password
Wo doubleVersion - Version of the password write-only field. Increment this value to trigger a replacement when changing the password.
- Project
Id double - Project ID
- Region string
- Region name
- Region
Id double - Region ID
- Ssh
Key stringName - Specifies the name of the SSH keypair, created via the
/v1/
ssh_keysendpoint. - Status string
- Bare metal server status Available values: "ACTIVE", "BUILD", "DELETED", "ERROR", "HARD_REBOOT", "MIGRATING", "PASSWORD", "PAUSED", "REBOOT", "REBUILD", "RESCUE", "RESIZE", "REVERT_RESIZE", "SHELVED", "SHELVED_OFFLOADED", "SHUTOFF", "SOFT_DELETED", "SUSPENDED", "UNKNOWN", "VERIFY_RESIZE".
- Dictionary<string, string>
- Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
- User
Data string - String in base64 format. For Linux instances, 'user_data' is ignored when 'password' field is provided. For Windows instances, Admin user password is set by 'password' field and cannot be updated via 'user_data'. Examples of the
user_data: https://cloudinit.readthedocs.io/en/latest/topics/examples.html - Username string
- For Linux instances, 'username' and 'password' are used to create a new user. For Windows instances, 'username' cannot be specified. Use 'password' field to set the password for the 'Admin' user on Windows.
- Vm
State string - Bare metal server state Available values: "active", "building", "deleted", "error", "paused", "rescued", "resized", "shelved", "shelved_offloaded", "soft-deleted", "stopped", "suspended".
- Addresses
map[string][]Cloud
Baremetal Server Addresses Args - Map of
network_nameto list of addresses in that network - App
Config map[string]string - Parameters for the application template if creating the instance from an
apptemplate. - Apptemplate
Id string - Apptemplate ID. Either
image_idorapptemplate_idis required. - Blackhole
Ports []CloudBaremetal Server Blackhole Port Args - IP addresses of the instances that are blackholed by DDoS mitigation system
- Created
At string - Datetime when bare metal server was created
- Fixed
Ip []CloudAssignments Baremetal Server Fixed Ip Assignment Args - Fixed IP assigned to instance
- Flavor string
- The flavor of the instance.
- Image
Id string - Image ID. Either
image_idorapptemplate_idis required. - Instance
Isolation CloudBaremetal Server Instance Isolation Args - Instance isolation information
- Interfaces
[]Cloud
Baremetal Server Interface Args - A list of network interfaces for the server. You can create one or more interfaces - private, public, or both.
- Name string
- Server name.
- Name
Template string - If you want server names to be automatically generated based on IP addresses, you can provide a name template instead of specifying the name manually. The template should include a placeholder that will be replaced during provisioning. Supported placeholders are:
{ip_octets}(last 3 octets of the IP),{two_ip_octets}, and{one_ip_octet}. - Password
Wo string - For Linux instances, 'username' and 'password' are used to create a new user. When only 'password' is provided, it is set as the password for the default user of the image. For Windows instances, 'username' cannot be specified. Use the 'password' field to set the password for the 'Admin' user on Windows. Use the 'user_data' field to provide a script to create new users on Windows. The password of the Admin user cannot be updated via 'user_data'.
- Password
Wo float64Version - Version of the password write-only field. Increment this value to trigger a replacement when changing the password.
- Project
Id float64 - Project ID
- Region string
- Region name
- Region
Id float64 - Region ID
- Ssh
Key stringName - Specifies the name of the SSH keypair, created via the
/v1/
ssh_keysendpoint. - Status string
- Bare metal server status Available values: "ACTIVE", "BUILD", "DELETED", "ERROR", "HARD_REBOOT", "MIGRATING", "PASSWORD", "PAUSED", "REBOOT", "REBUILD", "RESCUE", "RESIZE", "REVERT_RESIZE", "SHELVED", "SHELVED_OFFLOADED", "SHUTOFF", "SOFT_DELETED", "SUSPENDED", "UNKNOWN", "VERIFY_RESIZE".
- map[string]string
- Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
- User
Data string - String in base64 format. For Linux instances, 'user_data' is ignored when 'password' field is provided. For Windows instances, Admin user password is set by 'password' field and cannot be updated via 'user_data'. Examples of the
user_data: https://cloudinit.readthedocs.io/en/latest/topics/examples.html - Username string
- For Linux instances, 'username' and 'password' are used to create a new user. For Windows instances, 'username' cannot be specified. Use 'password' field to set the password for the 'Admin' user on Windows.
- Vm
State string - Bare metal server state Available values: "active", "building", "deleted", "error", "paused", "rescued", "resized", "shelved", "shelved_offloaded", "soft-deleted", "stopped", "suspended".
- addresses
Map<String,List<Cloud
Baremetal Server Addresses Args>> - Map of
network_nameto list of addresses in that network - app
Config Map<String,String> - Parameters for the application template if creating the instance from an
apptemplate. - apptemplate
Id String - Apptemplate ID. Either
image_idorapptemplate_idis required. - blackhole
Ports List<CloudBaremetal Server Blackhole Port> - IP addresses of the instances that are blackholed by DDoS mitigation system
- created
At String - Datetime when bare metal server was created
- fixed
Ip List<CloudAssignments Baremetal Server Fixed Ip Assignment> - Fixed IP assigned to instance
- flavor String
- The flavor of the instance.
- image
Id String - Image ID. Either
image_idorapptemplate_idis required. - instance
Isolation CloudBaremetal Server Instance Isolation - Instance isolation information
- interfaces
List<Cloud
Baremetal Server Interface> - A list of network interfaces for the server. You can create one or more interfaces - private, public, or both.
- name String
- Server name.
- name
Template String - If you want server names to be automatically generated based on IP addresses, you can provide a name template instead of specifying the name manually. The template should include a placeholder that will be replaced during provisioning. Supported placeholders are:
{ip_octets}(last 3 octets of the IP),{two_ip_octets}, and{one_ip_octet}. - password
Wo String - For Linux instances, 'username' and 'password' are used to create a new user. When only 'password' is provided, it is set as the password for the default user of the image. For Windows instances, 'username' cannot be specified. Use the 'password' field to set the password for the 'Admin' user on Windows. Use the 'user_data' field to provide a script to create new users on Windows. The password of the Admin user cannot be updated via 'user_data'.
- password
Wo DoubleVersion - Version of the password write-only field. Increment this value to trigger a replacement when changing the password.
- project
Id Double - Project ID
- region String
- Region name
- region
Id Double - Region ID
- ssh
Key StringName - Specifies the name of the SSH keypair, created via the
/v1/
ssh_keysendpoint. - status String
- Bare metal server status Available values: "ACTIVE", "BUILD", "DELETED", "ERROR", "HARD_REBOOT", "MIGRATING", "PASSWORD", "PAUSED", "REBOOT", "REBUILD", "RESCUE", "RESIZE", "REVERT_RESIZE", "SHELVED", "SHELVED_OFFLOADED", "SHUTOFF", "SOFT_DELETED", "SUSPENDED", "UNKNOWN", "VERIFY_RESIZE".
- Map<String,String>
- Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
- user
Data String - String in base64 format. For Linux instances, 'user_data' is ignored when 'password' field is provided. For Windows instances, Admin user password is set by 'password' field and cannot be updated via 'user_data'. Examples of the
user_data: https://cloudinit.readthedocs.io/en/latest/topics/examples.html - username String
- For Linux instances, 'username' and 'password' are used to create a new user. For Windows instances, 'username' cannot be specified. Use 'password' field to set the password for the 'Admin' user on Windows.
- vm
State String - Bare metal server state Available values: "active", "building", "deleted", "error", "paused", "rescued", "resized", "shelved", "shelved_offloaded", "soft-deleted", "stopped", "suspended".
- addresses
{[key: string]: Cloud
Baremetal Server Addresses Args[]} - Map of
network_nameto list of addresses in that network - app
Config {[key: string]: string} - Parameters for the application template if creating the instance from an
apptemplate. - apptemplate
Id string - Apptemplate ID. Either
image_idorapptemplate_idis required. - blackhole
Ports CloudBaremetal Server Blackhole Port[] - IP addresses of the instances that are blackholed by DDoS mitigation system
- created
At string - Datetime when bare metal server was created
- fixed
Ip CloudAssignments Baremetal Server Fixed Ip Assignment[] - Fixed IP assigned to instance
- flavor string
- The flavor of the instance.
- image
Id string - Image ID. Either
image_idorapptemplate_idis required. - instance
Isolation CloudBaremetal Server Instance Isolation - Instance isolation information
- interfaces
Cloud
Baremetal Server Interface[] - A list of network interfaces for the server. You can create one or more interfaces - private, public, or both.
- name string
- Server name.
- name
Template string - If you want server names to be automatically generated based on IP addresses, you can provide a name template instead of specifying the name manually. The template should include a placeholder that will be replaced during provisioning. Supported placeholders are:
{ip_octets}(last 3 octets of the IP),{two_ip_octets}, and{one_ip_octet}. - password
Wo string - For Linux instances, 'username' and 'password' are used to create a new user. When only 'password' is provided, it is set as the password for the default user of the image. For Windows instances, 'username' cannot be specified. Use the 'password' field to set the password for the 'Admin' user on Windows. Use the 'user_data' field to provide a script to create new users on Windows. The password of the Admin user cannot be updated via 'user_data'.
- password
Wo numberVersion - Version of the password write-only field. Increment this value to trigger a replacement when changing the password.
- project
Id number - Project ID
- region string
- Region name
- region
Id number - Region ID
- ssh
Key stringName - Specifies the name of the SSH keypair, created via the
/v1/
ssh_keysendpoint. - status string
- Bare metal server status Available values: "ACTIVE", "BUILD", "DELETED", "ERROR", "HARD_REBOOT", "MIGRATING", "PASSWORD", "PAUSED", "REBOOT", "REBUILD", "RESCUE", "RESIZE", "REVERT_RESIZE", "SHELVED", "SHELVED_OFFLOADED", "SHUTOFF", "SOFT_DELETED", "SUSPENDED", "UNKNOWN", "VERIFY_RESIZE".
- {[key: string]: string}
- Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
- user
Data string - String in base64 format. For Linux instances, 'user_data' is ignored when 'password' field is provided. For Windows instances, Admin user password is set by 'password' field and cannot be updated via 'user_data'. Examples of the
user_data: https://cloudinit.readthedocs.io/en/latest/topics/examples.html - username string
- For Linux instances, 'username' and 'password' are used to create a new user. For Windows instances, 'username' cannot be specified. Use 'password' field to set the password for the 'Admin' user on Windows.
- vm
State string - Bare metal server state Available values: "active", "building", "deleted", "error", "paused", "rescued", "resized", "shelved", "shelved_offloaded", "soft-deleted", "stopped", "suspended".
- addresses
Mapping[str, Sequence[Cloud
Baremetal Server Addresses Args]] - Map of
network_nameto list of addresses in that network - app_
config Mapping[str, str] - Parameters for the application template if creating the instance from an
apptemplate. - apptemplate_
id str - Apptemplate ID. Either
image_idorapptemplate_idis required. - blackhole_
ports Sequence[CloudBaremetal Server Blackhole Port Args] - IP addresses of the instances that are blackholed by DDoS mitigation system
- created_
at str - Datetime when bare metal server was created
- fixed_
ip_ Sequence[Cloudassignments Baremetal Server Fixed Ip Assignment Args] - Fixed IP assigned to instance
- flavor str
- The flavor of the instance.
- image_
id str - Image ID. Either
image_idorapptemplate_idis required. - instance_
isolation CloudBaremetal Server Instance Isolation Args - Instance isolation information
- interfaces
Sequence[Cloud
Baremetal Server Interface Args] - A list of network interfaces for the server. You can create one or more interfaces - private, public, or both.
- name str
- Server name.
- name_
template str - If you want server names to be automatically generated based on IP addresses, you can provide a name template instead of specifying the name manually. The template should include a placeholder that will be replaced during provisioning. Supported placeholders are:
{ip_octets}(last 3 octets of the IP),{two_ip_octets}, and{one_ip_octet}. - password_
wo str - For Linux instances, 'username' and 'password' are used to create a new user. When only 'password' is provided, it is set as the password for the default user of the image. For Windows instances, 'username' cannot be specified. Use the 'password' field to set the password for the 'Admin' user on Windows. Use the 'user_data' field to provide a script to create new users on Windows. The password of the Admin user cannot be updated via 'user_data'.
- password_
wo_ floatversion - Version of the password write-only field. Increment this value to trigger a replacement when changing the password.
- project_
id float - Project ID
- region str
- Region name
- region_
id float - Region ID
- ssh_
key_ strname - Specifies the name of the SSH keypair, created via the
/v1/
ssh_keysendpoint. - status str
- Bare metal server status Available values: "ACTIVE", "BUILD", "DELETED", "ERROR", "HARD_REBOOT", "MIGRATING", "PASSWORD", "PAUSED", "REBOOT", "REBUILD", "RESCUE", "RESIZE", "REVERT_RESIZE", "SHELVED", "SHELVED_OFFLOADED", "SHUTOFF", "SOFT_DELETED", "SUSPENDED", "UNKNOWN", "VERIFY_RESIZE".
- Mapping[str, str]
- Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
- user_
data str - String in base64 format. For Linux instances, 'user_data' is ignored when 'password' field is provided. For Windows instances, Admin user password is set by 'password' field and cannot be updated via 'user_data'. Examples of the
user_data: https://cloudinit.readthedocs.io/en/latest/topics/examples.html - username str
- For Linux instances, 'username' and 'password' are used to create a new user. For Windows instances, 'username' cannot be specified. Use 'password' field to set the password for the 'Admin' user on Windows.
- vm_
state str - Bare metal server state Available values: "active", "building", "deleted", "error", "paused", "rescued", "resized", "shelved", "shelved_offloaded", "soft-deleted", "stopped", "suspended".
- addresses Map<List<Property Map>>
- Map of
network_nameto list of addresses in that network - app
Config Map<String> - Parameters for the application template if creating the instance from an
apptemplate. - apptemplate
Id String - Apptemplate ID. Either
image_idorapptemplate_idis required. - blackhole
Ports List<Property Map> - IP addresses of the instances that are blackholed by DDoS mitigation system
- created
At String - Datetime when bare metal server was created
- fixed
Ip List<Property Map>Assignments - Fixed IP assigned to instance
- flavor String
- The flavor of the instance.
- image
Id String - Image ID. Either
image_idorapptemplate_idis required. - instance
Isolation Property Map - Instance isolation information
- interfaces List<Property Map>
- A list of network interfaces for the server. You can create one or more interfaces - private, public, or both.
- name String
- Server name.
- name
Template String - If you want server names to be automatically generated based on IP addresses, you can provide a name template instead of specifying the name manually. The template should include a placeholder that will be replaced during provisioning. Supported placeholders are:
{ip_octets}(last 3 octets of the IP),{two_ip_octets}, and{one_ip_octet}. - password
Wo String - For Linux instances, 'username' and 'password' are used to create a new user. When only 'password' is provided, it is set as the password for the default user of the image. For Windows instances, 'username' cannot be specified. Use the 'password' field to set the password for the 'Admin' user on Windows. Use the 'user_data' field to provide a script to create new users on Windows. The password of the Admin user cannot be updated via 'user_data'.
- password
Wo NumberVersion - Version of the password write-only field. Increment this value to trigger a replacement when changing the password.
- project
Id Number - Project ID
- region String
- Region name
- region
Id Number - Region ID
- ssh
Key StringName - Specifies the name of the SSH keypair, created via the
/v1/
ssh_keysendpoint. - status String
- Bare metal server status Available values: "ACTIVE", "BUILD", "DELETED", "ERROR", "HARD_REBOOT", "MIGRATING", "PASSWORD", "PAUSED", "REBOOT", "REBUILD", "RESCUE", "RESIZE", "REVERT_RESIZE", "SHELVED", "SHELVED_OFFLOADED", "SHUTOFF", "SOFT_DELETED", "SUSPENDED", "UNKNOWN", "VERIFY_RESIZE".
- Map<String>
- Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
- user
Data String - String in base64 format. For Linux instances, 'user_data' is ignored when 'password' field is provided. For Windows instances, Admin user password is set by 'password' field and cannot be updated via 'user_data'. Examples of the
user_data: https://cloudinit.readthedocs.io/en/latest/topics/examples.html - username String
- For Linux instances, 'username' and 'password' are used to create a new user. For Windows instances, 'username' cannot be specified. Use 'password' field to set the password for the 'Admin' user on Windows.
- vm
State String - Bare metal server state Available values: "active", "building", "deleted", "error", "paused", "rescued", "resized", "shelved", "shelved_offloaded", "soft-deleted", "stopped", "suspended".
Supporting Types
CloudBaremetalServerAddresses, CloudBaremetalServerAddressesArgs
- Addr string
- Interface
Name string - Interface name. Defaults to
nulland is returned asnullin the API response if not set. - Subnet
Id string - Subnet
Name string - Type string
- A public IP address will be assigned to the instance. Available values: "external", "subnet", "anysubnet", "reservedfixed_ip".
- Addr string
- Interface
Name string - Interface name. Defaults to
nulland is returned asnullin the API response if not set. - Subnet
Id string - Subnet
Name string - Type string
- A public IP address will be assigned to the instance. Available values: "external", "subnet", "anysubnet", "reservedfixed_ip".
- addr String
- interface
Name String - Interface name. Defaults to
nulland is returned asnullin the API response if not set. - subnet
Id String - subnet
Name String - type String
- A public IP address will be assigned to the instance. Available values: "external", "subnet", "anysubnet", "reservedfixed_ip".
- addr string
- interface
Name string - Interface name. Defaults to
nulland is returned asnullin the API response if not set. - subnet
Id string - subnet
Name string - type string
- A public IP address will be assigned to the instance. Available values: "external", "subnet", "anysubnet", "reservedfixed_ip".
- addr str
- interface_
name str - Interface name. Defaults to
nulland is returned asnullin the API response if not set. - subnet_
id str - subnet_
name str - type str
- A public IP address will be assigned to the instance. Available values: "external", "subnet", "anysubnet", "reservedfixed_ip".
- addr String
- interface
Name String - Interface name. Defaults to
nulland is returned asnullin the API response if not set. - subnet
Id String - subnet
Name String - type String
- A public IP address will be assigned to the instance. Available values: "external", "subnet", "anysubnet", "reservedfixed_ip".
CloudBaremetalServerBlackholePort, CloudBaremetalServerBlackholePortArgs
- Alarm
End string - A date-time string giving the time that the alarm ended. If not yet ended, time will be given as 0001-01-01T00:00:00Z
- Alarm
Start string - A date-time string giving the time that the alarm started
- Alarm
State string - Current state of alarm Available values: "ACKREQ", "ALARM", "ARCHIVED", "CLEAR", "CLEARING", "CLEARINGFAIL", "ENDGRACE", "ENDWAIT", "MANUALCLEAR", "MANUALCLEARING", "MANUALCLEARINGFAIL", "MANUALMITIGATING", "MANUALSTARTING", "MANUALSTARTINGFAIL", "MITIGATING", "STARTING", "STARTINGFAIL", "STARTWAIT", "ackreq", "alarm", "archived", "clear", "clearing", "clearingfail", "endgrace", "endwait", "manualclear", "manualclearing", "manualclearingfail", "manualmitigating", "manualstarting", "manualstartingfail", "mitigating", "startwait", "starting", "startingfail".
- Alert
Duration string - Total alert duration
- Destination
Ip string - Notification destination IP address
- Id double
- Alarm
End string - A date-time string giving the time that the alarm ended. If not yet ended, time will be given as 0001-01-01T00:00:00Z
- Alarm
Start string - A date-time string giving the time that the alarm started
- Alarm
State string - Current state of alarm Available values: "ACKREQ", "ALARM", "ARCHIVED", "CLEAR", "CLEARING", "CLEARINGFAIL", "ENDGRACE", "ENDWAIT", "MANUALCLEAR", "MANUALCLEARING", "MANUALCLEARINGFAIL", "MANUALMITIGATING", "MANUALSTARTING", "MANUALSTARTINGFAIL", "MITIGATING", "STARTING", "STARTINGFAIL", "STARTWAIT", "ackreq", "alarm", "archived", "clear", "clearing", "clearingfail", "endgrace", "endwait", "manualclear", "manualclearing", "manualclearingfail", "manualmitigating", "manualstarting", "manualstartingfail", "mitigating", "startwait", "starting", "startingfail".
- Alert
Duration string - Total alert duration
- Destination
Ip string - Notification destination IP address
- Id float64
- alarm
End String - A date-time string giving the time that the alarm ended. If not yet ended, time will be given as 0001-01-01T00:00:00Z
- alarm
Start String - A date-time string giving the time that the alarm started
- alarm
State String - Current state of alarm Available values: "ACKREQ", "ALARM", "ARCHIVED", "CLEAR", "CLEARING", "CLEARINGFAIL", "ENDGRACE", "ENDWAIT", "MANUALCLEAR", "MANUALCLEARING", "MANUALCLEARINGFAIL", "MANUALMITIGATING", "MANUALSTARTING", "MANUALSTARTINGFAIL", "MITIGATING", "STARTING", "STARTINGFAIL", "STARTWAIT", "ackreq", "alarm", "archived", "clear", "clearing", "clearingfail", "endgrace", "endwait", "manualclear", "manualclearing", "manualclearingfail", "manualmitigating", "manualstarting", "manualstartingfail", "mitigating", "startwait", "starting", "startingfail".
- alert
Duration String - Total alert duration
- destination
Ip String - Notification destination IP address
- id Double
- alarm
End string - A date-time string giving the time that the alarm ended. If not yet ended, time will be given as 0001-01-01T00:00:00Z
- alarm
Start string - A date-time string giving the time that the alarm started
- alarm
State string - Current state of alarm Available values: "ACKREQ", "ALARM", "ARCHIVED", "CLEAR", "CLEARING", "CLEARINGFAIL", "ENDGRACE", "ENDWAIT", "MANUALCLEAR", "MANUALCLEARING", "MANUALCLEARINGFAIL", "MANUALMITIGATING", "MANUALSTARTING", "MANUALSTARTINGFAIL", "MITIGATING", "STARTING", "STARTINGFAIL", "STARTWAIT", "ackreq", "alarm", "archived", "clear", "clearing", "clearingfail", "endgrace", "endwait", "manualclear", "manualclearing", "manualclearingfail", "manualmitigating", "manualstarting", "manualstartingfail", "mitigating", "startwait", "starting", "startingfail".
- alert
Duration string - Total alert duration
- destination
Ip string - Notification destination IP address
- id number
- alarm_
end str - A date-time string giving the time that the alarm ended. If not yet ended, time will be given as 0001-01-01T00:00:00Z
- alarm_
start str - A date-time string giving the time that the alarm started
- alarm_
state str - Current state of alarm Available values: "ACKREQ", "ALARM", "ARCHIVED", "CLEAR", "CLEARING", "CLEARINGFAIL", "ENDGRACE", "ENDWAIT", "MANUALCLEAR", "MANUALCLEARING", "MANUALCLEARINGFAIL", "MANUALMITIGATING", "MANUALSTARTING", "MANUALSTARTINGFAIL", "MITIGATING", "STARTING", "STARTINGFAIL", "STARTWAIT", "ackreq", "alarm", "archived", "clear", "clearing", "clearingfail", "endgrace", "endwait", "manualclear", "manualclearing", "manualclearingfail", "manualmitigating", "manualstarting", "manualstartingfail", "mitigating", "startwait", "starting", "startingfail".
- alert_
duration str - Total alert duration
- destination_
ip str - Notification destination IP address
- id float
- alarm
End String - A date-time string giving the time that the alarm ended. If not yet ended, time will be given as 0001-01-01T00:00:00Z
- alarm
Start String - A date-time string giving the time that the alarm started
- alarm
State String - Current state of alarm Available values: "ACKREQ", "ALARM", "ARCHIVED", "CLEAR", "CLEARING", "CLEARINGFAIL", "ENDGRACE", "ENDWAIT", "MANUALCLEAR", "MANUALCLEARING", "MANUALCLEARINGFAIL", "MANUALMITIGATING", "MANUALSTARTING", "MANUALSTARTINGFAIL", "MITIGATING", "STARTING", "STARTINGFAIL", "STARTWAIT", "ackreq", "alarm", "archived", "clear", "clearing", "clearingfail", "endgrace", "endwait", "manualclear", "manualclearing", "manualclearingfail", "manualmitigating", "manualstarting", "manualstartingfail", "mitigating", "startwait", "starting", "startingfail".
- alert
Duration String - Total alert duration
- destination
Ip String - Notification destination IP address
- id Number
CloudBaremetalServerFixedIpAssignment, CloudBaremetalServerFixedIpAssignmentArgs
- external bool
- Is network external
- ip_
address str - Ip address
- subnet_
id str - Interface subnet id
CloudBaremetalServerInstanceIsolation, CloudBaremetalServerInstanceIsolationArgs
- Reason string
- The reason of instance isolation if it is isolated from external internet.
- Reason string
- The reason of instance isolation if it is isolated from external internet.
- reason String
- The reason of instance isolation if it is isolated from external internet.
- reason string
- The reason of instance isolation if it is isolated from external internet.
- reason str
- The reason of instance isolation if it is isolated from external internet.
- reason String
- The reason of instance isolation if it is isolated from external internet.
CloudBaremetalServerInterface, CloudBaremetalServerInterfaceArgs
- Type string
- A public IP address will be assigned to the instance. Available values: "external", "subnet", "anysubnet", "reservedfixed_ip".
- Floating
Ip CloudBaremetal Server Interface Floating Ip - Allows the instance to have a public IP that can be reached from the internet.
- Interface
Name string - Interface name. Defaults to
nulland is returned asnullin the API response if not set. - Ip
Address string - You can specify a specific IP address from your subnet.
- Ip
Family string - Specify
ipv4,ipv6, ordualto enable both. Available values: "dual", "ipv4", "ipv6". - Network
Id string - The network where the instance will be connected.
- Port
Group double - Specifies the trunk group to which this interface belongs. Applicable only for bare metal servers. Each unique port group is mapped to a separate trunk port. Use this to control how interfaces are grouped across trunks.
- Port
Id string - Network ID the subnet belongs to. Port will be plugged in this network.
- Subnet
Id string - The instance will get an IP address from this subnet.
- Type string
- A public IP address will be assigned to the instance. Available values: "external", "subnet", "anysubnet", "reservedfixed_ip".
- Floating
Ip CloudBaremetal Server Interface Floating Ip - Allows the instance to have a public IP that can be reached from the internet.
- Interface
Name string - Interface name. Defaults to
nulland is returned asnullin the API response if not set. - Ip
Address string - You can specify a specific IP address from your subnet.
- Ip
Family string - Specify
ipv4,ipv6, ordualto enable both. Available values: "dual", "ipv4", "ipv6". - Network
Id string - The network where the instance will be connected.
- Port
Group float64 - Specifies the trunk group to which this interface belongs. Applicable only for bare metal servers. Each unique port group is mapped to a separate trunk port. Use this to control how interfaces are grouped across trunks.
- Port
Id string - Network ID the subnet belongs to. Port will be plugged in this network.
- Subnet
Id string - The instance will get an IP address from this subnet.
- type String
- A public IP address will be assigned to the instance. Available values: "external", "subnet", "anysubnet", "reservedfixed_ip".
- floating
Ip CloudBaremetal Server Interface Floating Ip - Allows the instance to have a public IP that can be reached from the internet.
- interface
Name String - Interface name. Defaults to
nulland is returned asnullin the API response if not set. - ip
Address String - You can specify a specific IP address from your subnet.
- ip
Family String - Specify
ipv4,ipv6, ordualto enable both. Available values: "dual", "ipv4", "ipv6". - network
Id String - The network where the instance will be connected.
- port
Group Double - Specifies the trunk group to which this interface belongs. Applicable only for bare metal servers. Each unique port group is mapped to a separate trunk port. Use this to control how interfaces are grouped across trunks.
- port
Id String - Network ID the subnet belongs to. Port will be plugged in this network.
- subnet
Id String - The instance will get an IP address from this subnet.
- type string
- A public IP address will be assigned to the instance. Available values: "external", "subnet", "anysubnet", "reservedfixed_ip".
- floating
Ip CloudBaremetal Server Interface Floating Ip - Allows the instance to have a public IP that can be reached from the internet.
- interface
Name string - Interface name. Defaults to
nulland is returned asnullin the API response if not set. - ip
Address string - You can specify a specific IP address from your subnet.
- ip
Family string - Specify
ipv4,ipv6, ordualto enable both. Available values: "dual", "ipv4", "ipv6". - network
Id string - The network where the instance will be connected.
- port
Group number - Specifies the trunk group to which this interface belongs. Applicable only for bare metal servers. Each unique port group is mapped to a separate trunk port. Use this to control how interfaces are grouped across trunks.
- port
Id string - Network ID the subnet belongs to. Port will be plugged in this network.
- subnet
Id string - The instance will get an IP address from this subnet.
- type str
- A public IP address will be assigned to the instance. Available values: "external", "subnet", "anysubnet", "reservedfixed_ip".
- floating_
ip CloudBaremetal Server Interface Floating Ip - Allows the instance to have a public IP that can be reached from the internet.
- interface_
name str - Interface name. Defaults to
nulland is returned asnullin the API response if not set. - ip_
address str - You can specify a specific IP address from your subnet.
- ip_
family str - Specify
ipv4,ipv6, ordualto enable both. Available values: "dual", "ipv4", "ipv6". - network_
id str - The network where the instance will be connected.
- port_
group float - Specifies the trunk group to which this interface belongs. Applicable only for bare metal servers. Each unique port group is mapped to a separate trunk port. Use this to control how interfaces are grouped across trunks.
- port_
id str - Network ID the subnet belongs to. Port will be plugged in this network.
- subnet_
id str - The instance will get an IP address from this subnet.
- type String
- A public IP address will be assigned to the instance. Available values: "external", "subnet", "anysubnet", "reservedfixed_ip".
- floating
Ip Property Map - Allows the instance to have a public IP that can be reached from the internet.
- interface
Name String - Interface name. Defaults to
nulland is returned asnullin the API response if not set. - ip
Address String - You can specify a specific IP address from your subnet.
- ip
Family String - Specify
ipv4,ipv6, ordualto enable both. Available values: "dual", "ipv4", "ipv6". - network
Id String - The network where the instance will be connected.
- port
Group Number - Specifies the trunk group to which this interface belongs. Applicable only for bare metal servers. Each unique port group is mapped to a separate trunk port. Use this to control how interfaces are grouped across trunks.
- port
Id String - Network ID the subnet belongs to. Port will be plugged in this network.
- subnet
Id String - The instance will get an IP address from this subnet.
CloudBaremetalServerInterfaceFloatingIp, CloudBaremetalServerInterfaceFloatingIpArgs
- Source string
- A new floating IP will be created and attached to the instance. A floating IP is a public IP that makes the instance accessible from the internet, even if it only has a private IP. It works like SNAT, allowing outgoing and incoming traffic. Available values: "new", "existing".
- Existing
Floating stringId - An existing available floating IP id must be specified if the source is set to
existing
- Source string
- A new floating IP will be created and attached to the instance. A floating IP is a public IP that makes the instance accessible from the internet, even if it only has a private IP. It works like SNAT, allowing outgoing and incoming traffic. Available values: "new", "existing".
- Existing
Floating stringId - An existing available floating IP id must be specified if the source is set to
existing
- source String
- A new floating IP will be created and attached to the instance. A floating IP is a public IP that makes the instance accessible from the internet, even if it only has a private IP. It works like SNAT, allowing outgoing and incoming traffic. Available values: "new", "existing".
- existing
Floating StringId - An existing available floating IP id must be specified if the source is set to
existing
- source string
- A new floating IP will be created and attached to the instance. A floating IP is a public IP that makes the instance accessible from the internet, even if it only has a private IP. It works like SNAT, allowing outgoing and incoming traffic. Available values: "new", "existing".
- existing
Floating stringId - An existing available floating IP id must be specified if the source is set to
existing
- source str
- A new floating IP will be created and attached to the instance. A floating IP is a public IP that makes the instance accessible from the internet, even if it only has a private IP. It works like SNAT, allowing outgoing and incoming traffic. Available values: "new", "existing".
- existing_
floating_ strid - An existing available floating IP id must be specified if the source is set to
existing
- source String
- A new floating IP will be created and attached to the instance. A floating IP is a public IP that makes the instance accessible from the internet, even if it only has a private IP. It works like SNAT, allowing outgoing and incoming traffic. Available values: "new", "existing".
- existing
Floating StringId - An existing available floating IP id must be specified if the source is set to
existing
Import
$ pulumi import gcore:index/cloudBaremetalServer:CloudBaremetalServer example '<project_id>/<region_id>/<server_id>'
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- gcore g-core/terraform-provider-gcore
- License
- Notes
- This Pulumi package is based on the
gcoreTerraform Provider.
published on Monday, Mar 30, 2026 by g-core
