Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Creates and manages Load Balancers
Manages a Load Balancer on IonosCloud.
name
- (Required)[string] The name of the load balancer.
datacenter_id
- (Required)[string] The ID of a Virtual Data Center.
nic_ids
- (Required)[list] A list of NIC IDs that are part of the load balancer.
dhcp
- (Optional)[Boolean] Indicates if the load balancer will reserve an IP using DHCP.
ip
- (Optional)[string] IPv4 address of the load balancer.
Resource Loadbalancer can be imported using the resource id
, e.g.
When declaring NIC resources to be used with the load balancer, please make sure you use the "lifecycle meta-argument" to make sure changes to the lan attribute of the nic are ignored.
Please see the nic resource's documentation for an example on how to do that.
Creates and manages ipfailover objects.
Manages IP Failover groups on IonosCloud.
datacenter_id
- (Required)[string] The ID of a Virtual Data Center.
ip
- (Required)[string] The reserved IP address to be used in the IP failover group.
lan_id
- (Required)[string] The ID of a LAN.
nicuuid
- (Required)[string] The ID of a NIC.
Resource IpFailover can be imported using the resource id
, e.g.
If you want to add a secondary NIC to an IP Failover, follow these steps:
Creating NIC A with failover IP on LAN 1
Create NIC B unde the same LAN but with a different IP
Create the IP Failover on LAN 1 with NIC A and failover IP of NIC A (A becomes now "master", no slaves)
Update NIC B IP to be the failover IP ( B becomes now a slave, A remains master)
After this you can create a new NIC C, NIC D and so on, in LAN 1, directly with the failover IP.
Please check examples for a full example with the above steps.
Creates and manages IP Block objects.
Manages IP Blocks on IonosCloud. IP Blocks contain reserved public IP addresses that can be assigned servers or other resources.
name
- (Optional)[string] The name of Ip Block
location
- (Required)[string] The regional location for this IP Block: us/las, us/ewr, de/fra, de/fkb.
size
- (Required)[integer] The number of IP addresses to reserve for this block.
ips
- (Computed)[integer] The list of IP addresses associated with this block.
ip_consumers
(Computed) Read-Only attribute. Lists consumption detail of an individual ip
ip
mac
nic_uuid
server_id
server_name
datacenter_id
datacenter_name
k8s_nodepool_uuid
k8s_cluster_uuid
Resource Ipblock can be imported using the resource id
, e.g.
Creates and manages Firewall Rules.
Manages a set of firewall rules on IonosCloud.
datacenter_id
- (Required)[string] The Virtual Data Center ID.
server_id
- (Required)[string] The Server ID.
nic_id
- (Required)[string] The NIC ID.
protocol
- (Required)[string] The protocol for the rule: TCP, UDP, ICMP, ANY. Property cannot be modified after creation (disallowed in update requests).
name
- (Optional)[string] The name of the firewall rule.
source_mac
- (Optional)[string] Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows all source MAC address. Valid format: aa:bb:cc:dd:ee:ff.
source_ip
- (Optional)[string] Only traffic originating from the respective IPv4 address is allowed. Value null allows all source IPs.
target_ip
- (Optional)[string] In case the target NIC has multiple IP addresses, only traffic directed to the respective IP address of the NIC is allowed. Value null allows all target IPs.
port_range_start
- (Optional)[int] Defines the start range of the allowed port (from 1 to 65534) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.
port_range_end
- (Optional)[int] Defines the end range of the allowed port (from 1 to 65534) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports.
icmp_type
- (Optional)[string] Defines the allowed code (from 0 to 254) if protocol ICMP is chosen. Value null allows all codes.
icmp_code
- (Optional)[string] Defines the allowed type (from 0 to 254) if the protocol ICMP is chosen. Value null allows all types
Resource Firewall can be imported using the resource id
, e.g.
Creates and manages Private Cross Connections between virtual datacenters.
Manages a Private Cross Connect on IonosCloud.
The following arguments are supported:
name
- (Required)[string] The name of the private cross-connection.
description
- (Optional)[string] A short description for the private cross-connection.
peers
- (Computed) Lists LAN's joined to this private cross connect
lan_id
lan_name
datacenter_id
datacenter_name
location
connectable_datacenters
- (Computed) Lists datacenters that can be joined to this private cross connect
id
name
location
A Private Cross Connect resource can be imported using its resource id
, e.g.
This can be helpful when you want to import private cross-connects which you have already created manually or using other means, outside of terraform.
Creates and manages Network Interface objects.
Manages a NIC on IonosCloud.
datacenter_id
- (Required)[string] The ID of a Virtual Data Center.
server_id
- (Required)[string] The ID of a server.
lan
- (Required)[integer] The LAN ID the NIC will sit on.
name
- (Optional)[string] The name of the LAN.
dhcp
- (Optional)[Boolean] Indicates if the NIC should get an IP address using DHCP (true) or not (false).
ips
- (Optional)[list] Collection of IP addresses assigned to a nic. Explicitly assigned public IPs need to come from reserved IP blocks, Passing value null or empty array will assign an IP address automatically.
firewall_active
- (Optional)[Boolean] If this resource is set to true and is nested under a server resource firewall, with open SSH port, resource must be nested under the NIC.
nat
- (Optional)[Boolean] Boolean value indicating if the private IP address has outbound access to the public internet.
mac
- (Computed) The MAC address of the NIC.
Resource Nic can be imported using the resource id
, e.g.
Please be aware that when using a nic in a load balancer, the load balancer will change the nic's ID behind the scenes, therefore the plan will always report this change trying to revert the state to the one specified by your terraform file. In order to prevent this, use the "lifecycle meta-argument" when declaring your nic, in order to ignore changes to the lan
attribute:
Here's an example:
Creates and manages IonosCloud Virtual Data Center.
Manages a Virtual Data Center on IonosCloud.
The following arguments are supported:
name
- (Required)[string] The name of the Virtual Data Center.
location
- (Required)[string] The regional location where the Virtual Data Center will be created. This argument is immutable.
description
- (Optional)[string] Description for the Virtual Data Center.
sec_auth_protection
- (Optional) [bool] Boolean value representing if the data center requires extra protection e.g. two factor protection
version
- (Computed) The version of that Data Center. Gets incremented with every change
features
- (Computed) List of features supported by the location this data center is part of
Resource Datacenter can be imported using the resource id
, e.g.
Creates and manages IonosCloud Server objects.
Manages a Server on IonosCloud.
This resource will create an operational server. After this section completes, the provisioner can be called.
##Argument reference
name
- (Required)[string] The name of the server.
datacenter_id
- (Required)[string] The ID of a Virtual Data Center.
cores
- (Required)[integer] Number of server CPU cores.
ram
- (Required)[integer] The amount of memory for the server in MB.
image_name
- (Optional)[string] The name or ID of the image.
availability_zone
- (Optional)[string] The availability zone in which the server should exist. This property is immutable.
licence_type
- (Optional)[string] Sets the OS type of the server.
cpu_family
- (Optional)[string] CPU architecture on which server gets provisioned. Sets the CPU type. "AMD_OPTERON", "INTEL_XEON" or "INTEL_SKYLAKE".
volume
- (Required) See the Volume section.
nic
- (Required) See the NIC section.
boot_volume
- (Computed) The associated boot volume.
boot_cdrom
- (Optional)[string] The associated boot drive, if any.
boot_image
- (Optional)[string] The image or snapshot UUID / name. May also be an image alias. It is required if licence_type
is not provided.
primary_nic
- (Computed) The associated NIC.
primary_ip
- (Computed) The associated IP address.
firewallrule_id
- (Computed) The associated firewall rule.
ssh_key_path
- (Optional)[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.
image_password
- (Optional)[string] Required if ssh_key_path
is not provided.
Resource Server can be imported using the resource id
, e.g.
Please note that for any secondary volume, you need to set the licence_type property to UNKNOWN
Creates and manages IonosCloud Volume objects.
Manages a volume on IonosCloud.
A primary volume will be created with the server. If there is a need for additional volumes, this resource handles it.
datacenter_id
- (Required)[string] The ID of a Virtual Data Center.
server_id
- (Required)[string] The ID of a server.
disk_type
- (Required)[string] The volume type: HDD or SSD. This property is immutable.
bus
- (Optional)[Boolean] The bus type of the volume: VIRTIO or IDE. This property is immutable.
size
- (Required)[integer] The size of the volume in GB.
ssh_key_path
- (Optional)[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.
sshkey
- (Computed) The associated public SSH key.
image_password
- (Optional)[string] Required if sshkey_path
is not provided.
image_name
- (Optional)[string] The image or snapshot UUID. May also be an image alias. It is required if licence_type
is not provided.
image
- (Computed) The image or snapshot UUID.
image_alias
- (Computed) The image alias.
licence_type
- (Optional)[string] Required if image_name
is not provided.
name
- (Optional)[string] The name of the volume.
availability_zone
- (Optional)[string] The storage availability zone assigned to the volume: AUTO, ZONE_1, ZONE_2, or ZONE_3. This property is immutable.
user_data
- (Optional)[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. This option will work only with cloud-init compatible images.
backup_unit_id
- (Optional)[string] he 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.
device_number
- (Computed) The LUN ID of the storage volume. Null for volumes not mounted to any VM
cpu_hot_plug
- (Computed)[string] Is capable of CPU hot plug (no reboot required)
ram_hot_plug
- (Computed)[string] Is capable of memory hot plug (no reboot required)
nic_hot_plug
- (Computed)[string] Is capable of nic hot plug (no reboot required)
nic_hot_unplug
- (Computed)[string] Is capable of nic hot unplug (no reboot required)
disc_virtio_hot_plug
- (Computed)[string] Is capable of Virt-IO drive hot plug (no reboot required)
disc_virtio_hot_unplug
- (Computed)[string] Is capable of Virt-IO drive hot unplug (no reboot required). This works only for non-Windows virtual Machines.
Resource Volume can be imported using the resource id
, e.g.
Creates and manages snapshot objects.
Manages snapshots on IonosCloud.
datacenter_id
- (Required)[string] The ID of the Virtual Data Center.
name
- (Required)[string] The name of the snapshot.
volume_id
- (Required)[string] The ID of the specific volume to take the snapshot from.
Beside the configurable arguments, the resource returns the following additional attributes:
description
- Human readable description
licence_type
- OS type of this Snapshot
location
- Location of that image/snapshot
size
- The size of the image in GB
sec_auth_protection
- Boolean value representing if the snapshot requires extra protection e.g. two factor protection
cpu_hot_plug
- Is capable of CPU hot plug (no reboot required)
cpu_hot_unplug
- Is capable of CPU hot unplug (no reboot required)
ram_hot_plug
- Is capable of memory hot plug (no reboot required)
ram_hot_unplug
- Is capable of memory hot unplug (no reboot required)
nic_hot_plug
- Is capable of nic hot plug (no reboot required)
nic_hot_unplug
- Is capable of nic hot unplug (no reboot required)
disc_virtio_hot_plug
- Is capable of Virt-IO drive hot plug (no reboot required)
disc_virtio_hot_unplug
- Is capable of Virt-IO drive hot unplug (no reboot required). This works only for non-Windows virtual Machines.
disc_scsi_hot_plug
- Is capable of SCSI drive hot plug (no reboot required)
disc_scsi_hot_unplug
- Is capable of SCSI drive hot unplug (no reboot required). This works only for non-Windows virtual Machines.
Resource Snapshot can be imported using the snapshot id
, e.g.
Creates and manages LAN objects.
Manages a LAN on IonosCloud.
datacenter_id
- (Required)[string] The ID of a Virtual Data Center.
name
- (Optional)[string] The name of the LAN.
public
- (Optional)[Boolean] Indicates if the LAN faces the public Internet (true) or not (false).
pcc
- (Optional)[String] The unique id of a ionoscloud_private_crossconnect
resource, in order
ip_failover
- (Computed) IP failover configurations for lan
ip
nic_uuid
Resource Lan can be imported using the resource id
, e.g.
Please note that only LANS datacenters found in the same physical location can be connected through a private cross-connect
A LAN cannot be a part of two private cross-connects