Virtual Partition Boot Process Overview

   

HP-UX Virtual Partitions
By Marty Poniatowski

Table of Contents
Chapter 3.  Booting and vPars


Booting partitions is similar to booting without partitions. The primary difference is the Virtual Partition Monitor - what I'll call vpmon in this chapter. vpmon is loaded at the time of boot and is located in /stand/vpmon.

The vpmon sits between the firmware and operating system on your HP 9000. Figure 3-1 depicts the position of the vpmon relative to other HP 9000 components.

Figure 3-1. Virtual Partitions Software Stack

graphics/03fig01.gif

Notice in the figure that different versions and patch levels of HP-UX 11i may be running in vPars. On Itanium Processor Family (IPF) systems, operating systems other than HP-UX may be running in vPars. This functionality was not available at the time of this writing, so only HP-UX 11i-based vPars are covered in this book.

In the process of creating vPars, a partition database is produced that tracks the resources associated with vPars. The vpmon manages these resources, loads kernels, and performs other functions that make it look as though each virtual partition is its own system.

Rather than booting a kernel directly from the ISL (see the non-vPars-specific portion of this chapter for detailed information on all aspects of booting including ISL), you boot the vpmon. The vpmon then loads the partition database /stand/vpdb and creates the vPars based on the resources allocated to the vPars in the database. vpdb is the default database which contains partition-related information. A copy of vpdb is kept on the disk for every partition and is automatically kept synchronized. When a change is made to any partition, the master vpdb is updated and then the local copies on other vPars are automatically updated. This synchronization occurs every few seconds and ensures that vpdb on all running partitions remains synchronized. If a partition is not running its vpdb cannot be updated.

graphics/chic08.gif

Without vPars you would boot the HP-UX kernel directly from ISL as shown below:

 ISL> hpux /stand/vmunix 

You can boot the vpmon from ISL with the command below:

 ISL> hpux /stand/vpmon 

The vpmon is invoked with this command and the vpmon prompt appears from which you can load vPars.

From the vpmon prompt we could issue the vparload command to load one or more Virtual Partitions. There are many options to the vparload command. There is no man page for vparload in Appendix A because it is a vpmon command. vparboot is a shell command so there is a man page in Appendix A for it. The following are the three forms of vparboot at the time of this writing:

 form1: vparload -all  form2: vparload -auto  form3: vparload -p vp_name [-b kernelpath] [-o boot_options]  [-B hardware_path] 

form1 boots all vPars. form2 boots all vPars that have the autoboot attribute set. form3 allows you to specify options such as: the kernelpath to boot; the boot_options, such as "is" for single user mode; or hardware_path, which specifies the boot device to be used for the vPar.

graphics/chic04.gif

Issuing the /stand/vpmon command at the ISL> prompt gives us the MON> prompt. To use vparload to boot all Virtual Partitions on a server we would issue the following command:

 MON> vparload -all 

To use vparload to boot Virtual Partition symbol1, we would issue the following command:

 MON> vparload -p symbol1 

You could perform the steps to load both the vpmon and virtual partition symbol1 from ISL with the command below at the ISL prompt:

 ISL> hpux /stand/vpmon vparload -p symbol1 

graphics/chic08.gif

This command boots both vpmon and then symbol1. You may perform experimentation with the kernels of the vPars on your system and have to boot different kernels. The following example shows bootting from a kernel called vmunix_test1:

 MON> vparload -p symbol1 -b /stand/vmunix_test1 

As a side note, the kernel path above is loaded with this vparload, but no permanent changes were made. To make a permanent change to the vPars database you would issue the following command:

 # vparmodify -p symbol1 -b "stand/vmunix_test1" 

The vPar database has now been modified to have a default kernel of /stand/vmunix_test1.

You can boot a vPar in single-user mode with the following command:

 MON> vparload -p symbol1 -o "is" 

There are a variety of other options that you can use for booting vPars. As you can see from this discussion, the options are similar to options you would use on a non-vPars system.

There are a variety of other commands that you can issue from MON>. The following shows some of the more common commands:

help

Displays all of the commands available in MON> as shown below (? produces the same results:)

 MON> help  Supported Commands:  ?                Print list of commands  cat              Dump contents of file to screen  cbuf             Dump contents of console buffer  getauto          Print the AUTO file  help             Print list of commands  lifls            List files in LIF  directory  log              View the event log  ls               List files in a directory  readdb           Read a partition DB  reboot           Reboot system  scan             Scan the system  toddriftreset    Reset the TOD drift of all vpars  vparload         Load vPar  vparinfo         Display vPar info 

