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