When working with Virtual Partitions you "carve up" your system in such a way that components are devoted to a Virtual Partition. This is done to accomplish the maximum isolation between Virtual Partitions in order to minimize the effect of one Virtual Partition on another Virtual Partition. At the time of this writing, components that are at or below the Local Bus Adapter (LBA) level are devoted to a partition. Since the layout of systems varies depending on the model, you need to become familiar with the layout of your system to the extent that you can determine the location of components in your system relative to the LBA level. We'll cover some examples of how to determine levels on your system in this chapter. Keep in mind, however, that new systems are introduced often, so there may not be an example covering your specific system in the upcoming examples. Above the LBA level, system components may be shared to some extent. As we saw in Chapter 2, CPUs may be bound or unbound as they relate virtual partitions, memory is segmented into areas devoted to virtual partitions, and System Bus Adapters (SBAs) can be shared among virtual partitions. In the next sections we'll take a look at system components and their paths. Although we specified components to add to virtual partitions in Chapter 2, we didn't take a close look at how you determine the components of which your system is comprised so that you can select which components you'll use in which partitions. Table 5-1, which is taken from the tear out card supplied with this book, describes the way in which the components of your system are specified when working with vPars: Table 5-1. Working with CPU, I/O, and Memory in vPars Command | Description |
---|
Specify CPU Resources by: Types of CPUs: | Number of bound and unbound CPUs: cpu::num CPU hardware path(s): cpu:path Minimum and maximum number: cpu:::[min][:[max]] Bound: CPU is tied to a Virtual Partition when vPar is active. Allocation is done at the time vPar is created. Lowest number bound CPU is monarch. Interrupts handled by bound CPUs. Unbound: CPU that can be dynamically reassigned. Do not handle interrupts. | Specify Memory by: | Size mem::size Base and range: mem:::base:range combination of both above. | Specify I/O: | Use path: io:path[:attr1[,attr2[...]]] (see man page vparresources for details). | To add resources use: (This adds component relative to what already exists if running vparmodify.) | -a cpu:path -a cpu::num [-a cpu::num] [-a cpu:::[min]:[max]] -[a cpu:path] (vparcreate only) -a io:path[:attr1[,attr2[...]] -a mem::size -a mem:::base:range | To delete resources use: | -d cpu:path -d cpu::num -d io:path[:attr1[,attr2[...]] -d mem::size -d mem:::base:range | To modify resources use: (This modifies to absolute number rather than relative.) | -m cpu:path -m cpu::num -m cpu:::min [-m cpu::num] [-m cpu:::min:[max]] -[m cpu:path] -m io:path[:attr1[,attr2[...]] -m mem::size | We 'll use many commands related to these components in upcoming sections and specify the components in the manner shown in Table 5-1. Virtual Partitions and Local Bus Adapters First, let's run an ioscan -f to produce a full listing of the components in a system: # ioscan -f N-Class Class I H/W Path Driver S/W State H/W Type Description =========================================================================== root 0 root CLAIMED BUS_NEXUS ioa 0 0 sba CLAIMED BUS_NEXUS System Bus Adapter (803) ba 0 0/0 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) lan 0 0/0/0/0 btlan3 CLAIMED INTERFACE PCI Ethernet (10110019) ext_bus 0 0/0/1/0 c720 CLAIMED INTERFACE SCSI C895 Ultra Wide Single-Ended target 0 0/0/1/0.1 tgt CLAIMED DEVICE disk 0 0/0/1/0.1.0 sdisk CLAIMED DEVICE HP DVD-ROM 305 target 1 0/0/1/0.7 tgt CLAIMED DEVICE ctl 0 0/0/1/0.7.0 sctl CLAIMED DEVICE Initiator ext_bus 1 0/0/2/0 c720 CLAIMED INTERFACE SCSI C875 Ultra Wide Single-Ended target 2 0/0/2/0.6 tgt CLAIMED DEVICE disk 1 0/0/2/0.6.0 sdisk CLAIMED DEVICE SEAGATE ST336704LC target 3 0/0/2/0.7 tgt CLAIMED DEVICE ctl 1 0/0/2/0.7.0 sctl CLAIMED DEVICE Initiator ext_bus 2 0/0/2/1 c720 CLAIMED INTERFACE SCSI C875 Ultra Wide Single-Ended target 4 0/0/2/1.6 tgt CLAIMED DEVICE disk 2 0/0/2/1.6.0 sdisk CLAIMED DEVICE SEAGATE ST336704LC target 5 0/0/2/1.7 tgt CLAIMED DEVICE ctl 2 0/0/2/1.7.0 sctl CLAIMED DEVICE Initiator tty 0 0/0/4/0 asio0 CLAIMED INTERFACE PCI Serial (103c1048) tty 1 0/0/5/0 asio0 CLAIMED INTERFACE PCI Serial (103c1048) ba 1 0/1 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 2 0/2 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 3 0/4 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) lan 1 0/4/0/0 btlan5 CLAIMED INTERFACE HP A5230A/B5509BA PCI 10/100Base-TX Addon ba 4 0/5 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 5 0/5/0/0 PCItoPCI CLAIMED BUS_NEXUS PCItoPCI Bridge lan 3 0/5/0/0/4/0 btlan CLAIMED INTERFACE HP A5506B PCI 10/100Base-TX 4 port lan 4 0/5/0/0/5/0 btlan CLAIMED INTERFACE HP A5506B PCI 10/100Base-TX 4 port lan 5 0/5/0/0/6/0 btlan CLAIMED INTERFACE HP A5506B PCI 10/100Base-TX 4 port lan 6 0/5/0/0/7/0 btlan CLAIMED INTERFACE HP A5506B PCI 10/100Base-TX 4 port ba 6 0/8 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 7 0/10 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 8 0/12 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) fc 0 0/12/0/0 td CLAIMED INTERFACE HP Tachyon TL/TS Fibre Channel Mass Storage Adapter fcp 0 0/12/0/0.1 fcp CLAIMED INTERFACE FCP Domain ioa 1 1 sba CLAIMED BUS_NEXUS System Bus Adapter (803) ba 9 1/0 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 10 1/2 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 11 1/4 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 12 1/8 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 13 1/10 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) fc 1 1/10/0/0 td CLAIMED INTERFACE HP Tachyon TL/TS Fibre Channel Mass Storage Adapter fcp 1 1/10/0/0.2 fcp CLAIMED INTERFACE FCP Domain ba 14 1/12 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) lan 2 1/12/0/0 btlan5 CLAIMED INTERFACE HP A5230A/B5509BA PCI 10/100Base-TX Addon pbc 0 36 pbc CLAIMED BUS_NEXUS Bus Converter processor 0 37 processor CLAIMED PROCESSOR Processor pbc 1 44 pbc CLAIMED BUS_NEXUS Bus Converter processor 1 45 processor CLAIMED PROCESSOR Processor pbc 2 100 pbc CLAIMED BUS_NEXUS Bus Converter processor 2 101 processor CLAIMED PROCESSOR Processor pbc 3 108 pbc CLAIMED BUS_NEXUS Bus Converter processor 3 109 processor CLAIMED PROCESSOR Processor memory 0 192 memory CLAIMED MEMORY Memory # With this full listing we can see the many components of which this NClass system is comprised. All of the devices are claimed,meaning that software drivers exist for the devices and the software is bound. Going back to our earlier discussion regarding LBAs, we would like to know what components are on what LBAs so that we can plan the partition layout. Issuing the following command will produce a list of LBAs and SBAs: # ioscan -f | grep ba N-Class ioa 0 0 sba CLAIMED BUS_NEXUS System Bus Adapter (803) ba 0 0/0 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 1 0/1 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 2 0/2 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 3 0/4 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 4 0/5 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 5 0/5/0/0 PCItoPCI CLAIMED BUS_NEXUS PCItoPCI Bridge ba 6 0/8 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 7 0/10 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 8 0/12 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ioa 1 1 sba CLAIMED BUS_NEXUS System Bus Adapter (803) ba 9 1/0 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 10 1/2 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 11 1/4 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 12 1/8 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 13 1/10 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 14 1/12 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) # On this N-Class system we have two SBAs, indicated by the leading 0 for one SBA and by the leading 1 indicating the second SBA. The SBAs exist one level above the LBAs at the system level. The first number of each item in the listing is the SBA, the next number is the LBA. Components on the same LBA can't be shared among multiple virtual partitions at the time of this writing. The two internal disks in the first ioscan (ioscan -f) listing, for instance, are both on 0/0/2, which is SBA 0, LBA 0, and SCSI bus 2. Let's compare this to our L-Class system used in most of the examples of this book, which has only one SBA and two internal SCSI buses: # ioscan -f | grep ba L-Class cvhdcon3:/ # ioscan -f | grep ba ioa 0 0 sba CLAIMED BUS_NEXUS System Bus Adapter (803) ba 0 0/0 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 1 0/1 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 2 0/2 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 3 0/3 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 4 0/4 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 5 0/5 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 6 0/8 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 7 0/9 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 8 0/10 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) ba 9 0/12 lba CLAIMED BUS_NEXUS Local PCI Bus Adapter (782) cvhdcon3:/ # Although this L-Class has only one SBA, as indicated by the leading 0 on all of the buses in the preceding listing, it has two SCSI buses on LBA 0/0. The internal disks are normally mirrored across these two different SCSI buses. The following listing shows the internal disks on this L-Class mirrored across two different SCSI buses: cvhdcon3:/ # ioscan -f | grep SEA disk 1 0/0/1/1.0.0 sdisk CLAIMED DEVICE SEAGATE ST173404LC disk 2 0/0/1/1.2.0 sdisk CLAIMED DEVICE SEAGATE ST1734LC disk 3 0/0/2/0.0.0 sdisk CLAIMED DEVICE SEAGATE ST17340LC disk 4 0/0/2/0.2.0 sdisk CLAIMED DEVICE SEAGATE ST17340LC This listing shows that the four internal disks are at SBA 0, LBA 0, and SCSI buses 1 and 2, respectively. At the time of this writing these disks have to be in the same vPar because they are on the same LBA. To assign the LBA to which the L-Class disks are connected as well as the two disks to a vPar, we would use the full hardware paths of -i 0/0 to assign the LBA to a Virtual Partition and -i 0/0/1/1.2.0:boot for the boot disk of that Virtual Partition. The internal disks are not the only disks attached to our L-Class system. There is also an external disk enclosure on which we have created several Logical UNits (LUNs) that appear as separate disk drives. If we run ioscan and grep for disk we see that several of these exist: cvhdcon3:/ # ioscan -f | grep disk disk 0 0/0/1/0.1.0 sdisk CLAIMED DEVICE HP DVD-ROM 304 disk 1 0/0/1/1.0.0 sdisk CLAIMED DEVICE SEAGATE ST173404LC disk 2 0/0/1/1.2.0 sdisk CLAIMED DEVICE SEAGATE ST173404LC disk 3 0/0/2/0.0.0 sdisk CLAIMED DEVICE SEAGATE ST173404LC disk 4 0/0/2/0.2.0 sdisk CLAIMED DEVICE SEAGATE ST173404LC disk 7 0/8/0/0.8.0.5.0.0.0 sdisk CLAIMED DEVICE HP A5277A disk 10 0/8/0/0.8.0.5.0.0.1 sdisk CLAIMED DEVICE HP A5277A disk 11 0/8/0/0.8.0.5.0.0.2 sdisk CLAIMED DEVICE HP A5277A disk 12 0/8/0/0.8.0.5.0.0.3 sdisk CLAIMED DEVICE HP A5277A disk 15 0/8/0/0.8.0.5.0.1.0 sdisk CLAIMED DEVICE HP A5277A disk 17 0/8/0/0.8.0.5.0.2.0 sdisk CLAIMED DEVICE HP A5277A disk 18 0/8/0/0.8.0.5.0.3.0 sdisk CLAIMED DEVICE HP A5277A disk 5 0/9/0/0.8.0.4.0.0.0 sdisk CLAIMED DEVICE HP A5277A disk 6 0/9/0/0.8.0.4.0.0.1 sdisk CLAIMED DEVICE HP A5277A disk 8 0/9/0/0.8.0.4.0.0.2 sdisk CLAIMED DEVICE HP A5277A disk 9 0/9/0/0.8.0.4.0.0.3 sdisk CLAIMED DEVICE HP A5277A disk 13 0/9/0/0.8.0.4.0.1.0 sdisk CLAIMED DEVICE HP A5277A disk 14 0/9/0/0.8.0.4.0.2.0 sdisk CLAIMED DEVICE HP A5277A disk 16 0/9/0/0.8.0.4.0.3.0 sdisk CLAIMED DEVICE HP A5277A cvhdcon3:/ # | This listing shows first the DVD-ROM, then the four internal disks, and finally, the 14 LUNs configured on our external storage enclosure. We used one of these for the boot volume of cable2. The following vparstatus -v command shows the respective boot disks of cable1 and cable2: | # vparstatus -v [Virtual Partition Details] Name: cable1 State: Up Attributes: Dynamic,Manual Kernel Path: /stand/vmunix Boot Opts: [CPU Details] Min/Max: 1/3 Bound by User [Path]: Bound by Monitor [Path]: 33 Unbound [Path]: [IO Details] 0.0 0.0.1.1.2.0 BOOT <-- boot disk of cable1 [Memory Details] Specified [Base /Range]: (bytes) (MB) Total Memory (MB): 1024 [Virtual Partition Details] Name: cable2 State: Up Attributes: Dynamic,Manual Kernel Path: /stand/vmunix Boot Opts: [CPU Details] Min/Max: 1/3 Bound by User [Path]: Bound by Monitor [Path]: 37 Unbound [Path]: [IO Details] 0.8.0.0.8.0.5.0.0.0, BOOT <-- boot disk of cable2 0.10 [Memory Details] Specified [Base /Range]: (bytes) (MB) Total Memory (MB): 1024 # cable1 boots off of the internal disk at 0.0.1.1.2.0 and cable2 boots off of the external disk at 0.8.0.0.8.0.5.0.0.0. You need a good working knowledge of the hardware of your system, including bus adapters and disks when working with Virtual Partitions. At the time of this writing, all vPar-related work takes place at the command line. Understanding the hardware of which your system is comprised and how to interrogate it at the command line is important. You may want to review the backup material at the end of this chapter to familarize yourself with devices and related topics if you haven't worked with them before. |