37
USE IMPROVE EVANGELIZE Logical Domains (LDoms) Liam Merwick LDoms Developer Sun Microsystems – SPARC Platform S/W Group

Logical Domains

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Logical Domains

USE IMPROVE EVANGELIZE

Logical Domains (LDoms)Liam MerwickLDoms DeveloperSun Microsystems – SPARC Platform S/W Group

Page 2: Logical Domains

Page: 2

USE IMPROVE EVANGELIZE

Contents

• Background• Features• Architecture• Components• Future Roadmap• Configuration Examples• Q & A

Page 3: Logical Domains

Page: 3

USE IMPROVE EVANGELIZE

Background

Page 4: Logical Domains

Page: 4

USE IMPROVE EVANGELIZE

Consolidation

• Conventional Unix server utilisation is 7 to 15%

• Data center compression> Goal: Increase utilisation of equipment

10%

20%

10% Utilisation

Time

Page 5: Logical Domains

Page: 5

USE IMPROVE EVANGELIZE

Solutions from SunHard Partitions Virtual Machines OS Virtualisation Resource Mgmt.

Server

OS

App

Multiple OSes Single OSTrend to flexibility Trend to isolation

Dynamic System Domains Solaris Containers

(Zones + SRM)

Solaris Containers

for Linux Applications

Solaris Trusted Extensions

Solaris Resource Manager

(SRM)

SPARC Logical Domains

Solaris xVM

VMware ESX

Microsoft Virtual Server

CalendarServer Database Web

ServerSunRayServer

AppServerDatabaseMail

ServerWeb

ServerFile

ServerIdentityServer

AppServer Database

Page 6: Logical Domains

Page: 6

USE IMPROVE EVANGELIZE

Virtualisation for SPARC platforms

• New “sun4v” architecture

sun4u code

Solaris Xupdate

(genunix)

CPU “Z”

Solaris X (sun4v)

SPARC CPU

SPARC hypervisor

Solaris X(genunix)

sun4vinterfaceUS-Z CPU

code

OperatingSystem

Platform

Page 7: Logical Domains

Page: 7

USE IMPROVE EVANGELIZE

Virtual Machine for SPARC

• Thin software layer between OS and platform hardware

• Hypervisor + sun4v interface• Virtualises machine HW and isolates OS from

register-level• Delivered with platform not OS• Not itself an OS

SPARC hardware

Hypervisor

Solaris

UserApp

sun4v virtual machine

stableinterface“sun4v”

UserApp

OpenBoot

UserApp

Page 8: Logical Domains

Page: 8

USE IMPROVE EVANGELIZE

PlatformHardware

LDom A

Logical Domains Technology

• Virtualisation and partitioning of machine resources> Each domain is a full virtual machine, with a dynamically reconfigurable sub-

set of machine resources, and its own independent OS> Protection & isolation via SPARC hardware and LDoms Hypervisor firmware

LDom B LDom C LDom D

I/O I/O

Memory

CPUCPU CPU CPU CPU CPU CPU CPU

Memory Memory Memory

Linux FreeBSD

LDomsHypervisor

OS Environment

of choice

Page 9: Logical Domains

Page: 9

USE IMPROVE EVANGELIZE

Features

Page 10: Logical Domains

Page: 10

USE IMPROVE EVANGELIZE

Fundamentals

• Each virtual machine should appear as an entirely independent machine> own kernel, patches, tuning parameters> own user accounts, administrators> own disks> own network interfaces, MAC & IP addresses> Start, stop and reboot independently of each other

• Paravirtualised OS

Page 11: Logical Domains

Page: 11

USE IMPROVE EVANGELIZE

Features

• Add and remove cpus while OS is running• Protection and isolation via SPARC hardware and

LDoms Hypervisor firmware• Service domains for I/O

> direct I/O access

Page 12: Logical Domains

Page: 12

USE IMPROVE EVANGELIZE

Features – UltraSPARC-T1 specific

• Up to 32 LDoms per box> CPU threads individually assignable to different LDoms

• Memory assignable to with an 8KB granularity• Two PCI busses independently assignable to the

same or different LDoms.• Guest Domains can be configured, started and

stopped independently> Without requiring a power-cycle of machine

Page 13: Logical Domains

Page: 13

USE IMPROVE EVANGELIZE

