中文日本語

Docs · 1.0

System: Maintenance, Time and Host Console

This chapter covers the tabs of the System menu that manage the host itself: Maintenance (restart and shutdown, service switches, file transfer, default storage pool, host check), Time (time zone and time servers), Manager (hand the host to the keel manager) and Host console (a root shell in the web page). For upgrades see System: Upgrade and Restart, for keelRM see System: The keelRM Management Port, and for tokens and the audit log see Accounts, Tokens and Permissions.

Tabs appear according to permission: Maintenance and Time need host write permission (host:write); Manager needs host:read.

Maintenance

Open System → Maintenance. From top to bottom the page has Power, Services, Files to /tmp, Default storage pool and Host check.

Restarting and shutting down the host

The Power card first lists the running VMs and what will happen to each at a restart, then two buttons.

  • Restart the host: keel decides how to restart, and you do not choose. Usually it reloads the system (reload) and running VMs pause for about half a minute and then continue. When a new hypervisor is waiting to boot, or the host has no hyp, it is a full restart: VMs are shut down first and start again automatically afterwards, which takes a few minutes. For details see System: Upgrade and Restart.
  • Shut down the host: first presses the power button of every running VM, force-stops those that are still on when time runs out, and then powers the host off. VMs set to autostart come back at the next power-on.

While an upgrade is being written, both buttons are disabled for the moment. If a download is in progress, restarting or shutting down cancels it. When a nested-virtualization VM cannot be checkpointed for now, restart is also unavailable, and the page explains, see Nested virtualization.

While restarting or shutting down, the page is covered by a notice and refreshes itself when the host is back.

Services

The Services card has three switches. They take effect at once and stay after a restart:

Service What it does
SSH root logs in on port 22 with the admin password or a key.
RDP (guest screens) Look at VMs' screens with a remote desktop client, with sound and USB, see Console and Remote Desktop.
mDNS (keelos.local) The host answers as <name>.local on the management network; the keel manager uses it to find the host.

Each row shows the state (Running, Stopped) and the listening address; switch with Turn on / Turn off. Before SSH is turned off you are asked to confirm: existing sessions are not affected, but nobody can log in again until you turn it back on (the host console in the web page keeps working). Turning RDP off disconnects remote desktops that are connected.

If the CPU has big (P) and small (E) cores, the RDP row has one more setting, Video encoding on: P cores (default) (highest and steadiest frame rate), E cores (keeps the P cores for VMs) or any core. It takes effect at once and connected sessions are not dropped.

Note: If a service is set to on but is not running, or set to off but still running, a red line under the state warns you.

Files to /tmp