scan

Displays all hardware discovered by the Virtual Partition monitor and indicates which vPar, if any, owns the device. Note in the following listing that some components, such as the System Bus Adapters (SBAs) at 0 and 1 and the memory controller at 192, are owned by the Virtual Partition monitor and are therefore owned by VPAR-ALL. Other components are owned by vPar uhnjlvp1/2. This is an informative listing of all components and the vPar that owns them, as shown below:

 MON> scan  0           BUSCONV     sv_model= 12 HPA=0xfffffffffed00000  VPAR=ALL  0/0         BUS_BRIDGE  sv_model= 10 HPA=0xffffffffbffe0000  VPAR=uhnjlvp1  0/1         BUS_BRIDGE  sv_model= 10 HPA=0xffffffffbffe2000  VPAR=NONE  0/2         BUS_BRIDGE  sv_model= 10 HPA=0xffffffffbffe4000  VPAR=NONE  0/4         BUS_BRIDGE  sv_model= 10 HPA=0xffffffffbffe8000  VPAR=NONE  0/5         BUS_BRIDGE  sv_model= 10 HPA=0xffffffffbffea000  VPAR=NONE  0/8         BUS_BRIDGE  sv_model= 10 HPA=0xffffffffbfff0000  VPAR=uhnjlvp2  0/10        BUS_BRIDGE  sv_model= 10 HPA=0xffffffffbfff4000  VPAR=NONE  0/12        BUS_BRIDGE  sv_model= 10 HPA=0xffffffffbfff8000  VPAR=uhnjlvp1  1           BUSCONV     sv_model= 12 HPA=0xfffffffffed40000  VPAR=ALL  1/0         BUS_BRIDGE  sv_model= 10 HPA=0xfffffffffece0000  VPAR=NONE  1/2         BUS_BRIDGE  sv_model= 10 HPA=0xfffffffffece4000  VPAR=NONE  1/4         BUS_BRIDGE  sv_model= 10 HPA=0xfffffffffece8000  VPAR=NONE  1/8         BUS_BRIDGE  sv_model= 10 HPA=0xfffffffffecf0000  VPAR=NONE  1/10        BUS_BRIDGE  sv_model= 10 HPA=0xfffffffffecf4000  VPAR=NONE  1/12        BUS_BRIDGE  sv_model= 10 HPA=0xfffffffffecf8000  VPAR=uhnjlvp2  36          BUSCONV     sv_model= 12 HPA=0xfffffffffed24000  VPAR=NONE  37          NPROC       sv_model=  4 HPA=0xfffffffffed25000  VPAR=uhnjlvp1  44          BUSCONV     sv_model= 12 HPA=0xfffffffffed2c000  VPAR=NONE  45          NPROC       sv_model=  4 HPA=0xfffffffffed2d000  VPAR=uhnjlvp2  192         MEMORY      sv_model=  9 HPA=0xfffffffffedc0000  VPAR=ALL  MON> vparinfo uhnjlvp1  Resources assigned to partition 0 (uhnjlvp1)...  ------------------------------------- 0           0xfffffffffed00000      1       0  TYPE= 7 SV_MODEL= 12  0/0         0xffffffffbffe0000      1       0  TYPE=13 SV_MODEL= 10  0/12        0xffffffffbfff8000      1       0  TYPE=13 SV_MODEL= 10  1           0xfffffffffed40000      1       0  TYPE= 7  SV_MODEL= 12  37          0xfffffffffed25000      1       0  TYPE= 0  SV_MODEL=  4  192         0xfffffffffedc0000      1       0  TYPE= 1  SV_MODEL=  9  Effective Size: 1572864 kb  Boot: 0/0/2/0.6.0  Console: 0/0/4/0  Boot Image: (0/0/2/0.6.0;)/stand/vmunix  Boot Options:  AUTOBOOT:off  DYNAMIC 

vparinfo [partition_name]

Displays resources assigned to the specified vPar or those resources that are unassigned if the vPar name is not specified. The following listing shows the resources assigned to vPar uhnjlvp2:

 MON> vparinfo uhnjlvp2  Resources assigned to partition 1 (uhnjlvp2)...  ------------------------------------- 0           0xfffffffffed00000      1       0  TYPE= 7  SV_MODEL= 12  0/8         0xffffffffbfff0000      1       0  TYPE=13  SV_MODEL= 10  1           0xfffffffffed40000      1       0  TYPE= 7  SV_MODEL= 12  1/12        0xfffffffffecf8000      1       0  TYPE=13  SV_MODEL= 10  45          0xfffffffffed2d000      1       0  TYPE= 0  SV_MODEL=  4  192         0xfffffffffedc0000      1       0  TYPE= 1  SV_MODEL=  9  Effective Size: 524288 kb  Boot: 1/12/0/0.12.0  Console: Default  Boot Image: (1/12/0/0.12.0;)/stand/vmunix  Boot Options:  AUTOBOOT:off  DYNAMIC 

