--- wikisrc/ports/xen/howto.mdwn 2014/12/24 15:31:36 1.32 +++ wikisrc/ports/xen/howto.mdwn 2014/12/24 15:54:50 1.33 @@ -285,20 +285,33 @@ installed 4.1 or 4.2): xend=YES xenbackendd=YES -For 4.1 (and thus xm), add to rc.conf: +For 4.1 (and thus xm; xl is believed not to work well), add to rc.conf: xend=YES xencommons=YES TODO: Explain why if xm is preferred on 4.1, rc.d/xendomains has xl. +Or fix the package. -For 4.2 with xl, add to rc.conf: +For 4.2 with xm, add to rc.conf + + xend=YES + xencommons=YES + +For 4.2 with xl (preferred), add to rc.conf: TODO: explain if there is a xend replacement xencommons=YES TODO: Recommend for/against xen-watchdog. +After you have configured the daemons and rebooted, run the following +to inspect Xen's boot messages, available resources, and running +domains: + xm dmesg + xm info + xm list + Updating NetBSD in a dom0 ------------------------- @@ -332,19 +345,51 @@ Unprivileged domains (domU) =========================== This section describes general concepts about domUs. It does not -address specific domU operating systems or how to install them. - -Provided Resources for PV domains ---------------------------------- - -TODO: Explain that domUs get cpu, memory, disk and network. -Explain that randomness can be an issue. +address specific domU operating systems or how to install them. The +config files for domUs are typically in /usr/pkg/etc/xen, and are +typically named so that the file anme, domU name and the domU's host +name match. + +The domU is provided with cpu and memory by Xen, configured by the +dom0. The domU is provided with disk and network by the dom0, +mediated by Xen, and configured in the dom0. + +Entropy in domUs can be an issue; physical disks and network are on +the dom0. NetBSD's /dev/random system works, but is often challenged. + +CPU and memory +-------------- + +A domain is provided with some number of vcpus, less than the +number of cpus seen by the hypervisor. For a dom0, this is controlled +by the boot argument "dom0_max_vcpus=1". For a domU, it is controlled +from the config file. + +A domain is provided with memory, In the straightforward case, the sum +of the the memory allocated to the dom0 and all domUs must be less +than the available memory. + +Xen also provides a "balloon" driver, which can be used to let domains +use more memory temporarily. TODO: Explain better, and explain how +well it works with NetBSD. Virtual disks ------------- -TODO: Explain how to set up files for vnd and that one should write all zeros to preallocate. -TODO: Explain in what NetBSD versions sparse vnd files do and don't work. +With the file/vnd style, typically one creates a directory, +e.g. /u0/xen, on a disk large enough to hold virtual disks for all +domUs. Then, for each domU disk, one writes zeros to a file that then +serves to hold the virtual disk's bits; a suggested name is foo-xbd0 +for the first virtual disk for the domU called foo. Writing zeros to +the file serves two purposes. One is that preallocating the contents +improves performance. The other is that vnd on sparse files has +failed to work. TODO: give working/notworking NetBSD versions for +sparse vnd. Note that the use of file/vnd for Xen is not really +different than creating a file-backed virtual disk for some other +purpose, except that xentools handles the vnconfig commands. + +With the lvm style, one creates logical devices. They are then used +similarly to vnds. Virtual Networking ------------------ @@ -362,6 +407,18 @@ dom0. This is often appropriate when ru One can construct arbitrary other configurations, but there is no script support. +Sizing domains +-------------- + +Modern x86 hardware has vast amounts of resources. However, many +virtual servers can function just fine on far less. A system with +256M of RAM and a 4G disk can be a reasonable choice. Note that it is +far easier to adjust virtual resources than physical ones. For +memory, it's just a config file edit and a reboot. For disk, one can +create a new file and vnconfig it (or lvm), and then dump/restore, +just like updating physical disks, but without having to be there and +without those pesky connectors. + Config files ------------ @@ -526,7 +583,7 @@ working vif-bridge is also provided with #!/bin/sh #============================================================================ - # $NetBSD: howto.mdwn,v 1.31 2014/12/24 15:30:45 gdt Exp $ + # $NetBSD: howto.mdwn,v 1.32 2014/12/24 15:31:36 gdt Exp $ # # /usr/pkg/etc/xen/vif-bridge #