Jump to: navigation, search

Obsolete:Nova-zVM

Revision as of 04:45, 9 June 2013 by Will (talk | contribs) (References)

Overview

Nova-Compute uses z/VM driver to communicate with hypervisor z/VM and control virtual machines on IBM System z.This wiki introduces z/VM driver for Nova-Compute and some relate tools used by z/VM driver.

Concepts

System z

System z is a family name used by IBM for all of its mainframe computers. IBM System z are the direct descendants of System/360, announced in 1964, and the System/370 from 1970s, and now includes the IBM System z9, the IBM System z10 and the newer IBM zEnterprise. System z is famous for its hight availability and used in government, financial services, retail, manufacturing, and just about every other industry.

z/VM

z/VM is a hypervisor for the IBM System z platform that provides a highly flexible test and production environment. The z/VM implementation of IBM virtualization technology provides the capability to run full-function operating systems such as Linux on System z, z/OS, and others as “guests” of z/VM. z/VM allows the capability for clients to run hundreds to thousands of Linux servers on a single mainframe running with other System z operating systems, such as z/OS, or as a large-scale linux-only enterprise server solution.

xCAT

xCAT is an open source scalable distributed computing management and provisioning tool that provides a unified interface for hardware control, discovery, and OS diskful/diskfree deployment. It is used by NASA, University of Toronto, IBM, Adaptive Computing, Los Alamos Laboratory and so on.

Architecture

Nova-Compute uses z/VM driver to communicate with xCAT REST api to control/configure z/VM. This picture show the architure of xCAT and zVM xCAT can be used to manage virtual servers spanning across multiple z/VM partitions. The xCAT management node (MN) runs on any Linux virtual server. It manages each z/VM partition using a System z hardware control point (zHCP) running on a privileged Linux virtual server. The zHCP interfaces with z/VM systems management API (SMAPI), directory manager (DirMaint), and control program layer (CP) to manage the z/VM partition. It utilizes a C socket interface to communicate with the SMAPI layer and VMCP Linux module to communicate with the CP layer.

Prerequisites

  1. One OpenStack nova-compute service node will manage one and only one xCAT MN node.
  2. Each of the zVM systems (reside in different LPARs or CECs ) has one nova-compute service node
  3. zHCP must be managed by xCAT MN.
  4. Compute Node and xCAT MN can ssh each other without password.

Configuration

By default /etc/nova/nova.conf, these options are required:

# Use z/VM
compute_driver = zvm.ZVMDriver
network_api_class = nova.network.quantumv2.api.API
libvirt_vif_driver = nova.virt.libvirt.vif.LibvirtHybridOVSBridgeDriver
# Only tgz is valid for now
config_drive_format=tgz
# Host name or IP address of xCAT management_node
zvm_xcat_server = 192.168.1.100
# xCAT username
zvm_xcat_username = root
# Password of the xCAT user
zvm_xcat_password = xxxxxxx
# z/VM disk pool for ephemeral disks
zvm_diskpool = pool1
# z/VM host that managed by xCAT MN
zvm_host = system360
# Default zfcp scsi disk pool
zvm_scsi_pool = smpool
# Valid optiosns are: 'architecture' -- attempt relocation even though hardware architecture facilities or CP features are not available on destination system; 'domain' -- attempt relocation even though VM would be moved outside of its domain, or 'domain' -- relocation should proceed even if CP determines that there are insufficient storage resources on destination system
zvm_vmrelocate_force = architecture
# User profile for creating a z/VM userid
zvm_user_profile = myprofile
# The xCAT MM node name
zvm_xcat_master = xcatmaster

These options are optional, and the values listed below are default values:

# xCAT group for OpenStack
zvm_xcat_group = all
# Default disk type for root disk, can be ECKD/FBA
zvm_disk_pool_type = ECKD
# Sets the admin password in the config drive
zvm_config_drive_inject_password = False
# Valid options are: 'yes' -- VMRELOCATE command will do one early pass through virtual machine storage and then go directly to the quiesce stage, or 'no' -- specifies immediate processing
zvm_vmrelocate_immediate = yes
# Maximum wait time(seconds) for relocation to complete
zvm_vmrelocate_max_total = nolimit
# Maximum quiesce time(seconds) a VM may be stopped during a relocation attempt
zvm_vmrelocate_max_quiesce = nolimit
# Timeout(seconds) when start an instance.
zvm_reachable_timeout = 180
# Default password for a new created z/VM user
zvm_user_default_password = password
# Default OS password for a new created z/VM user
zvm_os_default_password = ospass
# Default privilege level for a new created z/VM user
zvm_user_default_privilege = g
# The path to store the z/VM image files
zvm_image_tmp_path = /opt/stack/data/nova/images
# The period(days) to clean up an image that not be used for deploy in one xCAT MN within the defined time
xcat_image_clean_period = 30
# The threshold for xCAT free space, if snapshot or spawn check xCAT free space not enough for its image operations, it will prune image to meet the threshold
xcat_free_space_threshold = 50

More information

zvm-plugin

References

  1. z/VM
  2. xCAT
  3. xCAT on z/VM
  4. [1]
  5. [2]