I describe only migration P2V of a physical server in a ldom, the installation and the configuration of Oracle VM Server for Sparc are not specified in this article.
Some details:
- The name of physical server is ldom-guest (Solaris 10u3 – kernel 118833-33)
- The name of crontol domain is ldom-crtl (Solaris 11.1 SRU 5.5)
There are a 3 phases to migrate from a physical system to a virtual system:
- Collection Phase: A filesystem source is created based on the configuration information that it collects about the source system.
- Preparation Phase: A logical domain is created
- Conversion Phase: The filesystem source is converted into a logical domain (ex: conversion from sun4u to sun4v)
To execute this procedure, you must use tool ldmp2v (download this path p15880570 to obtain the tool - In Solaris 11, this tool is directly available).
Before starting, let us look at the configuration available on control domain:
ldom-crtl # ldm –V
Logical Domains Manager (v 3.0.0.2)
Hypervisor control protocol v 1.7
Using Hypervisor MD v 1.3
System PROM:
Hypervisor v. 1.10.0. @(#)Hypervisor 1.10.0.a 2011/07/15 11:51\015
OpenBoot v. 4.33.0. @(#)OpenBoot 4.33.0.b 2011/05/16 16:28
ldom-crtl # ldm ls –o console,network,disk primary
[…]
VCC
NAME PORT-RANGE
primary-vcc0 5000-5100
VSW
NAME MAC […]
primary-vsw0 x:x:x:x:x:x […]
VDS
NAME VOLUME […]
primary-vds0
[…]
A traditional configuration !?, no ?
Fisrt step: Collection phase (runs on the physical source system)
To create a consistent file system image, I suggest you to boot the server in “single mode”. To save a file system image, I often use a NFS share.
ldom-guest # mount –F nfs myshare:/tempo /mnt
By default, the cmd ldmp2v creates a flar image.
ldom-guest # /usr/sbin/ldmp2v collect -d /mnt/ldom-guest
Collecting system configuration ...
Archiving file systems ...
Full Flash
Checking integrity...
Integrity OK.
Running precreation scripts...
Precreation scripts done.
Creating the archive...
136740734 blocks
Archive creation complete.
ldom-guest # init 0
Second step: Preparation phase (runs on the control domain)
I start by creating a ZFS pool which will contain the data of the logical domain.
ldmon-crtl # zpool create -m none ldom-guest cXtYdZ
I prefer to use the manual mode to create a logical domain (so I edit the following file ldmp2v.conf).
ldmon-crtl # cat /etc/ldmp2v.conf
# Virtual switch to use
VSW="primary-vsw0"
# Virtual disk service to use
VDS="primary-vds0"
# Virtual console concentrator to use
VCC="primary-vcc0"
# Location where vdisk backend devices are stored
BACKEND_PREFIX=""
# Default backend type: "zvol" or "file".
BACKEND_TYPE="zvol"
# Create sparse backend devices: "yes" or "no"
BACKEND_SPARSE="yes"
# Timeout for Solaris boot in seconds
BOOT_TIMEOUT=60
Just after mounted the share NFS, I create a logical domain by indicating the following informations: cpu, mem and prefix (here it is name of ZFS pool)
ldom-crtl # mount –F nfs myshare:/tempo /mnt
ldom-crtl # ldmp2v prepare -c 16 -M 16g –p ldom-guest -d /mnt/ldom-guest ldom-guest
Creating vdisks ...
Creating file systems ...
Populating file systems ...
136740734 blocks
Modifying guest OS image ...
Modifying SVM configuration ...
Unmounting file systems ...
Creating domain ...
Attaching vdisks to domain ldom-guest ...
For this example, the ldom guest is configured with 16 vcpu and 16 Go (options –c and –M).
Final step: Conversion phase (runs on the control domain)
In the conversion phase, the logical domain uses the Oracle Solaris upgrade process to upgrade to the Oracle Solaris 10 OS. The upgrade operation removes all existing packages and installs the Oracle Solaris 10 sun4v packages, which automatically performs a sun4u-to-sun4v conversion. The convert phase can use an Oracle Solaris DVD ISO image or a network installation image. On Oracle Solaris 10 systems, you can also use the Oracle Solaris JumpStart feature to perform a fully automated upgrade operation.
On “jumpstart server” (do you known jet ?), I edit the jumpstart profile to add the following lines
install_type upgrade
root_device c0d0s0
Ready for conversation !! The last command to convert the Sparc architecture and to start the guest domain.
ldom-crtl # ldmp2v convert -j -n vnet0 -d /mnt/ldom-guest ldmon-guest
Testing original system status ...
LDom ldom-guest started
Waiting for Solaris to come up ...
Using Custom JumpStart
Trying 0.0.0.0...
Connected to 0.
Escape character is '^]'.
Connecting to console "server" in group "server" ....
Press ~? for control options ..
Configuring devices.
Using RPC Bootparams for network configuration information.
Attempting to configure interface vnet0...
Configured interface vnet0
Setting up Java. Please wait...
Extracting windowing system. Please wait...
Beginning system identification...
Searching for configuration file(s)...
Using sysid configuration file 10.x.x.x:/opt/SUNWjet/Clients/ldom-guest/sysidcfg
Search complete.
Discovering additional network configuration...
Completing system identification...
Starting remote procedure call (RPC) services: done.
System identification complete.
Starting Solaris installation program...
Searching for JumpStart directory...
Using rules.ok from 10.x.x.x:/opt/SUNWjet.
Checking rules.ok file...
Using begin script: Utils/begin
Using derived profile: Utils/begin
Using finish script: Utils/finish
Executing JumpStart preinstall phase...
Executing begin script "Utils/begin"...
Installation of ldom-guest at 00:41 on 10-May-2013
Loading JumpStart Server variables
Loading JumpStart Server variables
Loading Client configuration file
Loading Client configuration file
Running base_config begin script....
Running base_config begin script....
Begin script Utils/begin execution completed.
Searching for SolStart directory...
Checking rules.ok file...
Using begin script: install_begin
Using finish script: patch_finish
Executing SolStart preinstall phase...
Executing begin script "install_begin"...
Begin script install_begin execution completed.
WARNING: Backup media not specified. A backup media (backup_media) keyword must be specified if an upgrade with disk space reallocation is required
Processing default locales
- Specifying default locale (en_US.ISO8859-1)
Processing profile
Loading local environment and services
Generating upgrade actions
- Selecting locale (en_US.ISO8859-1)
Checking file system space: 100% completed
Space check complete.
Building upgrade script
Preparing system for Solaris upgrade
Upgrading Solaris: 101% completed
- Environment variables (/etc/default/init)
Installation log location
- /a/var/sadm/system/logs/upgrade_log (before reboot)
- /var/sadm/system/logs/upgrade_log (after reboot)
Please examine the file:
- /a/var/sadm/system/data/upgrade_cleanup
It contains a list of actions that may need to be performed to complete the upgrade. After this system is
rebooted, this file can be found at:
- /var/sadm/system/data/upgrade_cleanup
Upgrade complete
Executing SolStart postinstall phase...
Executing finish script "patch_finish"...
Finish script patch_finish execution completed.
Executing JumpStart postinstall phase...
Executing finish script "Utils/finish"...
[…]
Terminated
Finish script Utils/finish execution completed.
The begin script log 'begin.log'
is located in /var/sadm/system/logs after reboot.
The finish script log 'finish.log'
is located in /var/sadm/system/logs after reboot.
syncing file systems... done
rebooting...
Resetting...
T5240, No Keyboard
Copyright (c) 1998, 2011, Oracle and/or its affiliates. All rights reserved.
OpenBoot 4.33.0.b, 16384 MB memory available, Serial #83470255.
Ethernet address 0:x:x:x:x:x, Host ID: 84f9a7af.
Boot device: disk0:a File and args:
SunOS Release 5.10 Version Generic_118833-33 64-bit
Copyright 1983-2006 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
Hostname: ldom-guest
Loading smf(5) service descriptions: 1/1
checking ufs filesystems
/dev/rdsk/c0d1s0: is logging.
ldom-guest console login:
It’s already finishes. Is it simple !? You do not have any more excuses not to use ldoms.
See Also
- Oracle VM for Sparc (Technologie)
- Oracle VM for Sparc (Oracle Documentation)
- MAN for ldmp2v(Oracle Documentation)