vparload

The three forms of this command are listed below. The example after the three forms shows the beginning of loading all vPars with vparload -all:

 form1: vparload -all  form2: vparload -auto  form3: vparload -p vp_name [-b kernelpath] [-o boot_options]  [-B hardware_path]  MON> vparload -all  [MON] Booting uhnjlvp2...  [MON] Booting uhnjlvp1...  [MON] Console client set to uhnjlvp2  [MON] uhnjlvp2 loaded  [MON] uhnjlvp1 loaded               .               .               . 

lifls

Displays the files in the LIF area as shown below:

 MON> lifls  volume ISL10 data size 7802 directory size 8  filename   type   start   size     implement  created  ======================================================  ODE        -12960 584     848  MAPFILE    -12277 1432    128  SYSLIB     -12280 1560    353  CONFIGDATA -12278 1920    218  SLMOD2     -12276 2144    140  SLDEV2     -12276 2288    134  SLDRV2     -12276 2424    168  SLSCSI2    -12276 2592    116  MAPPER2    -12279 2712    142  IOTEST2    -12279 2856    89  PERFVER2   -12279 2952    125  PVCU       -12801 3080    64  SSINFO     -12286 3144    2  ISL        -12800 3152    306  AUTO       -12289 3464    1  HPUX       -12928 3472    848  LABEL      -23951 4320    8 

getauto

Displays the contents of the LIF area auto file as shown below:

 MON> getauto  hpux 

log

Displays all information in the Virtual Partition monitor log. The information is displayed in chronological order as shown below:

 MON> log  INFO:CPU0:MON:[20:16:31 10/1/2001 GMT] VPAR Monitor ver- sion 0.2 started  INFO:CPU0:MON:Version  string:  @(#)  $Revision:  vpmon:  vw: --    selectors: CUP  11.11_BL2001_0616            'cup_cvinod_vpar_ncf_trial'  'cup_shep_r11.11'  Tue Sep 25 18:2  1:12 PDT 2001 $  INFO:CPU0:MON:Partition uhnjlvp1 monarch set to 37  INFO:CPU0:MON:Partition uhnjlvp2 monarch set to 45 

ls directory

Lists the contents of a directory in much the same way as UNIX ls command. At the time of this writing, the directory must be HFS. The /stand directory is used by default. You can also add -a for all entries, -l for long listing, -n for numerical entries, -i for inode, and -F for file type appended to the output, such as a slash (/) after directories, as shown below using the -l option:

 MON> ls -l /stand  drwxr-xr-x    2 0    0          8192 lost+found  -rw-rw-rw-    1 0    3          5416 ioconfig  drwxr-xr-x    4 0    3          2048 build  -rwxr-xr-x    1 0    0      15273152 vmunix  drwxrwxrwx    5 0    3          1024 dlkm.vmunix.prev  -rw-r--r--    1 0    3            19 bootconf  -r--r--r--    1 0    3            82 kernrel  -rw-------    1 0    0            12 rootconf  -r--r--r--    1 0    3          1040 system  -r--r--r--    1 0    3          1035 system.prev  -rwxr-xr-x    1 0    3      14488016 vmunix.prev  drwxrwxrwx    5 0    0          1024 dlkm  drwxr-xr-x    2 0    3          1024 system.d  drwxr-xr-x    2 0    3          1024 krs  drwxr-xr-x    2 0    0          1024 krs_tmp  drwxr-xr-x    2 0    0          1024 krs_lkg  -r-xr-xr-x    1 2    2       845680 vpmon  -rw-------    1 0    0       102640 vpmon.dmp  -rw-------    2 0    0         8232 vpdb 

cbuf partition_name

Displays the information in the console buffer for the specified Virtual Partition. If no information is present in the buffer you'll receive the following message:

 MON> cbuf uhnjlvp1      Buffer is empty 

Many of these commands at MON> are informative. Let's now move on to vPars states.


       
    Top
     



    HP-UX Virtual Partitions
    HP-UX Virtual Partitions
    ISBN: 0130352128
    EAN: 2147483647
    Year: 2002
    Pages: 181

    flylib.com © 2008-2017.
    If you may any questions please contact us: flylib@qtcs.net