direct-io.hg

view tools/examples/xmexample2 @ 3452:707455ee2ff6

bitkeeper revision 1.1159.217.20 (41ebdda5ZO9YBU_VHuSh0IwgcQe0Ng)

Merge arcadians.cl.cam.ac.uk:/auto/groups/xeno-xenod/BK/xen-unstable.bk
into arcadians.cl.cam.ac.uk:/local/scratch-2/cl349/xen-unstable.bk-merge
author cl349@arcadians.cl.cam.ac.uk
date Mon Jan 17 15:45:41 2005 +0000 (2005-01-17)
parents fe33dd531fd0 90f0ae7be1de
children 3c69b6ca4021
line source
1 # -*- mode: python; -*-
2 #============================================================================
3 # Example Python setup script for 'xm create'.
4 # This script sets the parameters used when a domain is created using 'xm create'.
5 #
6 # This is a relatively advanced script that uses a parameter, vmid, to control
7 # the settings. So this script can be used to start a set of domains by
8 # setting the vmid parameter on the 'xm create' command line. For example:
9 #
10 # xm create vmid=1
11 # xm create vmid=2
12 # xm create vmid=3
13 #
14 # The vmid is purely a script variable, and has no effect on the the domain
15 # id assigned to the new domain.
16 #============================================================================
18 # Define script variables here.
19 # xm_vars is defined automatically, use xm_vars.var() to define a variable.
21 # This function checks that 'vmid' has been given a valid value.
22 # It is called automatically by 'xm create'.
23 def vmid_check(var, val):
24 val = int(val)
25 if val <= 0:
26 raise ValueError
27 return val
29 # Define the 'vmid' variable so that 'xm create' knows about it.
30 xm_vars.var('vmid',
31 use="Virtual machine id. Integer greater than 0.",
32 check=vmid_check)
34 # Check the defined variables have valid values..
35 xm_vars.check()
37 #----------------------------------------------------------------------------
38 # Kernel image file.
39 kernel = "/boot/vmlinuz-2.6.9-xenU"
41 # Optional ramdisk.
42 #ramdisk = "/boot/initrd.gz"
44 # The domain build function. Default is 'linux'.
45 #builder='linux'
47 # Initial memory allocation (in megabytes) for the new domain.
48 memory = 64
50 # A name for the new domain. All domains have to have different names,
51 # so we use the vmid to create a name.
52 name = "VM%d" % vmid
54 # Which CPU to start domain on?
55 #cpu = -1 # leave to Xen to pick
56 cpu = vmid # set based on vmid (mod number of CPUs)
58 # Number of Virtual CPUS to use, default is 1
59 #vcpus = 1
60 vcpus = 4 # make your domain a 4-way
62 #----------------------------------------------------------------------------
63 # Define network interfaces.
65 # Number of network interfaces. Default is 1.
66 #nics=1
68 # Optionally define mac and/or bridge for the network interfaces.
69 # Random MACs are assigned if not given.
70 #vif = [ 'mac=aa:00:00:00:00:11, bridge=xen-br0' ]
72 #----------------------------------------------------------------------------
73 # Define the disk devices you want the domain to have access to, and
74 # what you want them accessible as.
75 # Each disk entry is of the form phy:UNAME,DEV,MODE
76 # where UNAME is the device, DEV is the device name the domain will see,
77 # and MODE is r for read-only, w for read-write.
79 # This makes the disk device depend on the vmid - assuming
80 # that devices sda7, sda8 etc. exist. The device is exported
81 # to all domains as sda1.
82 # All domains get sda6 read-only (to use for /usr, see below).
83 disk = [ 'phy:sda%d,sda1,w' % (7+vmid),
84 'phy:sda6,sda6,r' ]
86 #----------------------------------------------------------------------------
87 # Set the kernel command line for the new domain.
88 # You only need to define the IP parameters and hostname if the domain's
89 # IP config doesn't, e.g. in ifcfg-eth0 or via DHCP.
90 # You can use 'extra' to set the runlevel and custom environment
91 # variables used by custom rc scripts (e.g. VMID=, usr= ).
93 # Set if you want dhcp to allocate the IP address.
94 #dhcp="dhcp"
95 # Set netmask.
96 #netmask=
97 # Set default gateway.
98 #gateway=
99 # Set the hostname.
100 #hostname= "vm%d" % vmid
102 # Set root device.
103 root = "/dev/sda1 ro"
105 # Root device for nfs.
106 #root = "/dev/nfs"
107 # The nfs server.
108 #nfs_server = '169.254.1.0'
109 # Root directory on the nfs server.
110 #nfs_root = '/full/path/to/root/directory'
112 # Sets runlevel 4 and the device for /usr.
113 extra = "4 VMID=%d usr=/dev/sda6" % vmid
115 #----------------------------------------------------------------------------
116 # Set according to whether you want the domain restarted when it exits.
117 # The default is 'onreboot', which restarts the domain when it shuts down
118 # with exit code reboot.
119 # Other values are 'always', and 'never'.
121 #restart = 'onreboot'
123 #============================================================================