Features – UltraSPARC-T2 specific

• 64 threads => up to 64 domains> more domains per box than with UltraSPARC-T1

• On-chip NIU assignable to any domain.

Page 14: Logical Domains

Page: 14

USE IMPROVE EVANGELIZE

Architecture

Page 15: Logical Domains

Page: 15

USE IMPROVE EVANGELIZE

Architecture

• Logical Domains overview• Hypervisor• LDoms Manager• Virtualised I/O• Dynamic Reconfiguration (DR)

Page 16: Logical Domains

Page: 16

USE IMPROVE EVANGELIZE

Hypervisor Support

• Hypervisor software is responsible for maintaining separation between domains> Using extensions built into a sun4v CPU

• Also provides Logical Domain Channels (LDCs) so that domains can communicate with each other> Mechanism by which domains can be virtually networked

with each other, or provide services to each other

Page 17: Logical Domains

Page: 17

USE IMPROVE EVANGELIZE

LDoms Manager

• One Manager per host HV> Controls Hypervisor and all its LDoms

• Exposes control interface via CLI• Maps Logical Domains to physical resources

> Constraint engine> Heuristic binding of LDoms to resources

> Assists with performance optimisation> Assists in event of failures / blacklisting

Page 18: Logical Domains

Page: 18

USE IMPROVE EVANGELIZE

Direct I/O

Hypervisor

I/OBridge

Nexus Driver

/pci@B

Device Driver

/pci@B/qlc@6

PCIRoot

I/O MMU

Logical Domain

Virtual Nexus I/FHyper Privileged

Privileged

Hardware

PCI-Express

Logical Domain owns PCI root and tree

• Traditional model> Existing drivers and devices

continue to work

App

App

App

Page 19: Logical Domains

Page: 19

USE IMPROVE EVANGELIZE

Virtualised I/O

Logical Domain A

Hypervisor

I/OBridge

Nexus Driver/pci@B

Device Driver/pci@B/qlc@6

PCIR

oot

I/O MMU

Service Domain

Virtual Nexus I/FHyper Privileged

Privileged

Hardware

PCI B

Domain Channel

App

Virtual DeviceDriver

AppApp

App

Virtual DeviceService

Page 20: Logical Domains

Page: 20

USE IMPROVE EVANGELIZE

Logical Domain 2

AppApp

App App

vDiskclientdriver

Logical Domain 3

AppApp

App App

vDiskclientdriver

Logical Domain 1

AppApp

App App

vDiskclientDriver

Virtual (Block) Disk device

Hyper-visor

Service Domain

Virtual SAN 1

Virtual SAN 2

I/O Bridge

FC-ALI/F

vDiskServer

vDiskServer

Device-Driver

Page 21: Logical Domains

Page: 21

USE IMPROVE EVANGELIZE

Logical Domain 2

AppApp

App App

V-EtherDriver

Logical Domain 3

AppApp

App App

V-EtherDriver

Logical Domain 1

AppApp

App App

V-EtherDriver

Virtual Ethernet device

Hyper-visor

I/O Bridge

V-EtherSwitch

Service Domain

GbEther I/F

V-EtherSwitch

Virtual LAN 1: 192.168.0/24

Virtual LAN 2: 63.24/16

Device-Driver

Page 22: Logical Domains

Page: 22

USE IMPROVE EVANGELIZE

Dynamic Reconfiguration (DR)

• Ability to dynamically grow or shrink compute capacity of an LDom on demand

• No need to re-boot Solaris• Simply add / remove:

> CPUs> Memory (future)> I/O (future)

• Improve utilisation by balancing resources between LDoms

Page 23: Logical Domains

Page: 23

USE IMPROVE EVANGELIZE

LDoms Manager

Logical Domain 2

AppApp

App

OS DRStack

Logical Domain 3

AppApp

App

OS DRStack

Logical Domain 1

AppApp

App App

OS DRStack

Hyper-visor

LDoms Manager

Service Domain

HV DRStack

Page 24: Logical Domains

Page: 24

USE IMPROVE EVANGELIZE

Example: vCPU reconfiguration

V

AppApp

Logical Domain 1

Hyper-visor

V

P P

V

AppApp

Logical Domain 1

Hyper-visor P P

V

AppApp

Logical Domain 2

P

V

