Veritas InfoScale™ Installation, Upgrade, and Configuration Using Ansible - Linux

Last Published:
Product(s): InfoScale & Storage Foundation (8.0.2, 8.0, 7.4.3, 7.4.2, 7.4.1)
Platform: Linux

Ansible modules for upgrading InfoScale

Use the following Ansible modules in your playbooks to perform upgrade-related operations. Refer to the following table for a list of modules, along with a sample playbook, used for each of the operations:

Table: Upgrade-related operations

Operation

Required modules

Sample playbook

Full upgrade

  • site_facters

  • upgrade

Sample playbook - YAML

---
- hosts: cluster-47-48-49
  gather_facts: False
  any_errors_fatal: true
  tasks:
  - name: Facters
    veritas_infoscale:
     module: site_facters
     release_matrix_path: <URL>
     register: facts
  - name: Full Upgrade
     veritas_infoscale:
     module: upgrade
     repository_name: repo_infoScale743
     product_version: 7.4.3
     repository_baseurl: "http://xx.xxx.xx.xx/\
     Infoscale/7.4.3/rhel7_x86_64/rpms/"
     gpgcheck: 1
     gpgkey: "http://xx.xxx.xx.xx/\
     Infoscale/7.4.3/rhel7_x86_64/rpms/\
     RPM-GPG-KEY-veritas-infoscale7"
     license: ENTERPRISE
     seednode: <one of the nodes in cluster>
     state: present
     facters: "{{ ansible_play_hosts_all 
|map('extract', hostvars, ['facts','infoscale_facts'])
| select()|list }}" 
 

Sample playbook - JSON

[
   {
      "hosts": "cluster-47-48-49",
      "gather_facts": false,
      "any_errors_fatal": true,
      "tasks": [
         {
            "name": "Facters",
            "veritas_infoscale": {
               "module": "site_facters",
               "release_matrix_path: "<URL>"
            },
            "register": "facts"
         },
         {
            "name": "Full Upgrade",
            "veritas_infoscale": {
               "module": "upgrade",
               "repository_name": "repo_infoScale743",
               "product_version": "7.4.3",
               "repository_baseurl": "http://xx.xxx.xx.xx/\
                Infoscale/7.4.3/rhel7_x86_64/rpms/",
               "gpgcheck": 1,
               "gpgkey": "http://xx.xxx.xx.xx/\
                Infoscale/7.4.3/rhel7_x86_64/rpms/\
                RPM-GPG-KEY-veritas-infoscale7",
               "license": "ENTERPRISE",
               "seednode": "<one of the nodes in cluster>",
               "state": "present",
               "facters": "{{ ansible_play_hosts_all 
|map('extract', hostvars, ['facts','infoscale_facts'])
| select()|list }}"
            }
         }
      ]
   }
]

Rolling upgrade

  • site_facters

  • ru_phase1

  • ru_phase2

Sample playbook - YAML

---
- hosts: <ansible_host_group>
  gather_facts: False
  any_errors_fatal: true
  tasks:
  - name: Facters
    veritas_infoscale:
     module: site_facters
     release_matrix_path: <URL>
    register: facts

- hosts: <ansible_host_group>
  gather_facts: False
  any_errors_fatal: true
  serial: 1
  tasks:
  - name: Rolling Upgrade(phase1) Infoscale
    veritas_infoscale:
     module: ru_phase1
     repository_name: repo_infoScale743
     product_version: '7.4.3'
     repository_baseurl: "http://xx.xxx.xx.xx/\
     Infoscale/7.4.3/rhel7_x86_64/rpms/"
     gpgcheck: 1
     gpgkey: "http://xx.xxx.xx.xx/\
     Infoscale/7.4.3/rhel7_x86_64/rpms/\
     RPM-GPG-KEY-veritas-infoscale7"
     license: ENTERPRISE
     seednode: <one of the nodes in cluster>
     state: present
     facters: "{{ ansible_play_hosts_all |
map('extract', hostvars, ['facts','infoscale_facts'])
| select()|list }}"

- hosts: <anisble_host_group>
  gather_facts: False
  any_errors_fatal: true
  tasks:
  - name: Rolling Upgrade(phase2) Infoscale
    veritas_infoscale:
     module: ru_phase2
     repository_name: repo_infoScale743
     product_version: '7.4.3'
     repository_baseurl: "http://xx.xxx.xx.xx/\
     Infoscale/7.4.3/rhel7_x86_64/rpms/"
     gpgcheck: 1
     gpgkey: "http://xx.xxx.xx.xx/\
     Infoscale/7.4.3/rhel7_x86_64/rpms/\
     RPM-GPG-KEY-veritas-infoscale7"
     license: ENTERPRISE
     seednode: <one of the nodes in cluster>
     state: present
     facters: "{{ ansible_play_hosts_all |
map('extract', hostvars, ['facts','infoscale_facts'])
| select()|list }}"

Sample playbook - JSON

