Wszystkie strony
Obsługiwane przez GitBook
1 z 3

Loading...

Loading...

Loading...

Komponenty i architektura systemu

Przegląd architektury i kluczowych komponentów oprogramowania Xopero ONE.

Architektura systemu Xopero ONE opiera się na modułowym, wielowarstwowym modelu, w skład którego wchodzą: centralna usługa zarządzania, agenty backupu oraz skalowalne magazyny danych.


Informacje ogólne

Rozwiązanie do tworzenia kopii zapasowych to oprogramowanie lub usługa, która tworzy i przechowuje kopie danych, umożliwiając ich przywrócenie w przypadku, gdy pierwotne dane zostaną utracone, uszkodzone, usunięte, zaszyfrowane przez oprogramowanie ransomware, bądź staną się niedostępne z innych przyczyn.

Xopero specjalizuje się w dostarczaniu rozwiązań do backupu klasy korporacyjnej i disaster recovery oraz w budowie cyberodporności. Jeden z flagowych produktów firmy, system Xopero ONE, zapewnia pełną ochronę danych w środowiskach fizycznych, wirtualnych i chmurowych, chroniąc zasoby o kluczowym znaczeniu biznesowym przed przypadkowym usunięciem, awariami sprzętu, atakami ransomware oraz innymi zagrożeniami.

System Xopero ONE może działać w dwóch modelach wdrożenia: SaaS (w chmurze) oraz on-premises.


Architektura oprogramowania

Xopero ONE zapewnia kompleksową ochronę danych obejmującą serwery i maszyny fizyczne, środowiska wirtualne, bazy danych, usługi chmurowe (Microsoft 365), aplikacje SaaS (np. Jira i Confluence) oraz platformy DevOps. Architektura rozwiązania opiera się na dwóch kluczowych składnikach: centralnej konsoli zarządzania oraz agencie backupu. Do funkcjonowania systemu niezbędne jest także repozytorium do składowania kopii zapasowych (magazyn danych), które może być utrzymywane przez użytkownika bądź dostarczane przez Xopero (np. Xopero Cloud Storage czy usługa Xopero Unified Protection).

System zarządzania odpowiada za administrowanie i konfigurację środowiska backupu, podczas gdy agenty backupu realizują właściwe operacje w ramach procesów tworzenia kopii zapasowych. W momencie zainicjowania zadania usługa zarządzania deleguje operację do agenta backupu, który wykonuje żądane czynności. Po ukończeniu zadania agent odsyła status wykonania oraz dzienniki do systemu zarządzania, umożliwiając administratorom ich audyt w konsoli webowej.


Rolę centralnego interfejsu administracyjnego w systemie Xopero ONE pełni usługa Xopero ONE Management Service (XMS). Umożliwia ona administratorom zarządzanie kopiami zapasowymi oraz powiązanymi zasobami za pośrednictwem konsoli webowej. W modelu wdrożenia on-premises usługa zarządzania może zostać zainstalowana w obsługiwanych systemach operacyjnych Windows i Linux, w środowisku Docker lub być uruchamiana bezpośrednio na kompatybilnych urządzeniach NAS. W wariancie SaaS usługa zarządzania jest utrzymywana w bezpiecznej infrastrukturze chmurowej Xopero.

Niezależnie od wybranego modelu wdrożenia, platforma zapewnia identyczne funkcje i możliwości za pośrednictwem ujednoliconego interfejsu użytkownika. Konsola zarządzania jest podzielona na dedykowane moduły przypisane do poszczególnych obszarów administracji backupem, takich jak plany tworzenia kopii zapasowych, magazyny danych oraz zadania backupu.

Agent backupu jest lekkim oprogramowaniem instalowanym na chronionym serwerze, maszynie wirtualnej, komputerze lub instancji w chmurze. Komponent ten odpowiada za odczyt danych źródłowych oraz ich bezpośredni transfer do wskazanego repozytorium danych.

Agenty backupu Xopero ONE (w środowisku Xopero ONE określane również jako workery) realizują wszystkie operacje zlecane przez usługę Xopero ONE Management Service, w tym przetwarzanie danych (takie jak szyfrowanie i kompresja), przeglądanie magazynów, bezpośredni transfer danych do magazynu oraz ich odzyskiwanie.

Agenty wykonują operacje backupu i przywracania bezpośrednio, nie przesyłając danych kopii zapasowych przez panel zarządzania. Odpowiadają również za integrację z hostami wirtualizacji oraz pozostałe zadania systemowe związane z przetwarzaniem danych i obsługą infrastruktury.

