FAQ: Difference between revisions

From Proxmox VE
Jump to navigation Jump to search
No edit summary
(34 intermediate revisions by 10 users not shown)
Line 1: Line 1:
tbd, if possible, detailed answers should linked to internal wiki pages
<!--PVE_IMPORT_START_MARKER-->
 
<!-- Do not edit - this is autogenerated content -->
==General==
{{#pvedocs:pve-faq-plain.html}}
===What is a container, CT, VE, Virtual Private Server, VPS?===
[[Category:Reference Documentation]]
:See [[Container and Full Virtualization]]
<pvehide>
 
New FAQs are appended to the bottom of this section.
===What is a KVM guest (KVM VM)?===
What distribution is Proxmox VE based on?
:A KVM guest or KVM VM is a guest system running virtualized under Proxmox VE with KVM.
Proxmox VE is based on Debian GNU/Linux
 
What license does the Proxmox VE project use?
===What is a Virtual Appliance?===
Proxmox VE code is licensed under the GNU Affero General Public License,
:See [[Overview]]
version 3.
 
Will Proxmox VE run on a 32bit processor?
===What distribution is Proxmox VE based on?===
Proxmox VE works only on 64-bit CPUs (AMD or Intel). There is no plan
:Proxmox VE is based on [http://www.debian.org Debian GNU/Linux], Proxmox VE Kernel is based on RHEL6 Kernel with OpenVZ patches
for 32-bit for the platform.
 
VMs and Containers can be both 32-bit and 64-bit.
==Installation and upgrade==
Does my CPU support virtualization?
 
To check if your CPU is virtualization compatible, check for the vmx
===Where can I find installation instructions?===
or svm tag in this command output:
:See [[Installation]]
egrep '(vmx|svm)' /proc/cpuinfo
 
Supported Intel CPUs
===Proxmox VE command line tools===
64-bit processors with
:See [[Command line tools]]
Intel
 
Virtualization Technology (Intel VT-x) support.
==Hardware==
(List of processors with Intel VT and 64-bit)
===CPU===
Supported AMD CPUs
====Will Proxmox VE run on a 32bit processor?====
64-bit processors with
Proxmox VE works only on 64-bit CPU´s (AMD or Intel). There is no plan for 32-bit for the platform.  
AMD
 
Virtualization Technology (AMD-V) support.
There are, however,  unofficial (and unsupported) instructions for manually installing Proxmox on 32-bit systems:
What is a container/virtual environment (VE)/virtual private server (VPS)?
* Proxmox 2.0 on Squeeze [[Install Proxmox VE on Debian Squeeze on 32-Bit Processor]]
In the context of containers, these terms all refer to the concept of
* Proxmox 1.4 on Lenny [[Install Proxmox VE on Debian Lenny on 32-Bit Processor]]
operating-system-level virtualization. Operating-system-level virtualization is
 
a method of virtualization, in which the kernel of an operating system
===Supported CPU chips===
allows for multiple isolated instances, that all share the kernel. When
====Intel====
referring to LXC, we call such instances containers. Because containers use the
64-bit processors with [http://en.wikipedia.org/wiki/Virtualization_Technology#Intel_virtualization_.28VT-x.29 Intel Virtualization Technology (Intel VT-x)] support
host&#8217;s kernel rather than emulating a full operating system, they require less
 
overhead, but are limited to Linux guests.
[http://ark.intel.com/search/advanced/?s=t&VTX=true&InstructionSet=64-bit List of processors with Intel VT and 64-bit]
What is a QEMU/KVM guest (or VM)?
 
A QEMU/KVM guest (or VM) is a guest system running virtualized under
====AMD====
Proxmox VE using QEMU and the Linux KVM kernel module.
64-bit processors with [http://en.wikipedia.org/wiki/Virtualization_Technology#AMD_virtualization_.28AMD-V.29 AMD Virtualization Technology (AMD-V)] support
What is QEMU?
 
QEMU is a generic and open source machine emulator and
==Networking==
virtualizer. QEMU uses the Linux KVM kernel module to achieve near
 
native performance by executing the guest code directly on the host
===How do I configure bridged networking in an OpenVZ Ubuntu/Debian container?===
CPU.
<ol>
It is not limited to Linux guests but allows arbitrary operating systems
<li>In the web gui under Virtual Machine configuration go to the network tab.
to run.
<li>Remove the ip address for venet and save. (Bridged Ethernet Devices will appear)
How long will my Proxmox VE version be supported?
<li>SSH into your host system and enter the container you want set bridged networking for:
Proxmox VE versions are supported at least as long as the corresponding
# vzctl enter <VMID>
Debian Version is
<li>edit  /etc/network/interfaces using using the following format and save. (replace with settings for your network)
oldstable. Proxmox VE uses a
<pre>
rolling release model and using the latest stable version is always
auto lo
recommended.
iface lo inet loopback
Proxmox VE Version
Debian Version
auto eth0
First Release
iface eth0 inet static
  Debian EOL
        address 10.0.0.17
  Proxmox EOL
        netmask 255.255.255.0
Proxmox VE 8
        network 10.0.0.0
Debian 12 (Bookworm)
        broadcast 10.0.0.255
2023-06
        gateway 10.0.0.10
tba
</pre>
tba
<li>Shutdown the container.
Proxmox VE 7
<li>Go back to web gui and under "Bridged Ethernet Devices" configure eth0 to vmbr0 and save. (a mac address will be automatically assigned)
Debian 11 (Bullseye)
<li>Start the container.
2021-07
</ol>
2024-07
Finally check that networking is working by entering the guest and viewing the results of ifconfig
2024-07
 
Proxmox VE 6
*In a Centos/RHEL container, check the gateway device is set correctly.
Debian 10 (Buster)
edit /etc/sysconfig/network
2019-07
<pre>
2022-09
NETWORKING="yes"
2022-09
#GATEWAYDEV="venet0"              # comment this and add line below
Proxmox VE 5
GATEWAYDEV="eth0"
Debian 9 (Stretch)
HOSTNAME="hostname"    # should be set by proxmox
2017-07
GATEWAY=123.123.123.123        # CHANGE (and remove from ifcfg-eth0)
2020-07
</pre>
2020-07
 
Proxmox VE 4
==Virtualization==
Debian 8 (Jessie)
===Why do you recommend 32-bit guests over 64 bit guests?===
2015-10
:64-bit makes sense only if you need greater than 4GB of memory.
2018-06
:32-bit guests use less memory in certain situations
2018-06
::e.g. a standard installation of apache2 on 64 bit containers consumes much more memory than on 32 bit.
Proxmox VE 3
 
Debian 7 (Wheezy)
 
2013-05
==Troubleshooting==
2016-04
 
2017-02
===I can't switch virtual consoles in Linux KVM guests with alt-F1, alt-F2...===
Proxmox VE 2
 
Debian 6 (Squeeze)
VNC viewer does not pass some key combinations or they may be intercepted by your operating system.
2012-04
 
2014-05
To send custom key combinations to the guest, go to "Monitor" in Virtual Machine Configuration for a given guest and use "sendkey" command.
2014-05
 
Proxmox VE 1
For example, to switch to the third console (tty3) you would use:
Debian 5 (Lenny)
 
2008-10
sendkey alt-f3
2012-03
 
2013-01
 
How can I upgrade Proxmox VE to the next point release?
===How can I send sysrq to Linux KVM guests?===
Minor version upgrades, for example upgrading from Proxmox VE in version 7.1
 
to 7.2 or 7.3, can be done just like any normal update.
Similarly to the above, go to "Monitor" in Virtual Machine Configuration for a given guest and use "sendkey" command.
But you should still check the release notes
 
for any relevant noteable, or breaking change.
For example, to issue "Emergency Sync", you would use:
For the update itself use either the Web UI Node &#8594; Updates panel or
 
through the CLI with:
sendkey alt-sysrq-s
apt update
 
apt full-upgrade
In the VNC viewer for the given guest you should see:
Always ensure you correctly setup the
 
package repositories and only
SysRq : Emergency Sync
continue with the actual upgrade if apt update did not hit any error.
 
How can I upgrade Proxmox VE to the next major release?
You should also see this entry if you run "dmesg" on this guest.
Major version upgrades, for example going from Proxmox VE 4.4 to 5.0, are also
 
supported.
See also http://en.wikipedia.org/wiki/Magic_SysRq_key for a full reference of possible combinations.
They must be carefully planned and tested and should never be started without
 
having a current backup ready.
 
Although the specific upgrade steps depend on your respective setup, we provide
===How can I access Linux guests through a serial console?===
general instructions and advice of how a upgrade should be performed:
 
Upgrade from Proxmox VE 7 to 8
Sometimes, it is necessary to access the guest through a serial console:
Upgrade from Proxmox VE 6 to 7
* you lost network access to the guest and VNC is either too slow for you or don't have the features you need (i.e. easy copy/paste between other terminals)
Upgrade from Proxmox VE 5 to 6
* your guest freezes or kernel panics, you want to debug it, but it's impossible to capture all messages on VNC screen
Upgrade from Proxmox VE 4 to 5
* you are familiar with <code>xm console <guest></code> from Xen and you want to use a similar feature here
Upgrade from Proxmox VE 3 to 4
 
LXC vs LXD vs Proxmox Containers vs Docker
 
LXC is a userspace interface for the Linux kernel containment
The necessary steps are:
features. Through a powerful API and simple tools, it lets Linux users
* on Proxmox VE host, in guest's configuration file in <code>/etc/qemu-server/<VMID>.conf</code> add:
easily create and manage system containers. LXC, as well as the former
 
OpenVZ, aims at system virtualization. Thus, it allows you to run a
args: -serial unix:/var/run/qemu-server/<VMID>.serial,server,nowait
complete OS inside a container, where you log in using ssh, add users,
 
run apache, etc&#8230;
This will open console in <code>/var/run/qemu-server/<VMID>.serial</code> socket file, which can be accessed by minicom or other serial communication program.
LXD is built on top of LXC to provide a new, better user
 
experience. Under the hood, LXD uses LXC through liblxc and its Go
An alternative is to add:
binding to create and manage the containers. It&#8217;s basically an
 
alternative to LXC&#8217;s tools and distribution template system with the
args: -serial tcp:localhost:6000,server,nowait
added features that come from being controllable over the network.
 
Proxmox Containers are how we refer to containers that are created and managed
With this, you can connect to guest's serial console with telnet. Note that with telnet, any passwords will be visible on the screen.
using the Proxmox Container Toolkit (pct). They also target system
 
virtualization and use LXC as the basis of the container offering. The
 
Proxmox Container Toolkit (pct) is tightly coupled with Proxmox VE. This means
* on guest, in /etc/inittab, look for lines similar to the ones below and make sure you have "ttyS0" there - this would be your serial console:
that it is aware of cluster setups, and it can use the same network
 
and storage resources as QEMU virtual machines (VMs). You can even use the
5:2345:respawn:/sbin/mingetty tty5
Proxmox VE firewall, create and restore backups, or manage containers using
6:2345:respawn:/sbin/mingetty ttyS0
the HA framework. Everything can be controlled over the network using
 
the Proxmox VE API.
If you want kernel messages to be shown on both serial and VGA consoles, you have to add a kernel parameter in your bootloader's configuration. For grub, it would be these "console" entries:
Docker aims at running a single application in an isolated, self-contained
 
environment. These are generally referred to as &#8220;Application Containers&#8221;, rather
kernel (hd0,0)/boot/vmlinuz root=LABEL=guest-root console=ttyS0 console=tty0
than &#8220;System Containers&#8221;. You manage a Docker instance from the host, using the
 
Docker Engine command-line interface. It is not recommended to run docker
 
directly on your Proxmox VE host.
To access the guest from minicom, configure it to use a path such as <code>unix#/var/run/qemu-server/<VMID>.serial</code> in "cOnfigure Minicom -> Serial port setup -> Serial Device".
If you want to run application containers, for example, Docker images, it
 
is best to run them inside a Proxmox QEMU VM.
 
</pvehide>
To use multiple minicom configurations for several guests, create a file like /etc/minicom/minirc.someguest for each of your guests, with contents:
<!--PVE_IMPORT_END_MARKER-->
 
pu port            unix#/var/run/qemu-server/<VMID>.serial
pu minit
pu mreset
 
 
Then, start the console with:
 
minicom someguest
 
 
See also http://www.proxmox.com/forum/showthread.php?p=5615
 
===How can I assign a physical disk to a VM?===
You don't have to do anything at host level (i.e. not add to fstab or anything), just set is as available directly to the KVM guest:
qm set <vmid> -ide# /dev/sdb
Or:
qm set <vmid> -ide# /dev/disk/by-id/[your disk ID]
 
...since having the drive letter change (should you add a drive) might have unintended consequences.
 
Also see /etc/qemu-server/<vmid>.conf if you want to add it editing the conf file by hand (i.e. adding ide1: /dev/sdb2).
After that you can run the VM as usual, and you will have the new storage device available inside it.
Beware that you can't assign it to more than one running VM if the filesystem is not designed for such scenario.
 
===How can I assign a physical disk to a CT?===
See http://wiki.openvz.org/Bind_mounts

Revision as of 14:11, 23 November 2023

Note New FAQs are appended to the bottom of this section.
  1. What distribution is Proxmox VE based on?

    Proxmox VE is based on Debian GNU/Linux

  2. What license does the Proxmox VE project use?

    Proxmox VE code is licensed under the GNU Affero General Public License, version 3.

  3. Will Proxmox VE run on a 32bit processor?

    Proxmox VE works only on 64-bit CPUs (AMD or Intel). There is no plan for 32-bit for the platform.

    Note VMs and Containers can be both 32-bit and 64-bit.
  4. Does my CPU support virtualization?

    To check if your CPU is virtualization compatible, check for the vmx or svm tag in this command output:

    egrep '(vmx|svm)' /proc/cpuinfo
  5. Supported Intel CPUs

    64-bit processors with Intel Virtualization Technology (Intel VT-x) support. (List of processors with Intel VT and 64-bit)

  6. Supported AMD CPUs

    64-bit processors with AMD Virtualization Technology (AMD-V) support.

  7. What is a container/virtual environment (VE)/virtual private server (VPS)?

    In the context of containers, these terms all refer to the concept of operating-system-level virtualization. Operating-system-level virtualization is a method of virtualization, in which the kernel of an operating system allows for multiple isolated instances, that all share the kernel. When referring to LXC, we call such instances containers. Because containers use the host’s kernel rather than emulating a full operating system, they require less overhead, but are limited to Linux guests.

  8. What is a QEMU/KVM guest (or VM)?

    A QEMU/KVM guest (or VM) is a guest system running virtualized under Proxmox VE using QEMU and the Linux KVM kernel module.

  9. What is QEMU?

    QEMU is a generic and open source machine emulator and virtualizer. QEMU uses the Linux KVM kernel module to achieve near native performance by executing the guest code directly on the host CPU. It is not limited to Linux guests but allows arbitrary operating systems to run.

  10. How long will my Proxmox VE version be supported?

    Proxmox VE versions are supported at least as long as the corresponding Debian Version is oldstable. Proxmox VE uses a rolling release model and using the latest stable version is always recommended.

    Proxmox VE Version Debian Version First Release Debian EOL Proxmox EOL

    Proxmox VE 8

    Debian 12 (Bookworm)

    2023-06

    tba

    tba

    Proxmox VE 7

    Debian 11 (Bullseye)

    2021-07

    2024-07

    2024-07

    Proxmox VE 6

    Debian 10 (Buster)

    2019-07

    2022-09

    2022-09

    Proxmox VE 5

    Debian 9 (Stretch)

    2017-07

    2020-07

    2020-07

    Proxmox VE 4

    Debian 8 (Jessie)

    2015-10

    2018-06

    2018-06

    Proxmox VE 3

    Debian 7 (Wheezy)

    2013-05

    2016-04

    2017-02

    Proxmox VE 2

    Debian 6 (Squeeze)

    2012-04

    2014-05

    2014-05

    Proxmox VE 1

    Debian 5 (Lenny)

    2008-10

    2012-03

    2013-01

  11. How can I upgrade Proxmox VE to the next point release?

    Minor version upgrades, for example upgrading from Proxmox VE in version 7.1 to 7.2 or 7.3, can be done just like any normal update. But you should still check the release notes for any relevant notable, or breaking change.

    For the update itself use either the Web UI Node → Updates panel or through the CLI with:

    apt update
    apt full-upgrade
    Note Always ensure you correctly setup the package repositories and only continue with the actual upgrade if apt update did not hit any error.
  12. How can I upgrade Proxmox VE to the next major release?

    Major version upgrades, for example going from Proxmox VE 4.4 to 5.0, are also supported. They must be carefully planned and tested and should never be started without having a current backup ready.

    Although the specific upgrade steps depend on your respective setup, we provide general instructions and advice of how a upgrade should be performed:

  13. LXC vs LXD vs Proxmox Containers vs Docker

    LXC is a userspace interface for the Linux kernel containment features. Through a powerful API and simple tools, it lets Linux users easily create and manage system containers. LXC, as well as the former OpenVZ, aims at system virtualization. Thus, it allows you to run a complete OS inside a container, where you log in using ssh, add users, run apache, etc…

    LXD is built on top of LXC to provide a new, better user experience. Under the hood, LXD uses LXC through liblxc and its Go binding to create and manage the containers. It’s basically an alternative to LXC’s tools and distribution template system with the added features that come from being controllable over the network.

    Proxmox Containers are how we refer to containers that are created and managed using the Proxmox Container Toolkit (pct). They also target system virtualization and use LXC as the basis of the container offering. The Proxmox Container Toolkit (pct) is tightly coupled with Proxmox VE. This means that it is aware of cluster setups, and it can use the same network and storage resources as QEMU virtual machines (VMs). You can even use the Proxmox VE firewall, create and restore backups, or manage containers using the HA framework. Everything can be controlled over the network using the Proxmox VE API.

    Docker aims at running a single application in an isolated, self-contained environment. These are generally referred to as “Application Containers”, rather than “System Containers”. You manage a Docker instance from the host, using the Docker Engine command-line interface. It is not recommended to run docker directly on your Proxmox VE host.

    Note If you want to run application containers, for example, Docker images, it is best to run them inside a Proxmox QEMU VM.