Skip to content

Latest commit

 

History

History
142 lines (126 loc) · 17.1 KB

File metadata and controls

142 lines (126 loc) · 17.1 KB

Existing VPC Template

Below steps will provision IBM Cloud resources (compute and storage instances in existing VPC) and and configures IBM Spectrum Scale cloud solution.

  1. Change working directory to ibmcloud_scale_templates/sub_modules/instance_template.

    cd ibm-spectrum-scale-cloud-install/ibmcloud_scale_templates/sub_modules/instance_template/
    
  2. 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
    }
  3. Export your IBM Cloud credentials by exporting the IC_API_KEY as environment variables.

    Example:

    export IC_API_KEY=68jfz8VDfQzMNUFE_JcU5mCqd6zSmmznrwUbZqwrKJ5k
    
  4. Run terraform init and terraform apply -auto-approve to provision resources.

Requirements

Name Version
ibm 1.56.2

Inputs

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

Outputs

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.