How to Backup and Upgrade a Virtual I/O Server Part I

How to Backup and Upgrade a Virtual I/O Server



Editor’s note: This is the first of a two-part series on Virtual I/O Server (VIOS) care and feeding.

VIOS is a critical component of any POWER virtualized environment. Best practices dictate it be kept current and backed up. This article focuses on backups and upgrades, while part two will provide tips and tricks as well as using file-backed optical (FBO).

Backing up the VIOS

To ensure structures for the volume groups (VGs) and virtual definitions are backed up, run a savevgstruct and viosbr prior to backing up a VIOS. Using savevgstruct writes a backup of the structure of the named VG to the /home/ios/vgbackups directory. This is automatically called for all active non-rootvg VGs or storage pools on a VIOS when backupios is run, however, run one anyway to be safe. A sample backup script might contain:

su - padmin -c "ioscli savevgstruct datavg" 
su - padmin -c "ioscli savevgstruct rootclients_vg" 
su - padmin -c "ioscli viosbr –backup –file /tmp/viosabr.backup”
Mount the NFS repository for the backups (/nfsmnt)
su – padmin –c “ioscli backupios –file /nfsmnt/vio2-jun2813.mksysb  -mksysb”

The viosbr command can also be used to view or restore the structures as explained further by the IBM information center.

The previous script backs up the VIOS to a bootable mksysb file. To use the backup with NIM, replace the backupios above with:

mkdir /nfsmnt/nimbkups
backupios -file /nfsmnt/nimbkups

This creates a nim_resources.tar file that can be used for restores as described here.

Integrating VIOS Installs With NIM

A VIOS can be installed using NIM, however, specific steps need to be taken when setting up the VIOS NIM environment:

  1. Add the VIOS partition as a NIM client.
  2. Copy the VIOS mksysb image from the CD to your NIM master.
  3. VIOS 2.2 media now contain three images—the third is on DVD 2—so copy all three images individually to a directory and then use cat to combine them:
    cat /export/mksysb/vios2.2/mksysb_image 
  4. Now, define the mksysb resource to NIM master.
  5. Define the SPOT on NIM master with the source being the combined mksysb file. (The SPOT cannot be created from an lpp_source.)
  6. Copy the from the DVD and create a viosbosinst resource.

You can now use bos_inst to perform a mksysb install once the partition profile is defined, as explained here.

Updating VIOS

A good strategy for updates starts with updating the Hardware Management Console (HMC), then the firmware, the VIOS and the LPARs. But first, check to ensure the various combinations along the way are compatible and supported.

  1. Download the updates and cross-check compatibility by using FLRT.
  2. Read the VIOS upgrade README file. This is critical and will prevent many problems as it includes the steps required prior to installation.
  3. Check that there are no problems currently with stale physical partitions (PPs), missing disks, etc.
  4. Ensure all paths are redundant so when the VIOS is rebooted the LPARs stay up.
  5. Use HMC Scanner or mksysplan to document the environment:
    • lsvg rootvg checks for stale PPs and physical volumes.
    • lsvg -pv rootvg looks for missing disks.
    • lspath checks for missing paths.
    • netstat –cdlistats determines if link status is up on all used interfaces.
    • errpt checks for errors.
  6. Run the savescript (A) and before backing up the VIOS.
  7. Mount the NFS mountpoint or use the DVD and assign to the VIOS:
  8. Use updateios –commit to commit any uncommitted updates.

The following installs all the fixes in the directory listed by -dev updateios -dev /nfsmount/vios2221 -install -accept. When using system support programs, the upgrade may hang at the end with:

installp:  * * *  A T T E N T I O N ! ! ! 
        Software changes processed …….. effective.

Use ctrl-C to exit this. After the upgrade is complete:

oslevel -s
instfix -i | grep ML
    All filesets for 6100-07_AIX_ML were found.
    All filesets for were found.
    Not all filesets for 6100-08_AIX_ML were found.

If some file sets aren’t found, then some didn’t go on and get updated. Typically, this will be some of the language sets or the alt disk install images. These can be found with:

# oslevel -sq
Known Service Packs

# oslevel -s -l 6100-08-02-1316
Fileset                                 Actual Level       Service Pack Level

These can either be updated or removed to get everything consistent. To update them, copy the necessary updates of the file sets into their own directory and use updateios pointing to that directory or use–remove flag to remove the file sets if they aren’t critical. Now set the bootlist after running bosboot:

bosboot -a -d hdisk0
bosboot -a -d hdisk1
bootlist –m normal hdisk0 hdisk1

Reboot and Backup

Now, it’s time to reboot. Once both VIO servers are complete—and if all is well—run another backup. To save VIO information, see Code Sample 1 and look for part two for more tips and tricks, and how to use FBO.


su - padmin -c "ioscli ioslevel"
su - padmin -c "ioscli lsdev -type disk"
su - padmin -c "ioscli lsdev -type adapter"
su - padmin -c "ioscli lsdev -vpd"
su - padmin -c "ioscli lsdev -slots"
su - padmin -c "ioscli lsmap -all"
su - padmin -c "ioscli lsmap -all -npiv"
su - padmin -c "ioscli lsdev -virtual"
su - padmin -c "ioscli lsdev -virtual"
su - padmin -c "ioscli cfgnamesrv -ls "
su - padmin -c "ioscli entstat -all ent9 "
su - padmin -c "ioscli hostmap -ls"
su - padmin -c "ioscli lsuser"
su - padmin -c "ioscli netstat -routinfo"
su - padmin -c "ioscli optimizenet -list"
su - padmin -c "ioscli viosecure -firewall view"
su - padmin -c "ioscli viosecure -view -nonint"
oslevel -s

getlvodm -C > disktmp.txt
while read label line
echo "Hdisk is $label"
su - padmin -c "ioscli lsdev -dev $label -attr"
done <"disktmp.txt"


0 (0)
Article Rating (No Votes)
Rate this article
There are no attachments for this article.
There are no comments for this article. Be the first to post a comment.
Full Name
Email Address
Security Code Security Code
Related Articles RSS Feed
How to Configure Sendmail not to Look up MX records
Viewed 2863 times since Fri, Apr 19, 2019
7 Tips – Tuning Command Line History in Bash
Viewed 4411 times since Fri, Jul 5, 2019
Using Kerberos security with Server for NFS
Viewed 8631 times since Wed, Jun 27, 2018
AIX 6/7 Script to create a file with commands to remove missing and failed paths
Viewed 1985 times since Tue, Jun 14, 2022
Changing ’defined’ or ’missing’ hard disk states to ’Available’ in IBM Smart Analytics System for AIX environment
Viewed 2086 times since Thu, Sep 20, 2018
AIX lsdevinfo
Viewed 9791 times since Mon, Jun 3, 2019
Awesome Command to show top 15 processes using memory on AIX
Viewed 23226 times since Thu, Nov 29, 2018
IP configuration in AIX
Viewed 2246 times since Tue, Jul 17, 2018
AIX ODM for MPIO User Guide 09
Viewed 3445 times since Mon, Dec 31, 2018
Part 1, Network overview - Monitoring the hardware
Viewed 5047 times since Mon, Jun 4, 2018