Example command line operations:% ldm remove-vcpu 1 Logical_Domain_1% ldm add-vcpu 1 Logical_Domain_2

Page 25: Logical Domains

Page: 25

USE IMPROVE EVANGELIZE

Components

Page 26: Logical Domains

Page: 26

USE IMPROVE EVANGELIZE

Components – Hardware & Software

• Hardware> UltraSPARC-T1 (Niagara) family of CMT processors

> T1000 Netra CP3060 T6300> T2000 Netra T2000

> UltraSPARC-T2 (Niagara2) family of CMT processors> T5120 T5220 T6320

• Operating System> OpenSolaris (build 70+ recommended)> Solaris 10 11/06 (U3) or later> Linux 2.6.23

Page 27: Logical Domains

Page: 27

USE IMPROVE EVANGELIZE

Components – Hardware & Software

• Firmware> 6.4.6 or later> 6.5.x and 7.0.x now available

• LDoms Manager Software> 1.0.1 (Solaris package - available as Free download)> 1.0 (For use with 6.4.x firmware)

• OS can and will be released/updated independently of Firmware/LDoms Manager

Page 28: Logical Domains

Page: 28

USE IMPROVE EVANGELIZE

Future Roadmap

Page 29: Logical Domains

Page: 29

USE IMPROVE EVANGELIZE

Latest Release: LDoms 1.0.1

• Rebooting of Control, Service and IO domains> Without bringing down guest domains

• Support for new platforms• Updates to Firmware and LDoms Manager package• Upgrade to Solaris 10 8/07 (U4) recommended

> Independent of LDoms 1.0.1

Page 30: Logical Domains

Page: 30

USE IMPROVE EVANGELIZE

Key Features on Roadmap• Warm Migration

> Suspend and resume

• Live Migration

• Hybrid I/O

• Dynamic Reconfiguration> Virtual and Physical I/O> Memory

• Booting/Installing from DVD/ISO

• Using ZFS/SVM volumes

Page 31: Logical Domains

Page: 31

USE IMPROVE EVANGELIZE

Configuration Examples

Page 32: Logical Domains

Page: 32

USE IMPROVE EVANGELIZE

Configuring a machine to run LDoms• Make resources available (remove from control domain)

primary#> ldm set-mau 2 primary

primary#> ldm set-vcpu 8 primary

primary#> ldm set-mem 8g primary

• Configure services

primary#> ldm add-vcc port-range=5000-5100 primary-vcc0 primary

primary#> ldm add-vds primary-vds0 primary

primary#> ldm add-vsw net-dev=e1000g0 primary-vsw0 primary

Page 33: Logical Domains

Page: 33

USE IMPROVE EVANGELIZE

Adding another domain (I)

• Add disk deviceprimary#> ldm add-vdsdev /dev/dsk/c1t0d0s2 vol1@primary-vds0

• Adding resourcesprimary#> ldm create domain1

primary#> ldm add-mem 2g domain1

primary#> ldm add-vcpu 4 domain1

primary#> ldm add-vdisk vdisk1 vol1@primary-vds0 domain1

primary#> ldm add-vnet vnet1 primary-vsw0 domain1

• Show domain constraintsprimary#> ldm list -l domain1

Page 34: Logical Domains

Page: 34

USE IMPROVE EVANGELIZE

Adding another domain (II)

• Booting the newly created domain

primary#> ldm bind domain1

primary#> ldm start domain1

• Connect to the console

primary#> telnet localhost 5000

Page 35: Logical Domains

Page: 35

USE IMPROVE EVANGELIZE

LDoms Community

• Newly Created community

• Website> http://www.opensolaris.org/os/communites/ldoms

• Alias> [email protected]

Page 36: Logical Domains

Page: 36

USE IMPROVE EVANGELIZE

More information

• BigAdmin Portal> http://www.sun.com/bigadmin/hubs/ldoms/

• Sun Blueprint> Beginners Guide to LDoms: Understanding and Deploying

Logical Domains> http://www.sun.com/blueprints/0207/820-0832.pdf

• Training Course> Solaris 10 Logical Domains Administration (SA-345-S10)> http://uk.sun.com/training/catalog/courses/SA-345-S10.xml

Page 37: Logical Domains

USE IMPROVE EVANGELIZE

Liam MerwickSun [email protected]://blogs.sun.com/merwick