W zależności od wybranego modelu wdrożenia oraz zabezpieczanych zasobów, administratorzy mają do dyspozycji różne rodzaje agentów backupu: cloud worker, feature worker, local worker, endpoint agent, server agent oraz virtual agent.

System pamięci masowej to środowisko zaprojektowane do trwałego przechowywania danych i zarządzania nimi, umożliwiające ich późniejsze odzyskanie oraz wykorzystanie. Spektrum technologii magazynowania danych obejmuje nośniki fizyczne (takie jak dyski półprzewodnikowe (SSD) i dyski twarde (HDD)), modele wdrożenia (w tym chmurę oraz chmurę hybrydową), a także systemy zoptymalizowane pod kątem obciążeń roboczych, takich jak sztuczna inteligencja (AI) czy edge computing.

W systemie Xopero ONE magazyn to miejsce docelowe przeznaczone do trwałego przechowywania i ochrony kopii zapasowych, w celu ich późniejszego przywrócenia oraz odtworzenia awaryjnego systemów (disaster recovery). Platforma bazuje na architekturze wielomagazynowej (multi-storage) obsługującej składowanie danych w infrastrukturze on-premises (dyski lokalne, zasoby sieciowe SMB i NFS, targety iSCSI), w chmurowych repozytoriach danych (Xopero Cloud Storage, AWS, magazyny zgodne ze standardem S3) bądź w środowisku hybrydowym.


Przegląd licencjonowania
Przegląd
Komunikacja między głównymi komponentami systemu Xopero ONE. Usługa zarządzania pełni wyłącznie rolę interfejsu konfiguracji — za wykonanie wszystkich zadań operacyjnych odpowiadają bezpośrednio agenty backupu.

Kluczowe komponenty

Usługa zarządzania

Aplikacja kliencka usługi zarządzania nosi nazwę Xopero ONE Backup&Recovery.

Agent backupu

Aplikacja kliencka agenta backupu nosi nazwę Xopero ONE Backup&Recovery Agent.

Magazyn danych

Przydatne linki i materiały

Przegląd oprogramowania

Informacje na temat rozwiązania do backupu Xopero ONE, obejmujące jego architekturę oraz framework.

Przegląd architektury i kluczowych komponentów oprogramowania Xopero ONE.

Przegląd zależności oprogramowania zewnętrznego i licencji open-source w Xopero ONE.

Komponenty i architektura systemu
Biblioteki zewnętrzne
Cover
Cover

Biblioteki zewnętrzne

Przegląd zależności oprogramowania zewnętrznego i licencji open-source w Xopero ONE.

System Xopero ONE wykorzystuje zewnętrzne biblioteki programistyczne do realizacji podstawowych funkcji systemowych, takich jak szyfrowanie danych, komunikacja sieciowa, obsługa magazynów i kompresja danych.


Lista bibliotek

Poniższa tabela zawiera zestawienie wszystkich zewnętrznych bibliotek oprogramowania używanych w systemie Xopero ONE.

Lista jest przedstawiona w kolejności alfabetycznej.

Component name
License type
License details

@fortawesome/fontawesome-svg-core

Font Awesome Free License

@fortawesome/free-brands-svg-icons

Font Awesome Free License

@fortawesome/pro-duotone-svg-icons

Font Awesome Pro License

@fortawesome/pro-light-svg-icons

Font Awesome Pro License

@fortawesome/pro-regular-svg-icons

Font Awesome Pro License

@fortawesome/pro-solid-svg-icons

Font Awesome Pro License

@microsoft/signalr

Apache 2.0

@ng-select/ng-select

MIT

@ngrx/effects

MIT

@ngrx/store

MIT

AgileObjects.ReadableExpressions

MIT

AlphaVSS

Apache 2.0

angular-i18next

MIT

AutoMapper

MIT

AWSSDK.S3

Apache 2.0

chart.js

MIT

chartjs-plugin-datalabels

MIT

coverlet.collector

MIT

DiscUtils

MIT

FirebirdSql.Data.FirebirdClient

Developer's Public License Version 1.0

FluentFTP

MIT

FluentScheduler

BSD (3-clause)

FubarDev.FtpServer

MIT

Hali4831.MixERP.Net.VCards

Apache 2.0

i18next

MIT

i18next-browser-languagedetector

MIT

i18next-http-backend

MIT

Ical.Net

MIT

iSCSIConsole

LGPL 3.0

JsonLogic.Net

MIT

jwt-decode

MIT

K4os.Hash.xxHash

MIT

LightningDB

OpenLDAP Public License

LiteDB

MIT

