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.
Prerequisites
Section titled “Prerequisites”Terraform
Section titled “Terraform”To deploy iCAS, you need a working Terraform environment and the latest deployment scripts.
-
You can download Terraform from the official website: Install Terraform
-
Find the deployment scripts for Terraform on GitHub: iTernity Terraform Deployment
Environment setup
Section titled “Environment setup”An .env file configures your server. The file has the following structure:
# Required Settingsexport 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 Settingsexport 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 Name | Placeholder | Description |
|---|---|---|
TF_VAR_TENANTID | OpenStackProjectID | The OpenStack Project ID. Find this in the STACKIT Portal under Access > Infrastructure API. |
TF_VAR_USERNAME | UATUsername | The User Access Token (UAT) username. If you don’t have a UAT, create one in the STACKIT Portal under Access > Infrastructure API. |
TF_VAR_PASSWORD | UATPassword | The password for your UAT. This is created when you generate the token. |
TF_VAR_STACKIT_PROJECT_ID | STACKITProjectID | Your STACKIT Project ID. Find this on your project Dashboard in the STACKIT Portal. |
TF_VAR_STACKIT_SERVICE_ACCOUNT_TOKEN | STACKITServiceAccountToken | The token for your service account. |
| Variable Name | Placeholder | Description |
|---|---|---|
TF_VAR_vm_name | VMName | The name of the VM in the STACKIT Portal and the Windows hostname. |
TF_VAR_flavor | VMFlavor | The 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_zone | AvailabilityZone | The 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_type | StorageTypeRootPartition | The 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_type | StorageTypeiCasDataPartition | The 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_type | StorageTypeiCasMetaPartition | The 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_size | StorageSizeRootPartition | The size of the root disk in GB, for example, 100. Choose a size recommended for your selected operating system. |
TF_VAR_data_storage_size | StorageSizeiCasDataPartition | The 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_size | StorageSizeiCasMetaPartition | The 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_netrange | InternalLanRange | The internal STACKIT LAN range. Select an IP range in CIDR notation that works for your environment, for example, 192.168.0.0/24. |
iCAS configuration
Section titled “iCAS configuration”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.
Mail configuration
Section titled “Mail configuration”You can enable an iCAS mail notification system to receive error and warning messages.
| Parameter | Description |
|---|---|
RecipientMailAddress | The email address where iCAS sends emails. The value must be a valid email string or an empty string. |
SenderMailAddress | The email address iCAS uses as the sender. The value must be a valid email string or an empty string. |
MailServer | The 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" }, ...}S3 configuration
Section titled “S3 configuration”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}" }, ...}Applications
Section titled “Applications”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.
| Parameter | Description |
|---|---|
Application | Configures 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. |
Sharename | The name for the iCAS share and the SMB share name that the application uses to access it. The value must be a string. |
Repositoryname | The 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. |
DefaultRetentionValue | Defines 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. |
DefaultRetentionUnit | Defines 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. |
Encryption | Controls whether files in the backend are encrypted (true) or not (false). The default value is true. |
Compression | Controls 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 } ]}