Compare commits

...

1 Commits

Author SHA1 Message Date
Thomas Moraine
5889c99df1 docs(xen orchestra): generate sidebar from docs structure
Replace the manually maintained sidebar with an autogenerated one
based on the documentation folder structure and _category.json
files.

Use unlisted: true for published pages that should remain
accessible by direct URL but hidden from the production sidebar and
search engine indexes.

Use draft: true for work-in-progress pages so they remain visible
locally but are excluded from production builds.

This brings the Xen Orchestra documentation in line with the Vates
VMS and XCP-ng documentation and makes the sidebar easier to
understand and maintain.

Category breadcrumbs are now clickable through generated category
index pages, as they already are in the Vates VMS and XCP-ng docs.

Update internal links and redirects to match the new file structure
and URLs.

Signed-off-by: Thomas Moraine <thomas.moraine@vates.tech>
2026-07-17 10:02:07 +02:00
74 changed files with 484 additions and 566 deletions

View File

@@ -1,3 +1,7 @@
---
unlisted: true
---
# Airgap support and deployment
:::tip
@@ -15,9 +19,9 @@ In this scenario, you will need a QA/pre-production XCP-ng pool with Internet ac
### Deployment
[Follow the standard procedure](./xo5/installation.md) to deploy the XOA on your pool with Internet access.
[Follow the standard procedure](./xo5/xen-orchestra/installation) to deploy the XOA on your pool with Internet access.
Make sure that your appliance is [properly registered](./xo5/installation#registration) and [up-to-date](./xo5/updater).
Make sure that your appliance is [properly registered](./xo5/xen-orchestra/installation#registration) and [up-to-date](./xo5/xen-orchestra/updater).
It's also good to take a quick look at [the XOA check](./xo5/xoa#xoa-check) to detect issues early.
@@ -50,7 +54,7 @@ To upgrade your XOA, you need to:
1. shutdown the XOA on your airgapped pool
2. export it to an XVA file
3. move it to your connected pool and import it
4. start it, run the [upgrade process](./xo5/updater)
4. start it, run the [upgrade process](./xo5/xen-orchestra/updater)
5. shutdown this XOA
6. export it to an XVA file
7. move it to your airgapped pool and import it

View File

@@ -1,3 +1,7 @@
---
unlisted: true
---
# Distributed Backups
Distributed backups let you spread backup and replication workloads across multiple storage targets, treating them as a pool rather than independent destinations.
@@ -72,6 +76,6 @@ When a health check is scheduled, it runs only against the target that holds the
| ---------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Cannot mix storage classes | A pool cannot combine limited-capacity targets (NFS, Local, SMB) with unlimited targets (S3, Azure Blob). Xen Orchestra will throw an error at the start of the backup run. |
| Minimum 2 targets required | The option is greyed out in the UI unless at least 2 remotes or SRs are selected. |
| Not usable as mirror source | A job with distributed backup enabled cannot be used as the source for a [Mirror Backup](./xo5/mirror_backup.md) job. |
| Not usable as mirror source | A job with distributed backup enabled cannot be used as the source for a [Mirror Backup](./xo5/backups/mirror_backup) job. |
| No duplication | Distributed mode and per-target duplication are mutually exclusive in the same job. Each VM backup lands on exactly one target. |
| No cross-target restore dependency | Each VM backup is self-contained on its target. Restoring from one target does not require any other target to be available. |

View File

@@ -1,5 +1,7 @@
---
slug: /
title: 'Introduction'
sidebar_position: 1
---
# Xen Orchestra in a nutshell

View File

@@ -0,0 +1,8 @@
{
"label": "Project",
"position": 4,
"link": {
"type": "generated-index",
"description": "About the Xen Orchestra project"
}
}

View File

@@ -7,7 +7,7 @@ XO is an Open Source project released under the [AGPL v3](http://www.gnu.org/lic
You can [open bug reports here](https://github.com/vatesfr/xen-orchestra/issues) (issues, enhancements, ideas etc.).
:::tip
Before creating an issue, please take a look [into this section](xo6/community.md) for more details.
Before creating an issue, please take a look [into this section](../xo6/support/community) for more details.
:::
## Translations
@@ -29,7 +29,7 @@ The best way to propose a change to the documentation or code is
to create a [GitHub pull request](https://help.github.com/articles/using-pull-requests/).
1. Fork the [Xen Orchestra repository](https://github.com/vatesfr/xen-orchestra) using the Fork button
2. Follow [the documentation](./xo5/installation.md#from-the-sources) to install and run Xen Orchestra from the sources
2. Follow [the documentation](../xo5/xen-orchestra/installation#from-the-sources) to install and run Xen Orchestra from the sources
3. Create a branch for your work
4. Edit the source files
5. Add a summary of your changes to `CHANGELOG.unreleased.md`, if your changes do not relate to an existing changelog item and update the list of packages that must be released to take your changes into account

View File

@@ -1,3 +1,7 @@
---
unlisted: true
---
# Windows Templates with Cloudbase-init: Step-by-step Guide & Best Practices
This section provides step-by-step instructions for creating Windows templates that support cloud-init, using [Cloudbase-init](https://cloudbase.it/cloudbase-init/).

View File

@@ -0,0 +1,8 @@
{
"label": "XO 5",
"position": 3,
"link": {
"type": "generated-index",
"description": "All information relevant to Xen Orchestra 5"
}
}

View File

@@ -0,0 +1,8 @@
{
"label": "Backups",
"position": 3,
"link": {
"type": "generated-index",
"description": "Learn more about backups"
}
}

View File

@@ -11,15 +11,15 @@ Instead of a simple list of questions and answers, it walks you through **key de
This part explains the terminology of backup types and features.
- **Backup sequence**: A feature that allows you to chain multiple backup jobs to run one after the other, automatically.
- [**File restore**](./backups#restore-a-file): A feature that allows you to restore individual files from a VM backup without restoring the full VM.
- [**File restore**](/xo5/backups#restore-a-file): A feature that allows you to restore individual files from a VM backup without restoring the full VM.
- [**Full backup**](./full_backups): Copies the entire VM to backup repositories each time, regardless of previous backups.
- [**Full replication**](./full_replication): Creates a replica of a VM on other storage repositories (on the same pool or on another) by copying it completly on each run.
- [**Incremental backup**](./incremental_backups): Transfer and stores only the changes since the last backup to backup repositories , reducing storage and network needs. The first transfer transfers the VM completely.
- [**Incremental replication**](./incremental_replication): Transfer and stores only the changes since the last backup to storage repositories (on the same pool or on another), reducing network needs. The first transfer transfers the VM completely.
- [**Long-term retention**](./backups#long-term-backup-retention-with-gfs-strategy): Keeps backups over extended periods (weeks, months, or years) for compliance or archival purposes.
- [**Long-term retention**](/xo5/backups#long-term-backup-retention-with-gfs-strategy): Keeps backups over extended periods (weeks, months, or years) for compliance or archival purposes.
- [**Mirror backup**](./mirror_backup): Mirror a backup repository to another. Retention and encryption of source and destination can be different.
- [**Distributed backup and replication**](../distributed_backups): Distribute the backups and replications across multiple targets.
- [**Remote**](./backups#remotes): A storage location for backups. For instance:
- [**Distributed backup and replication**](../../distributed_backups): Distribute the backups and replications across multiple targets.
- [**Remote**](/xo5/backups#remotes): A storage location for backups. For instance:
- Local storage (not recommended)
- NFS
- SMB

View File

@@ -7,13 +7,13 @@ At the end of a backup job, you can configure Xen Orchestra to send backup repor
### Step-by-step
1. In the **Settings → Plugins** view, enable and configure the **Backup-reports** plugin.
![](../assets/backup-reports-plugin.png)
![](../../assets/backup-reports-plugin.png)
2. Configure also the `transport-email` plugin (see detailed configuration below).
![](../assets/transport-email-plugin.png)
![](../../assets/transport-email-plugin.png)
3. Once it's done, you can now create your backup job. In the "report" selection you can choose the situation in wish you want to receive an email (always, never or failure).
![](../assets/backup-report-config.png)
![](../../assets/backup-report-config.png)
:::tip
You can also modify existing backup jobs and change the behaviour of the report system.
@@ -118,7 +118,7 @@ Xen Orchestra is able to send backup reports to Slack or Mattermost.
### Plugin configuration
Like all other xo-server plugins, it can be configured directly via the web interface, see [the plugin documentation](architecture#plugins).
Like all other xo-server plugins, it can be configured directly via the web interface, see [the plugin documentation](../xen-orchestra/architecture#plugins).
### Generate the Webhook
@@ -128,23 +128,23 @@ Like all other xo-server plugins, it can be configured directly via the web inte
2. Click on the **Main menu** at the top and choose **Apps & Integrations**
![Apps & Integrations](../assets/DocImg1.png)
![Apps & Integrations](../../assets/DocImg1.png)
3. Search **Incoming WebHooks**
![Incoming WebHooks](../assets/DocImg2.png)
![Incoming WebHooks](../../assets/DocImg2.png)
4. Click on **Add Configuration**
![Add Configuration](../assets/DocImg3.png)
![Add Configuration](../../assets/DocImg3.png)
5. Choose the default channel and click on **Add Incoming WebHooks integration**
![Add Incoming WebHooks integration](../assets/DocImg4.png)
![Add Incoming WebHooks integration](../../assets/DocImg4.png)
6. Modify the default settings and click on **Save Settings**
![Save Settings](../assets/DocImg5.png)
![Save Settings](../../assets/DocImg5.png)
#### Mattermost
@@ -158,15 +158,15 @@ You need to be an admin:
#### Slack
![Slack configuration](../assets/DocImg6.png)
![Slack configuration](../../assets/DocImg6.png)
![Slack](../assets/DocImg7.png)
![Slack](../../assets/DocImg7.png)
#### Mattermost
![Mattermost configuration](../assets/DocImg8.png)
![Mattermost configuration](../../assets/DocImg8.png)
![Mattermost](../assets/DocImg9.png)
![Mattermost](../../assets/DocImg9.png)
## Nagios
@@ -174,7 +174,7 @@ The `transport-nagios` plugin allows you to integrate Xen Orchestra backup repor
Instead of relying solely on email notifications, this plugin sends the status of your backup jobs as **passive checks** to Nagios. This ensures that your infrastructure monitoring dashboard remains the single source of truth for your backup health.
![Preview of the Nagios interface](../assets/nagios-preview.jpg)
![Preview of the Nagios interface](../../assets/nagios-preview.jpg)
### Overview
@@ -196,7 +196,7 @@ NSCA is a Linux/Unix daemon that lets remote systems "push" status updates to a
The architecture is like this:
![NSCA schema](../assets/nsca.png)
![NSCA schema](../../assets/nsca.png)
Check your config file and add a password and a least XOR encryption:
@@ -240,7 +240,7 @@ This service will wait for XOA to send backup news in the last 24 hours.
Your Nagios setup is now ready. If the service doesn't have news from XOA, it will be in `CRITICAL` state, like this:
![Critical alert in Nagios](../assets/xo5nagiosset.png)
![Critical alert in Nagios](../../assets/xo5nagiosset.png)
### Installation in XOA
@@ -256,7 +256,7 @@ Once the plugin is enabled, you need to configure the connection to your Nagios
1. Click the edit icon (+) for the `transport-nagios` plugin to show the configuration form:
![transport-nagios plugin configuration form](../assets/nagios-plugin-configuration.png)
![transport-nagios plugin configuration form](../../assets/nagios-plugin-configuration.png)
2. Enter your desired values.
3. Click **Save configuration** to save and apply your changes.
@@ -267,11 +267,11 @@ In the transport-nagios configuration form, you can test the plugin.
If the plugin works correctly, the result should look like this:
![Test for the transport-nagios plugin. The plugin is shown as working fine](../assets/transport-nagios-test.png)
![Test for the transport-nagios plugin. The plugin is shown as working fine](../../assets/transport-nagios-test.png)
If your backup was completed successfully, the result should look like this:
![Test for the transport-nagios plugin, showing a successful backup](../assets/transport-nagios-backup-successful.png)
![Test for the transport-nagios plugin, showing a successful backup](../../assets/transport-nagios-backup-successful.png)
### Further resources
@@ -280,4 +280,4 @@ If your backup was completed successfully, the result should look like this:
## Web hooks
You can also configure web hooks to be sent to a custom server before and/or after a backup job runs. This won't send a formatted report but raw JSON data that you can use in custom scripts on your side. Follow the [web-hooks plugin documentation](./advanced#web-hooks) to configure it.
You can also configure web hooks to be sent to a custom server before and/or after a backup job runs. This won't send a formatted report but raw JSON data that you can use in custom scripts on your side. Follow the [web-hooks plugin documentation](../management/advanced#web-hooks) to configure it.

View File

@@ -6,7 +6,7 @@ This section is dedicated to help you if you have problems with XO Backups.
While a backup job is running, you should see activity in the "Tasks" view (Menu/Tasks), like this:
![](../assets/export_task.png)
![](../../assets/export_task.png)
Another good way to check if there is activity is the XOA VM stats view (on the Network graph).
@@ -57,7 +57,7 @@ As a last resort, migrating the VM (more specifically, its disks) to a new stora
## Parse Error
This is most likely due to running a backup job that uses Delta functionality (eg: delta backups, or continuous replication) on a version of XenServer older than 6.5. To use delta functionality you must run [XenServer 6.5 or later](./supported_hosts#xenserver-formerly-citrix-hypervisor).
This is most likely due to running a backup job that uses Delta functionality (eg: delta backups, or continuous replication) on a version of XenServer older than 6.5. To use delta functionality you must run [XenServer 6.5 or later](../xen-orchestra/supported_hosts#xenserver-formerly-citrix-hypervisor).
## SR_BACKEND_FAILURE_44

View File

@@ -56,7 +56,7 @@ This setup is compatible with any syslog server, such as [Rsyslog](https://www.r
Each backups' job execution is identified by a `runId`. You can find this `runId` in its detailed log.
![](../assets/log-runId.png)
![](../../assets/log-runId.png)
## Backup Encryption
@@ -137,7 +137,7 @@ A list of backup jobs will be displayed.
This will open the backup job details screen.
3. In the **Schedules** section of the details screen, you'll find the list of schedules for that backup job:
![](../assets/backup-schedule-list.png)
![](../../assets/backup-schedule-list.png)
### Creating a schedule
@@ -146,7 +146,7 @@ To set up a schedule for a backup job:
1. Navigate to the details page of your backup job (refer to the previous section, "Viewing Schedules for a Backup Job").
2. In the **Schedules** section of your backup job, click the **Add a schedule** button, represented by a ➕ icon.\
A form for creating a schedule will appear:
![](../assets/create-backup-schedule.png)
![](../../assets/create-backup-schedule.png)
3. Use the form to configure your schedule.\
@@ -266,11 +266,11 @@ Snapshots of Windows VMs can be quiesced (especially MS SQL or Exchange services
To see if you have quiesced snapshots for a VM, just go into its snapshot tab, then the "info" icon means it is a quiesced snapshot:
![](../assets/quiesced1.png)
![](../../assets/quiesced1.png)
The tooltip confirms this:
![](../assets/quiesced2.png)
![](../../assets/quiesced2.png)
## Remotes
@@ -310,7 +310,7 @@ Also, read the UI twice when you add an SMB store. If you have:
You'll have to fill it like this:
![](../assets/smb_fill.png)
![](../../assets/smb_fill.png)
:::warning
PATH TO BACKUP is only needed if you have subfolders in your share.
@@ -338,7 +338,7 @@ Xen Orchestra supports Amazon S3 storage and other S3-compatible providers, so y
- Losing your encryption key means your backups will be permanently inaccessible. If you enable encryption, make sure your key is stored securely, and outside of the backed up infrastructure, as there's no way to recover your data without it.
:::
![](../assets/XO-Amazon-S3-remote.png)
![](../../assets/XO-Amazon-S3-remote.png)
## Restore a backup
@@ -386,7 +386,7 @@ A pop-up window with a drop-down list appears.
More parameters appear, including a drop-down list for your destination Storage Repository (SR).
4. From that drop-down list, choose your destination SR.
5. Activate the switch called **Use differential restore**:
![](../assets/use-differential-restore.png)
![](../../assets/use-differential-restore.png)
6. Click **OK** to start the restore.
## File level restore
@@ -394,7 +394,7 @@ More parameters appear, including a drop-down list for your destination Storage
You can also restore specific files and directories inside a VM. It works with all your existing delta backups.
:::warning
- File level restore **is only possible on incremental backups**. Also, due of some technical limitations, you won't be able to do file level restore if you have a chain longer than 99 (ie retention longer than 99 records without any full between). Take a look at the [key backup interval section](./incremental_backups/#key-backup-interval) to set this correctly.
- File level restore **is only possible on incremental backups**. Also, due of some technical limitations, you won't be able to do file level restore if you have a chain longer than 99 (ie retention longer than 99 records without any full between). Take a look at the [key backup interval section](/xo5/backups/incremental_backups#key-backup-interval) to set this correctly.
- File level restore **is only possible on a single VDI**, it does not support LVM Volume Groups that span multiple VDIs.
- The following Microsoft solutions are **not supported**:
- [Data Deduplication](https://learn.microsoft.com/en-us/windows-server/storage/data-deduplication/overview)
@@ -408,7 +408,7 @@ You can also restore specific files and directories inside a VM. It works with a
![](https://xen-orchestra.com/blog/content/images/2016/12/filelevelrestore1.png)
2. Choose the VM whose files you want to restore and click the **Restore** icon at the corresponding line.
3. Follow the instructions as shown below:
![](../../static/img/vm-files-restore.png)
![](../../../static/img/vm-files-restore.png)
That's it! Your chosen file will be restored.
@@ -456,8 +456,8 @@ This way, without modifying your previous scheduled snapshot, they will be writt
Replicated VMs HA are taken into account by XCP-ng. To avoid the resultant troubles, HA will be disabled from the replicated VMs and a tag indicating this change will be added.
![](../assets/disabled-dr-ha-tag.png)
![](../assets/disabled-cr-ha-tag.png)
![](../../assets/disabled-dr-ha-tag.png)
![](../../assets/disabled-cr-ha-tag.png)
:::tip
The tag won't be automatically removed by XO on the replicated VMs, even if HA is re-enabled.
@@ -649,7 +649,7 @@ An example in bash is shown in `@xen-orchestra/backups/docs/healthcheck example/
Go to backup > restore and click on the tick to launch a health check.
![](../assets/restorehealthcheck.png)
![](../../assets/restorehealthcheck.png)
Then, you will select the backup to be checked and a destination SR, which must have enough space for the full restore.
@@ -659,7 +659,7 @@ Go to Backup > overview > edit.
Then edit the schedule and check the healthcheck box.
![](../assets/scheduled_healthcheck.png)
![](../../assets/scheduled_healthcheck.png)
You will then need to select the SR used, which must have enough space to restore the VMs. Healthcheck will be done after each VM backup, before starting the next one.

View File

@@ -2,7 +2,7 @@
You can schedule full backups of your VMs, by exporting them to the local XOA file-system, or directly to an NFS or SMB share. The "retention" parameter allows you to modify how many backups are retained (by removing the oldest one).
[![](../assets/backupexample.png)](https://xen-orchestra.com/blog/backup-your-xenserver-vms-with-xen-orchestra/)
[![](../../assets/backupexample.png)](https://xen-orchestra.com/blog/backup-your-xenserver-vms-with-xen-orchestra/)
:::tip
Full backups are space consuming! But they allow a very simple restoration without anything to think of (the file will contain all the VM disks and information). To use less space and data transferred, take a look at the [delta backups](./incremental_backups/) feature.
@@ -15,4 +15,4 @@ In some cases you will need to do a backup without doing a snapshot.
The most common use case for this is a large VM on a small local SR where you just don't have the space to do a snapshot before backup.
So for that you need to open the advanced settings of your backup job, and check the offline backup check box:
![](../assets/backupnosnap.png)
![](../../assets/backupnosnap.png)

View File

@@ -8,11 +8,11 @@ You can export only the delta (difference) between your current VM disks and a p
Full backups can be represented like this:
![](../assets/nodelta.png)
![](../../assets/nodelta.png)
It means huge files for each backup. Incremental backups will only export the difference between the previous backup:
![](../assets/delta_final.png)
![](../../assets/delta_final.png)
You can imagine making your first initial key(complete) backup during a weekend, and then only delta backups every night. It combines the flexibility of snapshots and the power of full backups, because:
@@ -31,11 +31,11 @@ You can even imagine using this to backup more often! Because deltas will be sma
They are called continuous because you'll **never export a full backup** after the first one. We'll merge the oldest delta into the full:
![](../assets/deltamerge1.png)
![](../../assets/deltamerge1.png)
This way we can go "forward" and remove this oldest VHD after the merge:
![](../assets/deltamerge2.png)
![](../../assets/deltamerge2.png)
## Create Delta backup
@@ -77,16 +77,16 @@ You have the option to utilize the NBD network protocol for data transfer instea
NBD must also be enabled on the network used to transfer the backups: select the relevant pool, and navigate to the Network tab to modify the parameter:
![](../assets/nbd-connection.png)
![](../../assets/nbd-connection.png)
This will securely transfer encrypted data from the host to the XOA.
When creating or editing an incremental (previously known as delta) backup and replication for this pool in the future, you have the option to enable NBD in the Advanced settings, and use multiple connections per VDI.
![](../assets/nbd-backup-settings.png)
![](../../assets/nbd-backup-settings.png)
After the job is completed, you can verify whether NBD was used for the transfer in the backup log:
![](../assets/nbd-backup-log.png)
![](../../assets/nbd-backup-log.png)
To learn more about the evolution of this feature across various XO releases, check out our blog posts for versions [5.76](https://xen-orchestra.com/blog/xen-orchestra-5-76/), [5.81](https://xen-orchestra.com/blog/xen-orchestra-5-81/), [5.82](https://xen-orchestra.com/blog/xen-orchestra-5-82/), and [5.86](https://xen-orchestra.com/blog/xen-orchestra-5-86/).

View File

@@ -52,17 +52,17 @@ This is **only** if you need to make the initial copy without making the whole t
Create the Incremental Replication backup job, and leave it disabled for now. On the main Backup page, copy the job's `backupJobId` by hovering to the left of the shortened ID and clicking the copy to clipboard button:
![](../assets/cr-seed-1.png)
![](../../assets/cr-seed-1.png)
Copy it somewhere temporarily. Now we need to also copy the ID of the job schedule, `backupScheduleId`. Do this by hovering over the schedule name in the same panel as before, and clicking the copy to clipboard button. Keep it with the `backupJobId` you copied previously as we will need them all later:
![](../assets/cr-seed-2.png)
![](../../assets/cr-seed-2.png)
### Seed creation
Manually create a snapshot on the VM being backed up, then copy this snapshot UUID, `snapshotUuid` from the snapshot panel of the VM:
![](../assets/cr-seed-3.png)
![](../../assets/cr-seed-3.png)
:::warning
DO NOT ever delete or alter this snapshot, feel free to rename it to make that clear.
@@ -74,7 +74,7 @@ Export this snapshot to a file, then import it on the target SR.
We need to copy the UUID of this newly created VM as well, `targetVmUuid`:
![](../assets/cr-seed-4.png)
![](../../assets/cr-seed-4.png)
:::warning
DO not start this VM or it will break the Incremental Replication job! You can rename this VM to more easily remember this.
@@ -129,4 +129,4 @@ In the situation where you need to failover to your destination host, you simply
If you want to start a VM on your destination host without breaking the CR jobs on the other side, you will need to make a copy of the VM and start the copy. Otherwise, you will be asked if you would like to force start the VMs.
:::
![](../assets/force-start.jpg)
![](../../assets/force-start.jpg)

View File

@@ -10,19 +10,19 @@ In Xen Orchestra, Metadata backup is divided into two different options:
## Performing a backup
In the backup job section, when creating a new backup job, you will now have a choice between backing up VMs and backing up Metadata:
![](../assets/metadata-1.png)
![](../../assets/metadata-1.png)
When you select Metadata backup, you will have a new backup job screen, letting you choose between a pool metadata backup and an XO configuration backup (or both at the same time):
![](../assets/metadata-2.png)
![](../../assets/metadata-2.png)
Define the name and retention for the job.
![](../assets/metadata-3.png)
![](../../assets/metadata-3.png)
Once created, the job is displayed with the other classic jobs.
![](../assets/metadata-4.png)
![](../../assets/metadata-4.png)
## Performing a restore
@@ -32,14 +32,14 @@ Restoring pool metadata completely overwrites the XAPI database of a host. Only
If you browse to the Backup NG Restore panel, you will now notice a Metadata filter button:
![](../assets/metadata-5.png)
![](../../assets/metadata-5.png)
If you click this button, it will show you Metadata backups available for restore:
![](../assets/metadata-6.png)
![](../../assets/metadata-6.png)
You can see both our Xen Orchestra config backup, and our pool metadata backup. To restore one, simply click the blue restore arrow, choose a backup date to restore, and click OK:
![](../assets/metadata-7.png)
![](../../assets/metadata-7.png)
That's it!

View File

@@ -8,9 +8,9 @@ The most current situation in which you might wish to use a XO proxy are:
## Architecture
![](../assets/withoutproxy.png)
![](../../assets/withoutproxy.png)
![](../assets/withproxy.png)
![](../../assets/withproxy.png)
## Deployment
@@ -30,7 +30,7 @@ XO proxies require the following resources:
1. Go to the proxies section of your appliance
![](../assets/proxy-section.png)
![](../../assets/proxy-section.png)
2. Deploy a proxy in your infrastructure
@@ -58,7 +58,7 @@ While creating a standard backup job from your main Xen Orchestra appliance, you
:::tip
If you see this error: `The backup will not be run on this remote because it's not compatible with the selected proxy`, it means the selected remote is not accessible from the proxy or mounted on the proxy that you have selected for the job.
![Error message: "The backup will not be run on this remote because it's not compatible with the selected proxy"](../assets/remote_not_compatible_with_proxy.png)
![Error message: "The backup will not be run on this remote because it's not compatible with the selected proxy"](../../assets/remote_not_compatible_with_proxy.png)
:::
## Enabling login to a proxy appliance

View File

@@ -0,0 +1,8 @@
{
"label": "Management",
"position": 2,
"link": {
"type": "generated-index",
"description": "Learn more about management in XO 5"
}
}

View File

@@ -47,7 +47,7 @@ Xen Orchestra makes it easy to monitor disk health using a XAPI plugin for XCP-n
- **Healthy Disks:** If all disks are in good condition, Xen Orchestra shows: **All disks are healthy ✅**.
- **Unhealthy Disks:** If any issues are detected, a warning icon appears, indicating how many disks are affected:
![](../../static/img/disk-health-warning.png)
![](../../../static/img/disk-health-warning.png)
## Web hooks
@@ -171,7 +171,7 @@ The key idea is to be able to schedule any action (migrate, reboot etc.), for th
In the main menu, go to the "Job Manager" section:
![](../assets/jobmanager.png)
![](../../assets/jobmanager.png)
You can now **schedule all actions** on your hosts, VMs, or ACLs. It's configured in 2 steps:
@@ -180,19 +180,19 @@ You can now **schedule all actions** on your hosts, VMs, or ACLs. It's configure
Real example, step by step: **Creating a job called "security reboot"** (in this case, restarting "nfs" and "Core1" VMs):
![](../assets/job_create.png)
![](../../assets/job_create.png)
Note that you can execute this job **now** by clicking on the orange play button (to test it for instance):
![](../assets/job_execute.png)
![](../../assets/job_execute.png)
**Schedule the job** (every Sunday at 5:00 AM):
![](../assets/schedule_job.png)
![](../../assets/schedule_job.png)
And that's it! The job is listed in the Overview:
![](../assets/schedule_recap.png)
![](../../assets/schedule_recap.png)
The possibilities are infinite! You can schedule a **lot** of things (any actions on a VM, like migrate, start, clone, suspend etc. Same thing also applies to hosts).
@@ -226,18 +226,18 @@ If you have a UPS for your hosts, and lose power, you may have a limited amount
On the host view, clicking on this button will trigger the _Emergency Shutdown_ procedure:
![](../assets/e-shutdown-1.png)
![](../../assets/e-shutdown-1.png)
1. **All running VMs will be suspended** (think of it like "hibernate" on your laptop: the RAM will be stored in the storage repository).
2. Only after this is complete, the host will be halted.
Here, you can see the running VMs are being suspended:
![](../assets/e-shutdown-2.png)
![](../../assets/e-shutdown-2.png)
And finally, that's it. They are cleanly shut down with the RAM saved to disk to be resumed later:
![](../assets/e-shutdown-3.png)
![](../../assets/e-shutdown-3.png)
Now the host is halted automatically.
@@ -270,7 +270,7 @@ From there, you can even manage your existing resources with Terraform!
Synchronize your pools, VMs, network interfaces and IP addresses with your [Netbox](https://docs.netbox.dev/en/stable/) instance.
![](../assets/netbox.png)
![](../../assets/netbox.png)
## Supported versions
@@ -315,7 +315,7 @@ XO will try to find the right prefix for each IP address. If it can't find a pre
- Virtualization > virtual machine
- Virtualization > interface
![](../assets/netbox-permissions.png)
![](../../assets/netbox-permissions.png)
- Create a Netbox user:
- Go to Admin > Users > Add
@@ -340,7 +340,7 @@ For testing purposes, you can create an API token bound to a Netbox superuser ac
- Virtualization > interface
- Name it "uuid" (lower case!)
![](../assets/customfield.png)
![](../../assets/customfield.png)
:::tip
In Netbox 2.x, custom fields can be created from the Admin panel > Custom fields > Add custom field.

View File

@@ -12,7 +12,7 @@ In the case of virtualization, you have multiple physical hosts, which run your
You may have heard about VMWare DRS (Distributed Resource Scheduler). That's the same principle here, but for XCP-ng.
:::
The first goal is to adapt your VM placement in real time —without service interruption— depending of the load. Since Xen Orchestra is connected to [multiple pools](./architecture#xo-server-server) and XCP-ng supports live storage motion, we can perform load balancing on a **whole XCP-ng infrastructure**, even between remote datacenters.
The first goal is to adapt your VM placement in real time —without service interruption— depending of the load. Since Xen Orchestra is connected to [multiple pools](../xen-orchestra/architecture#xo-server-server) and XCP-ng supports live storage motion, we can perform load balancing on a **whole XCP-ng infrastructure**, even between remote datacenters.
:::tip
A load balancing policy is called a **plan**.
@@ -20,17 +20,17 @@ A load balancing policy is called a **plan**.
Here's a simple example, with 2 hosts running 6 VMs:
![](../assets/loadbalance1.png)
![](../../assets/loadbalance1.png)
Let's say both hosts are using only 5% of all their CPUs. Suddenly, one of your VM starts to have a very high CPU load (in yellow): performance of other VMs on this same host could be impacted negatively (in pink):
![](../assets/loadbalance3.png)
![](../../assets/loadbalance3.png)
`Host 1` still using 5% of its CPUs, but `Host 2` is now at 95%.
We can detect that and now move others VM to the other host, like this:
![](../assets/loadbalance4.png)
![](../../assets/loadbalance4.png)
`Host 1` has a slightly higher load, but `Host 2` can fully handle the “problematic” VM without disrupting the other VMs.
@@ -68,17 +68,17 @@ To create a new plan:
1. From the navigation bar, go to the **Settings → Plugin** section.
2. Open the **load-balancer** plugin and click the **+** button to show the **Configuration** menu:
![The default configuration form for load balancing plans](../assets/load_balancing_configuration.png)
![The default configuration form for load balancing plans](../../assets/load_balancing_configuration.png)
Here, you can create a new load balancing plan or edit an existing one.
3. In **Configuration → Plans**, check the box called **Fill information (optional)**:
![The check box that lets you add a new load balancing plan](../assets/load_balancing_fill_information.png)\
![The check box that lets you add a new load balancing plan](../../assets/load_balancing_fill_information.png)\
The **Add** button will appear.
4. Click **Add**:
![The load balancing form, with an emphasis on the checkbox and button to click in order to create a new load balancing plan](../assets/load_balancing_add.png)
![The load balancing form, with an emphasis on the checkbox and button to click in order to create a new load balancing plan](../../assets/load_balancing_add.png)
A new form will open, where you can set up your plan:
![A form to set up a new load balancing plan](../assets/load_balancing_new_plan.png)
![A form to set up a new load balancing plan](../../assets/load_balancing_new_plan.png)
5. Enter a **Name** for your plan.
6. Select a **Mode**.
@@ -101,7 +101,7 @@ To configure thresholds for your plan:
4. Check the **Fill information (optional)** box.\
New fields will appear where you can set your thresholds:
![A form to set up load balancing performance thresholds](../assets/load_balancing_thresholds.png)
![A form to set up load balancing performance thresholds](../../assets/load_balancing_thresholds.png)
:::warning
If the CPU threshold is set to 90%, the load balancer will only trigger if the **average CPU usage on a host** exceeds 90%.
@@ -145,14 +145,14 @@ This option lets you define the maximum number of migrations that can run at the
This option prevents the load balancer from migrating the same VM twice in quick succession, by forcing a given delay between load-balancer-related migrations. Default to 30 minutes, set to 0 to disable it.
![The Advanced settings form](../assets/load_balancing_advanced_settings.png)
![The Advanced settings form](../../assets/load_balancing_advanced_settings.png)
### Performance plan behavior
With a performance plan, you can enable a performance sub-mode that adds extra features on top of the plan’s default behavior.
These features are complementary and do not replace the default behavior.
![Dropdown list that shows 3 options for performance plan behavior](../assets/load_balancing_performance_plan_behavior.png)
![Dropdown list that shows 3 options for performance plan behavior](../../assets/load_balancing_performance_plan_behavior.png)
#### Conservative (default)
@@ -176,7 +176,7 @@ For example, imagine you have several VMs running MySQL and PostgreSQL with high
Naturally, you don’t want both replicated databases to be placed on the same physical host.
To prevent that, set up your plan like this:
![](../assets/antiaffinity.png)
![](../../assets/antiaffinity.png)
- **Simple plan:** no active load balancing mechanism is used.
- **Anti-affinity**: we added two tags, meaning any VMs with one of these tags will not run on the same host as another VM that has the same tag (whenever possible).

View File

@@ -4,7 +4,7 @@ Xen Orchestra is based on the concept of **one interface to rule all your pools,
See the [Infrastructure management section](manage_infrastructure.md) for more details and examples.
![](../assets/stats.png)
![](../../assets/stats.png)
But there's even more! You can:

View File

@@ -8,17 +8,17 @@ The home view is what you see when you access your Xen Orchestra URL. It display
If you don't have any servers connected, you'll see a panel telling you to add a server:
![](../assets/xo5noserver.png)
![](../../assets/xo5noserver.png)
### Add a host
Just click on "Add server", enter the IP of a XCP-ng/XenServer host (ideally the pool master if in a pool):
![](../assets/xo5addserver.png)
![](../../assets/xo5addserver.png)
After clicking on connect, the server is displayed as connected:
![](../assets/xo5connectedserver.png)
![](../../assets/xo5connectedserver.png)
Now go back to the Home view (or click on the "Xen Orchestra" title on the top left of the screen), you'll see the default home view of VM objects.
@@ -26,13 +26,13 @@ Now go back to the Home view (or click on the "Xen Orchestra" title on the top l
By default, this view groups all **running VMs** on your connected server and everyday administration tasks:
![](../assets/xo5homevms.png)
![](../../assets/xo5homevms.png)
Let's take a quick tour:
- the global menu is on the left, you can collapse it by clicking on the icon ![](../assets/xo5collapsemenu.png)
- the global menu is on the left, you can collapse it by clicking on the icon ![](../../assets/xo5collapsemenu.png)
- the home view has a header with a type selector (VMs, hosts or pools), a filter zone and a button to create new VMs
- the VM list also has a header (number of filtered VMs and total VMs) and assisted filters (by pool, host and tags) and a sort menu (by name, memory etc.). You can also expand all VMs details here with the icon ![](../assets/xo5expandhome.png)
- the VM list also has a header (number of filtered VMs and total VMs) and assisted filters (by pool, host and tags) and a sort menu (by name, memory etc.). You can also expand all VMs details here with the icon ![](../../assets/xo5expandhome.png)
:::tip
You can edit a VM name, description and even current host by long clicking on the field
@@ -44,7 +44,7 @@ You can select multiple objects (eg VMs) at once to perform a bulk action. The m
After selecting one or more object, an action bar is displayed:
![](../assets/xo5bulk.png)
![](../../assets/xo5bulk.png)
This will execute the action for all selected objects!
@@ -52,7 +52,7 @@ This will execute the action for all selected objects!
All host objects are displayed:
![](../assets/xo5host.png)
![](../../assets/xo5host.png)
You have power status, name, description, number of CPU cores, total memory, management IP and pool name displayed. You can also edit these by long clicking.
@@ -64,7 +64,7 @@ If hosts have missing patches, you'll see a red dot with the total patches missi
All your pools are displayed here:
![](../assets/xo5pool.png)
![](../../assets/xo5pool.png)
You can also see missing patches in red.
@@ -89,15 +89,15 @@ Pro Tip: the URL of Xen Orchestra contains the search string, eg `home?s=power_s
We include some predefined filters in the dropdown "Filters":
![](../assets/xo5presetfilter.png)
![](../../assets/xo5presetfilter.png)
You can use custom filters here:
![](../assets/xo5presetfilter2.png)
![](../../assets/xo5presetfilter2.png)
### Save your search
If you want to record your filter, just click on the "Save" icon ![](../assets/xo5savefilter.png)
If you want to record your filter, just click on the "Save" icon ![](../../assets/xo5savefilter.png)
After giving a name to your filter, you will be able to find it in the dropdown filter menu.
@@ -105,7 +105,7 @@ After giving a name to your filter, you will be able to find it in the dropdown
Just go into your user panel (bottom of main left menu):
![](../assets/xo5usericon.png)
![](../../assets/xo5usericon.png)
There, you can edit or remove any filter/search you've created!
@@ -213,11 +213,11 @@ Example: to search by the Xen Tools status:
A new VM can be created via the "New" button in the main menu (bottom):
![](../assets/xo5vmcreatemenu.png)
![](../../assets/xo5vmcreatemenu.png)
Or in the home view:
![](../assets/xo5newvmbutton.png)
![](../../assets/xo5newvmbutton.png)
### Wizard
@@ -225,7 +225,7 @@ Or in the home view:
Because Xen Orchestra can be connected to multiple pools, you must select which one you want to create your VMs on:
![](../assets/xo5createonpool.png)
![](../../assets/xo5createonpool.png)
On which **host** the VM will actually run on will depend of various settings (local SR or not, RAM available etc.)
@@ -235,7 +235,7 @@ On which **host** the VM will actually run on will depend of various settings (l
The next step is to select a template:
![](../assets/xo5createwithtemplate.png)
![](../../assets/xo5createwithtemplate.png)
:::tip
What is a XCP-ng/XenServer template? It can be 2 things: first an "empty" template, meaning it contains only the configuration for your future VM, such as example settings (minimum disk size, RAM and CPU, BIOS settings if HVM etc.) Or it could be a previous VM you converted into a template: in this case, creating a VM will clone the existing disks.
@@ -251,7 +251,7 @@ You can create multiple VMs at once by toggling the _Multiple VMs_ option. The `
Click on the refresh icon to see the change:
![](../assets/xo5multiplevms.png)
![](../../assets/xo5multiplevms.png)
#### Performance
@@ -275,7 +275,7 @@ Depending of your template type (with existing disks or not, PV vs HVM) this pan
You can choose to boot from an ISO or using PXE:
![](../assets/xo5installsettings.png)
![](../../assets/xo5installsettings.png)
##### PV templates
@@ -305,11 +305,11 @@ Pro tip: avoid using large disks for your VMs. Want to store a lot of files? Use
Any object with a dotted underline can be edited with a mouse click: VM title, description, CPU and memory.
![](../assets/xo5editvm.png)
![](../../assets/xo5editvm.png)
In the advanced tab, you have extra options:
![](../assets/xo5vmadvanced.png)
![](../../assets/xo5vmadvanced.png)
### XCP-ng/Citrix Hypervisor limitations
@@ -327,7 +327,7 @@ Thanks to Xen Storage Motion, it's easy to move a VM disk from one storage locat
To do so: Access the Xen Orchestra page for your running VM, then enter the Disk tab. Long click on the current SR of the disk, and a drop down menu will be displayed with all compatible destinations. Just select one, that's all: the migration will start live!
![](../assets/xo5diskmigrate.png)
![](../../assets/xo5diskmigrate.png)
#### Offline VDI migration
@@ -337,7 +337,7 @@ Even though it's not currently supported in XCP-ng/XenServer, we can do it in Xe
In the advanced tab, use the "Recovery Start" button:
![](../assets/xo5recovery.png)
![](../../assets/xo5recovery.png)
This button will allow you to boot directly from the CD drive, ignoring your current disks. Note that it works for all virtualization modes: HVM or PV.
@@ -369,25 +369,25 @@ However, if you add restricted IPs, the VIF becomes locked, meaning only the spe
To add a restricted IP address:
1. Go to the **VM view** and open the **Network** tab. You will see a column called **Allowed IPs**:
![](../assets/allowed-ip-column.png)
![](../../assets/allowed-ip-column.png)
1. Click the **+** icon to add authorized IP addresses:
![](../assets/add-allowed-ip.png)
![](../../assets/add-allowed-ip.png)
#### How do I enable VIF locking mode?
1. Select the VM.
1. Head over to the **Network** tab to see each VIF along with its current locking mode status:
![](../assets/vif-locking-status.png)
![](../../assets/vif-locking-status.png)
1. To change the locking mode status:
1. Click the pencil icon (with the **Edit locking mode** label). A dropdown menu appears.
1. Choose your desired mode from that menu:
![](../assets/choose-vif-locking-mode.png)
![](../../assets/choose-vif-locking-mode.png)
If Xen Orchestra knows the VM’s IP address — either through the guest agent or DHCP — it will automatically apply IP-level locking when the mode is enabled.
#### How do I automate VIF locking mode?
If you’re automating things or working with scripts, you can also control VIF locking mode through the XO [command-line interface](architecture#xo-cli-cli).
If you’re automating things or working with scripts, you can also control VIF locking mode through the XO [command-line interface](../xen-orchestra/architecture#xo-cli-cli).
### VM high availability (HA)
@@ -455,7 +455,7 @@ We support OVA import from VirtualBox. Feel free to report issues with OVA from
To import an XVA file, just go to the New/Import menu:
![](../assets/xoa5import.png)
![](../../assets/xoa5import.png)
Select the target pool and SR where the VM will be imported. Then, drag and drop your file and click on the import button.
@@ -544,7 +544,7 @@ Maintenance mode will trigger two actions internally:
It's perfect if you want to shutdown the host for hardware replacement, or if you want to do some other operations without disrupting your production.
![](../assets/maintenancemode.png)
![](../../assets/maintenancemode.png)
Note that maintenance mode will be **automatically exited after a host reboot**.
@@ -552,7 +552,7 @@ Note that maintenance mode will be **automatically exited after a host reboot**.
You can easily adjust the control domain memory under the Advanced tab of a host. Enable the maintenance mode on the host and click on the pen icon to edit the value:
![](../assets/dom0memory.png)
![](../../assets/dom0memory.png)
There is more information about Dom0 memory management in the [XCP-ng Documentation](https://docs.xcp-ng.org/guides/dom0-memory/)
@@ -568,13 +568,13 @@ Updates can be called both "patches" or "updates", it doesn't matter. Updates ar
You'll be notified by Xen Orchestra directly in the main XO menu (on the left), with a yellow triangle:
![](../assets/availableupdates.png)
![](../../assets/availableupdates.png)
If you hover on it, it will explain that updates/patches are available.
You can also see how many updates to do in the Home/Pool view for your pools, and Home/Host view for your hosts, with a red pill. In this following screenshot, "Test Pool1" got 88 updates available:
![](../assets/updatesvisible.png)
![](../../assets/updatesvisible.png)
You can also see the available updates in the Dashboard view.
@@ -591,7 +591,7 @@ So unlike with Citrix Hypervisor, Xen Orchestra will not fetch or download updat
Also known as RPU, **this is the advised way to update your pool**. By just clicking on one button, Xen Orchestra will automatically move VMs around, apply updates and reboot the hosts, without any service interruption. The following button is available in the **Pool** view of the **Patches** tab:
![](../assets/rpubutton.png)
![](../../assets/rpubutton.png)
:::tip
This powerful and fully automated mechanism requires some prerequisites: all your VMs disks must be on a one (or more) shared storage. Also, high-availability will be automatically disabled, as the XO load balancer plugin and backup jobs. Everything will be enabled back when it's done!
@@ -607,7 +607,7 @@ restartHostTimeout = '40 minutes'
:::
![](../assets/rpu1.png)
![](../../assets/rpu1.png)
##### Scheduling a RPU
@@ -618,9 +618,9 @@ Of course, schedule the updates outside production hours. Although RPUs are desi
:::
1. **Create a job**: Navigate to the **Jobs** screen and create a new job, using the `pool.rollingUpdate` method. Determine which pools you want to include in the update:
![](../assets/create-rpu.png)
![](../../assets/create-rpu.png)
1. **Set the schedule**: Assign a schedule to the job (e.g., every Sunday at 3 AM) and apply it to your new job:
![](../assets/schedule-rpu.png)
![](../../assets/schedule-rpu.png)
1. **Monitor the process**: Once scheduled, the RPU will run automatically at the set time, applying updates and rebooting hosts as necessary.
##### Troubleshooting a RPU
@@ -654,7 +654,7 @@ tracesRetention = '31 days'
If you can't use RPU (Rolling Pool Updates), you can still use "Install pool patches" button. This will simply install updates on all hosts on your pool and restart the toolstack, **without doing any host reboot**:
![](../assets/installpoolpatches.png)
![](../../assets/installpoolpatches.png)
:::tip
Restarting the toolstack won't have any impact on your running VMs. However, **most updates will require a reboot** to be applied, that you should execute during a scheduled maintenance.
@@ -662,7 +662,7 @@ Restarting the toolstack won't have any impact on your running VMs. However, **m
You can see hosts that will require a reboot via a small blue triangle:
![](../assets/xo5patching.png)
![](../../assets/xo5patching.png)
#### Host updates
@@ -691,7 +691,7 @@ When you click on "Install all patches", XOA will do all of the following automa
You can see [more screenshots here](https://xen-orchestra.com/blog/hotfix-xs70e004-for-xenserver-7-0).
:::tip
If you are behind a proxy, please update your `xo-server` configuration to add a proxy server, as [explained in the appropriate section](configuration.md#proxy-for-updates-and-patches).
If you are behind a proxy, please update your `xo-server` configuration to add a proxy server, as [explained in the appropriate section](../xen-orchestra/configuration#proxy-for-updates-and-patches).
:::
#### Host updates
@@ -735,7 +735,7 @@ Don't add pool slaves to your XOA server list! XOA will automatically find them
To remove one host from a pool, you can go to the "Advanced" tab of the host page for the host you wish to remove, and click on "Detach"
![](../assets/detach-host.png)
![](../../assets/detach-host.png)
:::warning
@@ -778,14 +778,14 @@ Xen Orchestra supports the following bond types:
1. Navigate to **New → Network** to open the **Create Network** page.
2. Choose the pool where you want the bond to be created.
3. Enable the **Bonded network** toggle:
![Bond creation interface](../assets/bond0.png)
![Bond creation interface](../../assets/bond0.png)
4. In the **Interface** dropdown, select two or more physical interfaces (PIFs) to include in the bond.
5. Provide a **name** and a **description** for the bond.
6. Set the **Bond mode** to **LACP**.
7. Leave the **MTU** field blank. This will work as-is in most cases.
8. Click **Create network**.
XO will then create the bond on the host(s):
![Newly-created bond](../assets/bond1.png)
![Newly-created bond](../../assets/bond1.png)
:::tip
@@ -800,7 +800,7 @@ Once a bond (e.g., `bond0`) is created, you can build VLANs over it:
1. Go again to **New → Network** screen.
2. Select the new bond interface (e.g., `bond0`) in the **Interface** dropdown.
3. Provide a **name**, **description**, and specify the **VLAN** ID (for instance, `20`):
![Setting up a VLAN on top of a new network bond](../assets/bond2.png)
![Setting up a VLAN on top of a new network bond](../../assets/bond2.png)
4. Validate the VLAN network creation.\
This creates a virtual network on top of the bond, using the name and ID you've specified, available for VM attachment.
@@ -810,7 +810,7 @@ This process is the same whether you're adding a VLAN on top of a LACP network b
## Storage Management
![](../assets/xo5storageadvanced.png)
![](../../assets/xo5storageadvanced.png)
### Maintenance mode
@@ -820,7 +820,7 @@ Maintenance mode will trigger two actions internally:
- shutdown related VMs
- disconnect the storage from your hosts
![](../assets/SR-maintenance-mode.png)
![](../../assets/SR-maintenance-mode.png)
This way, you can do whatever is needed on the storage, and when done, re-enable it: all the hosts will be reconnected to it. No manual process to find all VMs related to this SR, shut them down, then disconnect all the PBDs.
@@ -828,7 +828,7 @@ This way, you can do whatever is needed on the storage, and when done, re-enable
If your SAN supports it, Xen Orchestra can instruct your XCP-ng host to send a trim command to perform some cleaning.
![](../assets/xo5reclaimfree.png)
![](../../assets/xo5reclaimfree.png)
## Visualizations
@@ -842,7 +842,7 @@ Visualizations can help you to understand your XCP-ng/XenServer infrastructure,
The dashboard view gathers information on all your connected pools/hosts.
![](../assets/visualizationdashboard.png)
![](../../assets/visualizationdashboard.png)
:::tip
You can also update all your hosts (install missing patches) from this page.
@@ -852,7 +852,7 @@ You can also update all your hosts (install missing patches) from this page.
A Parallel Coordinates visualization helps to detect proportions in a hierarchical environment. In a XCP-ng/XenServer environment, it's especially useful if you want to see useful information from a large amount of data.
![](../assets/parralelcoordinates.png)
![](../../assets/parralelcoordinates.png)
## Health
@@ -869,10 +869,10 @@ Declaring a default storage repository for each pool is good practice to avoid u
### Pools with no default SR
To select a default SR, go to the Home tab and click on 'Pools'. Select the pool you are working with and click on the storage icon:
![](../assets/storageicon.png)
![](../../assets/storageicon.png)
Hover over the storage you want to select and click on the disk icon to set it as the default SR:
![](../assets/diskicon.png)
![](../../assets/diskicon.png)
### Unhealthy VDIs
@@ -910,7 +910,7 @@ This sections details the alerts coming from XCP-ng/XenServer hosts. More inform
A heatmap allows its reader to understand when your VMs or hosts are stressed. Values are relative, thus it's easy to detect trends or spikes.
[![](../assets/heatmap.png)](https://xen-orchestra.com/blog/xen-orchestra-4-4/#heatmapforinfrastructurehealth).
[![](../../assets/heatmap.png)](https://xen-orchestra.com/blog/xen-orchestra-4-4/#heatmapforinfrastructurehealth).
### Event correlation
@@ -928,7 +928,7 @@ To receive reports, you first need to enable the **usage-report** plugin:
2. From the list, look for the **usage-report** plugin (you can scroll through the list or search for it by name).
3. Enable the plugin by switching on the toggle next to the plugin name.
4. Click the **+** icon to open the plugin settings:
![](../assets/usage-report-plugin.png)
![](../../assets/usage-report-plugin.png)
5. In the **emails** section, click **Add**. A new text field will appear.
6. Enter the email address where you want to receive the reports. Repeat steps 5–6 to add more addresses.
7. Turn on the **all** toggle to include stats for all resources in your report, including:
@@ -980,10 +980,10 @@ Xen Orchestra allows you to monitor the health of your software RAID arrays dire
To check the status reported by `mdadm`, go to the **Host → Advanced** section. You'll get a clear, real-time view of your RAID array’s condition:
![](../assets/mdadm-status.png)
![](../../assets/mdadm-status.png)
#### RAID status alerts
If a host has a degraded software RAID array, a red warning triangle will appear in the host view. Clicking on it will display detailed information about the issue, so you can quickly identify and address critical problems:
![](../assets/raid-status-alert.png)
![](../../assets/raid-status-alert.png)

View File

@@ -238,7 +238,7 @@ The kill-switch keys off the `X-XO-Client: mcp` header the official binary sends
## How it works
![MCP architecture workflow](../assets/mcp_workflow.png)
![MCP architecture workflow](../../assets/mcp_workflow.png)
1. On startup, the MCP server fetches the OpenAPI spec from your XO instance (`/rest/v0/docs/swagger.json`) and generates one tool per resource domain.
2. You ask a question in natural language to your AI assistant.
@@ -370,11 +370,11 @@ Generates a natural language overview of the XO infrastructure. When invoked, th
**Infrastructure overview:**
![Querying infrastructure with MCP](../assets/mcp_infra.gif)
![Querying infrastructure with MCP](../../assets/mcp_infra.gif)
**Searching documentation:**
![Searching XO documentation with MCP](../assets/mcp_doc.gif)
![Searching XO documentation with MCP](../../assets/mcp_doc.gif)
## Troubleshooting

View File

@@ -1,6 +1,6 @@
# REST API
We originally developed [our existing API](architecture.md#api) to be used between the Web UI `xo-web` and the server backend, `xo-server`. That's why it's a JSON-RPC API connected via websockets, allowing us to update objects live in the browser. This is perfect for our usage, but a bit complicated for others.
We originally developed [our existing API](../xen-orchestra/architecture#api) to be used between the Web UI `xo-web` and the server backend, `xo-server`. That's why it's a JSON-RPC API connected via websockets, allowing us to update objects live in the browser. This is perfect for our usage, but a bit complicated for others.
Also, this API wasn't meant to be public, but over the years some users have expressed a desire to be able to use it for their own purposes. This led us to add more tooling around it, like `xo-cli` and to answer specific requests.
@@ -17,7 +17,7 @@ Our REST API is versioned, and the current version is `/v0` (see URL format belo
Most endpoints require authentication. For this, you can either attach a valid authentication token as a cookie, or use the [Authorization header](https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Authorization)
:::tip
Admin users have access to all REST API endpoints. Non-admin users can use the REST API according to the [ACL v2 / RBAC](../xo6/acl-v2.md) permissions defined on their account.
Admin users have access to all REST API endpoints. Non-admin users can use the REST API according to the [ACL v2 / RBAC](../../xo6/security/user-management/acl-v2) permissions defined on their account.
:::
### Usage
@@ -507,7 +507,7 @@ When a connection's buffer exceeds this limit, the server logs an error and imme
As part of our continuous efforts to improve the developer experience, we’ve begun documenting the Xen Orchestra REST API using the OpenAPI (Swagger) standard:
![VM getID enpoints documented in Swagger](../assets/swagger-example.png)
![VM getID enpoints documented in Swagger](../../assets/swagger-example.png)
:::tip

View File

@@ -10,7 +10,7 @@ The SDN Controller enables a user to **create pool-wide and cross-pool private n
Interconnect your VMs and hosts within a dedicated and secured private network, even across different pools all around the world. This is a great way to protect "private links" (eg between applications and databases, management networks etc.) without any complicated deployment.
![](../assets/gpn.png)
![](../../assets/gpn.png)
### How does it work?
@@ -36,7 +36,7 @@ In the network creation view:
- Create the network
- Have fun! ☺
![](../assets/sdn-controller.png)
![](../../assets/sdn-controller.png)
:::tip
@@ -47,7 +47,7 @@ In the network creation view:
### Configuration
Like all other xo-server plugins, it can be configured directly via the web interface, see [the plugin documentation](architecture#plugins).
Like all other xo-server plugins, it can be configured directly via the web interface, see [the plugin documentation](../xen-orchestra/architecture#plugins).
The plugin's configuration contains:
@@ -103,8 +103,8 @@ In the VM network tab a new column has been added: _Network rules_.
- The _Show rules_ button allow to display all rules for a VIF.
- When the rules are display a button to delete a rule is available.
![](../assets/add-rule.png)
![](../assets/show-rules.png)
![](../../assets/add-rule.png)
![](../../assets/show-rules.png)
### XAPI Plugin
@@ -113,7 +113,7 @@ A few caveats:
- This is still in BETA and should not be used in production yet.
- This will only work on XCP-ng, not on XenServer hosts.
- This is not enabled by default, and requires a configuration change for `xo-server`. See [the configuration page](configuration#sdn-controller-mode) to know more.
- This is not enabled by default, and requires a configuration change for `xo-server`. See [the configuration page](../xen-orchestra/configuration#sdn-controller-mode) to know more.
:::
:::tip
@@ -129,7 +129,7 @@ Since Xen Orchestra 6.5 UI, you can manage network-wide or VIF traffic rules. Th
To setup a per-VIF rule using the UI, follow the [openflow instructions](#openflow-protocol) above, as the UI is the same and only the backend changes.
Here, we describe how to use `xo-cli` to configure rules. First, make sure to register xo-cli to your XOA instance as documented in [it's documentation](architecture#register-your-xo-instance).
Here, we describe how to use `xo-cli` to configure rules. First, make sure to register xo-cli to your XOA instance as documented in [it's documentation](../xen-orchestra/architecture#register-your-xo-instance).
- Add per-VIF rules: `xo-cli sdnController.addRule vifId=<VIF_UUID> <parameters>`
- Delete per-VIF rules: `xo-cli sdnController.deleteRule vifId=<VIF_UUID> <parameters`
@@ -186,7 +186,7 @@ Existing rules will first be removed before restoring the saved ones.
#### How to use the script
The migration script is available as [sdn-migration.py (download script)](../../static/sh/sdn-migration.py).
The migration script is available as [sdn-migration.py (download script)](../../../static/sh/sdn-migration.py).
```sh
# Export current rules to rules-channel.json and convert to XAPI format
@@ -229,7 +229,7 @@ We provide a script to run from a host that has access to your pool. To run the
- The list of the addresses of your pool masters.
- (optional) If your infrastructure is on the bigger side, it may be better to have ssh agents configured with keys to avoid the need to pass all the passwords.
[check-sdn-features.sh (download script)](../../static/sh/check-sdn-features.sh)
[check-sdn-features.sh (download script)](../../../static/sh/check-sdn-features.sh)
Copy the file to where you want to run the script, then run this:
@@ -289,7 +289,7 @@ The update present in the `latest` channel will probably be available later than
We provide a helper script to run on your XOA VM:
[regenerate-certs.sh (download script)](../../static/sh/regenerate-certs.sh)
[regenerate-certs.sh (download script)](../../../static/sh/regenerate-certs.sh)
```
xoa@xoa:~$ sudo bash -e ./regenerate-certs.sh

View File

@@ -1,7 +1,7 @@
# Users
:::tip
For system users (in XOA), please refer to [XOA section](xoa.md). Here, we are only talking about users in Xen Orchestra application
For system users (in XOA), please refer to [XOA section](../xoa). Here, we are only talking about users in Xen Orchestra application
:::
There are 2 types of XO users:
@@ -29,7 +29,7 @@ This is the default method. Creating a user is very simple:
1. Go into the Settings view, select "Users"
2. You can create a _user_ or an _admin_, with their password (or generate one)
![](../assets/usercreation.png)
![](../../assets/usercreation.png)
By default, a _user_ won't have any permissions. At the opposite, an _admin_ will have all rights.
@@ -43,9 +43,9 @@ To activate two-factor authentication on your account:
1. Go to your profile settings.
2. At the top of the screen, go to the **OTP authentication** field and toggle the switch to the **On** position.
![User configuration form](../assets/totp-config.png)
![User configuration form](../../assets/totp-config.png)
3. A window will appear displaying a **QR code**:
![QR code for enabling TOTP on a user account](../assets/toptp-qr-code.png)
![QR code for enabling TOTP on a user account](../../assets/toptp-qr-code.png)
4. Open your preferred authentication app on your mobile device and **scan the QR code**.
5. The app will generate a temporary 6-digit code.
6. Enter this code into the **OTP code** field in the Xen Orchestra window.
@@ -68,7 +68,7 @@ XO currently supports connections to LDAP directories, like _Open LDAP_ or _Acti
2. Locate the **auth-ldap plugin** by scrolling or using the search bar.
2. **Configure LDAP Settings**:
1. Click **+** button for the LDAP plugin.\
A list of settings appears: ![LDAP plugin settings](../assets/ldapconfig.png)
A list of settings appears: ![LDAP plugin settings](../../assets/ldapconfig.png)
2. Fill in the required fields based on your LDAP server details.
3. **Save and Activate**:
1. Click **Save configuration**.
@@ -99,7 +99,7 @@ The LDAP plugin allows for the synchronization of user groups.
A list of text fields appear.
3. Fill out the fields according to the picture below:
![LDAP plugin group settings](../assets/ldapgroupconfig.png)
![LDAP plugin group settings](../../assets/ldapgroupconfig.png)
2. **Basic group settings**:
- **Base** and **Filter**: Similar to the user configuration. The plugin needs an entry point in the directory and a filter to find the groups.
@@ -200,7 +200,7 @@ In this section, you'll learn:
On the Xen Orchestra login page, click **Sign in with OpenID Connect**
![OpenID Connect sign in](../assets/openid-connect-signin-button.png)
![OpenID Connect sign in](../../assets/openid-connect-signin-button.png)
You’ll be redirected to the login page of your internal portal. Once authenticated on it, you will be redirected to the Xen Orchestra home page.
@@ -214,7 +214,7 @@ You can set up the `auth-oidc` plugin directly in Xen Orchestra:
2. Find the `auth-oidc` plugin in the list.
3. Click **+** next to the plugin name to expand the configuration options.
![OpenID Connect plugin settings](../assets/auth-oidc-plugin-configuration.png)
![OpenID Connect plugin settings](../../assets/auth-oidc-plugin-configuration.png)
##### Required Configuration
@@ -301,7 +301,7 @@ WantedBy=multi-user.target
- In **Authentication → Flows**, edit the login flow you use (e.g., browser).
- Add **WebAuthn Authenticator** as an **Alternative** (or replace the current authenticator with it).
![Keycloak Browser Flow Details](../assets/keycloak-browser-flow.png)
![Keycloak Browser Flow Details](../../assets/keycloak-browser-flow.png)
4. Disable OTP if not needed
@@ -313,15 +313,15 @@ These settings allow users to register and log in with FIDO2 (passkeys) while ke
1. Initiate the OIDC authentication request from the XOA client to Keycloak.
![Passkeys Authentication 1](../assets/auth-flow-1.png)
![Passkeys Authentication 1](../../assets/auth-flow-1.png)
2. The user supplies their username and password at the Keycloak login screen.
![Passkeys Authentication 2](../assets/auth-flow-2.png)
![Passkeys Authentication 2](../../assets/auth-flow-2.png)
3. After credential validation, Keycloak presents a second‑factor challenge (User Verification or User Presence) that requires the user to press their Yubikey to complete the authentication.
![Passkeys Authentication 3](../assets/auth-flow-3.png)
![Passkeys Authentication 3](../../assets/auth-flow-3.png)
### SAML
@@ -333,7 +333,7 @@ The first time a user signs in, XO will create a new XO user with the same ident
In the "Settings" then "Plugins" view, expand the SAML plugin configuration. Then provide the needed fields:
![](../assets/samlconfig.png)
![](../../assets/samlconfig.png)
Save the configuration and then activate the plugin (button on top).
@@ -363,10 +363,10 @@ Use the screenshots below as a reference as how to setup SAML with Google Worksp
The first login will create the user inside XO, as a non-privileged user. An administrator then has to promote the user to the appropriate group. (XO: Settings/Users).
![](../assets/saml-googleworkspace1.png)
![](../../assets/saml-googleworkspace1.png)
Also make sure to adjust the SAML attribute mapping in the Google Workspace configuration. (Primary email -> email)
![](../assets/saml-googleworkspace2.png)
![](../../assets/saml-googleworkspace2.png)
### GitHub
@@ -380,15 +380,15 @@ First you need to configure a new app in your GitHub account. Go to your GitHub
2. Enter your Xen Orchestra URL (or IP) under "Homepage URL"
3. Add your "Authorization callback URL" (for example, https://homepageUrl/signin/github/callback)
![](../assets/auth-github-form.png)
![](../../assets/auth-github-form.png)
When you get your Client ID and your Client secret, you can configure them in the GitHub Plugin inside the "Settings/Plugins" view of Xen Orchestra.
![](../assets/auth-github-secret.png)
![](../../assets/auth-github-secret.png)
Be sure to activate the plugin after you save the configuration (button on top). When it's done, you'll see a link in the login view, this is where you'll go to authenticate:
![](../assets/githubconfig.png)
![](../../assets/githubconfig.png)
### Google
@@ -400,22 +400,22 @@ The first time a user signs in, XO will create a new XO user with the same ident
Go to Google's [Credentials page](https://console.developers.google.com/apis/credentials) and create a new project:
![](../assets/auth-google-create-project.png)
![](../../assets/auth-google-create-project.png)
Configure an OAuth consent screen if requested then create OAuth 2.0 credentials:
![](../assets/auth-google-create-oauth.png)
![](../assets/auth-google-create-oauth-form.png)
![](../../assets/auth-google-create-oauth.png)
![](../../assets/auth-google-create-oauth-form.png)
Get your client ID and client secret:
![](../assets/auth-google-client-id-secret.png)
![](../../assets/auth-google-client-id-secret.png)
#### Configure the XO plugin
In Settings, then Plugins, expand the Google plugin details and configure it with the information from the Google Console:
![](../assets/auth-google-plugin-config.png)
![](../../assets/auth-google-plugin-config.png)
Be sure to activate the plugin after you save the configuration (button on top).
@@ -440,7 +440,7 @@ The ACLs view can be accessed in the **Setting** panel.
3. Choose the role for this ACL
4. Click the **Create** button.
![](../assets/createacl.png)
![](../../assets/createacl.png)
:::tip
You can click to add multiple objects at the same time!
@@ -448,7 +448,7 @@ You can click to add multiple objects at the same time!
Your ACL is now available in the right list:
![](../assets/acllist.png)
![](../../assets/acllist.png)
You can edit or remove existing ACLs here.
@@ -512,7 +512,7 @@ The self-service feature allows users to create new VMs. This is different from
To create a new set of resources to delegate, go to the "Self Service" section in the main menu:
![](../assets/selfservice_menu.png)
![](../../assets/selfservice_menu.png)
#### Create a set
@@ -530,7 +530,7 @@ In this example below, we'll create a set called **"sandbox"** with:
- "SSD NFS" is the only SR where they can create VMs
- "Pool-wide network with eth0" is the only available network for them
![](../assets/selfserviceset.png)
![](../../assets/selfserviceset.png)
As you can see, only compatible hosts are shown and can be used for this resource set (hosts in another pool aren't shown). This way, you can be sure to have resources free for tasks other than self-service.
@@ -556,21 +556,21 @@ A snapshot of a Self Service VM will use as much resources as a VM would. You ca
When you click on create, you can see the resource set and remove or edit it:
![](../assets/selfservice_recap_quotas.png)
![](../../assets/selfservice_recap_quotas.png)
### Usage (user side)
As soon as a user is granted a resource set, it displays a new button in their main view: "new".
![](../assets/selfservice_new_vm.png)
![](../../assets/selfservice_new_vm.png)
Now, the user can create a VM with only the resources granted in the set:
![](../assets/selfservice_create_vm.png)
![](../../assets/selfservice_create_vm.png)
And the recap before creation:
![](../assets/selfservice_summary_quotas.png)
![](../../assets/selfservice_summary_quotas.png)
If the "Create" button is disabled, it means the user requested more resources than available.
@@ -612,7 +612,7 @@ The recording of the users' actions is disabled by default. To enable it:
2. expand the `audit` configuration
3. toggle active and save the configuration
![](../assets/audit_log_configuration.png)
![](../../assets/audit_log_configuration.png)
Now, the audit plugin will record users' actions and upload the last record in the chain every day at **06:00 AM (UTC)**.

View File

@@ -49,7 +49,7 @@ Performance gains can be significant, though results depend on the environment:
Make sure your Xen Orchestra instance is up to date. The import page now includes an automatic check that highlights errors and warnings before migration. Errors must be resolved, and warnings should be addressed when possible.
![](../assets/import-prerequisite-check.png)
![](../../assets/import-prerequisite-check.png)
### Dependencies
@@ -70,17 +70,17 @@ To install `nbdinfo` on Debian:
1. Go to the **Import → VM → From VMware** section.
2. Click the button called **install nbdinfo (debian based system)**:
![](../assets/install_nbdinfo.png)
![](../../assets/install_nbdinfo.png)
This starts the install.
3. Keep an eye on the current page to make sure the install goes as planned.
- The **install nbdinfo** button will update to show the installation progress, and the page will display any warnings in real time as they appear:
![The Import screen shows that the installation task is currently running, with warnings](../assets/nbdinfo_progress_1.png)
![The Import screen shows that the installation task is currently running, with warnings](../../assets/nbdinfo_progress_1.png)
- Additionally, the **Task** screen shows the `nbdinfo` install task, with its name, start date, start time and status indicator:
![The Task screens shows the nbdinfo install task, with a status indicator](../assets/nbdinfo_progress_2.png)
![The Task screens shows the nbdinfo install task, with a status indicator](../../assets/nbdinfo_progress_2.png)
Thes task will be removed from the list upon completion.
4. Once the installation finishes, the `nbdinfo` install screen updates automatically. It lets you know if everything was completed successfully and flags any warnings that came up during the process:
![The Import screen showing a completed nbdinfo install, with warnings](../assets/nbdinfo_install_complete.png)
![The Import screen showing a completed nbdinfo install, with warnings](../../assets/nbdinfo_install_complete.png)
:::tip
`nbdkit` and the `nbdkit-plugin-vddk` are installed using the same approach.
@@ -97,13 +97,13 @@ You can compile `nbdkit` and `libnbd` from source on GitLab, but the correct dep
1. Download the VMware Virtual Disk Development Kit (VDDK) from the [Broadcom developer portal](https://developer.broadcom.com/sdks/vmware-virtual-disk-development-kit-vddk/9.0?ref=xen-orchestra.com).
2. Select the *tar.gz* archive, then drag and drop it directly into the Xen Orchestra interface:
![Import screen showing a VDDK import dialog](../assets/upload_vddk.png)
![Import screen showing a VDDK import dialog](../../assets/upload_vddk.png)
An **install button** will appear.
3. Click the button:
![Button to confirm the installation of an uploaded VDDK archive](../assets/install_vddk_button.png)
![Button to confirm the installation of an uploaded VDDK archive](../../assets/install_vddk_button.png)
The installation should take just a few seconds.
Once the installation is done, a **transfer form** will appear.:
![Form for transfering a VM from VMware to Xen Orchestra](../assets/vddk_transfer_form.png)
![Form for transfering a VM from VMware to Xen Orchestra](../../assets/vddk_transfer_form.png)
:::warning
Filling in this form and clicking the **Connect** button will start the VM import. However, make sure your VMware environment is ready!

View File

@@ -2,7 +2,7 @@
Virtual machine templates in Xen Orchestra make it easy to deploy new VMs by providing a ready-to-use configuration with predefined hardware specs and settings. Instead of manually setting up each VM from scratch, you can use templates to speed up deployment and keep things consistent.
![Overview of the Template screen in Xen Orchestra](../assets/template-menu.png)
![Overview of the Template screen in Xen Orchestra](../../assets/template-menu.png)
## Creating Templates
@@ -19,7 +19,7 @@ Once you convert a VM into a template, it won’t show up in the VM list anymore
1. Select your VM and go to the **Advanced** tab.
2. Click **Convert to template**, then confirm.
![VM screen with Convert to template button](../assets/convert-to-template.png)
![VM screen with Convert to template button](../../assets/convert-to-template.png)
### Clone an Existing Template
@@ -30,7 +30,7 @@ Duplicate one of the built-in templates and customize it to match your needs.
3. Click the **Copy button** in the header.
4. Fill out the details in the dialog box.
![List of selected VM templates with Copy button](../assets/copy-template.png)
![List of selected VM templates with Copy button](../../assets/copy-template.png)
### Create a VM and Convert It
@@ -48,7 +48,7 @@ To check a template’s settings in Xen Orchestra:
2. Check the box next to the template(s) you want to inspect.
3. Click the hamburger button at the corresponding line to see details like CPU, RAM, and template tags.
![Basic template details from the Xen Orchestra UI](../assets/template-details-ui.png)
![Basic template details from the Xen Orchestra UI](../../assets/template-details-ui.png)
### From the REST API
@@ -58,9 +58,9 @@ To know more on the REST API, read [its documentation](https://github.com/vatesf
All collections are listed when you run `GET /rest/v0`, including the `vm-templates` collection:
![List of VM templates, accessed from the REST API](../assets/template-list.png)
![List of VM templates, accessed from the REST API](../../assets/template-list.png)
![VM template details, accessed from the REST API](../assets/rest-api-template-example.png)
![VM template details, accessed from the REST API](../../assets/rest-api-template-example.png)
### From the CLI
@@ -112,7 +112,7 @@ A list of VMs appears.
The VM details screen appears.
3. Click the **Advanced** tab to show more settings for your VM.
4. In the **Xen settings** section, scroll to the end and activate the **Viridian** toggle switch:
![Location of the Viridian toggle in XO](../assets/viridian-extensions.png)
![Location of the Viridian toggle in XO](../../assets/viridian-extensions.png)
Viridian extensions are now enabled for your VM. You can now safely use this VM to create your Windows template.
#### Enabling Viridian for other non-Windows VM templates
@@ -153,7 +153,7 @@ In XOA 5.31, we changed the Cloud-init config drive type from [OpenStack](https:
### Example: How to create a Cloudbase-init template with Windows Server?
Refer to the [Windows Templates with Cloudbase-init: Step-by-step Guide & Best Practices](../windows-templates) document for complete instructions.
Refer to the [Windows Templates with Cloudbase-init: Step-by-step Guide & Best Practices](../../windows-templates) document for complete instructions.
### Example: How to create a Cloud-init template with Ubuntu 22.04 LTS?
@@ -175,21 +175,21 @@ Refer to the [Windows Templates with Cloudbase-init: Step-by-step Guide & Best P
First, select your compatible template (CloudInit ready) and name it:
![](../assets/cloud-init-1.png)
![](../../assets/cloud-init-1.png)
Then, activate the config drive and insert your SSH key. Or you can also use a custom CloudInit configuration:
![](../assets/cloud-init-2.png)
![](../../assets/cloud-init-2.png)
> CloudInit configuration examples are [available here](http://cloudinit.readthedocs.org/en/latest/topics/examples.html).
You can extend the disk size (**in this case, the template disk was 8 GiB originally**). We'll extend it to 20GiB:
![](../assets/cloud-init-3.png)
![](../../assets/cloud-init-3.png)
Finally, create the VM:
![](../assets/cloud-init-4.png)
![](../../assets/cloud-init-4.png)
Now start the VM and SSH to its IP:

View File

@@ -0,0 +1,8 @@
{
"label": "Support",
"position": 4,
"link": {
"type": "generated-index",
"description": "Learn more about support in XO 5"
}
}

View File

@@ -4,15 +4,15 @@ This section will cover the license management system for commercial editions of
## Activate a Xen Orchestra license
1. After the [purchase](../xo6/purchase.md), all your available licenses will be visible in the license section of your appliance.
1. After the [purchase](../../xo6/support/purchase), all your available licenses will be visible in the license section of your appliance.
2. All the licenses available and not bind already will be displayed here with a green `activate license` button
![](../assets/activate-license.png)
![](../../assets/activate-license.png)
3. By clicking on the activate license option, you will be required to confirm your choice.
![](../assets/activate-confirm.png)
![](../../assets/activate-confirm.png)
## Rebind XO license
@@ -22,10 +22,10 @@ A license can only be bind to a single appliance at the same time, rebind your l
To rebind your Xen Orchestra appliance, you simply need to connect on the **appliance on which you want to bind the license** and click on the rebind option (Move license to this XOA button) in the license section
![](../assets/rebind-screen.png)
![](../../assets/rebind-screen.png)
You will then have a confirmation screen
![](../assets/confirm-rebind.png)
![](../../assets/confirm-rebind.png)
Once it's done, you simply need to proceed to an upgrade on your freshly binded appliance to download the correct edition packages.

View File

@@ -0,0 +1,8 @@
{
"label": "Xen Orchestra",
"position": 1,
"link": {
"type": "generated-index",
"description": "Learn more about Xen Orchestra 5"
}
}

View File

@@ -14,11 +14,11 @@ This is the easiest way to try Xen Orchestra quickly.
Your XOA is connected to all your hosts, or the pool master only if you are using Pools in XCP-ng/Citrix Hypervisor:
![](../assets/partner2.jpg)
![](../../assets/partner2.jpg)
## Xen Orchestra (XO)
![](../assets/xo-arch.jpg)
![](../../assets/xo-arch.jpg)
Xen Orchestra itself is built as a modular solution. Each part has its role.
@@ -36,27 +36,27 @@ As a daemon, XO-Server is always up. Because of this, it can listen and record e
Contrary to XenCenter, each Xen Orchestra's client is connected to one XO-Server, and not all the Xen servers. With a traditional architecture:
![](../assets/without-xo.jpg)
![](../../assets/without-xo.jpg)
You can see how we avoid a lot of resource and bandwidth waste with a central point:
![](../assets/with-xo.jpg)
![](../../assets/with-xo.jpg)
### Events
Legacy interfaces use the "pull" model, requesting data every "x" seconds:
![](../assets/noevent.jpg)
![](../../assets/noevent.jpg)
It's **not scalable** and **slow**.
Previously with XO < 3.4, we used events in the following way:
![](../assets/semievent.jpg)
![](../../assets/semievent.jpg)
But the interface was still lagging behind the server. With XO 3.4 and beyond, we now have a full event system, allowing instant display of what's happening on your infrastructure:
![](../assets/fullevent.jpg)
![](../../assets/fullevent.jpg)
### A proxy for your hosts
@@ -112,15 +112,15 @@ The web interface is "[xo-web](https://github.com/vatesfr/xen-orchestra/tree/mas
This is probably the first part of Xen Orchestra you'll see. The Web interface allows you to interact with your virtual infrastructure. As a module of XO-Web it facilitates everyday Xen administrator work, but also provides a solution to delegate parts of your infrastructure to other people.
![](../assets/visualizationdashboard.png)
![](../../assets/visualizationdashboard.png)
[Read the manage section](./manage.md) to discover what you can do in XO-web.
[Read the manage section](../../xo5/management/manage) to discover what you can do in XO-web.
### ReactJS
We stay consistent from the back-end to the front-end with one main language: [ReactJS](https://reactjs.org/)
![](../assets/react_js.png)
![](../../assets/react_js.png)
## xo-cli (CLI)
@@ -352,7 +352,7 @@ xo-cli vm.import sr=60a6939e-8b0a-4352-9954-5bde44bcdf7d @=vm.xva
Our web UI (`xo-web`) and CLI (`xo-cli`) both talk to `xo-server` via the same API. This API works in a kind of "connected mode", using JSON-RPC through websockets, in a way where we can subscribe to any events to always stay up-to-date on the client side.
:::warning
However, this API was initially meant to only be private. Also, as it's JSON-RPC inside websockets, it's not trivial to use. If you want to make calls in an easy fashion, you should take a look at our [REST API](restapi.md).
However, this API was initially meant to only be private. Also, as it's JSON-RPC inside websockets, it's not trivial to use. If you want to make calls in an easy fashion, you should take a look at our [REST API](../management/restapi).
:::
If you need assistance on how to use it:
@@ -367,11 +367,11 @@ Xen Orchestra plugins allow you to extend features without rewriting the core of
You can see your installed plugins in "Settings" then the "Plugins" page:
![](../assets/xo5pluginsmenu.png)
![](../../assets/xo5pluginsmenu.png)
All plugin configuration should be done in the web interface:
![](../assets/xo5pluginspage.png)
![](../../assets/xo5pluginspage.png)
A plugin can be:

View File

@@ -6,7 +6,7 @@ Once Xen Orchestra is installed, you can configure some parameters in the config
The configuration file is located at `/etc/xo-server/config.toml`.
:::
If you need to do any configuration on the system itself (firewall, SSH…), check the [XOA dedicated section](xoa.md).
If you need to do any configuration on the system itself (firewall, SSH…), check the [XOA dedicated section](../xoa).
## Using XO 5 as the Default Interface
@@ -153,7 +153,7 @@ useDirectChannel = false
Changing the mode is only supported forward : from direct OpenFlow Protocol channel to XAPI Plugin communication.
A migration script is provided to automatically convert the traffic rules.
See [XO 5 > Management > SDN Controller > OpenFlow rules](sdn_controller#migration-path) for details.
See [XO 5 > Management > SDN Controller > OpenFlow rules](../management/sdn_controller#migration-path) for details.
## Custom certificate authority

View File

@@ -47,7 +47,7 @@ If either key half is lost, the database cannot be decrypted and XO will enter d
When credential encryption is enabled, exporting the XO configuration **requires a passphrase**. The passphrase protects the exported credentials with OpenPGP encryption.
See [Back up XO backup metadata](./backup_howto.md#Specific-steps-for-the-XOA-VM)
See [Back up XO backup metadata](../backups/backup_howto#specific-steps-for-the-xoa-vm)
The backup contains the decrypted credential data. When restored on any XO instance, it will be re-encrypted with that instance's keys automatically, no manual key transfer needed.

View File

@@ -12,7 +12,7 @@ Log in to your account and use the deploy form [available on this page](https://
All the deploy code is within your browser, nothing is sent to our server!
:::
![](../assets/deploy_form.png)
![](../../assets/deploy_form.png)
### First Login
@@ -39,25 +39,25 @@ We don't generate virtual appliances every month (unlike XO code itself). It's v
In your current Free XOA, register it in the "Updates" view in the main menu:
![](../assets/xo5updatemenu.png)
![](../../assets/xo5updatemenu.png)
**To register your appliance, please use your email/password from your previous registration on xen-orchestra.com**:
![](../assets/xo5register.png)
![](../../assets/xo5register.png)
Then you can click on "Start Trial", the green button:
![](../assets/xo5starttrial.png)
![](../../assets/xo5starttrial.png)
Remember to click on the Upgrade button after requesting a trial - this will download the **Premium Edition** for 30 days!
![](../assets/xo5updatebutton.png)
![](../../assets/xo5updatebutton.png)
### Trial availability
In this update view, you can see when your trial will end:
![](../assets/xo5trialend.png)
![](../../assets/xo5trialend.png)
:::tip
Don't worry! XOA will still work after the trial: you'll be forced to downgrade to Free version, but you won't lose any configuration data.
@@ -65,9 +65,10 @@ Don't worry! XOA will still work after the trial: you'll be forced to downgrade
### More on XOA
You can get all the info you want on XOA in its [dedicated section](xoa.md).
You can get all the info you want on XOA in its [dedicated section](../xoa).
![](../../../static/img/logo.png)
![](../../static/img/logo.png)
## From the sources

View File

@@ -9,7 +9,7 @@ First step, you have to deploy a new appliance. All necessary information can be
To export your current configuration, navigate to **Settings** -> **Config**.
Here you will see a button labeled **_Download current config_**. Click on it, then an export modal will appear.
![](../assets/exportModal.png)
![](../../assets/exportModal.png)
You can set a passphrase to encrypt the exported configuration.
@@ -18,7 +18,7 @@ You can set a passphrase to encrypt the exported configuration.
Now it's time to import your configuration to the new appliance.
Go to the **Settings** → **Config** page of your new appliance. Here, you have an **_import_** section where you can drag and drop your exported configuration file.
![](../assets/importModal.png)
![](../../assets/importModal.png)
When your configuration is loaded, click to import. A new modal will appear to ask you the passphrase to decrypt your configuration. If you didn't set a passphrase when you exported your configuration, leave it empty.

View File

@@ -3,7 +3,7 @@
This page recaps the actions you can perform if you have any problems with your XOA.
:::warning
If you have issues with XO installed from GitHub (not XOA), [please go to the dedicated section first!](../xo6/community.md).
If you have issues with XO installed from GitHub (not XOA), [please go to the dedicated section first!](../../xo6/support/community).
:::
## Recommendation
@@ -31,7 +31,7 @@ You can also check the system logs, [as explained here](#cli).
## Backup issues
If you're having issues with your backups, check out the [Backup troubleshooting](backup_troubleshooting) page.
If you're having issues with your backups, check out the [Backup troubleshooting](../backups/backup_troubleshooting) page.
## Didn't find a solution?
@@ -62,7 +62,7 @@ You can now login through SSH with the `xoa` username and password you defined i
## Recover web login password
If you have lost your password to log in to the XOA webpage, you can reset it. From the XOA CLI (for login/access info for the CLI, [see here](xoa.md#first-console-connection)), use the following command and insert the email/account you wish to recover:
If you have lost your password to log in to the XOA webpage, you can reset it. From the XOA CLI (for login/access info for the CLI, [see here](../xoa#first-console-connection)), use the following command and insert the email/account you wish to recover:
```sh
sudo xo-server-recover-account youremail@here.com

View File

@@ -20,27 +20,27 @@ The updater is configurable directly from the web interface, or via the CLI.
The updater is available in the "Update" menu:
![](../assets/xo5updatemenu.png)
![](../../assets/xo5updatemenu.png)
You can see the yellow bell icon: it means your appliance is not registered. You **must register in order to have updates and a trial**.
![](../assets/xo5updatetooltip.png)
![](../../assets/xo5updatetooltip.png)
#### Register
Updates and trials will be available as soon as you register your appliance. To register, use your https://xen-orchestra.com credentials you gave to download it previously (your email and your password):
![](../assets/xo5register.png)
![](../../assets/xo5register.png)
#### Check for new versions
The updater will check for new versions periodically. A green tick in the menu means your version is up to date:
![](../assets/xo5updatetooltipok.png)
![](../../assets/xo5updatetooltipok.png)
However, if you want to start a manual check, you can do it by clicking on the "Update" button:
![](../assets/xo5updatebutton.png)
![](../../assets/xo5updatebutton.png)
### Release channel
@@ -56,20 +56,20 @@ The latest channel will include all the latest improvements available in Xen Orc
:::tip
To select the release channel of your choice, go to the XOA > Updates view:
![](../assets/release-channels.png)
![](../../assets/release-channels.png)
:::
### Upgrade
If a new version is found, you'll have an upgrade button and its tooltip displayed:
![](../assets/xo5updatetooltipneedupdate.png)
![](../../assets/xo5updatetooltipneedupdate.png)
### Proxy configuration
If you are behind a proxy, you can edit your proxy settings in this panel:
![](../assets/xo5proxysettings.png)
![](../../assets/xo5proxysettings.png)
### From the CLI
@@ -136,10 +136,10 @@ Starting September 2023, XenServer Updates require authentication:
3. Go to this URL: [https://support.citrix.com/xencenterclientiddownload](https://support.citrix.com/xencenterclientiddownload) and click "Download Client ID"
![Download XenServer Client ID](../assets/xs-client-id-download.png)
![Download XenServer Client ID](../../assets/xs-client-id-download.png)
4. In Xen Orchestra, go to your User Settings page (bottom left-hand corner) and upload the file `xencenter_client_id.json` you just downloaded from the "XenServer Client ID" section
![Upload XenServer Client ID](../assets/xs-client-id-upload.png)
![Upload XenServer Client ID](../../assets/xs-client-id-upload.png)
5. Go to a pool's "Patches" page. You can now install XenServer Updates. If you get a `LICENCE_RESTRICTION` error, it means that [you're missing XenServer licenses on your hosts](https://docs.xenserver.com/en-us/citrix-hypervisor/overview-licensing.html).

View File

@@ -54,7 +54,7 @@ For use on huge infrastructure (more than 500+ VMs), feel free to increase the R
## Alternative install
Please only use this if you have issues with [the default way to deploy XOA](../xo5/installation#xoa).
Please only use this if you have issues with [the default way to deploy XOA](./xen-orchestra/installation#xoa).
### Via a bash script

View File

@@ -0,0 +1,9 @@
{
"label": "XO 6",
"position": 2,
"collapsed": false,
"link": {
"type": "generated-index",
"description": "All information relevant to Xen Orchestra 6"
}
}

View File

@@ -1 +1,4 @@
---
draft: true
---
# Backups

View File

@@ -1 +1,5 @@
---
draft: true
---
# Core concepts

View File

@@ -0,0 +1,8 @@
{
"label": "DevOps tools",
"position": 3,
"link": {
"type": "generated-index",
"description": "Learn more about DevOps tools in XO 6"
}
}

View File

@@ -2,7 +2,7 @@
## Introduction
Xen Orchestra includes a Kubernetes cluster [recipe](../xo5/advanced#recipes) that provides a simple way to deploy an official Kubernetes distribution called **MicroK8s** (maintained by Canonical).
Xen Orchestra includes a Kubernetes cluster [recipe](../../xo5/management/advanced#recipes) that provides a simple way to deploy an official Kubernetes distribution called **MicroK8s** (maintained by Canonical).
:::tip
One of the key benefits of MicroK8s is its automatic security updates. For example, patch releases (like 1.30.x to 1.30.x+1) are applied automatically. This saves Kubernetes admins a lot of time and effort.
@@ -86,10 +86,10 @@ Make sure your infrastructure meets these requirements:
1. In Xen Orchestra 5, go to **Hub → Recipes**.\
A list of recipes will appear:
![](../assets/hub_recipes.png)
![](../../assets/hub_recipes.png)
2. Go to the **Kubernetes cluster** recipe and click **Create**.\
A cluster creation form appears:
![](../assets/kubernetes_cluster_creation.png)
![](../../assets/kubernetes_cluster_creation.png)
3. Configure your cluster:
1. Select a pool where you want to deploy your cluster.
2. Select a storage repository, a network and a Kubernetes version.
@@ -100,9 +100,9 @@ Make sure your infrastructure meets these requirements:
6. Define the FQDN or IP address that will be used by the Cloud Controller Manager (CCM) to reach this Xen Orchestra instance.\
*If the instance use a self signed HTTPS certificate, toggle "Allow insecure XO connection"*.
7. (Optional). If you want to change the default CIDR for your cluster pods and services, check the **Use a custom cluster CIDR** box and specify the new IP ranges to use.
![](../assets/k8s_cluster_custom_cidr.png)
![](../../assets/k8s_cluster_custom_cidr.png)
9. (Optional). If you want your cluster to use static IP addresses, check the **Static IP addresses** box and specify the IP address parameters:
![](../assets/static_ip_addresses.png)
![](../../assets/static_ip_addresses.png)
4. Click **OK** to start deploying the cluster.
Xen Orchestra handles the rest: cloning VMs, assigning IPs, bootstrapping Kubernetes and configuring internal networking.
@@ -113,14 +113,14 @@ Xen Orchestra handles the rest: cloning VMs, assigning IPs, bootstrapping Kubern
The name provided to the cluster is also used to tag VMs, so that you can easily find them all:
:::
![](../assets/k8s-cluster-tags-1.png)
![](../assets/k8s-cluster-tags-2.png)
![](../assets/k8s-cluster-tags-3.png)
![](../../assets/k8s-cluster-tags-1.png)
![](../../assets/k8s-cluster-tags-2.png)
![](../../assets/k8s-cluster-tags-3.png)
## During deployment
Follow the progress on the **Task** screen while the cluster is being created:
![](../assets/running_cluster_deployment.png)
![](../../assets/running_cluster_deployment.png)
## Using your cluster

View File

@@ -0,0 +1,5 @@
---
unlisted: true
---
# Packer provider

View File

@@ -36,19 +36,19 @@ What distinguishes this module from a simple API wrapper is its deep integration
```bash
Get-XoServer
```
![](../assets/wb_xo_psh5.png)
![](../../assets/wb_xo_psh5.png)
* **Monitor ongoing tasks:**
```bash
Get-XoTask
```
![](../assets/wb_xo_psh6.png)
![](../../assets/wb_xo_psh6.png)
* **Get information about virtual disks:**
```bash
Get-XoVdi
```
![](../assets/wb_xo_psh7.png)
![](../../assets/wb_xo_psh7.png)
* **To stop all virtual machines whose name contains "`Test`," the following command suffices:**
@@ -94,23 +94,23 @@ This demonstration shows how to create and verify a virtual machine snapshot.
```bash
Get-XoVm | Format-Table Name, Uuid, PowerState
```
![](../assets/wb_xo_psh1.png)
![](../../assets/wb_xo_psh1.png)
- **Step 2: Create a Snapshot**
```bash
New-XoVmSnapshot -VmUuid "993d84c2-2571-8451-8073-afa8ef510a8d" -SnapshotName "your-snapshot-name"
```
![](../assets/wb_xo_psh2.png)
![](../../assets/wb_xo_psh2.png)
- **Step 3: Verify Snapshot Creation**
```bash
Get-XoVmSnapshot -Filter "name_label:your-snapshot-name"
```
![](../assets/wb_xo_psh3.png)
![](../../assets/wb_xo_psh3.png)
![](../assets/wb_xo_psh4.png)
![](../../assets/wb_xo_psh4.png)
<!--
## Export Your Disks and Snapshots Directly to VHD or RAW

View File

@@ -253,7 +253,7 @@ Now that Pulumi is installed and you have a VM template ready in your environmen
```
🚀🎉 Congratulations! Your VM has now been deployed via Pulumi on XO.
![](../assets/wb_xo_pl1.png)
![](../../assets/wb_xo_pl1.png)
Any future changes to this VM can now be easily **revised** and **versioned**.
@@ -342,10 +342,10 @@ The process for applying changes is exactly the same as for creating them.
With just a few lines of code, you can modify your infrastructure in a controlled and reproducible manner.
* ***Before modification: single network interface***
![](../assets/wb_xo_pl2.png)
![](../../assets/wb_xo_pl2.png)
* ***After adding the second network interface***
![](../assets/wb_xo_pl3.png)
![](../../assets/wb_xo_pl3.png)
## Advanced Features

View File

@@ -393,7 +393,7 @@ We will now create the configuration files that describe our infrastructure.
🚀🎉 Congratulations! Your VM is now deployed via Terraform on XO.
![](../assets/wb_xo_tf1.png)
![](../../assets/wb_xo_tf1.png)
Any future modifications to this VM can now be easily **reviewed** and **version-controlled**.
@@ -531,10 +531,10 @@ Once the file is modified, the process of applying the change is exactly the sam
In just a few lines of code, you’ve modified your infrastructure in a controlled and reproducible way.
- ***Before the modification - Single network interface***
![](../assets/wb_xo_tf2.png)
![](../../assets/wb_xo_tf2.png)
- ***After adding the second network interface***
![](../assets/wb_xo_tf3.png)
![](../../assets/wb_xo_tf3.png)
## Debugging and Logs

View File

@@ -1 +1,4 @@
---
draft: true
---
# Getting started

View File

@@ -1 +0,0 @@
# Packer provider

View File

@@ -0,0 +1,8 @@
{
"label": "Security",
"position": 2,
"link": {
"type": "generated-index",
"description": "Learn more about security in XO 6"
}
}

View File

@@ -0,0 +1,7 @@
{
"label": "User management",
"link": {
"type": "generated-index",
"description": "Learn more about user management in XO 6"
}
}

View File

@@ -44,7 +44,7 @@ A privilege defines:
- **resource** — the type of object (e.g. `vm`, `backup-job`, `sr`)
- **action** — what operation is allowed or denied (e.g. `read`, `start`, `delete`)
- **effect** — whether the privilege grants (`allow`) or blocks (`deny`) the action
- **selector** _(optional)_ — a filter expression to restrict the privilege to a subset of objects ([complex-matcher format](../xo5/manage_infrastructure.md#filter-syntax))
- **selector** _(optional)_ — a filter expression to restrict the privilege to a subset of objects ([complex-matcher format](../../../xo5/management/manage_infrastructure#filter-syntax))
### Action hierarchy
@@ -78,7 +78,7 @@ To use them, **copy** a template into a new role and assign that copy to your us
| **Administrator** | Full access to the entire infrastructure |
| **Storage administrator** | Administer storage resources (SRs, VDIs, VBDs, PBDs) and backup repositories, plus read access to unmanaged VDIs and storage managers. |
![acl-role copy documented in Swagger](../assets/swagger-role-copy.png)
![acl-role copy documented in Swagger](../../../assets/swagger-role-copy.png)
---
@@ -216,7 +216,7 @@ Carol can start, stop, delete, snapshot any VM she wants. Production VMs are com
### Step 1 — Create a role
![acl-role create documented in Swagger](../assets/swagger-create-role.png)
![acl-role create documented in Swagger](../../../assets/swagger-create-role.png)
Response:
@@ -226,23 +226,23 @@ Response:
### Step 2 — Add privileges to the role
![acl-privilege create documented in Swagger](../assets/swagger-create-privilege.png)
![acl-privilege create documented in Swagger](../../../assets/swagger-create-privilege.png)
### Step 3 — Assign the role to the user
![add user to role documented in Swagger](../assets/swagger-add-user-to-role.png)
![add user to role documented in Swagger](../../../assets/swagger-add-user-to-role.png)
The user can now list VMs.
To assign to a group instead (all group members inherit the role):
![add group to role documented in Swagger](../assets/swagger-add-group-to-role.png)
![add group to role documented in Swagger](../../../assets/swagger-add-group-to-role.png)
---
## Selectors
By default, a privilege applies to **all** objects of the given resource type. The optional `selector` field narrows it down using the [complex-matcher](../xo5/manage_infrastructure#filter-syntax) syntax — the same filter syntax used in the XO UI.
By default, a privilege applies to **all** objects of the given resource type. The optional `selector` field narrows it down using the [complex-matcher](../../../xo5/management/manage_infrastructure#filter-syntax) syntax — the same filter syntax used in the XO UI.
A selector is evaluated against each object's properties. If it matches, the privilege applies; otherwise it does not.

View File

@@ -0,0 +1,8 @@
{
"label": "Support",
"position": 3,
"link": {
"type": "generated-index",
"description": "Learn more about support in XO 6"
}
}

View File

@@ -3,14 +3,14 @@
We do our best to assist users running Xen Orchestra from the sources on [our community forums](https://xcp-ng.org/forum/category/12/xen-orchestra). However there's no guarantee you will receive a solution (from us or the community), nor any guarantee on a timeframe. Usually we are responsive, but keep in mind that if you need production level support, you should consider subscribing to our [XOA offers](https://vates.tech/pricing-and-support/).
:::warning
If you installed your XO from a 3rd party script (any method outside [our official documentation](../xo5/installation.md#from-the-sources)), please report your issue **first** on the 3rd party script repository. We can't waste time debugging 3rd party installers that very often lag behind our own deployment methods and fall out of date.
If you installed your XO from a 3rd party script (any method outside [our official documentation](../../xo5/xen-orchestra/installation#from-the-sources)), please report your issue **first** on the 3rd party script repository. We can't waste time debugging 3rd party installers that very often lag behind our own deployment methods and fall out of date.
:::
## Current version
With Xen Orchestra from the sources, you can check your current commit hash in the **About** section:
![](../assets/commitversion.png)
![](../../assets/commitversion.png)
:::tip
You can compare this hash to the current commit list in [our GitHub repository](https://github.com/vatesfr/xen-orchestra/commits/master).
@@ -24,14 +24,14 @@ Before reporting a bug, please check that your **current version is up-to-date w
If you have issues with XO installed from the sources (via GitHub), please **always** first:
1. update your XO to the latest `master` commit (see how-to in the [dedicated section](../xo5/installation.md#updating)) and retest again
2. if the issue persists, double check you have all the requirements checked from the [installation section](../xo5/installation.md#from-the-sources) and test again
1. update your XO to the latest `master` commit (see how-to in the [dedicated section](../../xo5/xen-orchestra/installation#updating)) and retest again
2. if the issue persists, double check you have all the requirements checked from the [installation section](../../xo5/xen-orchestra/installation#from-the-sources) and test again
3. then, if you still experience problems, remove and rebuild from scratch
Only after that, you can go to the [dedicated forum](https://xcp-ng.org/forum/category/12/xen-orchestra) to ask about your problem.
:::tip
If you want a consistent and tested solution for using Xen Orchestra, we strongly advise using our preconfigured and validated [Xen Orchestra Virtual Appliance](../xo5/installation.md#xoa).
If you want a consistent and tested solution for using Xen Orchestra, we strongly advise using our preconfigured and validated [Xen Orchestra Virtual Appliance](../../xo5/xen-orchestra/installation#xoa).
:::
## Feature requests

View File

@@ -5,7 +5,7 @@ slug: support
# Introduction to Support
:::tip
See the dedicated sub-section to read more about [XOA support and usage](../xo5/xoa.md).
See the dedicated sub-section to read more about [XOA support and usage](../../xo5/xoa).
:::
Xen Orchestra will run in a controlled/tested environment thanks to XOA ([Xen Orchestra virtual Appliance](https://vates.tech/deploy/)). **This is the only way to get pro support**. Any account with a registered XOA can access a [dedicated support panel](https://xen-orchestra.com/#!/member/support).
@@ -31,4 +31,4 @@ With the free version of the Xen Orchestra Appliance (XOA free), **you can open
Lastly while Xen Orchestra is free and Open Source software, supporting and developing it takes a lot of effort. If you are considering using Xen Orchestra in production, please subscribe for one of our [professional support plans](https://vates.tech/pricing-and-support/).
Read more in the [dedicated section for community support](community.md).
Read more in the [dedicated section for community support](./community).

View File

@@ -29,7 +29,7 @@ You need to be logged in to make a purchase. If you don't have an account, pleas
From your account page, click on the purchase menu, then select the edition you need:
![](../assets/directpurchase.png)
![](../../assets/directpurchase.png)
### Purchase options
@@ -47,7 +47,7 @@ The second step is to select your purchase option:
Then you need to fill in your information and select **"Buy for my own use"** (direct purchase)
![](../assets/member_purchase_2.png)
![](../../assets/member_purchase_2.png)
### Billing information
@@ -58,7 +58,7 @@ If you are part of the Eurozone, you will need to provide a valid EU VAT number
Transactions outside the Eurozone are VAT free.
:::
![](../assets/billing_info.png)
![](../../assets/billing_info.png)
### Select your payment mode
@@ -68,7 +68,7 @@ Credit Card, Wire transfer or Bank check are the three payment methods available
Wire transfer is not available for monthly and yearly subscription - Credit Card is not available for paid period.
:::
![](../assets/payment_mode.png)
![](../../assets/payment_mode.png)
:::tip
All required information for wire transfer and Check payment will be available in the last step of the payment AND on your proforma invoice.
@@ -88,17 +88,17 @@ Typically, you will provide two contacts:
1. First of all, you need to create an account as a purchaser (eg: "purchase.dept@example.com"). Once it's done, you need to go inside the member page, in the **purchases** menu.
![](../assets/purchase-menu.jpg)
![](../../assets/purchase-menu.jpg)
Now, you just have to pick the edition of Xen Orchestra you want to purchase for your IT team.
2. On the first payment screen, after you choose the plan and the subscription method. You can select the option "Buy for another account"
![](../assets/member_purchase_2.png)
![](../../assets/member_purchase_2.png)
3. Once the payment is completed, you will have to bind the plan with the end-user account (technical contact). If the end-user doesn't have an account yet, the system will create one and send an e-mail to your end user.
![](../assets/bind-process.png)
![](../../assets/bind-process.png)
That's it, you have now completed the purchase.
@@ -112,7 +112,7 @@ Invoices are available in PDF format. You can find them [in your account](https:
Get in the "Invoices" tab:
![](../assets/invoices.png)
![](../../assets/invoices.png)
:::tip
You can download your invoice in PDF format, by clicking in the "Export" row, on the invoice name with the PDF extension.
@@ -122,7 +122,7 @@ You can download your invoice in PDF format, by clicking in the "Export" row, on
You can ask for an automatic quote on our website via the pricing page or directly from you personal account page.
![button-quotation](../assets/quotation.png)
![button-quotation](../../assets/quotation.png)
Choose the plan you want, the years of commitment that suits you, then fill out the information required (it should be prefilled with your account information).
@@ -132,7 +132,7 @@ If you want to purchase XO using the quote you receive, you just have to enter t
If you choose a Stripe payment, you can always edit the credit card information in case it changes. To do so, you only have to login to your personal account page and access the _profile_ menu.
![](../assets/updatecreditcard.png)
![](../../assets/updatecreditcard.png)
## Upgrade your plan
@@ -142,27 +142,27 @@ If you want to upgrade your active plan to a higher version of Xen Orchestra, yo
1. Connect on your personal account on the [website](https://xen-orchestra.com/#!/login?source=member.index).
![](../assets/upgradestep1.png)
![](../../assets/upgradestep1.png)
2. Go on the purchase menu
![](../assets/upgradestep2.png)
![](../../assets/upgradestep2.png)
3. Pick the line corresponding to the account you want to upgrade. Click on the "upgrade" button on the right.
![](../assets/upgradestep3.png)
![](../../assets/upgradestep3.png)
4. At this point, you will see a standard subscription page. **Choose the same payment method you used to purchase the initial plan** and confirm the purchase.
![](../assets/upgradestep4.png)
![](../../assets/upgradestep4.png)
5. If you choose wire transfer, you have now the possibility to download a quote. As you can see, the remaining period of your previous plan is now a credit note applied on this upgrade.
![](../assets/upgradestep5.png)
![](../../assets/upgradestep5.png)
6. As for a regular purchase, upload a proof of payment in order for us to activate your new plan as soon as possible.
![](../assets/upgradestep6.png)
![](../../assets/upgradestep6.png)
7. **Enjoy your new plan!**

View File

@@ -1,4 +1,5 @@
---
draft: true
id: whatsnew
title: What's new
---

View File

@@ -1,4 +1,5 @@
---
draft: true
id: xo6vsxo5
title: XO 6 vs. XO 5
---

View File

@@ -34,171 +34,171 @@ export default {
{
redirects: [
{
to: '/xo5/manage_infrastructure#vms',
to: '/xo5/management/manage_infrastructure#vms',
from: '/administration',
},
{
to: '/xo5/advanced',
to: '/xo5/management/advanced',
from: '/advanced',
},
{
to: '/xo5/advanced#alerts',
to: '/xo5/management/advanced#alerts',
from: '/alerts',
},
{
to: '/xo5/users#acls',
to: '/xo5/management/users#acls',
from: '/acls',
},
{
to: '/xo5/architecture',
to: '/xo5/xen-orchestra/architecture',
from: '/architecture',
},
{
to: '/xo5/architecture#plugins',
to: '/xo5/xen-orchestra/architecture#plugins',
from: '/plugins',
},
{
to: '/xo5/backup_howto',
to: '/xo5/backups/backup_howto',
from: '/backup_howto',
},
{
to: '/xo5/backup_reports',
to: '/xo5/backups/backup_reports',
from: '/backup_reports',
},
{
to: '/xo5/backup_troubleshooting',
to: '/xo5/backups/backup_troubleshooting',
from: '/backup_troubleshooting',
},
{
to: '/xo5/backups',
to: '/xo5/backups/',
from: '/backups',
},
{
to: '/xo6/community',
to: '/xo6/support/community',
from: '/community',
},
{
to: '/xo5/configuration',
to: '/xo5/xen-orchestra/configuration',
from: '/configuration',
},
{
to: '/xo5/credential-encryption',
to: '/xo5/xen-orchestra/credential-encryption',
from: '/credential-encryption',
},
{
to: '/xo5/full_backups',
to: '/xo5/backups/full_backups',
from: '/full_backups',
},
{
to: '/xo5/full_replication',
to: '/xo5/backups/full_replication',
from: '/full_replication',
},
{
to: '/xo5/immutability',
to: '/xo5/backups/immutability',
from: '/immutability',
},
{
to: '/xo5/incremental_backups',
to: '/xo5/backups/incremental_backups',
from: '/incremental_backups',
},
{
to: '/xo5/incremental_replication',
to: '/xo5/backups/incremental_replication',
from: '/incremental_replication',
},
{
to: '/xo5/installation',
to: '/xo5/xen-orchestra/installation',
from: '/installation',
},
{
to: '/xo6/support',
to: '/xo6/support/support',
from: '/support',
},
{
to: '/xo5/backup',
to: '/xo5/backups/backup',
from: '/backup',
},
{
to: '/xo5/license_management',
to: '/xo5/support/license_management',
from: '/license_management',
},
{
to: '/xo5/load_balancing',
to: '/xo5/management/load_balancing',
from: '/load_balancing',
},
{
to: '/xo5/manage',
to: '/xo5/management/manage',
from: '/manage',
},
{
to: '/xo5/manage_infrastructure',
to: '/xo5/management/manage_infrastructure',
from: '/manage_infrastructure',
},
{
to: '/xo5/mcp',
to: '/xo5/management/mcp',
from: '/mcp',
},
{
to: '/xo5/metadata_backup',
to: '/xo5/backups/metadata_backup',
from: '/metadata_backup',
},
{
to: '/xo5/migrate_to_new_xoa',
to: '/xo5/xen-orchestra/migrate_to_new_xoa',
from: '/migrate_to_new_xoa',
},
{
to: '/xo5/mirror_backup',
to: '/xo5/backups/mirror_backup',
from: '/mirror_backup',
},
{
to: '/xo5/object-storage-support',
to: '/xo5/management/object-storage-support',
from: '/object-storage-support',
},
{
to: '/xo5/proxy',
to: '/xo5/backups/proxy',
from: '/proxy',
},
{
to: '/xo6/purchase',
to: '/xo6/support/purchase',
from: '/purchase',
},
{
to: '/xo5/releases',
to: '/xo5/xen-orchestra/releases',
from: '/releases',
},
{
to: '/xo5/restapi',
to: '/xo5/management/restapi',
from: '/restapi',
},
{
to: '/xo5/rolling_snapshots',
to: '/xo5/backups/rolling_snapshots',
from: '/rolling_snapshots',
},
{
to: '/xo5/sdn_controller',
to: '/xo5/management/sdn_controller',
from: '/sdn_controller',
},
{
to: '/xo5/supported_hosts',
to: '/xo5/xen-orchestra/supported_hosts',
from: '/supported_hosts',
},
{
to: '/xo5/troubleshooting',
to: '/xo5/xen-orchestra/troubleshooting',
from: ['/general-troubleshooting', '/troubleshooting']
},
{
to: '/xo5/updater',
to: '/xo5/xen-orchestra/updater',
from: '/updater',
},
{
to: '/xo5/users',
to: '/xo5/management/users',
from: '/users',
},
{
to: '/xo5/v2v-migration-guide',
to: '/xo5/management/v2v-migration-guide',
from: '/v2v-migration-guide',
},
{
to: '/xo5/vm-templates',
to: '/xo5/management/vm-templates',
from: '/vm-templates',
},
{
@@ -262,7 +262,7 @@ export default {
},
{
label: 'Installation',
href: '/xo5/installation',
href: '/xo5/xen-orchestra/installation',
},
],
},

View File

@@ -11,8 +11,9 @@ import type { SidebarsConfig } from '@docusaurus/plugin-content-docs'
Create as many sidebars as you want.
*/
/*
const sidebars: SidebarsConfig = {
/** @type {import('@docusaurus/plugin-content-docs').SidebarsConfig} */
const sidebars = {
// By default, Docusaurus generates a sidebar from the docs folder structure
tutorialSidebar: [{type: 'autogenerated', dirName: '.'}],
@@ -27,210 +28,8 @@ const sidebars: SidebarsConfig = {
items: ['tutorial-basics/create-a-document'],
},
],
*/
};
*/
module.exports = sidebars;
export default {
docs: [
{
type: 'doc',
id: 'intro',
label: 'Introduction',
},
{
type: 'category',
label: 'XO 6',
collapsible: true,
collapsed: false,
items:[
{
type: 'category',
label: 'What\'s new in XO6',
type: 'link',
href: 'https://xen-orchestra.com/blog/',
},
/* These categories are hidden until they no longer only contain blank pages
{
type: 'category',
label: 'Getting started',
collapsible: true,
collapsed: true,
items:[
'xo6/gettingstarted',
],
},
{
type: 'category',
label: 'Core concepts',
collapsible: true,
collapsed: true,
items:[
'xo6/coreconcepts',
],
},
{
type: 'category',
label: 'Management',
collapsible: true,
collapsed: true,
items:[
'xo6/management',
],
},
{
type: 'category',
label: 'Backups',
collapsible: true,
collapsed: true,
items:[
'xo6/backups',
],
},
*/
{
type: 'category',
label: 'Security',
collapsible: true,
collapsed: true,
items:[
{
type: 'category',
label: 'User management',
collapsible: true,
collapsed: true,
items:[
'xo6/acl-v2',
],
},
],
},
{
type: 'category',
label: 'DevOps tools',
collapsible: true,
collapsed: true,
items:[
'xo6/ansible',
'xo6/kubernetes',
'xo6/packer-provider',
'xo6/powershell-module',
'xo6/pulumi-provider',
'xo6/terraform-provider',
],
},
{
type: 'category',
label: 'Support',
collapsible: true,
collapsed: true,
items: [
'xo6/intro_support',
'xo6/purchase',
'xo6/community'
],
},
]
},
{
type: 'category',
label: 'XO 5',
collapsible: true,
collapsed: false,
items:[
{
type: 'category',
label: 'Xen Orchestra',
collapsible: true,
collapsed: true,
items: [
'xo5/releases',
'xo5/supported_hosts',
'xo5/installation',
'xo5/configuration',
'xo5/credential-encryption',
'xo5/migrate_to_new_xoa',
'xo5/updater',
'xo5/architecture',
'xo5/troubleshooting',
]
},
{
type: 'category',
label: 'Management',
collapsible: true,
collapsed: true,
items: [
'xo5/manage',
'xo5/manage_infrastructure',
'xo5/object-storage-support',
'xo5/v2v-migration-guide',
'xo5/users',
'xo5/vm-templates',
'xo5/advanced',
'xo5/load_balancing',
'xo5/sdn_controller',
'xo5/restapi',
'xo5/mcp'
],
},
{
type: 'category',
label: 'Backups',
collapsible: true,
collapsed: true,
items: [
'xo5/intro_backup',
'xo5/backups',
'xo5/backup_howto',
'xo5/proxy',
'xo5/rolling_snapshots',
'xo5/full_backups',
'xo5/incremental_backups',
'xo5/full_replication',
'xo5/incremental_replication',
'xo5/mirror_backup',
'xo5/metadata_backup',
'xo5/immutability',
'xo5/backup_reports',
'xo5/backup_troubleshooting',
],
},
{
type: 'category',
label: 'Support',
collapsible: true,
collapsed: true,
items: [
'xo5/xoa',
'xo5/license_management'
],
},
]
},
{
type: 'category',
label: 'Project',
collapsible: true,
collapsed: true,
items: [
'intro_project',
{
type: 'link',
label: 'Changelog',
href: 'https://github.com/vatesfr/xen-orchestra/blob/master/CHANGELOG.md#changelog',
},
'contributing',
'licenses',
{
type: 'link',
label: 'Roadmap',
href: 'https://docs.vates.tech/roadmap/',
},
'glossary',
],
},
],
}
//export default sidebars;