[
   {
      "hosts": "<ansible_host_group>",
      "gather_facts": false,
      "any_errors_fatal": true,
      "tasks": [
         {
            "name": "Facters",
            "veritas_infoscale": {
               "module": "site_facters",
               "release_matrix_path": "<URL>"
            },
            "register": "facts"
         }
      ]
   },
   {
      "hosts": "<ansible_host_group>",
      "gather_facts": false,
      "any_errors_fatal": true,
      "serial": 1,
      "tasks": [
         {
            "name": "Rolling Upgrade(phase1) Infoscale",
            "veritas_infoscale": {
               "module": "ru_phase1",
               "repository_name": "repo_infoScale743",
               "product_version": "7.4.3",
               "repository_baseurl": "http://xx.xxx.xx.xx/\
                Infoscale/7.4.3/rhel7_x86_64/rpms/",
               "gpgcheck": 1,
               "gpgkey": "http://xx.xxx.xx.xx/\
                Infoscale/7.4.3/rhel7_x86_64/rpms/\
                RPM-GPG-KEY-veritas-infoscale7",
               "license": "ENTERPRISE",
               "seednode": "<one of the nodes in cluster>",
               "state": "present",
               "facters": "{{ ansible_play_hosts_all 
|map('extract', hostvars, ['facts','infoscale_facts'])
| select()|list }}"
            }
         }
      ]
   },
   {
      "hosts": "<ansible_host_group>",
      "gather_facts": false,
      "any_errors_fatal": true,
      "tasks": [
         {
            "name": "Rolling Upgrade(phase2) Infoscale",
            "veritas_infoscale": {
               "module": "ru_phase2",
               "repository_name": "repo_infoScale743",
               "product_version": "7.4.3",
               "repository_baseurl": "http://xx.xxx.xx.xx/\
                Infoscale/7.4.3/rhel7_x86_64/rpms/",
               "gpgcheck": 1,
               "gpgkey": "http://xx.xxx.xx.xx/\
                Infoscale/7.4.3/rhel7_x86_64/rpms/\
                RPM-GPG-KEY-veritas-infoscale7",
               "license": "ENTERPRISE",
               "seednode": "<one of the nodes in cluster>",
               "state": "present",
               "facters": "{{ ansible_play_hosts_all 
|map('extract', hostvars, ['facts','infoscale_facts'])
| select()|list }}"
            }
         }
      ]
   }
]

Patch upgrade (method 1)

  • site_facters

  • patchupgrade

Sample playbook - YAML

---
- hosts: <ansible_host_group>
  gather_facts: false
  any_errors_fatal: true
  tasks:
  - name: Facters
    veritas_infoscale:
     module: site_facters
     release_matrix_path: <URL>
    register: facts
  - name: Install InfoScale
    veritas_infoscale:
     module: patchupgrade
     ignore_patchid_check: 0
     patch_repo_list:
      - "file:///mnt/7.4.2/patch_central/P/\
         infoscale/rhel7_x86_64/7.4.2.1200/rpms"
     facters: "{{ ansible_play_hosts_all |
map('extract', hostvars, ['facts','infoscale_facts'])
| select()|list }}"
     state: present

Sample playbook - JSON

[
   {
      "hosts": "<ansible_host_group>",
      "gather_facts": false,
      "any_errors_fatal": true,
      "tasks": [
         {
            "name": "Facters",
            "veritas_infoscale": {
               "module": "site_facters",
               "release_matrix_path": "<URL>"
            },
            "register": "facts"
         },
         {
            "name": "Install InfoScale",
            "veritas_infoscale": {
               "module": "patchupgrade",
               "ignore_patchid_check": 0,
               "patch_repo_list": [
                  "file:///mnt/7.4.2/patch_central/P/\
                   infoscale/rhel7_x86_64/7.4.2.1200/rpms"
               ],
               "facters": "{{ ansible_play_hosts_all |
map('extract', hostvars, ['facts','infoscale_facts'])
| select()|list }}",
               "state": "present"
            }
         }
      ]
   }
]

Patch upgrade (method 2)

  • site_facters

  • yum

Sample playbook - YAML

---
- hosts: <ansible_host_group>
  gather_facts: false
  any_errors_fatal: true
  tasks:
  - name: Facters
    veritas_infoscale:
     module: site_facters
     release_matrix_path: <URL>
    register: facts
  - name: Install InfoScale
    veritas_infoscale:
     module: yum
     repository_name: <repository name>
     repository_baseurl: <repository base URL>
     gpgcheck: 1
     gpgkey: <gpgkey>
     product: ENTERPRISE
     product_version: '7.4.2'
     ignore_patchid_check: 0
     patch_repo_list:
      - "file:///mnt/7.4.2/patch_central/P/\
         infoscale/rhel7_x86_64/7.4.2.1200/rpms"
     facters: "{{ ansible_play_hosts_all |
map('extract', hostvars, ['facts','infoscale_facts'])
| select()|list }}"
     state: present

Sample playbook - JSON

[
   {
      "hosts": "<ansible host group>",
      "gather_facts": false,
      "any_errors_fatal": true,
      "tasks": [
         {
            "name": "Facters",
            "veritas_infoscale": {
               "module": "site_facters",
               "release_matrix_path": "<URL>"
            },
            "register": "facts"
         },
         {
            "name": "Install InfoScale",
            "veritas_infoscale": {
               "module": "yum",
               "repository_name":"<repository name>",
               "repository_baseurl":"<repository base URL>",
               "gpgcheck": 1,
               "gpgkey": "<gpgkey>",
               "product": "ENTERPRISE",
               "product_version": "7.4.2",
               "ignore_patchid_check": 0,
               "patch_repo_list": [
                  "file:///mnt/7.4.2/patch_central/P/\
                   infoscale/rhel7_x86_64/7.4.2.1200/rpms"
               ],
               "facters": "{{ ansible_play_hosts_all |
map('extract', hostvars, ['facts','infoscale_facts'])
| select()|list }}",
               "state": "present"
            }
         }
      ]
   }
]