Server¶
Servers are the managed IncusOS instances that are registered with Operations Center. Servers are deployed using a pre-seeded IncusOS installation image. After installation, they automatically self-register themselves with Operations Center using a token.
Registered servers self-update their connection_url with Operations Center
periodically.
Operations Center on the other hand is periodically testing the connectivity (by default every 5 Minutes) as well as updating the servers resources:
Type
Hardware data
Operation system data
Version information
Certificate
Once one or many servers are clustered together to form a cluster, Operations Center will keep track of their inventory.
Automated Deployment¶
A pre-registered server with a BMC can be installed unattended:
operations-center provisioning server deploy <name> <token-uuid> <seed>
Operations Center then configures the BIOS of the server from the BIOS profiles
matching it, enrolls the secure boot certificates of IncusOS, attaches the
installation media generated from the token seed and boots it, and watches the
server until it has registered itself. The progress is followed with
operations-center provisioning server deploy-status <name>, which with
--wait keeps reporting the states the deployment enters until it is done, and
a running deployment is stopped with
operations-center provisioning server deploy-cancel <name>, which ejects the
installation media and powers the server off. Add --skip-cleanup to stop the
deployment without that clean up, leaving the server untouched.
BIOS profiles under development are provided with --bios-profiles <file>, in
which case the BIOS configuration is resolved from the profiles of the file
and the BIOS profiles of Operations Center are not consulted for this
deployment. A certificate, that such a profile keeps in a secure boot database
and that Operations Center does not know, is provided with
--secure-boot-certificate <file>, a PEM file holding a single certificate.
This requires --bios-profiles and --secure-boot-enrollment-media, and at
most 16 certificates can be provided. A deployment, which could not enroll a
certificate kept by the provided profiles, is rejected.
BIOS profiles are also able to adjust the timings of the deployment, e.g. the
timeouts, for hardware, that needs more time than the defaults grant. The
settings deviating from the defaults for a server are shown by
operations-center provisioning server bios-profile <name>, the ones of a
deployment by operations-center provisioning server deploy-status <name>.
A BIOS attribute and a key database, that are correct already, are left alone, so a server, that is deployed a second time, is neither power cycled nor has its UEFI keys rewritten for nothing.
Not every BMC allows the UEFI key databases to be modified through its Redfish
API. Add --skip-secure-boot-certificates for such a server, in which case the
secure boot certificates of IncusOS have to be enrolled manually before the
deployment is triggered, everything else being unchanged.
While a deployment is running, the server is in status deploying with one of
the following status details:
Server Status |
Server Status Detail |
Meaning |
|---|---|---|
|
|
Collecting BMC data, checking BIOS and powering the server off |
|
|
Applying and verifying the BIOS attributes, enrolling secure boot |
|
|
Ejecting stale media and attaching the installation media |
|
|
The server is running the first stage of the installation |
|
|
Ejecting the media and waiting for the registration |
|
|
Ejecting the media and powering the server off after a cancel |
|
|
The deployment failed, nothing has been cleaned up |
|
|
The deployment has been canceled |
A successful deployment ends with the server registering itself, so it continues
its life in status pending and eventually graduating to ready. A failed
deployment is deliberately not cleaned up: the installation media stays attached
and the power state is left as it is, so the server can be inspected through the
BMC console. A deployment canceled with --skip-cleanup is left the same way.
More detailed information about the deployment can be found in [/development/server-deployment].
Network Configuration¶
Operations Center allows to update the network configuration of registered servers. This is in particular useful for managing servers with multiple network interfaces. See IncusOS Network Configuration for more details.
Update Operating System¶
Operations Center reports if updates are available, reboots are required or if a server is currently in maintenance mode. Based on this information, administrators can decide to trigger an update, evacuate workloads or reboot the server.
Server Status |
Server Status Detail |
Needs Update |
Needs Reboot |
Incus Cluster? |
In Maintenance |
Aggregated Update State |
Recommended Action |
|---|---|---|---|---|---|---|---|
Ready |
- |
false |
false |
- |
Not In Maintenance |
up to date |
- |
Ready |
- |
true |
- |
- |
- |
update pending |
update |
Ready |
Updating |
- |
- |
- |
- |
updating |
- |
Ready |
Updating Application |
- |
- |
- |
- |
updating |
- |
Ready |
- |
false |
true |
true |
Not In Maintenance |
evacuation pending |
evacuate |
Ready |
- |
false |
- |
true |
In Maintenance Evacuating |
evacuating |
- |
Ready |
- |
false |
true |
true |
In Maintenance Evacuated |
in maintenance, reboot pending |
reboot |
Offline |
Rebooting |
- |
- |
true |
In Maintenance Evacuated |
in maintenance, rebooting |
- |
Ready |
- |
false |
- |
true |
In Maintenance Evacuated |
in maintenance, restore pending |
restore |
Ready |
- |
false |
- |
true |
In Maintenance Restoring |
restoring |
- |
Ready |
- |
false |
true |
false |
Not In Maintenance |
reboot pending |
reboot |
Offline |
Rebooting |
- |
false |
false |
Not In Maintenance |
rebooting |
- |
Columns with - indicate that the value can be either true or false without
affecting the aggregated update state or recommended action.
For undefined states, the aggregated update state is undefined and the recommended action is - (none).
Actions “evacuate” and “restore” are only available, if the server has type “Incus”.
More detailed information about the server status transitions can be found in [/development/server-status].