LZ4

BSD (2-clause)

MailKit

MIT

Microsoft.AspNet.WebApi.Client

Microsoft EULA

Microsoft.AspNetCore

Apache 2.0

Microsoft.AspNetCore.Authentication.JwtBearer

Apache 2.0

Microsoft.AspNetCore.CookiePolicy

Apache 2.0

Microsoft.AspNetCore.Hosting

Apache 2.0

Microsoft.AspNetCore.Http.Connections

Apache 2.0

Microsoft.AspNetCore.Identity

Apache 2.0

Microsoft.AspNetCore.Identity.EntityFrameworkCore

Apache 2.0

Microsoft.AspNetCore.Identity.EntityFrameworkCore

Apache 2.0

Microsoft.AspNetCore.Identity.EntityFrameworkCore

Apache 2.0

Microsoft.AspNetCore.Mvc.Core

Apache 2.0

Microsoft.AspNetCore.Mvc.NewtonsoftJson

Apache 2.0

Microsoft.AspNetCore.Mvc.Testing

Apache 2.0

Microsoft.AspNetCore.Razor.Design

Apache 2.0

Microsoft.AspNetCore.Server.Kestrel

Apache 2.0

Microsoft.AspNetCore.SignalR

Apache 2.0

Microsoft.AspNetCore.SignalR.Client

Apache 2.0

Microsoft.AspNetCore.SignalR.Protocols.NewtonsoftJson

Apache 2.0

Microsoft.AspNetCore.SpaServices

Apache 2.0

Microsoft.AspNetCore.SpaServices.Extensions

Apache 2.0

Microsoft.AspNetCore.StaticFiles

Apache 2.0

Microsoft.CodeAnalysis.Common

MIT

Microsoft.CSharp

MIT

Microsoft.EntityFrameworkCore.Design

Apache 2.0

Microsoft.EntityFrameworkCore.InMemory

Apache 2.0

Microsoft.EntityFrameworkCore.InMemory

Apache 2.0

Microsoft.EntityFrameworkCore.Proxies

Apache 2.0

Microsoft.EntityFrameworkCore.Sqlite

Apache 2.0

Microsoft.EntityFrameworkCore.Sqlite

Apache 2.0

Microsoft.Extensions.Hosting.WindowsServices

Apache 2.0

Microsoft.Extensions.Identity.Stores

Apache 2.0

Microsoft.Extensions.Localization.Abstractions

Apache 2.0

Microsoft.Extensions.Logging.Configuration

Apache 2.0

Microsoft.Extensions.Logging.Console

Apache 2.0

Microsoft.Extensions.Logging.Debug

Apache 2.0

Microsoft.Graph

MIT

Microsoft.Identity.Client

MIT

Microsoft.Identity.Client

MIT

Microsoft.NET.Test.Sdk

Microsoft EULA

Microsoft.NET.Test.Sdk

Microsoft EULA

Microsoft.NETCore.App

MIT

Microsoft.NETCore.App

MIT

Microsoft.VisualStudio.Azure.Containers.Tools.Targets

Microsoft EULA

Microsoft.VisualStudio.Web.CodeGeneration.Design

Apache 2.0

Microsoft.Win32.Registry

MIT

Mono.Posix-4.5

MIT/BSD-3/Microsoft Patents

Mono.Posix.NETStandard

MIT/BSD-3/Microsoft Patents

Moq

BSD (3-clause)

Moq

BSD (3-clause)

MSTest.TestAdapter

MIT

MSTest.TestAdapter

MIT

MSTest.TestFramework

MIT

MSTest.TestFramework

EULA Microsoftu

NETStandard.Library

MIT

NETStandard.Library

MIT

Newtonsoft.Json

MIT

Newtonsoft.Json

MIT

ng-click-outside

MIT

ng2-charts

ISC License

ngx-toastr

MIT

NLog.Web.AspNetCore

BSD (3-clause)

Npgsql.EntityFrameworkCore.PostgreSQL

PostgreSQL License

OpenSSL.Net

BSD

protobuf-net

Apache 2.0

RestSharp

Apache 2.0

Rnwood.SmtpServer

BSD (3-clause)

rxjs

Apache 2.0

SharpCifs.Std

LGPL 2.1

SMBLibrary.Std

LGPL 3.0

Swashbuckle.AspNetCore

MIT

System.IO.FileSystem.AccessControl

MIT

System.Management

MIT

System.Reactive

MIT

System.Text.Json

MIT

tslib

BSD (0-clause)

tsutils

MIT

UnQLite

BSD (2-clause)

uuid

MIT

