]> git.proxmox.com Git - pve-docs.git/blame_incremental - pve-installation.adoc
add vIOMMU documentation
[pve-docs.git] / pve-installation.adoc
... / ...
CommitLineData
1[[chapter_installation]]
2Installing {pve}
3================
4ifndef::manvolnum[]
5:pve-toplevel:
6endif::manvolnum[]
7ifdef::wiki[]
8:title: Installation
9endif::wiki[]
10
11{pve} is based on Debian. This is why the install disk images (ISO files)
12provided by Proxmox include a complete Debian system as well as all necessary
13{pve} packages.
14
15TIP: See the xref:faq-support-table[support table in the FAQ] for the
16relationship between {pve} releases and Debian releases.
17
18The installer will guide you through the setup, allowing you to partition the
19local disk(s), apply basic system configurations (for example, timezone,
20language, network) and install all required packages. This process should not
21take more than a few minutes. Installing with the provided ISO is the
22recommended method for new and existing users.
23
24Alternatively, {pve} can be installed on top of an existing Debian system. This
25option is only recommended for advanced users because detailed knowledge about
26{pve} is required.
27
28ifndef::wiki[]
29
30include::pve-system-requirements.adoc[]
31
32include::pve-installation-media.adoc[]
33
34endif::wiki[]
35
36
37[[installation_installer]]
38Using the {pve} Installer
39-------------------------
40
41The installer ISO image includes the following:
42
43* Complete operating system (Debian Linux, 64-bit)
44
45* The {pve} installer, which partitions the local disk(s) with ext4, XFS,
46 BTRFS (technology preview), or ZFS and installs the operating system
47
48* {pve} Linux kernel with KVM and LXC support
49
50* Complete toolset for administering virtual machines, containers, the host
51 system, clusters and all necessary resources
52
53* Web-based management interface
54
55NOTE: All existing data on the selected drives will be removed during the
56installation process. The installer does not add boot menu entries for other
57operating systems.
58
59Please insert the xref:installation_prepare_media[prepared installation media]
60(for example, USB flash drive or CD-ROM) and boot from it.
61
62TIP: Make sure that booting from the installation medium (for example, USB) is
63enabled in your server's firmware settings. Secure boot needs to be disabled
64when booting an installer prior to {pve} version 8.1.
65
66[thumbnail="screenshot/pve-grub-menu.png"]
67
68After choosing the correct entry (for example, 'Boot from USB') the {pve} menu
69will be displayed, and one of the following options can be selected:
70
71Install {pve} (Graphical)::
72
73Starts the normal installation.
74
75TIP: It's possible to use the installation wizard with a keyboard only. Buttons
76can be clicked by pressing the `ALT` key combined with the underlined character
77from the respective button. For example, `ALT + N` to press a `Next` button.
78
79Install {pve} (Terminal UI)::
80
81Starts the terminal-mode installation wizard. It provides the same overall
82installation experience as the graphical installer, but has generally better
83compatibility with very old and very new hardware.
84
85Install {pve} (Terminal UI, Serial Console)::
86
87Starts the terminal-mode installation wizard, additionally setting up the Linux
88kernel to use the (first) serial port of the machine for in- and output. This
89can be used if the machine is completely headless and only has a serial console
90available.
91
92[thumbnail="screenshot/pve-tui-installer.png"]
93
94Both modes use the same code base for the actual installation process to
95benefit from more than a decade of bug fixes and ensure feature parity.
96
97TIP: The 'Terminal UI' option can be used in case the graphical installer does
98not work correctly, due to e.g. driver issues. See also
99xref:nomodeset_kernel_param[adding the `nomodeset` kernel parameter].
100
101Advanced Options: Install {pve} (Graphical, Debug Mode)::
102
103Starts the installation in debug mode. A console will be opened at several
104installation steps. This helps to debug the situation if something goes wrong.
105To exit a debug console, press `CTRL-D`. This option can be used to boot a live
106system with all basic tools available. You can use it, for example, to
107xref:chapter_zfs[repair a degraded ZFS 'rpool'] or fix the
108xref:sysboot[bootloader] for an existing {pve} setup.
109
110Advanced Options: Install {pve} (Terminal UI, Debug Mode)::
111
112Same as the graphical debug mode, but preparing the system to run the
113terminal-based installer instead.
114
115Advanced Options: Install {pve} (Serial Console Debug Mode)::
116
117Same the terminal-based debug mode, but additionally sets up the Linux kernel to
118use the (first) serial port of the machine for in- and output.
119
120Advanced Options: Rescue Boot::
121
122With this option you can boot an existing installation. It searches all attached
123hard disks. If it finds an existing installation, it boots directly into that
124disk using the Linux kernel from the ISO. This can be useful if there are
125problems with the bootloader (GRUB/`systemd-boot`) or the BIOS/UEFI is unable to
126read the boot block from the disk.
127
128Advanced Options: Test Memory (memtest86+)::
129
130Runs `memtest86+`. This is useful to check if the memory is functional and free
131of errors. Secure Boot must be turned off in the UEFI firmware setup utility to
132run this option.
133
134You normally select *Install {pve} (Graphical)* to start the installation.
135
136[thumbnail="screenshot/pve-select-target-disk.png"]
137
138The first step is to read our EULA (End User License Agreement). Following this,
139you can select the target hard disk(s) for the installation.
140
141CAUTION: By default, the whole server is used and all existing data is removed.
142Make sure there is no important data on the server before proceeding with the
143installation.
144
145The `Options` button lets you select the target file system, which
146defaults to `ext4`. The installer uses LVM if you select
147`ext4` or `xfs` as a file system, and offers additional options to
148restrict LVM space (see xref:advanced_lvm_options[below]).
149
150{pve} can also be installed on ZFS. As ZFS offers several software RAID levels,
151this is an option for systems that don't have a hardware RAID controller. The
152target disks must be selected in the `Options` dialog. More ZFS specific
153settings can be changed under xref:advanced_zfs_options[`Advanced Options`].
154
155WARNING: ZFS on top of any hardware RAID is not supported and can result in data
156loss.
157
158[thumbnail="screenshot/pve-select-location.png"]
159
160The next page asks for basic configuration options like your location, time
161zone, and keyboard layout. The location is used to select a nearby download
162server, in order to increase the speed of updates. The installer is usually able
163to auto-detect these settings, so you only need to change them in rare
164situations when auto-detection fails, or when you want to use a keyboard layout
165not commonly used in your country.
166
167[thumbnail="screenshot/pve-set-password.png", float="left"]
168
169Next the password of the superuser (`root`) and an email address needs to be
170specified. The password must consist of at least 5 characters. It's highly
171recommended to use a stronger password. Some guidelines are:
172
173- Use a minimum password length of at least 12 characters.
174
175- Include lowercase and uppercase alphabetic characters, numbers, and symbols.
176
177- Avoid character repetition, keyboard patterns, common dictionary words,
178 letter or number sequences, usernames, relative or pet names, romantic links
179 (current or past), and biographical information (for example ID numbers,
180 ancestors' names or dates).
181
182The email address is used to send notifications to the system administrator.
183For example:
184
185- Information about available package updates.
186
187- Error messages from periodic 'cron' jobs.
188
189[thumbnail="screenshot/pve-setup-network.png"]
190
191All those notification mails will be sent to the specified email address.
192
193The last step is the network configuration. Network interfaces that are 'UP'
194show a filled circle in front of their name in the drop down menu. Please note
195that during installation you can either specify an IPv4 or IPv6 address, but not
196both. To configure a dual stack node, add additional IP addresses after the
197installation.
198
199[thumbnail="screenshot/pve-installation.png", float="left"]
200
201The next step shows a summary of the previously selected options. Please
202re-check every setting and use the `Previous` button if a setting needs to be
203changed.
204
205After clicking `Install`, the installer will begin to format the disks and copy
206packages to the target disk(s). Please wait until this step has finished; then
207remove the installation medium and restart your system.
208
209[thumbnail="screenshot/pve-install-summary.png"]
210
211Copying the packages usually takes several minutes, mostly depending on the
212speed of the installation medium and the target disk performance.
213
214When copying and setting up the packages has finished, you can reboot the
215server. This will be done automatically after a few seconds by default.
216
217.Installation Failure
218
219If the installation failed, check out specific errors on the second TTY
220('CTRL + ALT + F2') and ensure that the systems meets the
221xref:install_minimal_requirements[minimum requirements].
222
223If the installation is still not working, look at the
224xref:getting_help[how to get help chapter].
225
226
227Accessing the Management Interface Post-Installation
228~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
229
230[thumbnail="screenshot/gui-login-window.png"]
231
232After a succesful installation and reboot of the system you can use the {pve}
233web interface for further configuration.
234
235. Point your browser to the IP address given during the installation and port
236 8006, for example: https://youripaddress:8006
237
238. Log in using the `root` (realm 'PAM') username and the password chosen during
239 installation.
240
241. Upload your subscription key to gain access to the Enterprise repository.
242 Otherwise, you will need to set up one of the public, less tested package
243 repositories to get updates for security fixes, bug fixes, and new features.
244
245. Check the IP configuration and hostname.
246
247. Check the timezone.
248
249. Check your xref:chapter_pve_firewall[Firewall settings].
250
251[[advanced_lvm_options]]
252Advanced LVM Configuration Options
253~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
254
255The installer creates a Volume Group (VG) called `pve`, and additional Logical
256Volumes (LVs) called `root`, `data`, and `swap`, if `ext4` or `xfs` is used. To
257control the size of these volumes use:
258
259`hdsize`::
260
261Defines the total hard disk size to be used. This way you can reserve free space
262on the hard disk for further partitioning (for example for an additional PV and
263VG on the same hard disk that can be used for LVM storage).
264
265`swapsize`::
266
267Defines the size of the `swap` volume. The default is the size of the installed
268memory, minimum 4 GB and maximum 8 GB. The resulting value cannot be greater
269than `hdsize/8`.
270+
271NOTE: If set to `0`, no `swap` volume will be created.
272
273`maxroot`::
274
275Defines the maximum size of the `root` volume, which stores the operation
276system. The maximum limit of the `root` volume size is `hdsize/4`.
277
278`maxvz`::
279
280Defines the maximum size of the `data` volume. The actual size of the `data`
281volume is:
282+
283`datasize = hdsize - rootsize - swapsize - minfree`
284+
285Where `datasize` cannot be bigger than `maxvz`.
286+
287NOTE: In case of LVM thin, the `data` pool will only be created if `datasize` is
288bigger than 4GB.
289+
290NOTE: If set to `0`, no `data` volume will be created and the storage
291configuration will be adapted accordingly.
292
293`minfree`::
294
295Defines the amount of free space that should be left in the LVM volume group
296`pve`. With more than 128GB storage available, the default is 16GB, otherwise
297`hdsize/8` will be used.
298+
299NOTE: LVM requires free space in the VG for snapshot creation (not required for
300lvmthin snapshots).
301
302[[advanced_zfs_options]]
303Advanced ZFS Configuration Options
304~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
305The installer creates the ZFS pool `rpool`, if ZFS is used. No swap space is
306created but you can reserve some unpartitioned space on the install disks for
307swap. You can also create a swap zvol after the installation, although this can
308lead to problems (see xref:zfs_swap[ZFS swap notes]).
309
310`ashift`::
311
312Defines the `ashift` value for the created pool. The `ashift` needs to be set at
313least to the sector-size of the underlying disks (2 to the power of `ashift` is
314the sector-size), or any disk which might be put in the pool (for example the
315replacement of a defective disk).
316
317`compress`::
318
319Defines whether compression is enabled for `rpool`.
320
321`checksum`::
322
323Defines which checksumming algorithm should be used for `rpool`.
324
325`copies`::
326
327Defines the `copies` parameter for `rpool`. Check the `zfs(8)` manpage for the
328semantics, and why this does not replace redundancy on disk-level.
329
330`ARC max size`::
331
332Defines the maximum size the ARC can grow to and thus limits the amount of
333memory ZFS will use. See also the section on
334xref:sysadmin_zfs_limit_memory_usage[how to limit ZFS memory usage] for more
335details.
336
337`hdsize`::
338
339Defines the total hard disk size to be used. This is useful to save free space
340on the hard disk(s) for further partitioning (for example to create a
341swap-partition). `hdsize` is only honored for bootable disks, that is only the
342first disk or mirror for RAID0, RAID1 or RAID10, and all disks in RAID-Z[123].
343
344
345ZFS Performance Tips
346~~~~~~~~~~~~~~~~~~~~
347
348ZFS works best with a lot of memory. If you intend to use ZFS make sure to have
349enough RAM available for it. A good calculation is 4GB plus 1GB RAM for each TB
350RAW disk space.
351
352ZFS can use a dedicated drive as write cache, called the ZFS Intent Log (ZIL).
353Use a fast drive (SSD) for it. It can be added after installation with the
354following command:
355
356----
357# zpool add <pool-name> log </dev/path_to_fast_ssd>
358----
359
360[[nomodeset_kernel_param]]
361Adding the `nomodeset` Kernel Parameter
362~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
363
364Problems may arise on very old or very new hardware due to graphics drivers. If
365the installation hangs during boot, you can try adding the `nomodeset`
366parameter. This prevents the Linux kernel from loading any graphics drivers and
367forces it to continue using the BIOS/UEFI-provided framebuffer.
368
369On the {pve} bootloader menu, navigate to 'Install {pve} (Terminal UI)' and
370press `e` to edit the entry. Using the arrow keys, navigate to the line starting
371with `linux`, move the cursor to the end of that line and add the
372parameter `nomodeset`, separated by a space from the pre-existing last
373parameter.
374
375Then press `Ctrl-X` or `F10` to boot the configuration.
376
377ifndef::wiki[]
378
379Install {pve} on Debian
380-----------------------
381
382{pve} ships as a set of Debian packages and can be installed on top of a standard
383Debian installation.
384xref:sysadmin_package_repositories[After configuring the repositories] you need
385to run the following commands:
386
387----
388# apt-get update
389# apt-get install proxmox-ve
390----
391
392Installing on top of an existing Debian installation looks easy, but it presumes
393that the base system has been installed correctly and that you know how you want
394to configure and use the local storage. You also need to configure the network
395manually.
396
397In general, this is not trivial, especially when LVM or ZFS is used.
398
399A detailed step by step how-to can be found on the
400{webwiki-url}Install_Proxmox_VE_on_Debian_12_Bookworm[wiki].
401
402
403endif::wiki[]
404
405ifdef::wiki[]
406
407Video Tutorials
408---------------
409
410See the list of all official tutorials on our
411https://www.youtube.com/proxmoxve[{pve} YouTube Channel]
412
413
414See Also
415--------
416
417* link:/wiki/Prepare_Installation_Media[Prepare Installation Media]
418
419* link:/wiki/Install_Proxmox_VE_on_Debian_12_Bookworm[Install Proxmox VE on Debian 12 Bookworm]
420
421* link:/wiki/System_Requirements[System Requirements]
422
423* link:/wiki/Package_Repositories[Package Repositories]
424
425* link:/wiki/Host_System_Administration[Host System Administration]
426
427* link:/wiki/Network_Configuration[Network Configuration]
428
429* link:/wiki/Installation:_Tips_and_Tricks[Installation: Tips and Tricks]
430
431endif::wiki[]