]> git.proxmox.com Git - pve-docs.git/blob - pve-gui.adoc
ssh: document PVE-specific setup
[pve-docs.git] / pve-gui.adoc
1 [[chapter_gui]]
2 Graphical User Interface
3 ========================
4 ifndef::manvolnum[]
5 :pve-toplevel:
6 endif::manvolnum[]
7
8 {pve} is simple. There is no need to install a separate management
9 tool, and everything can be done through your web browser (Latest
10 Firefox or Google Chrome is preferred). A built-in HTML5 console is
11 used to access the guest console. As an alternative,
12 https://www.spice-space.org/[SPICE] can be used.
13
14 Because we use the Proxmox cluster file system (pmxcfs), you can
15 connect to any node to manage the entire cluster. Each node can manage
16 the entire cluster. There is no need for a dedicated manager node.
17
18 You can use the web-based administration interface with any modern
19 browser. When {pve} detects that you are connecting from a mobile
20 device, you are redirected to a simpler, touch-based user interface.
21
22 The web interface can be reached via https://youripaddress:8006
23 (default login is: 'root', and the password is specified during the
24 installation process).
25
26
27 Features
28 --------
29
30 * Seamless integration and management of {pve} clusters
31
32 * AJAX technologies for dynamic updates of resources
33
34 * Secure access to all Virtual Machines and Containers via SSL
35 encryption (https)
36
37 * Fast search-driven interface, capable of handling hundreds and
38 probably thousands of VMs
39
40 * Secure HTML5 console or SPICE
41
42 * Role based permission management for all objects (VMs, storages,
43 nodes, etc.)
44
45 * Support for multiple authentication sources (e.g. local, MS ADS,
46 LDAP, ...)
47
48 * Two-Factor Authentication (OATH, Yubikey)
49
50 * Based on ExtJS 7.x JavaScript framework
51
52
53 Login
54 -----
55
56 [thumbnail="screenshot/gui-login-window.png"]
57
58 When you connect to the server, you will first see the login window.
59 {pve} supports various authentication backends ('Realm'), and
60 you can select the language here. The GUI is translated to more
61 than 20 languages.
62
63 NOTE: You can save the user name on the client side by selecting the
64 checkbox at the bottom. This saves some typing when you login next
65 time.
66
67
68 GUI Overview
69 ------------
70
71 [thumbnail="screenshot/gui-datacenter-summary.png"]
72
73 The {pve} user interface consists of four regions.
74
75 [horizontal]
76
77 Header:: On top. Shows status information and contains buttons for
78 most important actions.
79
80 Resource Tree:: At the left side. A navigation tree where you can select
81 specific objects.
82
83 Content Panel:: Center region. Selected objects display configuration
84 options and status here.
85
86 Log Panel:: At the bottom. Displays log entries for recent tasks. You
87 can double-click on those log entries to get more details, or to abort
88 a running task.
89
90 NOTE: You can shrink and expand the size of the resource tree and log
91 panel, or completely hide the log panel. This can be helpful when you
92 work on small displays and want more space to view other content.
93
94
95 Header
96 ~~~~~~
97
98 On the top left side, the first thing you see is the Proxmox
99 logo. Next to it is the current running version of {pve}. In the
100 search bar nearside you can search for specific objects (VMs,
101 containers, nodes, ...). This is sometimes faster than selecting an
102 object in the resource tree.
103
104 The right part of the header contains four buttons:
105
106 [horizontal]
107 Documentation :: Opens a new browser window showing the reference documentation.
108
109 Create VM :: Opens the virtual machine creation wizard.
110
111 Create CT :: Open the container creation wizard.
112
113 User Menu :: Displays the identity of the user you're currently logged in
114 with, and clicking it opens a menu with user-specific options.
115 +
116 In the user menu, you'll find the 'My Settings' dialog, which provides local UI
117 settings. Below that, there are shortcuts for 'TFA' (Two-Factor Authentication)
118 and 'Password' self-service. You'll also find options to change the 'Language'
119 and the 'Color Theme.' Finally, at the bottom of the menu is the 'Logout'
120 option.
121
122
123 [[gui_my_settings]]
124 My Settings
125 ~~~~~~~~~~~
126
127 [thumbnail="screenshot/gui-my-settings.png"]
128
129 The 'My Settings' window allows you to set locally stored settings. These
130 include the 'Dashboard Storages' which allow you to enable or disable specific
131 storages to be counted towards the total amount visible in the datacenter
132 summary. If no storage is checked the total is the sum of all storages, same
133 as enabling every single one.
134
135 Below the dashboard settings you find the stored user name and a button to
136 clear it as well as a button to reset every layout in the GUI to its default.
137
138 On the right side there are 'xterm.js Settings'. These contain the following
139 options:
140
141 [horizontal]
142 Font-Family :: The font to be used in xterm.js (e.g. Arial).
143
144 Font-Size :: The preferred font size to be used.
145
146 Letter Spacing :: Increases or decreases spacing between letters in text.
147
148 Line Height :: Specify the absolute height of a line.
149
150
151
152 Resource Tree
153 ~~~~~~~~~~~~~
154
155 This is the main navigation tree. On top of the tree you can select
156 some predefined views, which change the structure of the tree
157 below. The default view is the *Server View*, and it shows the following
158 object types:
159
160 [horizontal]
161 Datacenter:: Contains cluster-wide settings (relevant for all nodes).
162
163 Node:: Represents the hosts inside a cluster, where the guests run.
164
165 Guest:: VMs, containers and templates.
166
167 Storage:: Data Storage.
168
169 Pool:: It is possible to group guests using a pool to simplify
170 management.
171
172
173 The following view types are available:
174
175 [horizontal]
176 Server View:: Shows all kinds of objects, grouped by nodes.
177
178 Folder View:: Shows all kinds of objects, grouped by object type.
179
180 Pool View:: Show VMs and containers, grouped by pool.
181
182
183 Log Panel
184 ~~~~~~~~~
185
186 The main purpose of the log panel is to show you what is currently
187 going on in your cluster. Actions like creating an new VM are executed
188 in the background, and we call such a background job a 'task'.
189
190 Any output from such a task is saved into a separate log file. You can
191 view that log by simply double-click a task log entry. It is also
192 possible to abort a running task there.
193
194 Please note that we display the most recent tasks from all cluster nodes
195 here. So you can see when somebody else is working on another cluster
196 node in real-time.
197
198 NOTE: We remove older and finished task from the log panel to keep
199 that list short. But you can still find those tasks within the node panel in the
200 'Task History'.
201
202 Some short-running actions simply send logs to all cluster
203 members. You can see those messages in the 'Cluster log' panel.
204
205
206 Content Panels
207 --------------
208
209 When you select an item from the resource tree, the corresponding
210 object displays configuration and status information in the content
211 panel. The following sections provide a brief overview of this
212 functionality. Please refer to the corresponding chapters in the
213 reference documentation to get more detailed information.
214
215
216 Datacenter
217 ~~~~~~~~~~
218
219 [thumbnail="screenshot/gui-datacenter-search.png"]
220
221 On the datacenter level, you can access cluster-wide settings and information.
222
223 * *Search:* perform a cluster-wide search for nodes, VMs, containers, storage
224 devices, and pools.
225
226 * *Summary:* gives a brief overview of the cluster's health and resource usage.
227
228 * *Cluster:* provides the functionality and information necessary to create or
229 join a cluster.
230
231 * *Options:* view and manage cluster-wide default settings.
232
233 * *Storage:* provides an interface for managing cluster storage.
234
235 * *Backup:* schedule backup jobs. This operates cluster wide, so it doesn't
236 matter where the VMs/containers are on your cluster when scheduling.
237
238 * *Replication:* view and manage replication jobs.
239
240 * *Permissions:* manage user, group, and API token permissions, and LDAP,
241 MS-AD and Two-Factor authentication.
242
243 * *HA:* manage {pve} High Availability.
244
245 * *ACME:* set up ACME (Let's Encrypt) certificates for server nodes.
246
247 * *Firewall:* configure and make templates for the Proxmox Firewall cluster wide.
248
249 * *Metric Server:* define external metric servers for {pve}.
250
251 * *Notifications:* configurate notification behavior and targets for {pve}.
252
253 * *Support:* display information about your support subscription.
254
255
256 Nodes
257 ~~~~~
258
259 [thumbnail="screenshot/gui-node-summary.png"]
260
261 Nodes in your cluster can be managed individually at this level.
262
263 The top header has useful buttons such as 'Reboot', 'Shutdown', 'Shell',
264 'Bulk Actions' and 'Help'.
265 'Shell' has the options 'noVNC', 'SPICE' and 'xterm.js'.
266 'Bulk Actions' has the options 'Bulk Start', 'Bulk Shutdown' and 'Bulk Migrate'.
267
268 * *Search:* search a node for VMs, containers, storage devices, and pools.
269
270 * *Summary:* display a brief overview of the node's resource usage.
271
272 * *Notes:* write custom comments in xref:markdown_basics[Markdown syntax].
273
274 * *Shell:* access to a shell interface for the node.
275
276 * *System:* configure network, DNS and time settings, and access the syslog.
277
278 * *Updates:* upgrade the system and see the available new packages.
279
280 * *Firewall:* manage the Proxmox Firewall for a specific node.
281
282 * *Disks:* get an overview of the attached disks, and manage how they are used.
283
284 * *Ceph:* is only used if you have installed a Ceph server on your
285 host. In this case, you can manage your Ceph cluster and see the status
286 of it here.
287
288 * *Replication:* view and manage replication jobs.
289
290 * *Task History:* see a list of past tasks.
291
292 * *Subscription:* upload a subscription key, and generate a system report for
293 use in support cases.
294
295
296 Guests
297 ~~~~~~
298
299 [thumbnail="screenshot/gui-qemu-summary.png"]
300
301 There are two different kinds of guests and both can be converted to a template.
302 One of them is a Kernel-based Virtual Machine (KVM) and the other is a Linux Container (LXC).
303 Navigation for these are mostly the same; only some options are different.
304
305 To access the various guest management interfaces, select a VM or container from
306 the menu on the left.
307
308 The header contains commands for items such as power management, migration,
309 console access and type, cloning, HA, and help.
310 Some of these buttons contain drop-down menus, for example, 'Shutdown' also contains
311 other power options, and 'Console' contains the different console types:
312 'SPICE', 'noVNC' and 'xterm.js'.
313
314 The panel on the right contains an interface for whatever item is selected from
315 the menu on the left.
316
317 The available interfaces are as follows.
318
319 * *Summary:* provides a brief overview of the VM's activity and a `Notes` field
320 for xref:markdown_basics[Markdown syntax] comments.
321
322 * *Console:* access to an interactive console for the VM/container.
323
324 * *(KVM)Hardware:* define the hardware available to the KVM VM.
325
326 * *(LXC)Resources:* define the system resources available to the LXC.
327
328 * *(LXC)Network:* configure a container's network settings.
329
330 * *(LXC)DNS:* configure a container's DNS settings.
331
332 * *Options:* manage guest options.
333
334 * *Task History:* view all previous tasks related to the selected guest.
335
336 * *(KVM) Monitor:* an interactive communication interface to the KVM process.
337
338 * *Backup:* create and restore system backups.
339
340 * *Replication:* view and manage the replication jobs for the selected guest.
341
342 * *Snapshots:* create and restore VM snapshots.
343
344 * *Firewall:* configure the firewall on the VM level.
345
346 * *Permissions:* manage permissions for the selected guest.
347
348
349 Storage
350 ~~~~~~~
351
352 [thumbnail="screenshot/gui-storage-summary-local.png"]
353
354 As with the guest interface, the interface for storage consists of a menu on the
355 left for certain storage elements and an interface on the right to manage
356 these elements.
357
358 In this view we have a two partition split-view.
359 On the left side we have the storage options
360 and on the right side the content of the selected option will be shown.
361
362 * *Summary:* shows important information about the storage, such as the type,
363 usage, and content which it stores.
364
365 * *Content:* a menu item for each content type which the storage
366 stores, for example, Backups, ISO Images, CT Templates.
367
368 * *Permissions:* manage permissions for the storage.
369
370
371 Pools
372 ~~~~~
373
374 [thumbnail="screenshot/gui-pool-summary-development.png"]
375
376 Again, the pools view comprises two partitions: a menu on the left,
377 and the corresponding interfaces for each menu item on the right.
378
379 * *Summary:* shows a description of the pool.
380
381 * *Members:* display and manage pool members (guests and storage).
382
383 * *Permissions:* manage the permissions for the pool.
384
385
386 Tags
387 ----
388
389 [thumbnail="screenshot/gui-qemu-summary-tags-edit.png", float="left"]
390
391 For organizational purposes, it is possible to set `tags` for guests.
392 Currently, these only provide informational value to users.
393 Tags are displayed in two places in the web interface: in the `Resource Tree` and
394 in the status line when a guest is selected.
395
396 Tags can be added, edited, and removed in the status line of the guest by
397 clicking on the `pencil` icon. You can add multiple tags by pressing the `+`
398 button and remove them by pressing the `-` button. To save or cancel the changes,
399 you can use the `✓` and `x` button respectively.
400
401 Tags can also be set via the CLI, where multiple tags are separated by semicolons.
402 For example:
403
404 ----
405 # qm set ID --tags myfirsttag;mysecondtag
406 ----
407
408 Style Configuration
409 ~~~~~~~~~~~~~~~~~~~
410
411 [thumbnail="screenshot/gui-datacenter-tag-style.png"]
412
413 By default, the tag colors are derived from their text in a deterministic way.
414 The color, shape in the resource tree, and case-sensitivity, as well as how tags
415 are sorted, can be customized. This can be done via the web interface under
416 __Datacenter -> Options -> Tag Style Override__. Alternatively, this can be done
417 via the CLI. For example:
418
419 ----
420 # pvesh set /cluster/options --tag-style color-map=example:000000:FFFFFF
421 ----
422
423 sets the background color of the tag `example` to black (#000000) and the text
424 color to white (#FFFFFF).
425
426 Permissions
427 ~~~~~~~~~~~
428
429 [thumbnail="screenshot/gui-datacenter-options.png"]
430
431 By default, users with the privilege `VM.Config.Options` on a guest (`/vms/ID`)
432 can set any tags they want (see
433 xref:pveum_permission_management[Permission Management]). If you want to
434 restrict this behavior, appropriate permissions can be set under
435 __Datacenter -> Options -> User Tag Access__:
436
437 * `free`: users are not restricted in setting tags (Default)
438 * `list`: users can set tags based on a predefined list of tags
439 * `existing`: like list but users can also use already existing tags
440 * `none`: users are restricted from using tags
441
442 The same can also be done via the CLI.
443
444 Note that a user with the `Sys.Modify` privileges on `/` is always able to set
445 or delete any tags, regardless of the settings here. Additionally, there is a
446 configurable list of `registered tags` which can only be added and removed by
447 users with the privilege `Sys.Modify` on `/`. The list of registered tags can be
448 edited under __Datacenter -> Options -> Registered Tags__ or via the CLI.
449
450
451 For more details on the exact options and how to invoke them in the CLI, see
452 xref:datacenter_configuration_file[Datacenter Configuration].
453
454 ifdef::wiki[]
455
456 See Also
457 --------
458
459 * link:/wiki/Central_Web-based_Management
460
461 endif::wiki[]
462