Vibrant.InfluxDB.Client

MIT

VMware SDK

Proprietary

xunit

Apache 2.0

xunit.runner.visualstudio

MIT

zone.js

MIT

Zstandard

BSD (3-clause)

https://github.com/FortAwesome/Font-Awesome/blob/master/LICENSE.txt
https://github.com/FortAwesome/Font-Awesome/blob/master/LICENSE.txt
https://fontawesome.com/license
https://fontawesome.com/license
https://fontawesome.com/license
https://fontawesome.com/license
https://docs.microsoft.com/en-us/gaming/playfab/sdks/unity3d/licenses/signalr-license
https://github.com/ng-select/ng-select/blob/master/LICENSE
https://github.com/ngrx/platform/blob/master/LICENSE
https://github.com/ngrx/platform/blob/master/LICENSE
https://licenses.nuget.org/MIT
https://licenses.nuget.org/Apache-2.0
https://github.com/Romanchuk/angular-i18next/blob/master/LICENSE
https://github.com/AutoMapper/AutoMapper/blob/master/LICENSE.txt
http://aws.amazon.com/apache2.0/
https://github.com/chartjs/Chart.js/blob/master/LICENSE.md
https://github.com/chartjs/chartjs-plugin-datalabels/blob/master/LICENSE.md
https://licenses.nuget.org/MIT
https://github.com/DiscUtils/DiscUtils/blob/develop/LICENSE.txt
https://raw.githubusercontent.com/FirebirdSQL/NETProvider/master/license.txt
https://github.com/robinrodricks/FluentFTP/blob/master/LICENSE.TXT
https://opensource.org/licenses/BSD-3-Clause
https://github.com/FubarDevelopment/FtpServer/blob/master/LICENSE.md
http://www.apache.org/licenses/LICENSE-2.0
https://github.com/i18next/i18next/blob/master/LICENSE
https://github.com/i18next/i18next-browser-languageDetector/blob/master/LICENSE
https://github.com/i18next/i18next-http-backend/blob/master/licence
https://github.com/rianjs/ical.net/blob/master/license.md
https://github.com/TalAloni/iSCSIConsole/blob/master/License.txt
https://raw.githubusercontent.com/yavuztor/JsonLogic.Net/master/LICENSE
https://github.com/auth0/jwt-decode/blob/master/LICENSE
https://raw.githubusercontent.com/MiloszKrajewski/K4os.Hash.xxHash/master/LICENSE
https://www.nuget.org/packages/LightningDB/0.13.0/License
https://raw.github.com/mbdavid/LiteDB/master/LICENSE
https://github.com/bwlewis/lz4/blob/master/LICENSE
https://licenses.nuget.org/MIT
http://www.microsoft.com/web/webpi/eula/net_library_eula_ENU.htm
https://raw.githubusercontent.com/aspnet/AspNetCore/2.0.0/LICENSE.txt
https://raw.githubusercontent.com/aspnet/AspNetCore/2.0.0/LICENSE.txt
https://raw.githubusercontent.com/aspnet/AspNetCore/2.0.0/LICENSE.txt
https://raw.githubusercontent.com/aspnet/AspNetCore/2.0.0/LICENSE.txt
https://raw.githubusercontent.com/aspnet/AspNetCore/2.0.0/LICENSE.txt
https://raw.githubusercontent.com/aspnet/AspNetCore/2.0.0/LICENSE.txt
https://raw.githubusercontent.com/aspnet/AspNetCore/2.0.0/LICENSE.txt
https://licenses.nuget.org/Apache-2.0
https://raw.githubusercontent.com/aspnet/AspNetCore/2.0.0/LICENSE.txt
https://raw.githubusercontent.com/aspnet/AspNetCore/2.0.0/LICENSE.txt
https://licenses.nuget.org/Apache-2.0
https://licenses.nuget.org/Apache-2.0
https://raw.githubusercontent.com/aspnet/AspNetCore/2.0.0/LICENSE.txt
https://raw.githubusercontent.com/aspnet/AspNetCore/2.0.0/LICENSE.txt
https://raw.githubusercontent.com/aspnet/AspNetCore/2.0.0/LICENSE.txt
https://licenses.nuget.org/Apache-2.0
https://licenses.nuget.org/Apache-2.0
https://licenses.nuget.org/Apache-2.0
https://licenses.nuget.org/Apache-2.0
https://raw.githubusercontent.com/aspnet/AspNetCore/2.0.0/LICENSE.txt
https://licenses.nuget.org/MIT
https://licenses.nuget.org/MIT
https://raw.githubusercontent.com/aspnet/AspNetCore/2.0.0/LICENSE.txt
https://raw.githubusercontent.com/aspnet/AspNetCore/2.0.0/LICENSE.txt
https://licenses.nuget.org/Apache-2.0
https://raw.githubusercontent.com/aspnet/AspNetCore/2.0.0/LICENSE.txt
https://raw.githubusercontent.com/aspnet/AspNetCore/2.0.0/LICENSE.txt
https://raw.githubusercontent.com/aspnet/AspNetCore/2.0.0/LICENSE.txt
https://licenses.nuget.org/Apache-2.0
https://raw.githubusercontent.com/aspnet/AspNetCore/2.0.0/LICENSE.txt
https://licenses.nuget.org/Apache-2.0
https://licenses.nuget.org/Apache-2.0
https://licenses.nuget.org/Apache-2.0
https://licenses.nuget.org/Apache-2.0
https://www.nuget.org/packages/Microsoft.Graph/3.23.0/License
https://licenses.nuget.org/MIT
https://licenses.nuget.org/MIT
https://www.microsoft.com/web/webpi/eula/net_library_eula_enu.htm
http://www.microsoft.com/web/webpi/eula/net_library_eula_enu.htm
https://github.com/dotnet/core-setup/blob/master/LICENSE.TXT
https://github.com/dotnet/core-setup/blob/master/LICENSE.TXT
https://www.nuget.org/packages/Microsoft.VisualStudio.Azure.Containers.Tools.Targets/1.7.12/license
https://raw.githubusercontent.com/aspnet/AspNetCore/2.0.0/LICENSE.txt
https://licenses.nuget.org/MIT
https://github.com/mono/mono/blob/master/LICENSE
https://go.microsoft.com/fwlink/?linkid=869050
https://raw.githubusercontent.com/moq/moq4/master/License.txt
https://raw.githubusercontent.com/moq/moq4/master/License.txt
https://www.nuget.org/packages/MSTest.TestAdapter/2.2.0-preview-20210115-03/License
https://www.nuget.org/packages/MSTest.TestAdapter/2.1.2/License
https://www.nuget.org/packages/MSTest.TestFramework/2.2.0-preview-20210115-03/License
http://www.microsoft.com/web/webpi/eula/net_library_eula_enu.htm
https://github.com/dotnet/standard/blob/master/LICENSE.TXT
https://github.com/dotnet/standard/blob/master/LICENSE.TXT
https://licenses.nuget.org/MIT
https://raw.github.com/JamesNK/Newtonsoft.Json/master/LICENSE.md
https://github.com/arkon/ng-click-outside/blob/master/LICENSE
https://github.com/valor-software/ng2-charts/blob/development/LICENSE
https://github.com/scttcper/ngx-toastr/blob/master/LICENSE
https://github.com/NLog/NLog.Web/blob/master/LICENSE
https://licenses.nuget.org/PostgreSQL
https://github.com/openssl-net/openssl-net/blob/master/LICENSE
https://github.com/mgravell/protobuf-net/blob/master/Licence.txt
https://github.com/restsharp/RestSharp/blob/master/LICENSE.txt
https://github.com/rnwood/smtpserver/blob/master/LICENSE.md
https://github.com/ReactiveX/rxjs/blob/master/LICENSE.txt
https://github.com/ume05rw/SharpCifs.Std/blob/master/LICENSE
https://licenses.nuget.org/LGPL-3.0-or-later
https://raw.githubusercontent.com/domaindrivendev/Swashbuckle.AspNetCore/master/LICENSE
https://licenses.nuget.org/MIT
https://licenses.nuget.org/MIT
https://licenses.nuget.org/MIT
https://licenses.nuget.org/MIT
https://github.com/microsoft/tslib/blob/master/LICENSE.txt
https://github.com/ajafff/tsutils/blob/master/LICENSE
https://unqlite.org/licensing.html
https://github.com/uuidjs/uuid/blob/master/LICENSE.md
https://github.com/MikaelGRA/InfluxDB.Client/blob/master/LICENSE
https://vdc-download.vmware.com/vmwb-repository/dcr-public/3d076a12-29a2-4d17-9269-cb8150b5a37f/8b5969e2-1a66-4425-af17-feff6d6f705d/SDK/VMware%20vSphere%20Mgmt%20SDK-License%20Agmt.docx
https://raw.githubusercontent.com/xunit/xunit/master/license.txt
https://licenses.nuget.org/MIT
https://github.com/angular/angular/blob/master/LICENSE
https://github.com/facebook/zstd/blob/dev/LICENSE