Version 17 (modified by 13 years ago) ( diff ) | ,
---|
This page documents the procedure for creating a new KVM guest on a mayfirst server.
This document is not complete! Do not use it to actually create a new KVM guest yet.
Creating a new KVM guest
- Install the kvm-manager scripts
- Run kvm-creator to create the new LV for the guest and the needed directory and files in /etc/sv/kvm/:
USAGE: kvm-creator create|destroy|demo guestname [volumegroup [disksize [ram [tap [mac] ] ] ]
- Initially it's a good idea to run the demo. This will give you a breakdown of how the server will be created.
kvm-creator demo GUESTNAME
- After determining the settings you want the machine to have, run the demo command and then the 'create' command.
EXAMPLE WITH OUTPUT: 0 negri:~/preseed-repo/squeeze# kvm-creator demo hay vg_negri0 15G 512 NAME : hay VG : vg_negri0 SIZE : 15G RAM : 512 TAP : tap5 MAC : 02:01:00:00:00:06 DISK : /dev/mapper/vg_negri0-hay 0 negri:~/preseed-repo/squeeze# kvm-creator create hay vg_negri0 15G 512 Adding user `hay' ... Adding new group `hay' (1005) ... Adding new user `hay' (1005) with group `hay' ... Creating home directory `/home/hay' ... Copying files from `/etc/skel' ... Logical volume "hay" created 0 negri:~/preseed-repo/squeeze#
- Add at least one user to the access list for the new KVM guest's serial console
- Monkeysphere way:
- Add a uid to the /home/<guestname>/.monkeysphere/authorized_user_ids file or copy /root/.monkeysphere/authorized_user_ids to /home/<guestname>/.monkeysphere
- SSH key way
- Add an SSH key to the /home/<guestname>/.ssh/authorized_keys file
- Rebuild the monkeysphere-controlled SSH authorized_keys files:
monkeysphere-authentication u USERNAME
- Monkeysphere way:
- If you are installing an operating system to the new KVM guest:
- Customize the details for the server you are installing
- Edit /root/preseed-repo/squeeze/server-specifics.cfg with the new server's info
- Change into /usr/local/share/ISOs:
cd /usr/local/share/ISOs
- Run:
0 negri: di-maker hay-squeeze.iso /root/preseed-repo/squeeze/preseed.cfg /root/preseed-repo/squeeze/server-specifics.cfg /root/preseed-repo/squeeze/late_command --2011-03-05 15:22:04-- http://ftp.nl.debian.org/debian/dists/stable/main/installer-amd64/current/images/netboot/debian-installer/amd64/linux Resolving ftp.nl.debian.org... 130.89.149.21, 2001:610:1908:a000::149:21 Connecting to ftp.nl.debian.org|130.89.149.21|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 2417312 (2.3M) [application/octet-stream] Saving to: “linux” 100%[=====================================================================>] 2,417,312 1.81M/s in 1.3s 2011-03-05 15:22:05 (1.81 MB/s) - “linux” saved [2417312/2417312] --2011-03-05 15:22:05-- http://ftp.nl.debian.org/debian/dists/stable/main/installer-amd64/current/images/netboot/debian-installer/amd64/initrd.gz Reusing existing connection to ftp.nl.debian.org:80. HTTP request sent, awaiting response... 200 OK Length: 6747069 (6.4M) [application/octet-stream] Saving to: “initrd.gz” 100%[=====================================================================>] 6,747,069 3.40M/s in 1.9s 2011-03-05 15:22:07 (3.40 MB/s) - “initrd.gz” saved [6747069/6747069] FINISHED --2011-03-05 15:22:07-- Downloaded: 2 files, 8.7M in 3.2s (2.76 MB/s) 38743 blocks 38772 blocks Enabling BIOS support ... xorriso 0.5.6 : RockRidge filesystem manipulator, libburnia project. 0 negri:/usr/local/share/ISOs#
- Create a symlink called cd.iso in the /home/<guestname>/vms/<guestname>/ directory with a target of the desired ISO:
ln -s /usr/local/share/ISOs/<some-installer>.iso /home/<guestname/vms/<guestname>/cd.iso
- Customize the details for the server you are installing
- Tell runit to start the guest automatically
update-service --add /etc/sv/kvm/SERVER-NAME
- Log into the new guest via ssh:
ssh SERVER-NAME@HOST-NAME
- Install an OS: everything should be handled by preseed file
Note:
See TracWiki
for help on using the wiki.