Below steps will provision IBM Cloud resources (compute and storage instances in existing VPC) and and configures IBM Spectrum Scale cloud solution.
-
Change working directory to
ibmcloud_scale_templates/sub_modules/instance_template
.cd ibm-spectrum-scale-cloud-install/ibmcloud_scale_templates/sub_modules/instance_template/
-
Create terraform variable definitions file (
terraform.tfvars.json
) and provide infrastructure inputs.Minimal Example:
{ "vpc_region": "us-south", "vpc_availability_zones": ["us-south-1"], "vpc_id": null, // Use an existing vpc id "vpc_custom_resolver_id": null, // Use existing DNS custom resolver id "resource_group_id": null, // Use an existing resource group "bastion_security_group_id": null, // Use an existing bastion security group id "bastion_instance_public_ip": null, // Use an existing bastion public ip "bastion_instance_id": null, // Use an existing bastion instance id "bastion_ssh_private_key": "/root/.ssh/id_rsa", "compute_cluster_gui_username": "admin", "compute_cluster_gui_password": "Passw0rd", "compute_cluster_key_pair": null, // Use an existing key pair "vpc_compute_cluster_private_subnets": [], // Use an existing private subnet id "vpc_storage_cluster_private_subnets": [], // Use an existing private subnet id "storage_cluster_key_pair": null, // Use an existing key pair "storage_cluster_gui_username": "admin", "storage_cluster_gui_password": "Passw0rd", "vpc_compute_cluster_dns_service_id": null, // Use an existing DNS service id "vpc_storage_cluster_dns_service_id": null, // Use an existing DNS service id "vpc_compute_cluster_dns_zone_id": null, // Use an existing DNS zone id "vpc_storage_cluster_dns_zone_id": null // Use an existing DNS zone id }
-
Export your IBM Cloud credentials by exporting the
IC_API_KEY
as environment variables.Example:
export IC_API_KEY=68jfz8VDfQzMNUFE_JcU5mCqd6zSmmznrwUbZqwrKJ5k
-
Run
terraform init
andterraform apply -auto-approve
to provision resources.
Name | Version |
---|---|
ibm | 1.56.2 |
Name | Description | Type |
---|---|---|
compute_cluster_gui_password | Password for compute cluster GUI | string |
compute_cluster_gui_username | GUI user to perform system management and monitoring tasks on compute cluster. | string |
compute_cluster_key_pair | The key pair to use to launch the compute cluster host. | string |
resource_group_id | IBM Cloud resource group id. | string |
storage_cluster_gui_password | Password for storage cluster GUI | string |
storage_cluster_gui_username | GUI user to perform system management and monitoring tasks on storage cluster. | string |
storage_cluster_key_pair | The key pair to use to launch the storage cluster host. | string |
vpc_availability_zones | A list of availability zones names or ids in the region. | list(string) |
vpc_compute_cluster_dns_service_id | IBM Cloud compute cluster DNS service resource id. | string |
vpc_compute_cluster_dns_zone_id | IBM Cloud compute cluster DNS zone id. | string |
vpc_compute_cluster_private_subnets | List of IDs of compute cluster private subnets. | list(string) |
vpc_custom_resolver_id | IBM Cloud DNS custom resolver id. | string |
vpc_id | VPC id were to deploy the bastion. | string |
vpc_region | The region where IBM Cloud operations will take place. Examples are us-east, us-south, etc. | string |
vpc_storage_cluster_dns_service_id | IBM Cloud storage cluster DNS service resource id. | string |
vpc_storage_cluster_dns_zone_id | IBM Cloud storage cluster DNS zone id. | string |
vpc_storage_cluster_private_subnets | List of IDs of storage cluster private subnets. | list(string) |
activity_tracker_plan_type | IBM Cloud activity tracker plan type (Valid: lite, 7-day, 14-day, 30-day, hipaa-30-day). | string |
bastion_instance_id | Bastion instance id. | string |
bastion_instance_public_ip | Bastion instance public ip address. | string |
bastion_security_group_id | Bastion security group id. | string |
bastion_ssh_private_key | Bastion SSH private key path, which will be used to login to bastion host. | string |
bastion_user | Provide the username for Bastion login. | string |
compute_cluster_filesystem_mountpoint | Compute cluster (accessingCluster) Filesystem mount point. | string |
compute_vsi_osimage_id | Image id to use for provisioning the compute cluster instances. | string |
compute_vsi_osimage_name | Image name to use for provisioning the compute cluster instances. | string |
compute_vsi_profile | Profile to be used for compute cluster virtual server instance. | string |
create_scale_cluster | Flag to represent whether to create scale cluster or not. | bool |
create_separate_namespaces | Flag to select if separate namespace needs to be created for compute instances. | bool |
deploy_controller_sec_group_id | Deployment controller security group id. Default: null | string |
filesystem_block_size | Filesystem block size. | string |
gklm_instance_dns_domain | IBM Cloud DNS domain name to be used for GKLM instances. | string |
gklm_instance_dns_service_id | IBM Cloud GKLM Instance DNS service resource id. | string |
gklm_instance_dns_zone_id | IBM GKLM Instance DNS zone id. | string |
gklm_instance_key_pair | The key pair to use to launch the GKLM host. | string |
gklm_vsi_osimage_id | Image id to use for provisioning the GKLM instances. | string |
gklm_vsi_osimage_name | Image name to use for provisioning the GKLM instances. | string |
gklm_vsi_profile | Profile to be used for GKLM virtual server instance. | string |
inventory_format | Specify inventory format suited for ansible playbooks. | string |
resource_prefix | Prefix is added to all resources that are created. | string |
scale_ansible_repo_clone_path | Path to clone github.com/IBM/ibm-spectrum-scale-install-infra. | string |
scale_cluster_resource_tags | A list of tags for resources created for scale cluster. | list(string) |
scale_encryption_admin_default_password | The default administrator password used for resetting the admin password based on the user input. The password has to be updated which was configured during the GKLM installation. | string |
scale_encryption_admin_password | Password that is used for performing administrative operations for the GKLM.The password must contain at least 8 characters and at most 20 characters. For a strong password, at least three alphabetic characters are required, with at least one uppercase and one lowercase letter. Two numbers, and at least one special character from this(~@_+:). Make sure that the password doesn't include the username. Visit this page to know more about password policy of GKLM. | string |
scale_encryption_admin_username | The default Admin username for Security Key Lifecycle Manager(GKLM). | string |
scale_encryption_enabled | To enable the encryption for the filesystem. Select true or false | bool |
spectrumscale_rpms_path | Path that contains IBM Spectrum Scale product cloud rpms. | string |
storage_bare_metal_osimage_id | Image Id to use for provisioning the storage Baremetal cluster instances. | string |
storage_bare_metal_osimage_name | Image name to use for provisioning the storage Baremetal cluster. | string |
storage_bare_metal_server_profile | Specify the virtual server instance profile type name to be used to create the Baremetal Storage nodes. For more information, see Instance Profiles. | string |
storage_cluster_filesystem_mountpoint | Storage cluster (owningCluster) Filesystem mount point. | string |
storage_type | Select the required scale filesystem deployment method. Note: Choosing the scale scratch or evaluation type will deploy scale filesystem on VSI and scale persistent type will deploy scale filesystem on Baremetal server. | string |
storage_vsi_osimage_id | Image id to use for provisioning the storage cluster instances. | string |
storage_vsi_osimage_name | Image name to use for provisioning the storage cluster instances. | string |
storage_vsi_profile | Profile to be used for storage cluster virtual server instance. | string |
total_compute_cluster_instances | Number of instances to be launched for compute cluster. | number |
total_gklm_instances | Number of instances to be launched for GKLM. | number |
total_storage_cluster_instances | Number of instances to be launched for storage cluster. | number |
using_jumphost_connection | If true, will skip the jump/bastion host configuration. | bool |
using_packer_image | If true, gpfs rpm copy step will be skipped during the configuration. | bool |
using_rest_api_remote_mount | If false, skips GUI initialization on compute cluster for remote mount configuration. | string |
vpc_compute_cluster_dns_domain | IBM Cloud DNS domain name to be used for compute cluster. | string |
vpc_create_activity_tracker | Flag to select if IBM Cloud activity tracker to be created or not. Note: You can only provision 1 instance of this service per IBM Cloud region. | bool |
vpc_storage_cluster_dns_domain | IBM Cloud DNS domain name to be used for storage cluster. | string |
Name | Description |
---|---|
baremetal_cluster_instance_ids | storage cluster bare metal server ids |
baremetal_cluster_instance_private_ips | Private IP address of storage cluster bare metal instances. |
baremetal_cluster_with_data_volume_mapping | Mapping of storage cluster bare meteal server ip vs device path. |
compute_cluster_instance_ids | Compute cluster instance ids. |
compute_cluster_instance_private_ips | Private IP address of compute cluster instances. |
storage_cluster_desc_data_volume_mapping | Mapping of storage cluster desc instance ip vs. device path. |
storage_cluster_desc_instance_ids | Storage cluster desc instance id. |
storage_cluster_desc_instance_private_ips | Private IP address of storage cluster desc instance. |
storage_cluster_instance_ids | Storage cluster instance ids. |
storage_cluster_instance_private_ips | Private IP address of storage cluster instances. |
storage_cluster_with_data_volume_mapping | Mapping of storage cluster instance ip vs. device path. |