0
Capistrano::Configuration.instance(:must_exist).load do
0
+ task :install, :roles => :dom0 do
0
- # Config variables for migration
0
- default(:xen_slice) { Capistrano::CLI.ui.ask("Slice name") }
0
- default(:xen_old_host) { Capistrano::CLI.ui.ask("Old Xen host") }
0
- default(:xen_new_host) { Capistrano::CLI.ui.ask("New Xen host") }
0
- set(:xen_disk_size) { Capistrano::CLI.ui.ask("Disk size (GB)") }
0
- set(:xen_swap_size) { Capistrano::CLI.ui.ask("Swap size (GB)") }
0
+ task :install_deps, :roles => :dom0 do
0
+ # for amd64 version of ubuntu 7.10
0
+ apt.install( {:base => %w(linux-image-xen bridge-utils libxen3.1 python-xen-3.1 xen-docs-3.1 xen-hypervisor-3.1 xen-ioemu-3.1 xen-tools xen-utils-3.1 lvm2)}, :stable )
0
+ # alternatively, for x86 version of ubuntu:
0
+ # apt-get install ubuntu-xen-server libc6-xen
0
+ # Includes some hacks to get xen-tools working on Ubuntu gutsy
0
# ref: http://www.eadz.co.nz/blog/article/xen-gutsy.html
0
SYSTEM_CONFIG_FILES[:xen] = [
0
@@ -53,20 +60,7 @@ Capistrano::Configuration.instance(:must_exist).load do
0
- task :install, :roles => :dom0 do
0
- task :install_deps, :roles => :dom0 do
0
- # for amd64 version of ubuntu 7.10
0
- apt.install( {:base => %w(linux-image-xen bridge-utils libxen3.1 python-xen-3.1 xen-docs-3.1 xen-hypervisor-3.1 xen-ioemu-3.1 xen-tools xen-utils-3.1 lvm2)}, :stable )
0
- # alternatively, for x86 version of ubuntu:
0
- # apt-get install ubuntu-xen-server libc6-xen
0
desc "Generate configuration file(s) for Xen from template(s)"
0
SYSTEM_CONFIG_FILES[:xen].each do |file|
0
@@ -113,6 +107,16 @@ Capistrano::Configuration.instance(:must_exist).load do
0
+ # Handy commands for migrating a slice between servers
0
+ # Not as fast and effortless as I had hoped! -Mike
0
+ # Config variables for migration
0
+ default(:xen_slice) { Capistrano::CLI.ui.ask("Slice name") }
0
+ default(:xen_old_host) { Capistrano::CLI.ui.ask("Old Xen host") }
0
+ default(:xen_new_host) { Capistrano::CLI.ui.ask("New Xen host") }
0
+ set(:xen_disk_size) { Capistrano::CLI.ui.ask("Disk size (GB)") }
0
+ set(:xen_swap_size) { Capistrano::CLI.ui.ask("Swap size (GB)") }
0
desc "Migrate a slice on one Xen host to another. Slice is stopped, disk is tar'd up and transferred to new host."
0
@@ -125,7 +129,6 @@ Capistrano::Configuration.instance(:must_exist).load do
0
build_slice_from_tarball
0
mnt_dir = "/mnt/#{xen_slice}-disk"
0
tarball = "/tmp/#{xen_slice}-disk.tar"
0
@@ -179,6 +182,8 @@ Capistrano::Configuration.instance(:must_exist).load do
0
sudo "umount #{mnt_dir}", :hosts => xen_new_host
0
sudo "rmdir #{mnt_dir}", :hosts => xen_new_host
0
+ # end of migration tasks
0
desc "Enable hardy heron domU's on gutsy dom0"
0
task :enable_hardy_domu, :roles => :dom0 do