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
Installing a Interim Fix (APAR IV16587)
Viewed 2731 times since Tue, Jul 17, 2018
Script to make mksysb backup from NIM to LPAR
Viewed 3472 times since Thu, Feb 21, 2019
Setup private yum repository for AIX clients
Viewed 10876 times since Thu, Feb 21, 2019
Got Duplicate PVIDs in Your User VG? Try Recreatevg!
Viewed 3037 times since Fri, Feb 1, 2019
AIX: Script to get Total Disk Size
Viewed 3433 times since Tue, Jun 12, 2018
Part 2, Monitoring memory usage (ps, sar, svmon, vmstat) and analyzing the results AIX7
Viewed 12328 times since Wed, Jun 19, 2019
AIX NTP Client configuration
Viewed 11575 times since Tue, Jul 17, 2018
AIX WIKIS developerworks
Viewed 2182 times since Sun, Jun 17, 2018
How to know witch process is running in a particular port on AIX using KDB
Viewed 12387 times since Thu, Nov 29, 2018
Secure Secure Shell
Viewed 10218 times since Fri, Aug 21, 2020