This is an old revision of the document!
====== KVM ====== Kernel-based Virtual Machine (KVM) is a virtual machine implementation using the operating system's kernel. This often allows for greater performance than when using virtual machine solutions which rely on user-space drivers. Upon provisioning you'll have the option of either installing from a template or doing a manual install by ISO. We recommend the templates whenever possible as they will include the latest updates and are slimmed down quite a bit. ===== Basic Install ===== - Log in to the [[https://manage.buyvm.net|VPS Control Panel]] - Click on the VPS you wish to set up - Click "Reinstall" at the top - Pick the template of choice and click the "Reinstall" button Linux based templates will prompt you for a password. Windows based templates will be syspreped and will ask you to setup an adminstrator user. **You must load the console and finish setup. You will also have to enable remote desktop from the Computer Properties page**. ===== Limitations ===== Some operating systems are walled off depending on how much memory you have. Templates can help get around some of these limits since, for instance, CentOS will request 256MB+ RAM during installation but will only use < 20MB when bootup. For CentOS you will need to use a template. Windows 2003 will work on a 128MB with about 30MB spare RAM. Windows 2008 R2 & 2012 both require a **minimum** of 512MB RAM. ===== Networking ===== ==== IPv4 ==== === Public === DHCP is hit or miss with KVM, if your networking fails to setup automatically please use the following information to configure it manually: * Netmask: 255.255.255.0 * Gateway: x.x.x.1 (x.x.x being the first 3 parts of your main IP.) * Las Vegas Resolver #1: 184.108.40.206 * Las Vegas Resolver #2: 220.127.116.11 * Buffalo Resolver #1: 18.104.22.168 * Buffalo Resolver #2: 22.214.171.124 Here is a Debian example: auto eth0 iface eth0 inet static address 126.96.36.199 netmask 255.255.255.0 gateway 188.8.131.52 === Private IP address === * Netmask: 255.255.0.0 * Gateway: **Do not set a gateway** Below is an example for Debian: auto eth1 iface eth1 inet static address YOUR_PRIVATE_IP_HERE netmask 255.255.0.0 ==== IPv6 ==== === Las Vegas === * Gateway: 2605:6400:2:fed5::1 * Netmask: /48 == Example configuration for Debian in Las Vegas == iface eth0 inet6 static address YOUR_IPV6_ADDRESS_HERE netmask 48 gateway 2605:6400:2:fed5::1 === New York === * Gateway: 2605:6400:1:fed5::1 * Netmask: /48 == Example configuration for Debian in New York == iface eth0 inet6 static address YOUR_IPV6_ADDRESS_HERE netmask 48 gateway 2605:6400:1:fed5::1 ==== Windows ==== * Choose Intel PRO/1000 as the NIC in the VPS panel, and then once the OS is installed make sure to upgrade the intel ethernet driver to the latest Intel PRO/1000MT driver from intel.com ===== Known Issues/Informational ===== ==== Intel E1000 NIC Drivers ==== * Drivers for the e1000 Virtual NIC can be downloaded via [[http://downloadcenter.intel.com/Detail_Desc.aspx?DwnldID=21228|intel.com]] * Drivers for the e1000 Virtual NIC are also available via the Intel E1000 Driver CD, please use these only if you are unable to download the latest drivers via the URL above as these are only meant to enable internet access if you are otherwise unable to. ==== Pagefile/Swap Disclaimer ==== Please set reasonable Pagefile/Swap sizes as excessive IO caused by abusing these will result in suspension, repeated abuse will result in termination without credit nor refund. ==== Poor Disk Performance ==== You may be unsatisfied or have noticed poor I/O performance due to the fact that all KVM based VPS are provisioned with IDE based disks by default, this is required as not all OS play well with the VIRTIO BUS, namely Windows. The VIRTIO driver floppy is automatically mounted with your VPS during bootup time so be sure to select the drivers off this disk when installing Windows. ==== Poor Network Performance On Linux ==== If your virtual server has < 512MB RAM you'll likely suffer poor network performance due to strict default buffer sizes. To get around this please add the follow to your /etc/sysctl.conf <code> net.core.rmem_max=16777216 net.core.wmem_max=16777216 net.ipv4.tcp_rmem=4096 87380 16777216 net.ipv4.tcp_wmem=4096 65536 16777216 </code> Once you're done this be sure to ''sysctl -p'' to apply it. These settings will automatically apply during restarts so you shouldn't need to cron/script anything else.