ionoscloud.CubeServer
Explore with Pulumi AI
A Cube is a Virtual Machine (VM) with an attached NVMe Volume. You can use each newly created Cube as a new VM, either standalone or in combination with other IONOS Cloud products.
Check out Configuration templates
Example Usage
This resource will create an operational server. After this section completes, the provisioner can be called.
CUBE Server
import * as pulumi from "@pulumi/pulumi";
import * as ionoscloud from "@pulumi/ionoscloud";
import * as random from "@pulumi/random";
const exampleTemplate = ionoscloud.getTemplate({
name: "Basic Cube XS",
});
const exampleDatacenter = new ionoscloud.Datacenter("exampleDatacenter", {location: "de/txl"});
const exampleLan = new ionoscloud.Lan("exampleLan", {
datacenterId: exampleDatacenter.datacenterId,
"public": true,
});
const serverImagePassword = new random.index.Random_password("serverImagePassword", {
length: 16,
special: false,
});
const exampleCubeServer = new ionoscloud.CubeServer("exampleCubeServer", {
availabilityZone: "ZONE_2",
imageName: "ubuntu:latest",
templateUuid: exampleTemplate.then(exampleTemplate => exampleTemplate.id),
imagePassword: serverImagePassword.result,
datacenterId: exampleDatacenter.datacenterId,
volume: {
name: "Volume Example",
licenceType: "LINUX",
diskType: "DAS",
},
nic: {
lan: exampleLan.lanId,
name: "Nic Example",
dhcp: true,
firewallActive: true,
},
});
import pulumi
import pulumi_ionoscloud as ionoscloud
import pulumi_random as random
example_template = ionoscloud.get_template(name="Basic Cube XS")
example_datacenter = ionoscloud.Datacenter("exampleDatacenter", location="de/txl")
example_lan = ionoscloud.Lan("exampleLan",
datacenter_id=example_datacenter.datacenter_id,
public=True)
server_image_password = random.index.Random_password("serverImagePassword",
length=16,
special=False)
example_cube_server = ionoscloud.CubeServer("exampleCubeServer",
availability_zone="ZONE_2",
image_name="ubuntu:latest",
template_uuid=example_template.id,
image_password=server_image_password["result"],
datacenter_id=example_datacenter.datacenter_id,
volume={
"name": "Volume Example",
"licence_type": "LINUX",
"disk_type": "DAS",
},
nic={
"lan": example_lan.lan_id,
"name": "Nic Example",
"dhcp": True,
"firewall_active": True,
})
package main
import (
"github.com/pulumi/pulumi-random/sdk/go/random"
"github.com/pulumi/pulumi-terraform-provider/sdks/go/ionoscloud/v6/ionoscloud"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
exampleTemplate, err := ionoscloud.GetTemplate(ctx, &ionoscloud.GetTemplateArgs{
Name: pulumi.StringRef("Basic Cube XS"),
}, nil)
if err != nil {
return err
}
exampleDatacenter, err := ionoscloud.NewDatacenter(ctx, "exampleDatacenter", &ionoscloud.DatacenterArgs{
Location: pulumi.String("de/txl"),
})
if err != nil {
return err
}
exampleLan, err := ionoscloud.NewLan(ctx, "exampleLan", &ionoscloud.LanArgs{
DatacenterId: exampleDatacenter.DatacenterId,
Public: pulumi.Bool(true),
})
if err != nil {
return err
}
serverImagePassword, err := random.NewRandom_password(ctx, "serverImagePassword", &random.Random_passwordArgs{
Length: 16,
Special: false,
})
if err != nil {
return err
}
_, err = ionoscloud.NewCubeServer(ctx, "exampleCubeServer", &ionoscloud.CubeServerArgs{
AvailabilityZone: pulumi.String("ZONE_2"),
ImageName: pulumi.String("ubuntu:latest"),
TemplateUuid: pulumi.String(exampleTemplate.Id),
ImagePassword: serverImagePassword.Result,
DatacenterId: exampleDatacenter.DatacenterId,
Volume: &ionoscloud.CubeServerVolumeArgs{
Name: pulumi.String("Volume Example"),
LicenceType: pulumi.String("LINUX"),
DiskType: pulumi.String("DAS"),
},
Nic: &ionoscloud.CubeServerNicArgs{
Lan: exampleLan.LanId,
Name: pulumi.String("Nic Example"),
Dhcp: pulumi.Bool(true),
FirewallActive: pulumi.Bool(true),
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Ionoscloud = Pulumi.Ionoscloud;
using Random = Pulumi.Random;
return await Deployment.RunAsync(() =>
{
var exampleTemplate = Ionoscloud.GetTemplate.Invoke(new()
{
Name = "Basic Cube XS",
});
var exampleDatacenter = new Ionoscloud.Datacenter("exampleDatacenter", new()
{
Location = "de/txl",
});
var exampleLan = new Ionoscloud.Lan("exampleLan", new()
{
DatacenterId = exampleDatacenter.DatacenterId,
Public = true,
});
var serverImagePassword = new Random.Index.Random_password("serverImagePassword", new()
{
Length = 16,
Special = false,
});
var exampleCubeServer = new Ionoscloud.CubeServer("exampleCubeServer", new()
{
AvailabilityZone = "ZONE_2",
ImageName = "ubuntu:latest",
TemplateUuid = exampleTemplate.Apply(getTemplateResult => getTemplateResult.Id),
ImagePassword = serverImagePassword.Result,
DatacenterId = exampleDatacenter.DatacenterId,
Volume = new Ionoscloud.Inputs.CubeServerVolumeArgs
{
Name = "Volume Example",
LicenceType = "LINUX",
DiskType = "DAS",
},
Nic = new Ionoscloud.Inputs.CubeServerNicArgs
{
Lan = exampleLan.LanId,
Name = "Nic Example",
Dhcp = true,
FirewallActive = true,
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.ionoscloud.IonoscloudFunctions;
import com.pulumi.ionoscloud.inputs.GetTemplateArgs;
import com.pulumi.ionoscloud.Datacenter;
import com.pulumi.ionoscloud.DatacenterArgs;
import com.pulumi.ionoscloud.Lan;
import com.pulumi.ionoscloud.LanArgs;
import com.pulumi.random.random_password;
import com.pulumi.random.Random_passwordArgs;
import com.pulumi.ionoscloud.CubeServer;
import com.pulumi.ionoscloud.CubeServerArgs;
import com.pulumi.ionoscloud.inputs.CubeServerVolumeArgs;
import com.pulumi.ionoscloud.inputs.CubeServerNicArgs;
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) {
final var exampleTemplate = IonoscloudFunctions.getTemplate(GetTemplateArgs.builder()
.name("Basic Cube XS")
.build());
var exampleDatacenter = new Datacenter("exampleDatacenter", DatacenterArgs.builder()
.location("de/txl")
.build());
var exampleLan = new Lan("exampleLan", LanArgs.builder()
.datacenterId(exampleDatacenter.datacenterId())
.public_(true)
.build());
var serverImagePassword = new Random_password("serverImagePassword", Random_passwordArgs.builder()
.length(16)
.special(false)
.build());
var exampleCubeServer = new CubeServer("exampleCubeServer", CubeServerArgs.builder()
.availabilityZone("ZONE_2")
.imageName("ubuntu:latest")
.templateUuid(exampleTemplate.applyValue(getTemplateResult -> getTemplateResult.id()))
.imagePassword(serverImagePassword.result())
.datacenterId(exampleDatacenter.datacenterId())
.volume(CubeServerVolumeArgs.builder()
.name("Volume Example")
.licenceType("LINUX")
.diskType("DAS")
.build())
.nic(CubeServerNicArgs.builder()
.lan(exampleLan.lanId())
.name("Nic Example")
.dhcp(true)
.firewallActive(true)
.build())
.build());
}
}
resources:
exampleDatacenter:
type: ionoscloud:Datacenter
properties:
location: de/txl
exampleLan:
type: ionoscloud:Lan
properties:
datacenterId: ${exampleDatacenter.datacenterId}
public: true
exampleCubeServer:
type: ionoscloud:CubeServer
properties:
availabilityZone: ZONE_2
imageName: ubuntu:latest
templateUuid: ${exampleTemplate.id}
imagePassword: ${serverImagePassword.result}
datacenterId: ${exampleDatacenter.datacenterId}
volume:
name: Volume Example
licenceType: LINUX
diskType: DAS
nic:
lan: ${exampleLan.lanId}
name: Nic Example
dhcp: true
firewallActive: true
serverImagePassword:
type: random:random_password
properties:
length: 16
special: false
variables:
exampleTemplate:
fn::invoke:
function: ionoscloud:getTemplate
arguments:
name: Basic Cube XS
Create CubeServer Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new CubeServer(name: string, args: CubeServerArgs, opts?: CustomResourceOptions);
@overload
def CubeServer(resource_name: str,
args: CubeServerArgs,
opts: Optional[ResourceOptions] = None)
@overload
def CubeServer(resource_name: str,
opts: Optional[ResourceOptions] = None,
datacenter_id: Optional[str] = None,
volume: Optional[CubeServerVolumeArgs] = None,
template_uuid: Optional[str] = None,
nic: Optional[CubeServerNicArgs] = None,
image_password: Optional[str] = None,
cube_server_id: Optional[str] = None,
hostname: Optional[str] = None,
image_name: Optional[str] = None,
allow_replace: Optional[bool] = None,
name: Optional[str] = None,
boot_image: Optional[str] = None,
security_groups_ids: Optional[Sequence[str]] = None,
ssh_key_paths: Optional[Sequence[str]] = None,
boot_cdrom: Optional[str] = None,
timeouts: Optional[CubeServerTimeoutsArgs] = None,
vm_state: Optional[str] = None,
availability_zone: Optional[str] = None)
func NewCubeServer(ctx *Context, name string, args CubeServerArgs, opts ...ResourceOption) (*CubeServer, error)
public CubeServer(string name, CubeServerArgs args, CustomResourceOptions? opts = null)
public CubeServer(String name, CubeServerArgs args)
public CubeServer(String name, CubeServerArgs args, CustomResourceOptions options)
type: ionoscloud:CubeServer
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 CubeServerArgs
- 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 CubeServerArgs
- 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 CubeServerArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args CubeServerArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args CubeServerArgs
- 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 cubeServerResource = new Ionoscloud.CubeServer("cubeServerResource", new()
{
DatacenterId = "string",
Volume = new Ionoscloud.Inputs.CubeServerVolumeArgs
{
DiskType = "string",
CpuHotPlug = false,
LicenceType = "string",
Bus = "string",
AvailabilityZone = "string",
DeviceNumber = 0,
DiscVirtioHotPlug = false,
DiscVirtioHotUnplug = false,
BackupUnitId = "string",
BootServer = "string",
Name = "string",
NicHotPlug = false,
NicHotUnplug = false,
PciSlot = 0,
RamHotPlug = false,
UserData = "string",
},
TemplateUuid = "string",
Nic = new Ionoscloud.Inputs.CubeServerNicArgs
{
Lan = 0,
Firewall = new Ionoscloud.Inputs.CubeServerNicFirewallArgs
{
Protocol = "string",
IcmpCode = "string",
IcmpType = "string",
Name = "string",
PortRangeEnd = 0,
PortRangeStart = 0,
SourceIp = "string",
SourceMac = "string",
TargetIp = "string",
Type = "string",
},
Dhcpv6 = false,
DeviceNumber = 0,
FirewallActive = false,
FirewallType = "string",
Ips = new[]
{
"string",
},
Ipv6CidrBlock = "string",
Ipv6Ips = new[]
{
"string",
},
Dhcp = false,
Mac = "string",
Name = "string",
PciSlot = 0,
SecurityGroupsIds = new[]
{
"string",
},
},
ImagePassword = "string",
CubeServerId = "string",
Hostname = "string",
ImageName = "string",
AllowReplace = false,
Name = "string",
BootImage = "string",
SecurityGroupsIds = new[]
{
"string",
},
SshKeyPaths = new[]
{
"string",
},
Timeouts = new Ionoscloud.Inputs.CubeServerTimeoutsArgs
{
Create = "string",
Default = "string",
Delete = "string",
Update = "string",
},
VmState = "string",
AvailabilityZone = "string",
});
example, err := ionoscloud.NewCubeServer(ctx, "cubeServerResource", &ionoscloud.CubeServerArgs{
DatacenterId: pulumi.String("string"),
Volume: &ionoscloud.CubeServerVolumeArgs{
DiskType: pulumi.String("string"),
CpuHotPlug: pulumi.Bool(false),
LicenceType: pulumi.String("string"),
Bus: pulumi.String("string"),
AvailabilityZone: pulumi.String("string"),
DeviceNumber: pulumi.Float64(0),
DiscVirtioHotPlug: pulumi.Bool(false),
DiscVirtioHotUnplug: pulumi.Bool(false),
BackupUnitId: pulumi.String("string"),
BootServer: pulumi.String("string"),
Name: pulumi.String("string"),
NicHotPlug: pulumi.Bool(false),
NicHotUnplug: pulumi.Bool(false),
PciSlot: pulumi.Float64(0),
RamHotPlug: pulumi.Bool(false),
UserData: pulumi.String("string"),
},
TemplateUuid: pulumi.String("string"),
Nic: &ionoscloud.CubeServerNicArgs{
Lan: pulumi.Float64(0),
Firewall: &ionoscloud.CubeServerNicFirewallArgs{
Protocol: pulumi.String("string"),
IcmpCode: pulumi.String("string"),
IcmpType: pulumi.String("string"),
Name: pulumi.String("string"),
PortRangeEnd: pulumi.Float64(0),
PortRangeStart: pulumi.Float64(0),
SourceIp: pulumi.String("string"),
SourceMac: pulumi.String("string"),
TargetIp: pulumi.String("string"),
Type: pulumi.String("string"),
},
Dhcpv6: pulumi.Bool(false),
DeviceNumber: pulumi.Float64(0),
FirewallActive: pulumi.Bool(false),
FirewallType: pulumi.String("string"),
Ips: pulumi.StringArray{
pulumi.String("string"),
},
Ipv6CidrBlock: pulumi.String("string"),
Ipv6Ips: pulumi.StringArray{
pulumi.String("string"),
},
Dhcp: pulumi.Bool(false),
Mac: pulumi.String("string"),
Name: pulumi.String("string"),
PciSlot: pulumi.Float64(0),
SecurityGroupsIds: pulumi.StringArray{
pulumi.String("string"),
},
},
ImagePassword: pulumi.String("string"),
CubeServerId: pulumi.String("string"),
Hostname: pulumi.String("string"),
ImageName: pulumi.String("string"),
AllowReplace: pulumi.Bool(false),
Name: pulumi.String("string"),
BootImage: pulumi.String("string"),
SecurityGroupsIds: pulumi.StringArray{
pulumi.String("string"),
},
SshKeyPaths: pulumi.StringArray{
pulumi.String("string"),
},
Timeouts: &ionoscloud.CubeServerTimeoutsArgs{
Create: pulumi.String("string"),
Default: pulumi.String("string"),
Delete: pulumi.String("string"),
Update: pulumi.String("string"),
},
VmState: pulumi.String("string"),
AvailabilityZone: pulumi.String("string"),
})
var cubeServerResource = new CubeServer("cubeServerResource", CubeServerArgs.builder()
.datacenterId("string")
.volume(CubeServerVolumeArgs.builder()
.diskType("string")
.cpuHotPlug(false)
.licenceType("string")
.bus("string")
.availabilityZone("string")
.deviceNumber(0)
.discVirtioHotPlug(false)
.discVirtioHotUnplug(false)
.backupUnitId("string")
.bootServer("string")
.name("string")
.nicHotPlug(false)
.nicHotUnplug(false)
.pciSlot(0)
.ramHotPlug(false)
.userData("string")
.build())
.templateUuid("string")
.nic(CubeServerNicArgs.builder()
.lan(0)
.firewall(CubeServerNicFirewallArgs.builder()
.protocol("string")
.icmpCode("string")
.icmpType("string")
.name("string")
.portRangeEnd(0)
.portRangeStart(0)
.sourceIp("string")
.sourceMac("string")
.targetIp("string")
.type("string")
.build())
.dhcpv6(false)
.deviceNumber(0)
.firewallActive(false)
.firewallType("string")
.ips("string")
.ipv6CidrBlock("string")
.ipv6Ips("string")
.dhcp(false)
.mac("string")
.name("string")
.pciSlot(0)
.securityGroupsIds("string")
.build())
.imagePassword("string")
.cubeServerId("string")
.hostname("string")
.imageName("string")
.allowReplace(false)
.name("string")
.bootImage("string")
.securityGroupsIds("string")
.sshKeyPaths("string")
.timeouts(CubeServerTimeoutsArgs.builder()
.create("string")
.default_("string")
.delete("string")
.update("string")
.build())
.vmState("string")
.availabilityZone("string")
.build());
cube_server_resource = ionoscloud.CubeServer("cubeServerResource",
datacenter_id="string",
volume={
"disk_type": "string",
"cpu_hot_plug": False,
"licence_type": "string",
"bus": "string",
"availability_zone": "string",
"device_number": 0,
"disc_virtio_hot_plug": False,
"disc_virtio_hot_unplug": False,
"backup_unit_id": "string",
"boot_server": "string",
"name": "string",
"nic_hot_plug": False,
"nic_hot_unplug": False,
"pci_slot": 0,
"ram_hot_plug": False,
"user_data": "string",
},
template_uuid="string",
nic={
"lan": 0,
"firewall": {
"protocol": "string",
"icmp_code": "string",
"icmp_type": "string",
"name": "string",
"port_range_end": 0,
"port_range_start": 0,
"source_ip": "string",
"source_mac": "string",
"target_ip": "string",
"type": "string",
},
"dhcpv6": False,
"device_number": 0,
"firewall_active": False,
"firewall_type": "string",
"ips": ["string"],
"ipv6_cidr_block": "string",
"ipv6_ips": ["string"],
"dhcp": False,
"mac": "string",
"name": "string",
"pci_slot": 0,
"security_groups_ids": ["string"],
},
image_password="string",
cube_server_id="string",
hostname="string",
image_name="string",
allow_replace=False,
name="string",
boot_image="string",
security_groups_ids=["string"],
ssh_key_paths=["string"],
timeouts={
"create": "string",
"default": "string",
"delete": "string",
"update": "string",
},
vm_state="string",
availability_zone="string")
const cubeServerResource = new ionoscloud.CubeServer("cubeServerResource", {
datacenterId: "string",
volume: {
diskType: "string",
cpuHotPlug: false,
licenceType: "string",
bus: "string",
availabilityZone: "string",
deviceNumber: 0,
discVirtioHotPlug: false,
discVirtioHotUnplug: false,
backupUnitId: "string",
bootServer: "string",
name: "string",
nicHotPlug: false,
nicHotUnplug: false,
pciSlot: 0,
ramHotPlug: false,
userData: "string",
},
templateUuid: "string",
nic: {
lan: 0,
firewall: {
protocol: "string",
icmpCode: "string",
icmpType: "string",
name: "string",
portRangeEnd: 0,
portRangeStart: 0,
sourceIp: "string",
sourceMac: "string",
targetIp: "string",
type: "string",
},
dhcpv6: false,
deviceNumber: 0,
firewallActive: false,
firewallType: "string",
ips: ["string"],
ipv6CidrBlock: "string",
ipv6Ips: ["string"],
dhcp: false,
mac: "string",
name: "string",
pciSlot: 0,
securityGroupsIds: ["string"],
},
imagePassword: "string",
cubeServerId: "string",
hostname: "string",
imageName: "string",
allowReplace: false,
name: "string",
bootImage: "string",
securityGroupsIds: ["string"],
sshKeyPaths: ["string"],
timeouts: {
create: "string",
"default": "string",
"delete": "string",
update: "string",
},
vmState: "string",
availabilityZone: "string",
});
type: ionoscloud:CubeServer
properties:
allowReplace: false
availabilityZone: string
bootImage: string
cubeServerId: string
datacenterId: string
hostname: string
imageName: string
imagePassword: string
name: string
nic:
deviceNumber: 0
dhcp: false
dhcpv6: false
firewall:
icmpCode: string
icmpType: string
name: string
portRangeEnd: 0
portRangeStart: 0
protocol: string
sourceIp: string
sourceMac: string
targetIp: string
type: string
firewallActive: false
firewallType: string
ips:
- string
ipv6CidrBlock: string
ipv6Ips:
- string
lan: 0
mac: string
name: string
pciSlot: 0
securityGroupsIds:
- string
securityGroupsIds:
- string
sshKeyPaths:
- string
templateUuid: string
timeouts:
create: string
default: string
delete: string
update: string
vmState: string
volume:
availabilityZone: string
backupUnitId: string
bootServer: string
bus: string
cpuHotPlug: false
deviceNumber: 0
discVirtioHotPlug: false
discVirtioHotUnplug: false
diskType: string
licenceType: string
name: string
nicHotPlug: false
nicHotUnplug: false
pciSlot: 0
ramHotPlug: false
userData: string
CubeServer 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 CubeServer resource accepts the following input properties:
- Datacenter
Id string - [string] The ID of a Virtual Data Center.
- Nic
Cube
Server Nic - See the Nic section.
- Template
Uuid string - [string] The UUID of the template for creating a CUBE server; the available templates for CUBE servers can be found on the templates resource
- Volume
Cube
Server Volume - See the Volume section.
- Allow
Replace bool [bool] When set to true, allows the update of immutable fields by first destroying and then re-creating the server.
⚠️ Warning:
allow_replace
- lets you update immutable fields, but it first destroys and then re-creates the server in order to do it. This field should be used with care, understanding the risks.⚠ WARNING
Image_name under volume level is deprecated, please use image_name under server level
⚠ WARNING
For creating a CUBE server, you can not set
volume.size
argument.- Availability
Zone string - [string] The availability zone in which the server should exist. This property is immutable.
- Boot
Cdrom string - DEPRECATED Please refer to ionoscloud.ServerBootDeviceSelection (Optional)[string] The associated boot drive, if any. Must be the UUID of a bootable CDROM image that can be retrieved using the ionoscloud.getImage data source.
- Boot
Image string - [string] The image or snapshot UUID / name. May also be an image alias. It is required if
licence_type
is not provided. - Cube
Server stringId - Hostname string
- (Computed) The hostname of the resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters. If no value provided explicitly, it will be populated with the name of the server
- Image
Name string - [string] The name, ID or alias of the image. May also be a snapshot ID. It is required if
licence_type
is not provided. Attribute is immutable. - Image
Password string - [string] Required if
ssh_key_path
is not provided. - Name string
- [string] The name of the server.
- Security
Groups List<string>Ids - The list of Security Group IDs for the resource.
- Ssh
Key List<string>Paths - [list] List of paths to files containing a public SSH key that will be injected into IonosCloud provided Linux images. Required for IonosCloud Linux images. Required if
image_password
is not provided. - Timeouts
Cube
Server Timeouts - Vm
State string - [string] Sets the power state of the cube server. E.g:
RUNNING
orSUSPENDED
.
- Datacenter
Id string - [string] The ID of a Virtual Data Center.
- Nic
Cube
Server Nic Args - See the Nic section.
- Template
Uuid string - [string] The UUID of the template for creating a CUBE server; the available templates for CUBE servers can be found on the templates resource
- Volume
Cube
Server Volume Args - See the Volume section.
- Allow
Replace bool [bool] When set to true, allows the update of immutable fields by first destroying and then re-creating the server.
⚠️ Warning:
allow_replace
- lets you update immutable fields, but it first destroys and then re-creates the server in order to do it. This field should be used with care, understanding the risks.⚠ WARNING
Image_name under volume level is deprecated, please use image_name under server level
⚠ WARNING
For creating a CUBE server, you can not set
volume.size
argument.- Availability
Zone string - [string] The availability zone in which the server should exist. This property is immutable.
- Boot
Cdrom string - DEPRECATED Please refer to ionoscloud.ServerBootDeviceSelection (Optional)[string] The associated boot drive, if any. Must be the UUID of a bootable CDROM image that can be retrieved using the ionoscloud.getImage data source.
- Boot
Image string - [string] The image or snapshot UUID / name. May also be an image alias. It is required if
licence_type
is not provided. - Cube
Server stringId - Hostname string
- (Computed) The hostname of the resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters. If no value provided explicitly, it will be populated with the name of the server
- Image
Name string - [string] The name, ID or alias of the image. May also be a snapshot ID. It is required if
licence_type
is not provided. Attribute is immutable. - Image
Password string - [string] Required if
ssh_key_path
is not provided. - Name string
- [string] The name of the server.
- Security
Groups []stringIds - The list of Security Group IDs for the resource.
- Ssh
Key []stringPaths - [list] List of paths to files containing a public SSH key that will be injected into IonosCloud provided Linux images. Required for IonosCloud Linux images. Required if
image_password
is not provided. - Timeouts
Cube
Server Timeouts Args - Vm
State string - [string] Sets the power state of the cube server. E.g:
RUNNING
orSUSPENDED
.
- datacenter
Id String - [string] The ID of a Virtual Data Center.
- nic
Cube
Server Nic - See the Nic section.
- template
Uuid String - [string] The UUID of the template for creating a CUBE server; the available templates for CUBE servers can be found on the templates resource
- volume
Cube
Server Volume - See the Volume section.
- allow
Replace Boolean [bool] When set to true, allows the update of immutable fields by first destroying and then re-creating the server.
⚠️ Warning:
allow_replace
- lets you update immutable fields, but it first destroys and then re-creates the server in order to do it. This field should be used with care, understanding the risks.⚠ WARNING
Image_name under volume level is deprecated, please use image_name under server level
⚠ WARNING
For creating a CUBE server, you can not set
volume.size
argument.- availability
Zone String - [string] The availability zone in which the server should exist. This property is immutable.
- boot
Cdrom String - DEPRECATED Please refer to ionoscloud.ServerBootDeviceSelection (Optional)[string] The associated boot drive, if any. Must be the UUID of a bootable CDROM image that can be retrieved using the ionoscloud.getImage data source.
- boot
Image String - [string] The image or snapshot UUID / name. May also be an image alias. It is required if
licence_type
is not provided. - cube
Server StringId - hostname String
- (Computed) The hostname of the resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters. If no value provided explicitly, it will be populated with the name of the server
- image
Name String - [string] The name, ID or alias of the image. May also be a snapshot ID. It is required if
licence_type
is not provided. Attribute is immutable. - image
Password String - [string] Required if
ssh_key_path
is not provided. - name String
- [string] The name of the server.
- security
Groups List<String>Ids - The list of Security Group IDs for the resource.
- ssh
Key List<String>Paths - [list] List of paths to files containing a public SSH key that will be injected into IonosCloud provided Linux images. Required for IonosCloud Linux images. Required if
image_password
is not provided. - timeouts
Cube
Server Timeouts - vm
State String - [string] Sets the power state of the cube server. E.g:
RUNNING
orSUSPENDED
.
- datacenter
Id string - [string] The ID of a Virtual Data Center.
- nic
Cube
Server Nic - See the Nic section.
- template
Uuid string - [string] The UUID of the template for creating a CUBE server; the available templates for CUBE servers can be found on the templates resource
- volume
Cube
Server Volume - See the Volume section.
- allow
Replace boolean [bool] When set to true, allows the update of immutable fields by first destroying and then re-creating the server.
⚠️ Warning:
allow_replace
- lets you update immutable fields, but it first destroys and then re-creates the server in order to do it. This field should be used with care, understanding the risks.⚠ WARNING
Image_name under volume level is deprecated, please use image_name under server level
⚠ WARNING
For creating a CUBE server, you can not set
volume.size
argument.- availability
Zone string - [string] The availability zone in which the server should exist. This property is immutable.
- boot
Cdrom string - DEPRECATED Please refer to ionoscloud.ServerBootDeviceSelection (Optional)[string] The associated boot drive, if any. Must be the UUID of a bootable CDROM image that can be retrieved using the ionoscloud.getImage data source.
- boot
Image string - [string] The image or snapshot UUID / name. May also be an image alias. It is required if
licence_type
is not provided. - cube
Server stringId - hostname string
- (Computed) The hostname of the resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters. If no value provided explicitly, it will be populated with the name of the server
- image
Name string - [string] The name, ID or alias of the image. May also be a snapshot ID. It is required if
licence_type
is not provided. Attribute is immutable. - image
Password string - [string] Required if
ssh_key_path
is not provided. - name string
- [string] The name of the server.
- security
Groups string[]Ids - The list of Security Group IDs for the resource.
- ssh
Key string[]Paths - [list] List of paths to files containing a public SSH key that will be injected into IonosCloud provided Linux images. Required for IonosCloud Linux images. Required if
image_password
is not provided. - timeouts
Cube
Server Timeouts - vm
State string - [string] Sets the power state of the cube server. E.g:
RUNNING
orSUSPENDED
.
- datacenter_
id str - [string] The ID of a Virtual Data Center.
- nic
Cube
Server Nic Args - See the Nic section.
- template_
uuid str - [string] The UUID of the template for creating a CUBE server; the available templates for CUBE servers can be found on the templates resource
- volume
Cube
Server Volume Args - See the Volume section.
- allow_
replace bool [bool] When set to true, allows the update of immutable fields by first destroying and then re-creating the server.
⚠️ Warning:
allow_replace
- lets you update immutable fields, but it first destroys and then re-creates the server in order to do it. This field should be used with care, understanding the risks.⚠ WARNING
Image_name under volume level is deprecated, please use image_name under server level
⚠ WARNING
For creating a CUBE server, you can not set
volume.size
argument.- availability_
zone str - [string] The availability zone in which the server should exist. This property is immutable.
- boot_
cdrom str - DEPRECATED Please refer to ionoscloud.ServerBootDeviceSelection (Optional)[string] The associated boot drive, if any. Must be the UUID of a bootable CDROM image that can be retrieved using the ionoscloud.getImage data source.
- boot_
image str - [string] The image or snapshot UUID / name. May also be an image alias. It is required if
licence_type
is not provided. - cube_
server_ strid - hostname str
- (Computed) The hostname of the resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters. If no value provided explicitly, it will be populated with the name of the server
- image_
name str - [string] The name, ID or alias of the image. May also be a snapshot ID. It is required if
licence_type
is not provided. Attribute is immutable. - image_
password str - [string] Required if
ssh_key_path
is not provided. - name str
- [string] The name of the server.
- security_
groups_ Sequence[str]ids - The list of Security Group IDs for the resource.
- ssh_
key_ Sequence[str]paths - [list] List of paths to files containing a public SSH key that will be injected into IonosCloud provided Linux images. Required for IonosCloud Linux images. Required if
image_password
is not provided. - timeouts
Cube
Server Timeouts Args - vm_
state str - [string] Sets the power state of the cube server. E.g:
RUNNING
orSUSPENDED
.
- datacenter
Id String - [string] The ID of a Virtual Data Center.
- nic Property Map
- See the Nic section.
- template
Uuid String - [string] The UUID of the template for creating a CUBE server; the available templates for CUBE servers can be found on the templates resource
- volume Property Map
- See the Volume section.
- allow
Replace Boolean [bool] When set to true, allows the update of immutable fields by first destroying and then re-creating the server.
⚠️ Warning:
allow_replace
- lets you update immutable fields, but it first destroys and then re-creates the server in order to do it. This field should be used with care, understanding the risks.⚠ WARNING
Image_name under volume level is deprecated, please use image_name under server level
⚠ WARNING
For creating a CUBE server, you can not set
volume.size
argument.- availability
Zone String - [string] The availability zone in which the server should exist. This property is immutable.
- boot
Cdrom String - DEPRECATED Please refer to ionoscloud.ServerBootDeviceSelection (Optional)[string] The associated boot drive, if any. Must be the UUID of a bootable CDROM image that can be retrieved using the ionoscloud.getImage data source.
- boot
Image String - [string] The image or snapshot UUID / name. May also be an image alias. It is required if
licence_type
is not provided. - cube
Server StringId - hostname String
- (Computed) The hostname of the resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters. If no value provided explicitly, it will be populated with the name of the server
- image
Name String - [string] The name, ID or alias of the image. May also be a snapshot ID. It is required if
licence_type
is not provided. Attribute is immutable. - image
Password String - [string] Required if
ssh_key_path
is not provided. - name String
- [string] The name of the server.
- security
Groups List<String>Ids - The list of Security Group IDs for the resource.
- ssh
Key List<String>Paths - [list] List of paths to files containing a public SSH key that will be injected into IonosCloud provided Linux images. Required for IonosCloud Linux images. Required if
image_password
is not provided. - timeouts Property Map
- vm
State String - [string] Sets the power state of the cube server. E.g:
RUNNING
orSUSPENDED
.
Outputs
All input properties are implicitly available as output properties. Additionally, the CubeServer resource produces the following output properties:
- Boot
Volume string - The associated boot volume.
- Firewallrule
Id string - The associated firewall rule.
- Id string
- The provider-assigned unique ID for this managed resource.
- Inline
Volume List<string>Ids - A list that contains the IDs for the volumes defined inside the cube server resource.
- Primary
Ip string - The associated IP address.
- Primary
Nic string - The associated NIC.
- Boot
Volume string - The associated boot volume.
- Firewallrule
Id string - The associated firewall rule.
- Id string
- The provider-assigned unique ID for this managed resource.
- Inline
Volume []stringIds - A list that contains the IDs for the volumes defined inside the cube server resource.
- Primary
Ip string - The associated IP address.
- Primary
Nic string - The associated NIC.
- boot
Volume String - The associated boot volume.
- firewallrule
Id String - The associated firewall rule.
- id String
- The provider-assigned unique ID for this managed resource.
- inline
Volume List<String>Ids - A list that contains the IDs for the volumes defined inside the cube server resource.
- primary
Ip String - The associated IP address.
- primary
Nic String - The associated NIC.
- boot
Volume string - The associated boot volume.
- firewallrule
Id string - The associated firewall rule.
- id string
- The provider-assigned unique ID for this managed resource.
- inline
Volume string[]Ids - A list that contains the IDs for the volumes defined inside the cube server resource.
- primary
Ip string - The associated IP address.
- primary
Nic string - The associated NIC.
- boot_
volume str - The associated boot volume.
- firewallrule_
id str - The associated firewall rule.
- id str
- The provider-assigned unique ID for this managed resource.
- inline_
volume_ Sequence[str]ids - A list that contains the IDs for the volumes defined inside the cube server resource.
- primary_
ip str - The associated IP address.
- primary_
nic str - The associated NIC.
- boot
Volume String - The associated boot volume.
- firewallrule
Id String - The associated firewall rule.
- id String
- The provider-assigned unique ID for this managed resource.
- inline
Volume List<String>Ids - A list that contains the IDs for the volumes defined inside the cube server resource.
- primary
Ip String - The associated IP address.
- primary
Nic String - The associated NIC.
Look up Existing CubeServer Resource
Get an existing CubeServer 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?: CubeServerState, opts?: CustomResourceOptions): CubeServer
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
allow_replace: Optional[bool] = None,
availability_zone: Optional[str] = None,
boot_cdrom: Optional[str] = None,
boot_image: Optional[str] = None,
boot_volume: Optional[str] = None,
cube_server_id: Optional[str] = None,
datacenter_id: Optional[str] = None,
firewallrule_id: Optional[str] = None,
hostname: Optional[str] = None,
image_name: Optional[str] = None,
image_password: Optional[str] = None,
inline_volume_ids: Optional[Sequence[str]] = None,
name: Optional[str] = None,
nic: Optional[CubeServerNicArgs] = None,
primary_ip: Optional[str] = None,
primary_nic: Optional[str] = None,
security_groups_ids: Optional[Sequence[str]] = None,
ssh_key_paths: Optional[Sequence[str]] = None,
template_uuid: Optional[str] = None,
timeouts: Optional[CubeServerTimeoutsArgs] = None,
vm_state: Optional[str] = None,
volume: Optional[CubeServerVolumeArgs] = None) -> CubeServer
func GetCubeServer(ctx *Context, name string, id IDInput, state *CubeServerState, opts ...ResourceOption) (*CubeServer, error)
public static CubeServer Get(string name, Input<string> id, CubeServerState? state, CustomResourceOptions? opts = null)
public static CubeServer get(String name, Output<String> id, CubeServerState state, CustomResourceOptions options)
resources: _: type: ionoscloud:CubeServer 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.
- Allow
Replace bool [bool] When set to true, allows the update of immutable fields by first destroying and then re-creating the server.
⚠️ Warning:
allow_replace
- lets you update immutable fields, but it first destroys and then re-creates the server in order to do it. This field should be used with care, understanding the risks.⚠ WARNING
Image_name under volume level is deprecated, please use image_name under server level
⚠ WARNING
For creating a CUBE server, you can not set
volume.size
argument.- Availability
Zone string - [string] The availability zone in which the server should exist. This property is immutable.
- Boot
Cdrom string - DEPRECATED Please refer to ionoscloud.ServerBootDeviceSelection (Optional)[string] The associated boot drive, if any. Must be the UUID of a bootable CDROM image that can be retrieved using the ionoscloud.getImage data source.
- Boot
Image string - [string] The image or snapshot UUID / name. May also be an image alias. It is required if
licence_type
is not provided. - Boot
Volume string - The associated boot volume.
- Cube
Server stringId - Datacenter
Id string - [string] The ID of a Virtual Data Center.
- Firewallrule
Id string - The associated firewall rule.
- Hostname string
- (Computed) The hostname of the resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters. If no value provided explicitly, it will be populated with the name of the server
- Image
Name string - [string] The name, ID or alias of the image. May also be a snapshot ID. It is required if
licence_type
is not provided. Attribute is immutable. - Image
Password string - [string] Required if
ssh_key_path
is not provided. - Inline
Volume List<string>Ids - A list that contains the IDs for the volumes defined inside the cube server resource.
- Name string
- [string] The name of the server.
- Nic
Cube
Server Nic - See the Nic section.
- Primary
Ip string - The associated IP address.
- Primary
Nic string - The associated NIC.
- Security
Groups List<string>Ids - The list of Security Group IDs for the resource.
- Ssh
Key List<string>Paths - [list] List of paths to files containing a public SSH key that will be injected into IonosCloud provided Linux images. Required for IonosCloud Linux images. Required if
image_password
is not provided. - Template
Uuid string - [string] The UUID of the template for creating a CUBE server; the available templates for CUBE servers can be found on the templates resource
- Timeouts
Cube
Server Timeouts - Vm
State string - [string] Sets the power state of the cube server. E.g:
RUNNING
orSUSPENDED
. - Volume
Cube
Server Volume - See the Volume section.
- Allow
Replace bool [bool] When set to true, allows the update of immutable fields by first destroying and then re-creating the server.
⚠️ Warning:
allow_replace
- lets you update immutable fields, but it first destroys and then re-creates the server in order to do it. This field should be used with care, understanding the risks.⚠ WARNING
Image_name under volume level is deprecated, please use image_name under server level
⚠ WARNING
For creating a CUBE server, you can not set
volume.size
argument.- Availability
Zone string - [string] The availability zone in which the server should exist. This property is immutable.
- Boot
Cdrom string - DEPRECATED Please refer to ionoscloud.ServerBootDeviceSelection (Optional)[string] The associated boot drive, if any. Must be the UUID of a bootable CDROM image that can be retrieved using the ionoscloud.getImage data source.
- Boot
Image string - [string] The image or snapshot UUID / name. May also be an image alias. It is required if
licence_type
is not provided. - Boot
Volume string - The associated boot volume.
- Cube
Server stringId - Datacenter
Id string - [string] The ID of a Virtual Data Center.
- Firewallrule
Id string - The associated firewall rule.
- Hostname string
- (Computed) The hostname of the resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters. If no value provided explicitly, it will be populated with the name of the server
- Image
Name string - [string] The name, ID or alias of the image. May also be a snapshot ID. It is required if
licence_type
is not provided. Attribute is immutable. - Image
Password string - [string] Required if
ssh_key_path
is not provided. - Inline
Volume []stringIds - A list that contains the IDs for the volumes defined inside the cube server resource.
- Name string
- [string] The name of the server.
- Nic
Cube
Server Nic Args - See the Nic section.
- Primary
Ip string - The associated IP address.
- Primary
Nic string - The associated NIC.
- Security
Groups []stringIds - The list of Security Group IDs for the resource.
- Ssh
Key []stringPaths - [list] List of paths to files containing a public SSH key that will be injected into IonosCloud provided Linux images. Required for IonosCloud Linux images. Required if
image_password
is not provided. - Template
Uuid string - [string] The UUID of the template for creating a CUBE server; the available templates for CUBE servers can be found on the templates resource
- Timeouts
Cube
Server Timeouts Args - Vm
State string - [string] Sets the power state of the cube server. E.g:
RUNNING
orSUSPENDED
. - Volume
Cube
Server Volume Args - See the Volume section.
- allow
Replace Boolean [bool] When set to true, allows the update of immutable fields by first destroying and then re-creating the server.
⚠️ Warning:
allow_replace
- lets you update immutable fields, but it first destroys and then re-creates the server in order to do it. This field should be used with care, understanding the risks.⚠ WARNING
Image_name under volume level is deprecated, please use image_name under server level
⚠ WARNING
For creating a CUBE server, you can not set
volume.size
argument.- availability
Zone String - [string] The availability zone in which the server should exist. This property is immutable.
- boot
Cdrom String - DEPRECATED Please refer to ionoscloud.ServerBootDeviceSelection (Optional)[string] The associated boot drive, if any. Must be the UUID of a bootable CDROM image that can be retrieved using the ionoscloud.getImage data source.
- boot
Image String - [string] The image or snapshot UUID / name. May also be an image alias. It is required if
licence_type
is not provided. - boot
Volume String - The associated boot volume.
- cube
Server StringId - datacenter
Id String - [string] The ID of a Virtual Data Center.
- firewallrule
Id String - The associated firewall rule.
- hostname String
- (Computed) The hostname of the resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters. If no value provided explicitly, it will be populated with the name of the server
- image
Name String - [string] The name, ID or alias of the image. May also be a snapshot ID. It is required if
licence_type
is not provided. Attribute is immutable. - image
Password String - [string] Required if
ssh_key_path
is not provided. - inline
Volume List<String>Ids - A list that contains the IDs for the volumes defined inside the cube server resource.
- name String
- [string] The name of the server.
- nic
Cube
Server Nic - See the Nic section.
- primary
Ip String - The associated IP address.
- primary
Nic String - The associated NIC.
- security
Groups List<String>Ids - The list of Security Group IDs for the resource.
- ssh
Key List<String>Paths - [list] List of paths to files containing a public SSH key that will be injected into IonosCloud provided Linux images. Required for IonosCloud Linux images. Required if
image_password
is not provided. - template
Uuid String - [string] The UUID of the template for creating a CUBE server; the available templates for CUBE servers can be found on the templates resource
- timeouts
Cube
Server Timeouts - vm
State String - [string] Sets the power state of the cube server. E.g:
RUNNING
orSUSPENDED
. - volume
Cube
Server Volume - See the Volume section.
- allow
Replace boolean [bool] When set to true, allows the update of immutable fields by first destroying and then re-creating the server.
⚠️ Warning:
allow_replace
- lets you update immutable fields, but it first destroys and then re-creates the server in order to do it. This field should be used with care, understanding the risks.⚠ WARNING
Image_name under volume level is deprecated, please use image_name under server level
⚠ WARNING
For creating a CUBE server, you can not set
volume.size
argument.- availability
Zone string - [string] The availability zone in which the server should exist. This property is immutable.
- boot
Cdrom string - DEPRECATED Please refer to ionoscloud.ServerBootDeviceSelection (Optional)[string] The associated boot drive, if any. Must be the UUID of a bootable CDROM image that can be retrieved using the ionoscloud.getImage data source.
- boot
Image string - [string] The image or snapshot UUID / name. May also be an image alias. It is required if
licence_type
is not provided. - boot
Volume string - The associated boot volume.
- cube
Server stringId - datacenter
Id string - [string] The ID of a Virtual Data Center.
- firewallrule
Id string - The associated firewall rule.
- hostname string
- (Computed) The hostname of the resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters. If no value provided explicitly, it will be populated with the name of the server
- image
Name string - [string] The name, ID or alias of the image. May also be a snapshot ID. It is required if
licence_type
is not provided. Attribute is immutable. - image
Password string - [string] Required if
ssh_key_path
is not provided. - inline
Volume string[]Ids - A list that contains the IDs for the volumes defined inside the cube server resource.
- name string
- [string] The name of the server.
- nic
Cube
Server Nic - See the Nic section.
- primary
Ip string - The associated IP address.
- primary
Nic string - The associated NIC.
- security
Groups string[]Ids - The list of Security Group IDs for the resource.
- ssh
Key string[]Paths - [list] List of paths to files containing a public SSH key that will be injected into IonosCloud provided Linux images. Required for IonosCloud Linux images. Required if
image_password
is not provided. - template
Uuid string - [string] The UUID of the template for creating a CUBE server; the available templates for CUBE servers can be found on the templates resource
- timeouts
Cube
Server Timeouts - vm
State string - [string] Sets the power state of the cube server. E.g:
RUNNING
orSUSPENDED
. - volume
Cube
Server Volume - See the Volume section.
- allow_
replace bool [bool] When set to true, allows the update of immutable fields by first destroying and then re-creating the server.
⚠️ Warning:
allow_replace
- lets you update immutable fields, but it first destroys and then re-creates the server in order to do it. This field should be used with care, understanding the risks.⚠ WARNING
Image_name under volume level is deprecated, please use image_name under server level
⚠ WARNING
For creating a CUBE server, you can not set
volume.size
argument.- availability_
zone str - [string] The availability zone in which the server should exist. This property is immutable.
- boot_
cdrom str - DEPRECATED Please refer to ionoscloud.ServerBootDeviceSelection (Optional)[string] The associated boot drive, if any. Must be the UUID of a bootable CDROM image that can be retrieved using the ionoscloud.getImage data source.
- boot_
image str - [string] The image or snapshot UUID / name. May also be an image alias. It is required if
licence_type
is not provided. - boot_
volume str - The associated boot volume.
- cube_
server_ strid - datacenter_
id str - [string] The ID of a Virtual Data Center.
- firewallrule_
id str - The associated firewall rule.
- hostname str
- (Computed) The hostname of the resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters. If no value provided explicitly, it will be populated with the name of the server
- image_
name str - [string] The name, ID or alias of the image. May also be a snapshot ID. It is required if
licence_type
is not provided. Attribute is immutable. - image_
password str - [string] Required if
ssh_key_path
is not provided. - inline_
volume_ Sequence[str]ids - A list that contains the IDs for the volumes defined inside the cube server resource.
- name str
- [string] The name of the server.
- nic
Cube
Server Nic Args - See the Nic section.
- primary_
ip str - The associated IP address.
- primary_
nic str - The associated NIC.
- security_
groups_ Sequence[str]ids - The list of Security Group IDs for the resource.
- ssh_
key_ Sequence[str]paths - [list] List of paths to files containing a public SSH key that will be injected into IonosCloud provided Linux images. Required for IonosCloud Linux images. Required if
image_password
is not provided. - template_
uuid str - [string] The UUID of the template for creating a CUBE server; the available templates for CUBE servers can be found on the templates resource
- timeouts
Cube
Server Timeouts Args - vm_
state str - [string] Sets the power state of the cube server. E.g:
RUNNING
orSUSPENDED
. - volume
Cube
Server Volume Args - See the Volume section.
- allow
Replace Boolean [bool] When set to true, allows the update of immutable fields by first destroying and then re-creating the server.
⚠️ Warning:
allow_replace
- lets you update immutable fields, but it first destroys and then re-creates the server in order to do it. This field should be used with care, understanding the risks.⚠ WARNING
Image_name under volume level is deprecated, please use image_name under server level
⚠ WARNING
For creating a CUBE server, you can not set
volume.size
argument.- availability
Zone String - [string] The availability zone in which the server should exist. This property is immutable.
- boot
Cdrom String - DEPRECATED Please refer to ionoscloud.ServerBootDeviceSelection (Optional)[string] The associated boot drive, if any. Must be the UUID of a bootable CDROM image that can be retrieved using the ionoscloud.getImage data source.
- boot
Image String - [string] The image or snapshot UUID / name. May also be an image alias. It is required if
licence_type
is not provided. - boot
Volume String - The associated boot volume.
- cube
Server StringId - datacenter
Id String - [string] The ID of a Virtual Data Center.
- firewallrule
Id String - The associated firewall rule.
- hostname String
- (Computed) The hostname of the resource. Allowed characters are a-z, 0-9 and - (minus). Hostname should not start with minus and should not be longer than 63 characters. If no value provided explicitly, it will be populated with the name of the server
- image
Name String - [string] The name, ID or alias of the image. May also be a snapshot ID. It is required if
licence_type
is not provided. Attribute is immutable. - image
Password String - [string] Required if
ssh_key_path
is not provided. - inline
Volume List<String>Ids - A list that contains the IDs for the volumes defined inside the cube server resource.
- name String
- [string] The name of the server.
- nic Property Map
- See the Nic section.
- primary
Ip String - The associated IP address.
- primary
Nic String - The associated NIC.
- security
Groups List<String>Ids - The list of Security Group IDs for the resource.
- ssh
Key List<String>Paths - [list] List of paths to files containing a public SSH key that will be injected into IonosCloud provided Linux images. Required for IonosCloud Linux images. Required if
image_password
is not provided. - template
Uuid String - [string] The UUID of the template for creating a CUBE server; the available templates for CUBE servers can be found on the templates resource
- timeouts Property Map
- vm
State String - [string] Sets the power state of the cube server. E.g:
RUNNING
orSUSPENDED
. - volume Property Map
- See the Volume section.
Supporting Types
CubeServerNic, CubeServerNicArgs
- Lan double
- Device
Number double - Dhcp bool
- Dhcpv6 bool
- Indicates whether this NIC receives an IPv6 address through DHCP.
- Firewall
Cube
Server Nic Firewall - Firewall
Active bool - Firewall
Type string - Ips List<string>
- Ipv6Cidr
Block string - IPv6 CIDR block assigned to the NIC.
- Ipv6Ips List<string>
- Collection for IPv6 addresses assigned to a nic. Explicitly assigned IPv6 addresses need to come from inside the IPv6 CIDR block assigned to the nic.
- Mac string
- Name string
- [string] The name of the server.
- Pci
Slot double - Security
Groups List<string>Ids - The list of Security Group IDs for the resource.
- Lan float64
- Device
Number float64 - Dhcp bool
- Dhcpv6 bool
- Indicates whether this NIC receives an IPv6 address through DHCP.
- Firewall
Cube
Server Nic Firewall - Firewall
Active bool - Firewall
Type string - Ips []string
- Ipv6Cidr
Block string - IPv6 CIDR block assigned to the NIC.
- Ipv6Ips []string
- Collection for IPv6 addresses assigned to a nic. Explicitly assigned IPv6 addresses need to come from inside the IPv6 CIDR block assigned to the nic.
- Mac string
- Name string
- [string] The name of the server.
- Pci
Slot float64 - Security
Groups []stringIds - The list of Security Group IDs for the resource.
- lan Double
- device
Number Double - dhcp Boolean
- dhcpv6 Boolean
- Indicates whether this NIC receives an IPv6 address through DHCP.
- firewall
Cube
Server Nic Firewall - firewall
Active Boolean - firewall
Type String - ips List<String>
- ipv6Cidr
Block String - IPv6 CIDR block assigned to the NIC.
- ipv6Ips List<String>
- Collection for IPv6 addresses assigned to a nic. Explicitly assigned IPv6 addresses need to come from inside the IPv6 CIDR block assigned to the nic.
- mac String
- name String
- [string] The name of the server.
- pci
Slot Double - security
Groups List<String>Ids - The list of Security Group IDs for the resource.
- lan number
- device
Number number - dhcp boolean
- dhcpv6 boolean
- Indicates whether this NIC receives an IPv6 address through DHCP.
- firewall
Cube
Server Nic Firewall - firewall
Active boolean - firewall
Type string - ips string[]
- ipv6Cidr
Block string - IPv6 CIDR block assigned to the NIC.
- ipv6Ips string[]
- Collection for IPv6 addresses assigned to a nic. Explicitly assigned IPv6 addresses need to come from inside the IPv6 CIDR block assigned to the nic.
- mac string
- name string
- [string] The name of the server.
- pci
Slot number - security
Groups string[]Ids - The list of Security Group IDs for the resource.
- lan float
- device_
number float - dhcp bool
- dhcpv6 bool
- Indicates whether this NIC receives an IPv6 address through DHCP.
- firewall
Cube
Server Nic Firewall - firewall_
active bool - firewall_
type str - ips Sequence[str]
- ipv6_
cidr_ strblock - IPv6 CIDR block assigned to the NIC.
- ipv6_
ips Sequence[str] - Collection for IPv6 addresses assigned to a nic. Explicitly assigned IPv6 addresses need to come from inside the IPv6 CIDR block assigned to the nic.
- mac str
- name str
- [string] The name of the server.
- pci_
slot float - security_
groups_ Sequence[str]ids - The list of Security Group IDs for the resource.
- lan Number
- device
Number Number - dhcp Boolean
- dhcpv6 Boolean
- Indicates whether this NIC receives an IPv6 address through DHCP.
- firewall Property Map
- firewall
Active Boolean - firewall
Type String - ips List<String>
- ipv6Cidr
Block String - IPv6 CIDR block assigned to the NIC.
- ipv6Ips List<String>
- Collection for IPv6 addresses assigned to a nic. Explicitly assigned IPv6 addresses need to come from inside the IPv6 CIDR block assigned to the nic.
- mac String
- name String
- [string] The name of the server.
- pci
Slot Number - security
Groups List<String>Ids - The list of Security Group IDs for the resource.
CubeServerNicFirewall, CubeServerNicFirewallArgs
- Protocol string
- Icmp
Code string - Icmp
Type string - Name string
- [string] The name of the server.
- Port
Range doubleEnd - Port
Range doubleStart - Source
Ip string - Source
Mac string - Target
Ip string - Type string
- Protocol string
- Icmp
Code string - Icmp
Type string - Name string
- [string] The name of the server.
- Port
Range float64End - Port
Range float64Start - Source
Ip string - Source
Mac string - Target
Ip string - Type string
- protocol String
- icmp
Code String - icmp
Type String - name String
- [string] The name of the server.
- port
Range DoubleEnd - port
Range DoubleStart - source
Ip String - source
Mac String - target
Ip String - type String
- protocol string
- icmp
Code string - icmp
Type string - name string
- [string] The name of the server.
- port
Range numberEnd - port
Range numberStart - source
Ip string - source
Mac string - target
Ip string - type string
- protocol str
- icmp_
code str - icmp_
type str - name str
- [string] The name of the server.
- port_
range_ floatend - port_
range_ floatstart - source_
ip str - source_
mac str - target_
ip str - type str
- protocol String
- icmp
Code String - icmp
Type String - name String
- [string] The name of the server.
- port
Range NumberEnd - port
Range NumberStart - source
Ip String - source
Mac String - target
Ip String - type String
CubeServerTimeouts, CubeServerTimeoutsArgs
CubeServerVolume, CubeServerVolumeArgs
- Disk
Type string - Availability
Zone string - [string] The availability zone in which the server should exist. This property is immutable.
- Backup
Unit stringId - The uuid of the Backup Unit that user has access to. The property is immutable and is only allowed to be set on a new volume creation. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property.
- Boot
Server string - The UUID of the attached server.
- Bus string
- Cpu
Hot boolPlug - Device
Number double - Disc
Virtio boolHot Plug - Disc
Virtio boolHot Unplug - Image
Password string - [string] Required if
ssh_key_path
is not provided. - Licence
Type string - [string] Sets the OS type of the server.
- Name string
- [string] The name of the server.
- Nic
Hot boolPlug - Nic
Hot boolUnplug - Pci
Slot double - Ram
Hot boolPlug - Ssh
Key List<string>Paths - [list] List of paths to files containing a public SSH key that will be injected into IonosCloud provided Linux images. Required for IonosCloud Linux images. Required if
image_password
is not provided. - User
Data string - The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on a new volume creation. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property.
- Disk
Type string - Availability
Zone string - [string] The availability zone in which the server should exist. This property is immutable.
- Backup
Unit stringId - The uuid of the Backup Unit that user has access to. The property is immutable and is only allowed to be set on a new volume creation. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property.
- Boot
Server string - The UUID of the attached server.
- Bus string
- Cpu
Hot boolPlug - Device
Number float64 - Disc
Virtio boolHot Plug - Disc
Virtio boolHot Unplug - Image
Password string - [string] Required if
ssh_key_path
is not provided. - Licence
Type string - [string] Sets the OS type of the server.
- Name string
- [string] The name of the server.
- Nic
Hot boolPlug - Nic
Hot boolUnplug - Pci
Slot float64 - Ram
Hot boolPlug - Ssh
Key []stringPaths - [list] List of paths to files containing a public SSH key that will be injected into IonosCloud provided Linux images. Required for IonosCloud Linux images. Required if
image_password
is not provided. - User
Data string - The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on a new volume creation. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property.
- disk
Type String - availability
Zone String - [string] The availability zone in which the server should exist. This property is immutable.
- backup
Unit StringId - The uuid of the Backup Unit that user has access to. The property is immutable and is only allowed to be set on a new volume creation. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property.
- boot
Server String - The UUID of the attached server.
- bus String
- cpu
Hot BooleanPlug - device
Number Double - disc
Virtio BooleanHot Plug - disc
Virtio BooleanHot Unplug - image
Password String - [string] Required if
ssh_key_path
is not provided. - licence
Type String - [string] Sets the OS type of the server.
- name String
- [string] The name of the server.
- nic
Hot BooleanPlug - nic
Hot BooleanUnplug - pci
Slot Double - ram
Hot BooleanPlug - ssh
Key List<String>Paths - [list] List of paths to files containing a public SSH key that will be injected into IonosCloud provided Linux images. Required for IonosCloud Linux images. Required if
image_password
is not provided. - user
Data String - The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on a new volume creation. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property.
- disk
Type string - availability
Zone string - [string] The availability zone in which the server should exist. This property is immutable.
- backup
Unit stringId - The uuid of the Backup Unit that user has access to. The property is immutable and is only allowed to be set on a new volume creation. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property.
- boot
Server string - The UUID of the attached server.
- bus string
- cpu
Hot booleanPlug - device
Number number - disc
Virtio booleanHot Plug - disc
Virtio booleanHot Unplug - image
Password string - [string] Required if
ssh_key_path
is not provided. - licence
Type string - [string] Sets the OS type of the server.
- name string
- [string] The name of the server.
- nic
Hot booleanPlug - nic
Hot booleanUnplug - pci
Slot number - ram
Hot booleanPlug - ssh
Key string[]Paths - [list] List of paths to files containing a public SSH key that will be injected into IonosCloud provided Linux images. Required for IonosCloud Linux images. Required if
image_password
is not provided. - user
Data string - The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on a new volume creation. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property.
- disk_
type str - availability_
zone str - [string] The availability zone in which the server should exist. This property is immutable.
- backup_
unit_ strid - The uuid of the Backup Unit that user has access to. The property is immutable and is only allowed to be set on a new volume creation. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property.
- boot_
server str - The UUID of the attached server.
- bus str
- cpu_
hot_ boolplug - device_
number float - disc_
virtio_ boolhot_ plug - disc_
virtio_ boolhot_ unplug - image_
password str - [string] Required if
ssh_key_path
is not provided. - licence_
type str - [string] Sets the OS type of the server.
- name str
- [string] The name of the server.
- nic_
hot_ boolplug - nic_
hot_ boolunplug - pci_
slot float - ram_
hot_ boolplug - ssh_
key_ Sequence[str]paths - [list] List of paths to files containing a public SSH key that will be injected into IonosCloud provided Linux images. Required for IonosCloud Linux images. Required if
image_password
is not provided. - user_
data str - The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on a new volume creation. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property.
- disk
Type String - availability
Zone String - [string] The availability zone in which the server should exist. This property is immutable.
- backup
Unit StringId - The uuid of the Backup Unit that user has access to. The property is immutable and is only allowed to be set on a new volume creation. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property.
- boot
Server String - The UUID of the attached server.
- bus String
- cpu
Hot BooleanPlug - device
Number Number - disc
Virtio BooleanHot Plug - disc
Virtio BooleanHot Unplug - image
Password String - [string] Required if
ssh_key_path
is not provided. - licence
Type String - [string] Sets the OS type of the server.
- name String
- [string] The name of the server.
- nic
Hot BooleanPlug - nic
Hot BooleanUnplug - pci
Slot Number - ram
Hot BooleanPlug - ssh
Key List<String>Paths - [list] List of paths to files containing a public SSH key that will be injected into IonosCloud provided Linux images. Required for IonosCloud Linux images. Required if
image_password
is not provided. - user
Data String - The cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on a new volume creation. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property.
Import
Resource Server can be imported using the resource id
and the datacenter id
, e.g.
$ pulumi import ionoscloud:index/cubeServer:CubeServer myserver datacenter uuid/server uuid
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- ionoscloud ionos-cloud/terraform-provider-ionoscloud
- License
- Notes
- This Pulumi package is based on the
ionoscloud
Terraform Provider.