Skip to content

Setup guide

This deployment creates an iCAS VM with a 20 GB demo license.

If you plan to use the iCAS VM for production, please contact the iTernity Sales Team to discuss the next steps.

Have questions or issues with the deployment? You can contact either STACKIT Support or iTernity Support, depending on your request’s area.

  • For questions about Terraform or the infrastructure layer (VMs, disks, network, S3, etc.), contact STACKIT Support.

  • For questions about the iCAS software and installation process, contact iTernity Support.

To deploy iCAS, you need a working Terraform environment and the latest deployment scripts.

An .env file configures your server. The file has the following structure:

# Required Settings
export TF_VAR_TENANTID=<OpenStackProjectID>
export TF_VAR_USERNAME=<UATUsername>
export TF_VAR_PASSWORD=<UATPassword>
export TF_VAR_STACKIT_PROJECT_ID=<STACKITProjectID>
export TF_VAR_STACKIT_SERVICE_ACCOUNT_TOKEN=<STACKITServiceAccountToken>
#Optional Settings
export TF_VAR_vm_name=<VMName>
export TF_VAR_flavor=<VMFlavor>
export TF_VAR_availability_zone=<AvailabilityZone>
export TF_VAR_root_storage_type=<StorageTypeRootPartition>
export TF_VAR_data_storage_type=<StorageTypeiCasDataPartition>
export TF_VAR_metadata_storage_type=<StorageTypeiCasMetaPartition>
export TF_VAR_root_storage_size=<StorageSizeRootPartition>
export TF_VAR_data_storage_size=<StorageSizeiCasDataPartition>
export TF_VAR_metadata_storage_size=<StorageSizeiCasMetaPartition>
export TF_VAR_lan_netrange=<InternalLanRange>

The following tables explain the required and optional parameters.

Variable NamePlaceholderDescription
TF_VAR_TENANTIDOpenStackProjectIDThe OpenStack Project ID. Find this in the STACKIT Portal under Access > Infrastructure API.
TF_VAR_USERNAMEUATUsernameThe User Access Token (UAT) username. If you don’t have a UAT, create one in the STACKIT Portal under Access > Infrastructure API.
TF_VAR_PASSWORDUATPasswordThe password for your UAT. This is created when you generate the token.
TF_VAR_STACKIT_PROJECT_IDSTACKITProjectIDYour STACKIT Project ID. Find this on your project Dashboard in the STACKIT Portal.
TF_VAR_STACKIT_SERVICE_ACCOUNT_TOKENSTACKITServiceAccountTokenThe token for your service account.
Variable NamePlaceholderDescription
TF_VAR_vm_nameVMNameThe name of the VM in the STACKIT Portal and the Windows hostname.
TF_VAR_flavorVMFlavorThe flavor of the VM, which defines its CPU and RAM configuration. Choose a flavor that meets the minimum requirements for an iCAS Object Storage installation. For more information, see the iTernity Support Portal Download Area and the Virtual Machine flavors documentation.
TF_VAR_availability_zoneAvailabilityZoneThe STACKIT availability zone for the iCAS server, for example, eu01-1. See the Regions and Availability Zones documentation for more information.
TF_VAR_root_storage_typeStorageTypeRootPartitionThe storage type for the iCAS server’s root disk, where the operating system will be installed. We recommend using the storage_premium_perf4 performance class or higher. For more information, see the Block Storage service plans documentation.
TF_VAR_data_storage_typeStorageTypeiCasDataPartitionThe storage type for the data disk, where archived data is temporarily placed before being transferred to the object storage. We recommend using the storage_premium_perf4 performance class or higher.
TF_VAR_metadata_storage_typeStorageTypeiCasMetaPartitionThe storage type for the metadata disk, where iCAS metadata is stored. We recommend using the storage_premium_perf4 performance class or higher.
TF_VAR_root_storage_sizeStorageSizeRootPartitionThe size of the root disk in GB, for example, 100. Choose a size recommended for your selected operating system.
TF_VAR_data_storage_sizeStorageSizeiCasDataPartitionThe size of the data disk in GB, for example, 1000 (1 TB). The value must be greater than the metadata disk size. We recommend at least 1 TB.
TF_VAR_metadata_storage_sizeStorageSizeiCasMetaPartitionThe size of the metadata disk in GB, for example, 500. The value must be smaller than the data disk size. We recommend at least 500 GB.
TF_VAR_lan_netrangeInternalLanRangeThe internal STACKIT LAN range. Select an IP range in CIDR notation that works for your environment, for example, 192.168.0.0/24.

The GitHub download includes 03-config_data, a JSON configuration file for iCAS. Adjust its content to fit your needs. Don’t rename the file or change the S3 settings, as Terraform handles them.

You can enable an iCAS mail notification system to receive error and warning messages.

ParameterDescription
RecipientMailAddressThe email address where iCAS sends emails. The value must be a valid email string or an empty string.
SenderMailAddressThe email address iCAS uses as the sender. The value must be a valid email string or an empty string.
MailServerThe server used to send emails. The value must be a valid hostname or IPv4 address, or an empty string.
{
"MailConfiguration": {
"RecipientMailAddress": "icas-info@example.com",
"SenderMailAddress": "icas-server@example.com",
"MailServer": "mail.example.com"
},
...
}

These values are automatically populated by Terraform to connect to the Object Storage. Don’t change them.

{
...
},
"S3Configuration": {
"S3EndpointURL": "https://object.storage.eu01.onstackit.cloud",
"S3AccessKey": "${access_key}",
"S3SecretKey": "${secret_access_key}"
},
...
}

This section configures access for applications that write, archive, and read data on iCAS. Access is mapped using shares and repositories. Each application typically has its own share and repository.

If you’re unsure how to configure your application, contact iTernity Support.

ParameterDescription
ApplicationConfigures how the application archives data. The two possible values are:

Custom ReadOnly: Archiving is triggered when the application sets the file’s “Read Only” attribute.

Custom Autocommit: Archiving is triggered when the application closes a file.
SharenameThe name for the iCAS share and the SMB share name that the application uses to access it. The value must be a string.
RepositorynameThe name for the iCAS repository and the bucket name in Object Storage. The repository name usually matches the share name. The value must be a string that follows STACKIT S3 bucket naming conventions (no spaces or special characters) and is globally unique.
DefaultRetentionValueDefines the minimum retention value for this share in combination with DefaultRetentionUnit. The value must be an integer from 0 to 999. The application can set a higher value by adjusting the file’s LastAccessTime attribute.
DefaultRetentionUnitDefines the minimum retention unit for this share in combination with DefaultRetentionValue. The value must be a string with one of these valid values: Days, Months, or Years.
EncryptionControls whether files in the backend are encrypted (true) or not (false). The default value is true.
CompressionControls whether files in the backend are compressed (true) or not (false). The default value is false.
{
...
},
"Applications": [
{
"Application": "Custom Autocommit",
"Sharename": "share1",
"Repositoryname": "repository1",
"DefaultRetentionValue": 1,
"DefaultRetentionUnit": "Days",
"Encryption": true,
"Compression": false
},
{
"Application": "Custom ReadOnly",
"Sharename": "share2",
"Repositoryname": "repository2",
"DefaultRetentionValue": 0,
"DefaultRetentionUnit": "Days",
"Encryption": true,
"Compression": false
}
]
}