Drag files onto this card (or click to choose) and they are put in the host's /tmp, for example a test program you want to run in the host console. The list shows File, Size, Time, executable, and each row has Delete.

  • /tmp is a RAM disk and is empty after a restart; how much fits depends on memory.
  • Programs (ELF) and scripts (#!) automatically get the executable permission; a file with the same name is replaced.

Default storage pool

With several storage pools, choose here which one is the default: new VMs, the ISO library, software packages and keel's own data (database, logs) go on the default pool. Changing the default pool moves keel's own data; the ISO library and packages stay on the old pool and are not moved. For pools see Storage.

Host check

At the bottom of the Maintenance page is the Host check: on a newly installed host, run the CPU, memory and disks through their paces; each item is rated sound or abnormal, and while it runs you watch the temperature curves and see whether the host restarts under load. It is all online, with no need to reboot into another program. It needs the host:read permission.

  1. Click Start a check… and choose the items: - CPU benchmark: choose Load for (a few minutes). - Memory test: under Test choose Quick (3 patterns, about half a second per GiB) or Full (10 patterns, about a second per GiB); under How much choose all free memory, half, or a number of GiB; you can also tick testing root's own free memory. The dialog estimates how long it will take. - Disk benchmark: All, None or Pick some. It is read-only and the data on the disks does not change.
  2. Click Start. The page shows one line per item with its progress (waiting, running, done...), and draws curves for temperature, frequency, power draw, memory bandwidth and so on. Stop can be clicked at any time.
  3. When it finishes you get a report, listed under Reports with Time, Version and Verdict. Click Open to see each item's verdict (Sound, Attention, Problem), the numbers and the curves; tick two reports and click Compare to see the changes; Delete removes the ones you do not want.

The verdict names the actual problem, for example a core slower than the median of its socket, how long and how hot the CPU throttled under load, which physical address had a memory error, or how many machine check (MCA) records were added.

Note: If VMs are running, the page reminds you that the result is affected by them; VMs slow down during the CPU and memory tests.

If the host restarts or hangs under load, a red bar appears at the top of the page after it comes back: The host restarted or hung during the last check, saying which item was running, the last sampled CPU temperature, and whether root's kernel panicked or hung. Click Dismiss to fold it and Open the report for details.

Time

System → Time sets the host's time zone and time servers.

Time zone

Use the time zone of the place where the machine is. Times in the web page (including the audit log and the scheduled switch of an upgrade) and the clock of Windows VMs at boot follow this time zone; the host system itself and all logs are always UTC.

  1. The page shows the Time here.
  2. Click the place nearest to the machine on the world map, or choose from the Time zone list.
  3. Click Save and the page reloads.

The clocks of running VMs do not change; VMs whose clock uses local time (Windows) use the new time zone at their next start.

Time servers

The Time servers card shows the synchronisation state: synchronised with ... (offset N ms), Not synchronised yet, or Off: the host does not set its clock from the network. Click Change:

  • Tick Set the clock from time servers (NTP).
  • Use the servers suggested for the time zone (follow it when it changes) is ticked by default; untick it to enter your own under Other servers (one per line).
  • Expand to see, for each server ntpd sees, its Stratum, Reach, Delay (ms) and Offset (ms).

Manager

System → Manager is where you hand this host to the keel manager (keelMGR). One manager can manage many hosts.

To hand the host over:

  1. Click Hand to a manager and choose what the manager may do, the Permissions level: - manage: manage (power, console, snapshots, create/change/delete VMs, change host settings; cannot issue tokens or open the host shell); - operate: operate (power, console, snapshots); - monitor: look only.
  2. Click Make the code. In the manager's "Add host" enter this host's address and the code. The code is valid for 10 minutes and can be used once; the token the manager receives works only from its own address.

A manager can also send a request to the host: Requests from managers appears on the page, with a Check number: the 6-digit number shown on the manager's page must be the same as the one here. If it is, click Approve; if not, click Refuse (someone may be in the middle).

Managers already handed over are listed in a table (Manager, Address, Permissions, Paired, State). Click Disconnect and the token is revoked at once, so the manager can no longer reach this host. The page also shows this host's certificate fingerprint, to compare when a manager says the certificate has a new key.

Note: The manager uses a token; the token itself is also visible under System → Tokens, see Accounts, Tokens and Permissions.

Host console

System → Host console is a root shell in the web page, on the host and not inside a VM.

  • The first time you open it you must enter the admin password again and click Open the shell (if this host has no admin password set, give an admin token). This login is asked only once.
  • Leaving the page does not end the shell; come back and carry on, and the latest 256 KiB of output is replayed. The shell ends only when you click End session, log out, or no window is connected and nothing is typed for 30 minutes (what runs inside ends with it).
  • Window moves the shell into a separate window; Bring it here brings it back. Only one window is attached at a time. New session starts another shell and keeps the original; Attach goes back to it. There is a limit on the number of sessions; when it is full, end one first.
  • Every opening and closing is recorded in the audit log.

Note: The host console can be turned off with host_shell in keel.json; when it is off, this tab does not appear. Token permissions have no entry for it: a manager token ("everything except tokens and the host shell") cannot see it.

Note: To restart keel itself, do not run service keel restart directly in the host console (it would cut your own shell). Use daemon -f service keel restart.

Limits in 1.0

  • Fan policy and BMC settings are not on this page; they are under Configuration → Hardware, see Configuration: Device Passthrough and Hardware.
  • The host check data is stored only on this host; summaries across hosts are the manager's job.