Wednesday December 24, 2008
Migration is the action of moving a domain from a physical platform to another physical platform. Cold migration is moving a domain which is not active (the domain is either stopped or unbound). Warm migration is moving a domain which is active. For warm migration, the domain to migrate is suspended on the source platform, then the entire state of the domain is transfered over the network to the target platform. Finally the domain is resumed on the target platform.
Virtual I/O Dynamic Reconfiguration allows virtual services (vsw, vds) and virtual devices (vnet, vdisk) to be dynamically added to a domain without having to reboot that domain.
Network NIU Hybrid I/O is a feature available on UltraSPARC-T2 based system which enables a virtual network interface from a guest domain to directly access a physical network interface owned by an I/O domain. That way a guest domain can have the performance of a physical network interface while using a virtual network interface.
Network VLAN support provides VLAN 802.1Q support to virtual network interfaces and virtual switches. This enables to assign port-vlan-id and vlan-id to virtual network interfaces and virtual switches.
Performance of the virtual network interface has been improved by about 30%.
A virtual switch can now be associated with an interface which is a link aggregation of some network interfaces.
Virtual Disk Multipathing enables a virtual disk to be connected to its backend through different service domains, and ensures the availability of the virtual disk in case one of the service domain becomes unavailable.
Single-slice disk support has been improved and Solaris can now be installed on such a disk. Also single-slice disks are now visible with the format(1m) command.
The XML interface with Domain Manager is now public, fully supported and documented. The Domain Manager can now be connected using the XMPP protocol, and the XML support provides a convenient way to interface an application with the Domain Manager.
This release also includes a lot of other improvements and bug fixes. Among other:
| Num. of Domains | CPUs/Domain | Memory/Domain | Comments |
|---|---|---|---|
| 128 | 2 | 4GB | each has two cpu threads |
| 32 | 8 | 16GB | each domain can have an entire cpu core (1 core has 8 threads) |
| 4 | 64 | 128GB | each domain can have an entire cpu chip (1 chip has 8 cores) |
| 1 | 256 | 512GB | the domain has all 4 cpu chips (4 chips x 8 cores x 8 threads = 256) |
Of the course the number of domains and the associated number of cpus and memory can be adjusted depending on your need.
The T5440 also has 4 PCI buses, that means that you can create up to 4 I/O domains. Such domains can have direct access to physical I/O resources, like a network card or a physical disk. So you can effectively split the T5440 into 4 fully independent systems (for example 4 domains, each with 64 cpu threads and 128GB of memory) which have their own physical disks and network interfaces and do not depend on any other domain because they don't need to use virtual I/O.
With such a large number of domains (up to 128), it is important to be able to easily move a domain from one system to another system in case you need to shutdown the entire platform (for example during a maintenance), or if you have some new hardware available and you want to free some resources on an existing system (for example to allocate more cpus or memory to the existing domains). You can easily do this with the Domain Migration feature of LDoms 1.1. Migration is done with a single command:
primary# ldm migrate domain_to_migrate system_to_migrate_to
Then the system will automatically select the appropriate type of migration depending of
the state of the domain to migrate:
The figure below illustrates the difference between virtual I/O and hybrid I/O by showing the path of the network packets in the different modes:
Click on the image to enlarge
Configuring a virtual network interface in hybrid mode is very simple: just specify "mode=hybrid" when adding or setting a virtual network interface. For example:
primary# ldm add-vnet mode=hybrid vnet0 primary-vsw0 ldg1
or
primary# ldm set-vnet mode=hybrid vnet0 ldg1
Note the setting "mode=hybrid" is just an hint to the system so that it tries to use hybrid
I/O. If the system is unable to use the hybrid mode (for example because the virtual switch
is not associated with an XAUI adapter) then the system will automatically fallback to the
legacy mode and use virtual I/O.
The T5120 and T5220 can have up to 2 XAUI adapters, and each XAUI adapter can be shared 3 times in hybrid mode. That means that you can have up 6 domains having a virtual network interface using hybrid I/O.
See Raghuram's blog for more details about Network Hybrid I/O.
In addition, LDoms 1.1 provides a solution to that problem for virtual disk I/O. If multiple service domains have access to the same virtual disk backend (for example a file on a NFS server, or a shared LUN on a SAN) then a virtual disk can be associated with all these service domains and the path to access the virtual disks backend will change depending on the availability of the service domains.
Virtual disk multipathing is configured by putting the vdsdev representing the same virtual disk backend into the same multipathing group (mpgroup). This is done when using the add-vdsdev command. For example, if we have two service domains (primary and alternate), each with a vds service (primary-vds0 and alternate-vds0), and each service domain is able to access the same NFS file /home/domain/ldg1/vdisk0, then we can put that backend file into the same mpgroup "foo".
primary# ldm add-vdsdev mpgroup=foo /home/domain/ldg1/vdisk0 vdisk0@primary-vds0
primary# ldm add-vdsdev mpgroup=foo /home/domain/ldg1/vdisk0 vdisk0@alternate-vds0
Finally the backend file can be exported as a virtual disk to the domain ldg1:
primary# ldm add-vdisk vdisk0 vdisk0@primary-vds0 ldg1
That way the virtual disk will be accessible in domain ldg1, primarily through the primary domain.
But if the primary domain goes down then the virtual disk will remain accessible through
the alternate domain. This is illustrated in the following figures:
Click on the image to enlarge
Click on the image to enlarge