]>
Commit | Line | Data |
---|---|---|
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 | Install {pve} (Terminal UI, Serial Console):: | |
86 | ||
87 | Starts the terminal-mode installation wizard, additionally setting up the Linux | |
88 | kernel to use the (first) serial port of the machine for in- and output. This | |
89 | can be used if the machine is completely headless and only has a serial console | |
90 | available. | |
91 | ||
92 | [thumbnail="screenshot/pve-tui-installer.png"] | |
93 | ||
94 | Both modes use the same code base for the actual installation process to | |
95 | benefit from more than a decade of bug fixes and ensure feature parity. | |
96 | ||
97 | TIP: The 'Terminal UI' option can be used in case the graphical installer does | |
98 | not work correctly, due to e.g. driver issues. See also | |
99 | xref:nomodeset_kernel_param[adding the `nomodeset` kernel parameter]. | |
100 | ||
101 | Advanced Options: Install {pve} (Graphical, Debug Mode):: | |
102 | ||
103 | Starts the installation in debug mode. A console will be opened at several | |
104 | installation steps. This helps to debug the situation if something goes wrong. | |
105 | To exit a debug console, press `CTRL-D`. This option can be used to boot a live | |
106 | system with all basic tools available. You can use it, for example, to | |
107 | xref:chapter_zfs[repair a degraded ZFS 'rpool'] or fix the | |
108 | xref:sysboot[bootloader] for an existing {pve} setup. | |
109 | ||
110 | Advanced Options: Install {pve} (Terminal UI, Debug Mode):: | |
111 | ||
112 | Same as the graphical debug mode, but preparing the system to run the | |
113 | terminal-based installer instead. | |
114 | ||
115 | Advanced Options: Install {pve} (Serial Console Debug Mode):: | |
116 | ||
117 | Same the terminal-based debug mode, but additionally sets up the Linux kernel to | |
118 | use the (first) serial port of the machine for in- and output. | |
119 | ||
120 | Advanced Options: Rescue Boot:: | |
121 | ||
122 | With this option you can boot an existing installation. It searches all attached | |
123 | hard disks. If it finds an existing installation, it boots directly into that | |
124 | disk using the Linux kernel from the ISO. This can be useful if there are | |
125 | problems with the bootloader (GRUB/`systemd-boot`) or the BIOS/UEFI is unable to | |
126 | read the boot block from the disk. | |
127 | ||
128 | Advanced Options: Test Memory (memtest86+):: | |
129 | ||
130 | Runs `memtest86+`. This is useful to check if the memory is functional and free | |
131 | of errors. Secure Boot must be turned off in the UEFI firmware setup utility to | |
132 | run this option. | |
133 | ||
134 | You normally select *Install {pve} (Graphical)* to start the installation. | |
135 | ||
136 | [thumbnail="screenshot/pve-select-target-disk.png"] | |
137 | ||
138 | The first step is to read our EULA (End User License Agreement). Following this, | |
139 | you can select the target hard disk(s) for the installation. | |
140 | ||
141 | CAUTION: By default, the whole server is used and all existing data is removed. | |
142 | Make sure there is no important data on the server before proceeding with the | |
143 | installation. | |
144 | ||
145 | The `Options` button lets you select the target file system, which | |
146 | defaults to `ext4`. The installer uses LVM if you select | |
147 | `ext4` or `xfs` as a file system, and offers additional options to | |
148 | restrict LVM space (see xref:advanced_lvm_options[below]). | |
149 | ||
150 | {pve} can also be installed on ZFS. As ZFS offers several software RAID levels, | |
151 | this is an option for systems that don't have a hardware RAID controller. The | |
152 | target disks must be selected in the `Options` dialog. More ZFS specific | |
153 | settings can be changed under xref:advanced_zfs_options[`Advanced Options`]. | |
154 | ||
155 | WARNING: ZFS on top of any hardware RAID is not supported and can result in data | |
156 | loss. | |
157 | ||
158 | [thumbnail="screenshot/pve-select-location.png"] | |
159 | ||
160 | The next page asks for basic configuration options like your location, time | |
161 | zone, and keyboard layout. The location is used to select a nearby download | |
162 | server, in order to increase the speed of updates. The installer is usually able | |
163 | to auto-detect these settings, so you only need to change them in rare | |
164 | situations when auto-detection fails, or when you want to use a keyboard layout | |
165 | not commonly used in your country. | |
166 | ||
167 | [thumbnail="screenshot/pve-set-password.png", float="left"] | |
168 | ||
169 | Next the password of the superuser (`root`) and an email address needs to be | |
170 | specified. The password must consist of at least 5 characters. It's highly | |
171 | recommended 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 | ||
182 | The email address is used to send notifications to the system administrator. | |
183 | For 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 | ||
191 | All those notification mails will be sent to the specified email address. | |
192 | ||
193 | The last step is the network configuration. Network interfaces that are 'UP' | |
194 | show a filled circle in front of their name in the drop down menu. Please note | |
195 | that during installation you can either specify an IPv4 or IPv6 address, but not | |
196 | both. To configure a dual stack node, add additional IP addresses after the | |
197 | installation. | |
198 | ||
199 | [thumbnail="screenshot/pve-installation.png", float="left"] | |
200 | ||
201 | The next step shows a summary of the previously selected options. Please | |
202 | re-check every setting and use the `Previous` button if a setting needs to be | |
203 | changed. | |
204 | ||
205 | After clicking `Install`, the installer will begin to format the disks and copy | |
206 | packages to the target disk(s). Please wait until this step has finished; then | |
207 | remove the installation medium and restart your system. | |
208 | ||
209 | [thumbnail="screenshot/pve-install-summary.png"] | |
210 | ||
211 | Copying the packages usually takes several minutes, mostly depending on the | |
212 | speed of the installation medium and the target disk performance. | |
213 | ||
214 | When copying and setting up the packages has finished, you can reboot the | |
215 | server. This will be done automatically after a few seconds by default. | |
216 | ||
217 | .Installation Failure | |
218 | ||
219 | If the installation failed, check out specific errors on the second TTY | |
220 | ('CTRL + ALT + F2') and ensure that the systems meets the | |
221 | xref:install_minimal_requirements[minimum requirements]. | |
222 | ||
223 | If the installation is still not working, look at the | |
224 | xref:getting_help[how to get help chapter]. | |
225 | ||
226 | ||
227 | Accessing the Management Interface Post-Installation | |
228 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
229 | ||
230 | [thumbnail="screenshot/gui-login-window.png"] | |
231 | ||
232 | After a succesful installation and reboot of the system you can use the {pve} | |
233 | web 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]] | |
252 | Advanced LVM Configuration Options | |
253 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
254 | ||
255 | The installer creates a Volume Group (VG) called `pve`, and additional Logical | |
256 | Volumes (LVs) called `root`, `data`, and `swap`, if `ext4` or `xfs` is used. To | |
257 | control the size of these volumes use: | |
258 | ||
259 | `hdsize`:: | |
260 | ||
261 | Defines the total hard disk size to be used. This way you can reserve free space | |
262 | on the hard disk for further partitioning (for example for an additional PV and | |
263 | VG on the same hard disk that can be used for LVM storage). | |
264 | ||
265 | `swapsize`:: | |
266 | ||
267 | Defines the size of the `swap` volume. The default is the size of the installed | |
268 | memory, minimum 4 GB and maximum 8 GB. The resulting value cannot be greater | |
269 | than `hdsize/8`. | |
270 | + | |
271 | NOTE: If set to `0`, no `swap` volume will be created. | |
272 | ||
273 | `maxroot`:: | |
274 | ||
275 | Defines the maximum size of the `root` volume, which stores the operation | |
276 | system. The maximum limit of the `root` volume size is `hdsize/4`. | |
277 | ||
278 | `maxvz`:: | |
279 | ||
280 | Defines the maximum size of the `data` volume. The actual size of the `data` | |
281 | volume is: | |
282 | + | |
283 | `datasize = hdsize - rootsize - swapsize - minfree` | |
284 | + | |
285 | Where `datasize` cannot be bigger than `maxvz`. | |
286 | + | |
287 | NOTE: In case of LVM thin, the `data` pool will only be created if `datasize` is | |
288 | bigger than 4GB. | |
289 | + | |
290 | NOTE: If set to `0`, no `data` volume will be created and the storage | |
291 | configuration will be adapted accordingly. | |
292 | ||
293 | `minfree`:: | |
294 | ||
295 | Defines 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 | + | |
299 | NOTE: LVM requires free space in the VG for snapshot creation (not required for | |
300 | lvmthin snapshots). | |
301 | ||
302 | [[advanced_zfs_options]] | |
303 | Advanced ZFS Configuration Options | |
304 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
305 | The installer creates the ZFS pool `rpool`, if ZFS is used. No swap space is | |
306 | created but you can reserve some unpartitioned space on the install disks for | |
307 | swap. You can also create a swap zvol after the installation, although this can | |
308 | lead to problems (see xref:zfs_swap[ZFS swap notes]). | |
309 | ||
310 | `ashift`:: | |
311 | ||
312 | Defines the `ashift` value for the created pool. The `ashift` needs to be set at | |
313 | least to the sector-size of the underlying disks (2 to the power of `ashift` is | |
314 | the sector-size), or any disk which might be put in the pool (for example the | |
315 | replacement of a defective disk). | |
316 | ||
317 | `compress`:: | |
318 | ||
319 | Defines whether compression is enabled for `rpool`. | |
320 | ||
321 | `checksum`:: | |
322 | ||
323 | Defines which checksumming algorithm should be used for `rpool`. | |
324 | ||
325 | `copies`:: | |
326 | ||
327 | Defines the `copies` parameter for `rpool`. Check the `zfs(8)` manpage for the | |
328 | semantics, and why this does not replace redundancy on disk-level. | |
329 | ||
330 | `ARC max size`:: | |
331 | ||
332 | Defines the maximum size the ARC can grow to and thus limits the amount of | |
333 | memory ZFS will use. See also the section on | |
334 | xref:sysadmin_zfs_limit_memory_usage[how to limit ZFS memory usage] for more | |
335 | details. | |
336 | ||
337 | `hdsize`:: | |
338 | ||
339 | Defines the total hard disk size to be used. This is useful to save free space | |
340 | on the hard disk(s) for further partitioning (for example to create a | |
341 | swap-partition). `hdsize` is only honored for bootable disks, that is only the | |
342 | first disk or mirror for RAID0, RAID1 or RAID10, and all disks in RAID-Z[123]. | |
343 | ||
344 | ||
345 | ZFS Performance Tips | |
346 | ~~~~~~~~~~~~~~~~~~~~ | |
347 | ||
348 | ZFS works best with a lot of memory. If you intend to use ZFS make sure to have | |
349 | enough RAM available for it. A good calculation is 4GB plus 1GB RAM for each TB | |
350 | RAW disk space. | |
351 | ||
352 | ZFS can use a dedicated drive as write cache, called the ZFS Intent Log (ZIL). | |
353 | Use a fast drive (SSD) for it. It can be added after installation with the | |
354 | following command: | |
355 | ||
356 | ---- | |
357 | # zpool add <pool-name> log </dev/path_to_fast_ssd> | |
358 | ---- | |
359 | ||
360 | [[nomodeset_kernel_param]] | |
361 | Adding the `nomodeset` Kernel Parameter | |
362 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
363 | ||
364 | Problems may arise on very old or very new hardware due to graphics drivers. If | |
365 | the installation hangs during boot, you can try adding the `nomodeset` | |
366 | parameter. This prevents the Linux kernel from loading any graphics drivers and | |
367 | forces it to continue using the BIOS/UEFI-provided framebuffer. | |
368 | ||
369 | On the {pve} bootloader menu, navigate to 'Install {pve} (Terminal UI)' and | |
370 | press `e` to edit the entry. Using the arrow keys, navigate to the line starting | |
371 | with `linux`, move the cursor to the end of that line and add the | |
372 | parameter `nomodeset`, separated by a space from the pre-existing last | |
373 | parameter. | |
374 | ||
375 | Then press `Ctrl-X` or `F10` to boot the configuration. | |
376 | ||
377 | ifndef::wiki[] | |
378 | ||
379 | Install {pve} on Debian | |
380 | ----------------------- | |
381 | ||
382 | {pve} ships as a set of Debian packages and can be installed on top of a standard | |
383 | Debian installation. | |
384 | xref:sysadmin_package_repositories[After configuring the repositories] you need | |
385 | to run the following commands: | |
386 | ||
387 | ---- | |
388 | # apt-get update | |
389 | # apt-get install proxmox-ve | |
390 | ---- | |
391 | ||
392 | Installing on top of an existing Debian installation looks easy, but it presumes | |
393 | that the base system has been installed correctly and that you know how you want | |
394 | to configure and use the local storage. You also need to configure the network | |
395 | manually. | |
396 | ||
397 | In general, this is not trivial, especially when LVM or ZFS is used. | |
398 | ||
399 | A detailed step by step how-to can be found on the | |
400 | {webwiki-url}Install_Proxmox_VE_on_Debian_12_Bookworm[wiki]. | |
401 | ||
402 | ||
403 | endif::wiki[] | |
404 | ||
405 | ifdef::wiki[] | |
406 | ||
407 | Video Tutorials | |
408 | --------------- | |
409 | ||
410 | See the list of all official tutorials on our | |
411 | https://www.youtube.com/proxmoxve[{pve} YouTube Channel] | |
412 | ||
413 | ||
414 | See 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 | ||
431 | endif::wiki[] |