Veritas InfoScale™ Installation, Upgrade, and Configuration Using Ansible - Linux
List of pre-defined keywords
Refer to the following tables for a list of the keywords that are used with each of the feature configuration-related modules.
The cfsresource module is used to create cluster file systems in InfoScale. Use the following keywords while referencing the module in your playbook:
Table: Cfsresource module keywords
Name | Description | Mandatory/Optional |
---|---|---|
state: | Specifies what state the package should be after the task is completed. The value for this keyword can be either present or absent. If you do not give any value for this parameter, by default, the state of the package is set to present, and the package will be installed. | Optional |
sgname: | Name of the service group where you are creating the cluster file system. | Mandatory |
dgname: | Name of the disk group where you are creating the cluster file system. | Mandatory |
volname: | Name of the volume where you are creating the cluster file system. | Mandatory |
mnt: | Mount point of the volume where you are creating the cluster file system. | Mandatory |
systems: | Specify the list of host names that are part of the cluster. Ensure that you enter the host names as provided in the in the Example:[hostname1,hostname2,hostname3] | Mandatory |
facters: | Enter the following value to collect system-related data from the cluster servers. "{{ ansible_play_hosts_all |map('extract', hostvars, ['facts','infoscale_facts'])| select()|list }}" | Mandatory |
The vxvm_dgvolfs module is used to create disk group volumes and file systems in InfoScale. You can also use taginfo arguments to tag disks and create volumes based on tag name. Before using vxvm_dgvolfs module, DiskInit module should be executed for disk initialization.
Use the following keywords while referencing the module in your playbook:
Table: Vxvm_dgvolfs module keywords
Name | Description | Mandatory/Optional |
---|---|---|
state: | Specifies what state the disk group or volume should be after the task is completed. The value for this keyword can be either present or absent. If you do not give any value for this parameter, by default, the state of the package is set to present, and the package will be installed. | Mandatory |
fss: | Specifies whether the disk is part of a Flexible Storage Sharing (FSS) environment. The value for this keyword can be either 1 or 0. By default, this value is set to 1. Note: If fss is set to 1, the volinfo list in the sample playbook can contain additional vxassist command options to describe volume information. For example: volinfo: [[testvol1, 750m, 'layout=mirror'],[testvol2, 800m, 'layout=mirror']] | Optional |
dgtype: | Enter shared if you want to configure a shared type of disk group or leave the keyword empty. | Optional |
disks: | Specifies the list of disks that you want to add in the disk group. Use the following format to enter the disk names: Syntax: [<disk_name_1>, <disk_name_2> ,...<disk_name_n>] <disk_name_1>, <disk_name_2>, ...<disk_name_n> are the names of the disks that you want to add to the disk group. Example: [disk1,disk2,disk3] Alternatively, you can provide input as below which will fetch the disk list provided to DiskInit module. disks: "{{ disk_info['disks'] }}" Note: If diskgroup already exists then no need to provide list of disks. | Mandatory |
taginfo: | Specify a list of tags. Each tag comprises a name and value. The tags are applied to the disks that are listed below each tag entry. Syntax: taginfo: - - <tag_name_1> - <tag_value_1> - - <disk_name_1> - <disk_name_2> - - <tag_name_2> - <tag_value_2> - - <disk_name_1> - <disk_name_3> - - <tag_name_3> - <tag_value_3> - - <disk_name_2>
Example: taginfo: - - disk_use - data - - virtio0_3 - virtio0_1 - - disk_size - large - - virtio0_3 - virtio0_2 | Optional |
volinfo: | Specify the name and size of the volumes that you want to create. Additionally, if you want to create volumes based on tags, specify the tag name and tag value along with the volume name and volume size. Also, if you want to unformat the volume, specify "raw" along with volume name, size and tag. If no tag, then empty string needs to be specified. Syntax: volinfo: - - <volume_name_1> - <volume_size_1> - disktag:<tag_name_1>=<tag_value_1> - raw - - <volume_name_2> - <volume_size_2> Example: volinfo: - - vol2 - 2g - disktag:disk_use=data - - srlvol1 - 5g - '' - raw | Optional |
seednode: | Select any node from the cluster that will be used to run commands related to the operations of that cluster. Ensure that you enter the host name as provided in the in the | Mandatory |
facters: | Enter the following value to collect system-related data from the cluster servers. "{{ ansible_play_hosts_all |map('extract', hostvars, ['facts','infoscale_facts'])| select()|list }}" | Mandatory |
The fsresource module is used to create file systems in InfoScale. Use the following keywords while referencing the module in your playbook:
Table: Fsresource module keywords
Name | Description | Mandatory/Optional |
---|---|---|
state: | Specifies what state the resource should be in after the task is completed. The value for this keyword can be either present or absent. | Mandatory |
sgname: | Name of the service group where you are creating the file system. | Mandatory |
sgtype: | Specify the type of service group. This value can either be Parallel or Failover. | Mandatory |
dgname: | Name of the disk group where you are creating the file system. | Mandatory |
dgresname: | Name of the corresponding disk group resource. | Mandatory |
volname: | Name of the volume where you are creating the cluster file system. | Mandatory |
volresname: | Name of the corresponding volume resource. | Mandatory |
mnt: | Mount point of the volume where you are creating the file system. | Mandatory |
mntresname: | Name of the corresponding mount point resource. | Mandatory |
systems: | Specify the list of host names that are part of the cluster. Ensure that you enter the host names as provided in the in the Example:[hostname1,hostname2,hostname3] | Mandatory |
facters: | Enter the following value to collect system-related data from the cluster servers. "{{ ansible_play_hosts_all |map('extract', hostvars, ['facts','infoscale_facts'])| select()|list }}" | Mandatory |
The resize volume module is used to resize the VxVM volume in a simplified way. The supported operations are growto, growby, shrinkto and shrinkby which can be performed on a VxVM volume.
Table: resize_volume module keywords
Name | Description | Mandatory/Optional |
---|---|---|
State | Specifies what state the volume should be after the task is completed. The value for this keyword can be either present or absent. | Mandatory |
Seednode | Specifies the node on which the task needs to be performed. | Mandatory |
Operation | Specifies the operation to be performed on the volume. The value can be any of these - growto, growby, shrinkto and shrinkby | Mandatory |
Size | Specifies the desired size for the operation to be performed. The unit can be k, m or g. Eg. To shrink the volume by 200m, size: 200m | |
Mountpoint | Specifies the mountpoint of the volume. | Optional if dgname and volname are provided |
Dgname | Specifies the name of the disk group where the volume belongs. | Optional if mountpoint is provided |
Volname | Specifies the name of the volume. | Optional if mountpoint is provided |
Facters | Enter the following value to collect system-related data from the cluster servers. "{{ ansible_play_hosts_all | map('extract', hostvars, ['facts','infoscale_facts'])| select()|list }}" | Mandatory |
The vvrresource module is used to setup the Volume Replicator in InfoScale. On the basis of whether provided disk group is shared or non-shared, CVR or VVR resource will be configured. Use the following keywords while referencing the module in your playbook:
Table: vvrresource module keywords
Name | Description | Mandatory/Optional |
---|---|---|
state | Specifies what state the package should be in after the task is completed. Set this attribute to present to configure VVR or CVR. absent to unconfigure VVR or CVR | Mandatory |
delete_srlvol | Specifies if srlvol associated with VVR is to be deleted. Value should be 1 to delete srlvol. | Optional |
deleteprimaryonly | Specifies if only primary site of VVR is to be unconfigured. Value should be 1 to unconfigure primary site. First primary site needs to be unconfigured (using deleteprimaryonly) before unconfiguring secondary site. | Optional |
deletesecondaryonly | Specifies if only secondary site of VVR is to be unconfigured. Value should be 1 to unconfigure secondary site. First primary site needs to be unconfigured (using deleteprimaryonly) before unconfiguring secondary site. | Optional |
dgname | Name for the disk group where the Replicated Volume Group (RVG) is created. | Mandatory |
datavolname | Name of the data volume of the VVR setup. | Mandatory |
srlvolname | Name of the Storage Replicator Log (SRL) volume for the VVR setup. | Mandatory |
rvgname | Name of the Replicated Volume Group (RVG) to be created | Mandatory |
seednode | Specify any node from the cluster that will be used to run commands related to the operations of that cluster. Seednode can be set as FQDN, IP address, and short hostname. It is recommended that the seednode provided should the master node. : seednode: xx.xxx.xxx.xxx seednode: objstorer820-1-vm17.veritas.com seednode: objstorer820-1-vm17 | Mandatory |
primaryvip | Specify a virtual IP for setting up VVR on the primary site. | Mandatory |
secondaryvip | Specify a virtual IP for setting up VVR on the secondary site. | Mandatory |
createprimaryonly | Specifies if primary site of VVR is to be created. Value should be 1 to create primary site. | Optional |
createsecondaryonly | Specifies if secondary site of VVR is to be created. Value should be 1 to create secondary site. | Optional |
start_replication | Specifies if VVR replication is to be started. Value should be 1 to start replication. | Optional |
agentinfo | Specify the information required to create the VVR resource under VCS for site and cluster failover. Skip this attribute if you are not creating a VCS resource for site and cluster failover. : agentinfo: primary: clusterlist: - Cluster1 - Cluster2 networkhosts: - xx.xxx.xxx.x nic: eth0 netmask: 255.255.252.0 secretkey: "xx:xx:xx" mountpoint: /mnt_test/primary secondary: nic: ens256 netmask: 255.255.252.0 secretkey: "xx:xx:xx" mountpoint: /mnt_secondary clusterlist: - Cluster1 - Cluster2 networkhosts: - xx.xxx.xxx.x Secretkey is Azure specific and mandatory for azure. It specifies the Azure encrypted secret key for Azure cloud platform needed for AzureAuth and AzureIP resource. Provided secret key should be encrypted with respect to the primary and secondary site respectively. To plumb the VVR VIP, nic and netmask details for primary and/or secondary site should be provided. | Optional |
clusterlist | Specify a list containing the name of clusters having a GCO setup for cluster failover. | Mandatory |
networkhosts | Specify an IP address for a NIC resource. Configure the NetworkHosts attribute to ensure that the NIC resource is always online. | Mandatory |
mountpoint | Specify the path where the volume is mounted. | Mandatory |
primary | Specify information about the resources in the primary site. The NICs, MACs, and VIPs are configured to the primary site. | Mandatory |
secondary | Specify information about the resources in the primary site. The NICs, MACs, and VIPs are configured to the secondary site. | Mandatory |
rvg_sg_name | Specify a name for the RVG service group. A service group with the user-defined name is created, if it does not already exist. If this attribute is skipped, a default service group name is used. For state: absent, specify its name to delete RVG service group and the resources within it | Optional |
rvg_res_name | Specify a name for the RVG resource. A resource with the user-defined name is created, if it does not already exist. If this attribute is skipped, a default resource name is used. | Optional |
mount_sg_name | Specify a name for the MOUNT service group. A service group with the user-defined name is created, if it does not already exist. If this attribute is skipped, a default service group name is used. For state: absent, specify its name to delete MOUNT service group and the resources within it | Optional |
mount_res_name | Specify a name for the MOUNT resource. A resource with the user-defined name is created, if it does not already exist. If this attribute is skipped, a default resource name is used. | Optional |
datadg_res_name | Specify a name for the DATADG resource. A resource with the user-defined name is created, if it does not already exist. If this attribute is skipped, a default resource name is used. | Optional |
ip_res_name | Specify a name for the IP resource. A resource with the user-defined name is created, if it does not already exist. If this attribute is skipped, a default resource name is used. | Optional |
nic_res_name | Specify a name for the NIC resource. A resource with the user-defined name is created, if it does not already exist. If this attribute is skipped, a default resource name is used. | Optional |
awsip_res_name | Specify a name for the AWSIP resource. A resource with the user-defined name is created, if it does not already exist. If this attribute is skipped, a default resource name is used. | Optional |
azureip_res_name | Specify a name for the AZUREIP resource for VVR. A resource with the user-defined name is created if it does not already exist. If this attribute is skipped, a default resource name is used. | Optional |
azureauth_res_name | Specify a name for the AZUREAUTH resource for VVR. A resource with the user-defined name is created if it does not already exist. If this attribute is skipped, a default resource name is used. | Optional |
rvgprimary_res_name | Specify a name for the RVG PRIMARY resource. A resource with the user-defined name is created, if it does not already exist. If this attribute is skipped, a default resource name is used. | Optional |
iptype | Specifies the IP type - privateip or overlayip for AWSIP resource. | Mandatory for AWS only |
vvrshare_res_name | Specify a name for the VVRSHARE resource. A resource with the user-defined name is created, if it does not already exist. If this attribute is skipped, a default resource name is used. | Optional |
logownergrp_sg_name | Specify a name for the LOGOWNER service group. A service group with the user-defined name is created, if it does not already exist. If this attribute is skipped, a default service group name is used. For state: absent, specify its name to delete LOGOWNER service group and the resources within it | Optional |
logownerip_res_name | Specify a name for the LOGOWNERIP resource. A resource with the user-defined name is created, if it does not already exist. If this attribute is skipped, a default resource name is used. | Optional |
logowner_res_name | Specify a name for the LOGOWNER resource. A resource with the user-defined name is created, if it does not already exist. If this attribute is skipped, a default resource name is used. | Optional |
awsip_logowner _res_name | Specify a name for the AWSIP LOGOWNER resource. A resource with the user-defined name is created, if it does not already exist. If this attribute is skipped, a default resource name is used. | Optional |
logownernic_res_name | Specify a name for the LOGOWNER NIC resource. A resource with the user-defined name is created, if it does not already exist. If this attribute is skipped, a default resource name is used. | Optional |
azureip_logowner _res_name | Specify a name for the AZUREIP LOGOWNER resource. A resource with the Optional user-defined name is created if it does not already exist. If this attribute is skipped, a default resource name is used. | Optional |
azureauth_logowner_res_name | Specify a name for the AZUREAUTH LOGOWNER resource. A resource with the Optional user-defined name is created if it does not already exist. If this attribute is skipped, a default resource name is used. | Optional |
subscriptionid | Specifies the azure subscriptionid for Azure cloud platform needed for AzureAuth and AzureIP resource Example: subscriptionid: "xxx" | Mandatory for Azure |
clientid | Specifies the azure clientid for Azure cloud platform needed for AzureAuth and AzureIP resource Example: clientid: "xxx" | Mandatory for Azure |
tenantid | Specifies the azure tenantid for Azure cloud platform needed for AzureAuth and AzureIP resource Example: tenantid: "xxx" | Mandatory for Azure |
mountpoint_info | Specify the information about mountpoints. The mountpoints consists of: 1. volname: name of the volume 2. mountname: mount location of the volume 3. mount_res_name: resource name of the mount 4. requires_res: list of required VCS resources on which current mount depends upon. mountpoint_info: - volname: testvol1 mountname: /mnt/primary mount_res_name: custom_mount_new requires_res: [''] - volname: testvol2 mountname: /mnt/primary/2 mount_res_name: custom_mount_new2pri requires_res: ['custom_mount_new'] - volname: testvol3 mountname: /mnt/primary/3 mount_res_name: custom_mount_new3pri requires_res: ['custom_mount_new'] In the above example, mount '/mnt/primary/2' and '/mnt/primary/3' depend upon 'custom_mount_new' resource. | Optional |
facters | This attribute is used to collect system-related data from the cluster servers. Provide the following value to the attribute: "{{ ansible_play_hosts_all |map('extract', hostvars, ['facts','infoscale_facts'])| select()|list }}" | Mandatory |
The add_node module is used to add or remove nodes from a cluster. Run the following commands on the SEEDNODE of the cluster:
/opt/VRTSvcs/bin/haconf -makerw
/opt/VRTSvcs/bin/haclus -modify HacliUserLevel COMMANDROOT
/opt/VRTSvcs/bin/haconf -dump -makero
Use the following keywords while referencing the module in your playbook:
Table: Add_node module keywords
Name | Description | Mandatory/Optional |
---|---|---|
state: | Specifies what state the nodes should be in after the task is completed. The value for this keyword can be either present or absent. Use present to add nodes and use absent to delete nodes. | Mandatory |
cluster_node: | Specify any node from the cluster. Ensure that you enter the host name as provided in the in the
| Mandatory |
add_del_nodes: | List of the nodes that you want to add or delete. Example: ['hostname1', 'hostname2'] | Mandatory |
cluster_id: | Specify the ID of the cluster. | Mandatory |
cluster_uuid: | Specify the UUID of the cluster. | Mandatory |
The VipConfig module configures the virtual IP (VIP) on the mentioned host in the playbook. Using this module, with one playbook run, one VIP can be configured on the mentioned host.
Use the following keywords while referencing the module in your playbook:
Table:
Name | Description | Mandatory/Optional |
---|---|---|
nic | Specifies the NIC on which the VIP is to be applied | Mandatory |
vip | Specifies the VIP to be configured on the host | Mandatory |
netmask | Specifies the netmask of the VIP to be configured | Mandatory |
facters | Enter the following value to collect system-related data from the cluster servers. "{{ ansible_play_hosts_all |map('extract', hostvars,['facts', 'infoscale_facts']) | select()|list }}" | Mandatory |
The SecureCluster module provides secure cluster configuration of a Veritas InfoScale cluster in a single playbook run. Run the following commands on the SEEDNODE of the cluster:
/opt/VRTSvcs/bin/haconf -makerw
/opt/VRTSvcs/bin/haclus -modify HacliUserLevel COMMANDROOT
/opt/VRTSvcs/bin/haconf -dump -makero
Use the following keywords while referencing the module in your playbook:
Table:
Name | Description | Mandatory/Optional |
---|---|---|
cluster_id | Specify the ID of the cluster | Optional |
cluster_name | Specify the name of the cluster. | Optional |
seednode | Select any node from the cluster that will be used to run commands related to the operations of that cluster. Seednode can be set as FQDN, IP Address, and short hostname. Examples: seednode: objstorer820-1-vm17.veritas.com seednode: xx.xxx.xxx.xxx seednode: objstorer820-1-vm17 | Mandatory |
state | Specifies what state the nodes should be after the task is completed. The value for this keyword can be either orindicates 'Configure Secure Cluster' indicates 'Unconfigure Secure Cluster' | Mandatory |
reconfig | Specifies if the secure cluster configuration should be reconfigured. Value should be 1 to reconfigure the secure cluster. | Optional |
fips | Specifies the mode in which cluster needs to be secured. Fips:0 Secure with fips-disabled mode. Fips:1 Secure with fips-enabled mode. | Mandatory |
read_access | Specifies read_access. If 0 then grant read access to every usergroup and if 1 then grant access to either specified usergroups or no groups. | Mandatory |
usergroups | Specify the usergroups with read access | Optional |
facters | Enter the following value to collect system-related data from the cluster servers. "{{ ansible_play_hosts_all |map('extract', hostvars, ['facts','infoscale_facts']) | select()|list }}" | Mandatory |
The gco_config module configures the Veritas Infoscale Global Cluster Option on primary and secondary site clusters both in one playbook run. Before configuring GCO, it is required both the primary and secondary site clusters are secured.
Use the following keywords while referencing the module in your playbook:
Table:
Name | Description | Mandatory/Optional |
---|---|---|
primary_seednode | Specifies one of the hosts in the primary site cluster. | Mandatory |
secondary_seednode | Specifies one of the hosts in the secondary site cluster. | Mandatory |
state | Specifies what state the cluster should be in after the task is completed. The value for this keyword can be either present or absent. | Mandatory |
primary | Specifies the information required to configure GCO on the primary site. Example: primary: prefix: '' nic: {'<hostname>': 'ens192'} vip: <xx.xxx.xxx.xx> ipver: 4 netmask: '255.255.240.0' secretkey: "xx:xx:xx" Secretkey is Azure specific. It specifies the Azure encrypted secret key for Azure cloud platform needed for AzureAuth and AzureIP resources. Provided secret key should be encrypted with respect to the primary site. It is mandatory for Azure. | Mandatory |
prefix | Specifies IP prefix if ipver is 6. | Optional |
nic | Specifies the list of NICs to be used to configure GCO. This keyword accepts a dictionary where the key is hostname and the value is the associated NIC on that host in the cluster. Example: nic: {'<hostname1>': 'ens192', '<hostname2>': 'ens224'} | Mandatory |
vip | Specifies the static IP to be used for GCO configuration on primary site. This Virtual IP can be in ipv4 or ipv6 format. If it is in ipv6 format then value for 'prefix' is required. | Mandatory |
ipver | Specifies the IP version - ipv4 or ipv6. This keyword can have value as 4 or 6. | Mandatory |
netmask | Specifies the netmask to be used for GCO configuration. | Mandatory |
iptype | Specifies the IP type - privateip or overlayip for AWSIP resource. | Mandatory for AWS only |
secondary | Specifies the information required to configure GCO on the secondary site. For Example, secondary: prefix: '' nic: {'<hostname>': 'ens192'} vip: <xx.xxx.xxx.xx> ipver: 4 netmask: '255.255.240.0' secretkey: "xx:xx:xx" Secretkey is Azure specific. It specifies the Azure encrypted secret key for Azure cloud platform needed for AzureAuth and AzureIP resources. Provided secret key should be encrypted with respect to the secondary site. It is mandatory for Azure. The above keywords - prefix, nic, vip, ipver and netmask - have same significance as those for primary site and should be provided here with respect to secondary site. | Mandatory |
facters | Enter the following value to collect system-related data from the cluster servers. "{{ ansible_play_hosts_all |map('extract', hostvars, ['facts','infoscale_facts'])| select()|list }}" | Mandatory |
subscriptionid | Specifies the Azure subscriptionid for Azure cloud platform needed for AzureAuth and AzureIP resource Example: subscriptionid: "xxx" | Mandatory for Azure |
clientid | Specifies the Azure clientid for Azure cloud platform needed for AzureAuth and AzureIP resource Example: clientid: "xxx" | Mandatory for Azure |
tenantid | Specifies the Azure tenantid for Azure cloud platform needed for AzureAuth and AzureIP resource Example: tenantid: "xxx" | Mandatory for Azure |
Table: I/O fencing module keywords
Name | Description | Mandatory/Optional |
---|---|---|
state: | Specifies what state the nodes should be after the task is completed. The value for this keyword can be either present or absent. where: present indicates 'Configure Fencing' absent indicates 'Delete Fencing configuration' | Mandatory |
seednode | Select any node from the cluster that will be used to run commands related to the operations of that cluster. Ensure that you enter the host name as provided in the in the | Mandatory |
vxfenmode | Mode of fencing to be configured | Mandatory the choices are:
|
disks | List of the disks to be used for the fencing. Number of the disks must be 3 or more in odd numbers | Optional Needed only if 'disks' chosen as fencing mode |
no_coord_disk | Needs to be set if coordinator disks are not to be used. Allowed values are 0 or 1 | Optional Needed only if 'cps' chosen as fencing mode |
vxfendg | Disk group name for fencing | Optional Needed only if 'disks' chosen as fencing mode For 'cps' based fencing while using disk coord, vxfendg can be utilized if disk group already exists. |
cps | List of CP server IP:port | Optional Needed only if 'cps' fencing is chosen |
ntp_server | NTP server for time synchronization | Optional |
default_https_port | Default HTTPs port for CP servers. | Optional |
max_async_sec | Time in seconds for checking maximum async date/time on server | Optional |
cpagent | To create coordination point resources groups under VCS. Allowed values are 0 or 1. By default 1 will be set. | Optional |
The RestServerConfig module configures the REST server on the given host in a secure cluster. Ensure that the cluster is secured before configuring REST server.
Use the following keywords while referencing this module in your playbook:
Table: RestServerConfig module keywords
Name | Description | Mandatory/Optional |
---|---|---|
state | Specifies what state the cluster should be in after the task is completed. The value for this keyword can be either: present - configure REST server OR absent - unconfigure REST server | Mandatory |
REST_server_ip | Specifies the IP of REST server to be configured. This should be a free IP which can be used. | Mandatory |
REST_server_netmask | Specifies the netmask to be used to configure REST server. | Mandatory |
REST_server_nic | Specifies the NIC to be used for the REST server. | Mandatory |
REST_server_port | Specifies the port for the REST server. | Mandatory |
rest_config | Specifies which configuration option should be used to configure the REST server. Following are the options: - To use LDAP server details if it is configured. In this case, REST_server_ldap_domain, REST_server_ldap_ip and REST_server_ldap_username should be specified in the playbook - To use TP CA certificates details. In this case, REST_server_key, REST_server_cert_file and REST_server_cacert_file should be specified in the playbook To use TP CA certificates details. In this case, REST_server_key, REST_server_cert_file, REST_server_cacert_file, REST_server_ldap_domain, REST_server_ldap_ip and REST_server_ldap_username should be specified in the playbook - To configure REST server with Veritas CA certificate, without LDAP | Optional |
reconfig | Specifies if the REST server configuration should be reconfigured. The value should be 1 to reconfigure REST server. | Optional |
facters | Enter the following value to collect system-related data from the cluster servers. "{{ ansible_play_hosts_all |map('extract', hostvars, ['facts','infoscale_facts'])| select()|list }}" | Mandatory |
REST_server_ldap_domain | Specifies the domain of LDAP server to be used. | Optional |
REST_server_ldap_ip | Specifies the IP of LDAP server to be used. | Optional |
REST_server_username | Specifies the username of LDAP server to be used. | Optional |
REST_server_key | Specifies server key file, required for third party CA certificate option | Optional |
REST_server_cert_file | Specifies server certificate file, required for third party CA certificate option | Optional |
REST_server_cacert_file | Specifies server CA certificate file, required for third party CA certificate option | Optional |
REST_server_passphrase | Specifies server passphrase if available, required for third party CA certificate option | Optional |
The CPServerConfig module configures the CP Server on the single node VCS cluster.
Use the following keywords while referencing the CPServerConfig module in your playbook:
Table: CPServerConfig module keywords
Name | Description | Mandatory/Optional |
---|---|---|
cps_https_vip | Specifies the IP of CP server to be configured. This should be a free IP which can be used. | Mandatory |
cps_netmask | Specifies the netmask to be used to configure CP server. | Mandatory |
cps_nic_list | Specifies the nic to be used to configure CP server. | Mandatory |
cps_https_ports | Specifies the port for the CP server. | Mandatory |
cps_delete_database | Specifies whether the database of the CP server should be deleted while removing the configuration. The value should be 1 to delete the database. | Optional |
cps_delete_config_logs | Specifies whether the configuration and the log files of the CP server should be deleted while removing the configuration. The value should be 1 to delete the configuration and log files. | Optional |
reconfig | Specifies whether the CP Server configuration should be reconfigured. The value should be 1 to reconfigure CP Server. | Optional |
state | Specifies what state the cluster should be in after the task is completed. The value for this keyword can be either: present: configure CP Server OR absent: unconfigure CP Server | Mandatory |
facters | Enter the following value to collect system-related data from the cluster servers. "{{ ansible_play_hosts_all |map('extract', hostvars, ['facts','infoscale_facts'])| select()|list }}" | Mandatory |
vip | Specifies the IP of CP server to be configured. This should be a free IP which can be used. | Mandatory |
netmask | Specifies the netmask to be used to configure CP server. | Mandatory |
port | Specifies the port for the CP server of specific network. | Mandatory |
hosts | Specifies the host for the specific network | Mandatory |
nic | Specifies the nic for the specific network and the host. | Mandatory |
cps_diskgroup | Specifies the diskgroup for the CP server. | Optional |
cps_volume | Specifies the volume for the CP server. | Optional |
cps_newdg_disk | Specifies the name of new diskgroup to be created for the CP server configuration. | Optional |
cps_newvol_volsize | Specifies the size of new volume to be created for the CP server configuration. | Optional |
cps_delete_database | Specifies whether the database of the CP server should be deleted while removing the configuration. The value should be 1 to delete the database. | Optional |
cps_delete_config_logs | Specifies whether the config and logs file of the CP server should be deleted during the unconfiguration. The value should be 1 to delete the config and log files. | Optional |
The EO complaint logging module enables or disables the logging of all components of the cluster.
Use the following keywords while referencing the EO complaint logging module in your playbook:
Table: EO logging module keywords
Name | Description | Mandatory/Optional |
---|---|---|
state | Specifies whether EO logging should be enabled or disabled. Value should be "present" to enable and "absent" to disable. | Mandatory |
facters | Enter the following value to collect system-related data from the cluster servers. "{{ ansible_play_hosts_all |map('extract', hostvars, ['facts','infoscale_facts'])| select()|list }}" | Mandatory |
The SetTunable module sets the llt, vxvm and vxfs related tunables for the cluster.
Use the following keywords while referencing the SetTunable module in your playbook:
Table: Set Tunable module keywords
Name | Description | Mandatory/Optional |
---|---|---|
llt | Specifies the information required to set LLT related Tunables. - systems: ['dl380g9-127-vm3'] tunables: - "set-flow window: 520" - "set-flow highwater: 12000" - systems: ['all'] tunables: - "set-flow window: 521" - "set-flow highwater: 12001" Above keywords: 'systems' is a list of nodes of the cluster or ['all'] if all the nodes of the cluster need to be considered. 'tunables' is list of tunables (string) | Optional |
vm | Specifies the information required to set VxVM related Tunables. - systems: ['all'] tunables: volraid_rsrtransmax: 1 voliot_max_open: 32 'systems' is a list of nodes of the cluster or ['all'] if all the nodes of the cluster need to be considered. 'tunables' is a dict with key as tunable_name and value as tunable_value. Also, clusterwide tunable will be automatically handled. | Optional |
fs | Specifies the information required to set VxFS related Tunables. - systems: ['dl380g9-127-vm3'] tunables: - /mnt1: eo_logging_enable: 1 max_retention_time: 0 - global: eo_logging_enable: 0 - systems: ['all'] tunables: - /mnt1: eo_logging_enable: 1 max_retention_time: 0 - global: eo_logging_enable: 0 Above keywords: 'systems' is a list of nodes of the cluster or ['all'] if all the nodes of the cluster need to be considered. 'tunables' is a list of mount points and global (tunable will be set to all the mounts) which further are the dicts with key as tunable_name and value as tunable_value. | Optional |
facters | Enter the following value to collect system-related data from the cluster servers. "{{ ansible_play_hosts_all map('extract', hostvars, ['facts','infoscale_facts'])| select()|list }}" | Mandatory |
The RouteConfig module sets the routes and rules for subnets across AZ on AWS. On AWS EC2 instance, disable the following nm-cloud setup service which is a pre-requisite for the module:
systemctl stop nm-cloud-setup.timer
systemctl stop nm-cloud-setup.service
systemctl disable nm-cloud-setup.timer
systemctl disable nm-cloud-setup.service
Use the following keywords while referencing the RouteConfig module in your playbook:
Table: RouteConfig module keywords
Name | Description | Mandatory/Optional |
---|---|---|
system | Specify the system on which routes and rules need to be set. It can be FQDN, IP Address, short hostname. system: objstorer820-1-vm17.veritas.com system: xx.xxx.xxx.xxx system: objstorer820-1-vm17 | Mandatory |
nic | Specify the NIC of the system that will be used as heartbeat link | Mandatory |
ip | Specify the private ip of the system | Mandatory |
facters | Enter the following value to collect system-related data from the cluster servers. "{{ ansible_play_hosts_all |map('extract', hostvars, ['facts','infoscale_facts'])| select()|list }}" | Mandatory |
DiskInit module is used for initializing disks present on the node. You can use the following keywords while referencing the DiskInit module in your playbook:
Table: DiskInit module keywords
Name | Description | Mandatory/Optional |
---|---|---|
fss | Specifies whether the disk is a part of a Flexible Storage Sharing (FSS) optional environment. The value for this keyword can be either True or False. By default, this value is set to True. | Optional |
disks | Enter the following value for initializing disk to fetch the disks list provided in DiskInit module: Syntax: [<disk_name_1>, <disk_name_2>, , ...<disk_name_n>] <disk_name_1>, <disk_name_2>, ...<disk_name_n> are the names of the disks that you want initialise. Example: [disk1, disk2, disk3] If disks parameter is not specified, then all the uninitialized disks present on the system will be initialized using this module | Optional |
The Adddisks module is used to add or remove disks from diskgroup. Before using Adddisks module, DiskInit module should be executed for disk initialization while adding disks to diskgroup. DiskInit module is not needed when removing disks from diskgroup.
Uuse the following keywords while referencing the Adddisks module in your playbook:
Table: Adddisks module keywords
Name | Description | Mandatory/Optional |
---|---|---|
state | Specifies what state the nodes should be in after the task is completed. The value for this keyword can be either present or absent. Use present to add disks to diskgroup and use absent to delete disks from diskgroup. | Mandatory |
dgname | Name of the disk group to which disk must be added or removed. | Mandatory |
disks | To add disks: Enter the following value for adding disks in DG to fetch the disks list provided in DiskInit module: "{{disk_info['disks'] }}" To remove disks: Specifies the list of disks that you want to remove in the disk group. Use the following format to enter the disk names: Syntax: [<disk_name_1>, <disk_name_2>, , ...<disk_name_n>] <disk_name_1>, <disk_name_2>, ...<disk_name_n> are the names of the disks that you want to add to the disk group. Example: [disk1, disk2, disk3] | Mandatory |
facters | Enter the following value to collect system-related data from the cluster servers. "{{ ansible_play_hosts_all |map('extract', hostvars, ['facts', 'infoscale_facts'])| select()|list }}" | Mandatory |
The change_replication_state module is used to change replication state of Volume Replicator in InfoScale. It can be start/stop/pause/resume of VVR replication.
Use the following keywords while referencing the module in your playbook:
Table: Change Replication State module keywords
Name | Description | Mandatory/Optional |
---|---|---|
newstate | Specifies the required state of VVR replication. It can be start/stop/pause/resume. | Mandatory |
rvg_info | Specifies the list of dict containing name of dg along with list of rvgs. Syntax: [ {'dg_name': <dg_name>, 'rvg_list': <rvg_list>, 'seednode': <system_name>}, {'dg_name': <dg_name>, 'rvg_list': <rvg_list>} ] Example: [{'dg_name': 'testdg1', 'rvg_list': ['rvg_vvrtest1', 'rvg_vvrtest2']}, {'dg_name': testdg2, 'rvg_list': ['rvg_vvrtest1', 'rvg_vvrtest2'], seednode: 'r750xs-32-vm11'}] Here, seednode is optional parameter which can be any node of the cluster that can be used to run commands related to the vvr operations. | Mandatory |
secondaryvip | Specifies the virtual VIP used for setting secondary site. | Mandatory |