# System components & architecture

## System architecture

**Xopero ONE** system architecture is presented in the following diagram:

<figure><img src="https://content.gitbook.com/content/0CBTl43C3OO6ySL1DJ6k/blobs/jHy5LLWHpfIaVoIbOduS/image.png" alt=""><figcaption><p><em>Communication between three main <strong>Xopero</strong> platform components.</em></p></figcaption></figure>

## Components

**Xopero ONE** product as a platform consists of three main components: management service, agent, and storage.

### <mark style="background-color:blue;">Management system</mark>

The main component required to run **Xopero ONE** backup system is called **Xopero ONE Management Service** (abbr. **XMS**). It allows you to comprehensively manage your backups and related resources using **XMS** console with a user-friendly and easy to navigate UI. In on-premise deployment model **XMS** can be installed on almost any computer with **Windows** and **Linux** operating systems or **Docker** environment (even popular **NAS** devices). When it comes to SaaS deployment model, the management service runs on provider's cloud infrastructure.

**XMS** is divided into separate modules, each of them dedicated to a different aspect of backup management:

1. Dashboard
2. Devices
3. Virtual Machines
4. Microsoft 365
5. DevOps
6. Plans
7. Storages
8. Tasks
9. Logs
10. Settings

### <mark style="background-color:blue;">Agent</mark>

The second main component is called **Xopero ONE Agent** and is an application installed on end devices with **Windows**, **Linux**, or **Mac** operating systems. Agent performs all operations requested by **XMS** including data processing (i.e., encryption, compression), connecting to data storage, sending data directly to the storage, and restoring data.

### <mark style="background-color:blue;">Storage</mark>

The last component on the list is storage— **Xopero ONE**, as a multi-storage system, allows you to store your backup data in the cloud (**GitProtect Cloud**, **AWS**, and any **S3** compatible public cloud), locally (NFS, SMB, iSCSI network shares, local disk resources), or in a hybrid environment.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://helpcenter.xopero.com/xopero-one-en/xopero-one-software/software-information/system-components-and-architecture.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
