Skip to main content
Version: 2.7

Components

Portworx Backup components

A thorough understanding of the components enable you to use Portworx Backup seamlessly for your data replication tasks. Portworx Backup comprises of the following key hardware and software components that pitch-in at various phases of backup and restore operations:

  • Portworx Backup server
  • REST APIs
  • Portworx Central
  • Application clusters
  • Stork
  • Datastore
  • Keycloak
  • Portworx
  • Cloud storage
  • NFS server

The following sections provide more information on these major components of Portworx Backup:

Portworx Backup server

Portworx Backup server is built on the Google Remote Procedure Call (gRPC ) framework and offers performance benefits by reducing latency. With protocol buffers and binary serialization, gRPC divides the payload and enables faster communication, increasing the performance of Create, Read, Update, Delete (CRUD) operations of Portworx Backup. The server implements the basic CRUD operations on the Portworx Backup objects to handle the operations of data protection. Besides, CRUD abstracts the complexity of data storage and allows the user to focus on the web console tasks. Portworx Backup Server communicates with Stork to create application-level backups by creating the backup location and application backups CRDs and Stork monitors these CRDs on each user’s cluster. Portworx Backup Server also monitors the status of application backups and application restores on these clusters. Backup server implements the basic CRUD operations for the following Portworx Backup objects:

REST APIs

Portworx Backup REST APIs allow you to interact with the application to perform operations. Portworx Backup offers two APIs, backup API and backend API. Both of these APIs are organized around REST and returns responses in JSON format. You can leverage the Portworx Backup API to create, delete, schedule, and restore backups. You can use Portworx Backup backend API to create, manage and assign roles to the user.

Portworx Central

Portworx Central portal provides a simple web interface for deploying Portworx Backup onto your clusters. It greatly reduces the time taken to get your Portworx Backup up and running. The central web console allows you to choose the required version of the backup, namespace, storageclass, external OIDC details, and so on to facilitate a quick installation with spec generator.

Portworx Central on-premises is a graphical web console that allows you to monitor and manage your Portworx clusters.

Application clusters

In Portworx Backup, an application cluster is any Kubernetes cluster that Portworx Backup creates backups from or restores backups to. Portworx Backup supports the addition of any Kubernetes cluster that is network accessible. With Portworx Backup, you can back up, restore and monitor all of your Kubernetes clusters. When a cluster is created, by default, the owner or the creator of the cluster can access it. During cluster creation, the owner of the cluster can define which user or user groups can access the cluster. Additionally, cluster owners can designate namespace access to selected users/roles of the organization. Portworx Backup supports auto-discovery of clusters for AWS cloud accounts.

Application clusters help you to list all applications and resources available on the cluster to choose to back up. Also, application clusters create or manage Stork resources on the cluster.

You can add the following types of clusters from the Portworx Backup web console:

Stork

Stork is a cloud native storage operator runtime scheduler plugin. It translates decisions of a scheduler orchestration system in such a way that an external cloud native storage solution can act upon. By doing so, Stork extends Kubernetes capabilities with the help of the underlying storage provider, making it more stateful. Stork bridges the gap between Portworx Backup running on your administration cluster and the remaining clusters.

Datastore

Database where the Portworx Backup stores objects related to the cluster such as backup location, schedule policies, backup, restore, and backup schedules. Portworx Backup uses MongoDB as the datastore from the 2.0.0 version. Portworx Backup pod writes the metadata of backup object data to the MongoDB datastore. MongoDB runs with 3 replicas for high availability. This datastore is installed as part of the Portworx Backup deployment. Portworx Backup does not support use of an externally managed database as the datastore.

Keycloak

Portworx Backup Server communicates with an external OIDC service (Okta, Keycloak, Active Directory, Auth0, and so on) to validate and authorize tokens that are used for the API calls. Keycloak component is installed as part of the Portworx Central deployment. Portworx does not support use of an external Keycloak component, but the internally managed Keycloak component can be configured to add compatible external OIDC providers either during installation or post-installation.

Portworx

Portworx provides a complete multi-cloud ready Kubernetes enterprise storage platform for your storage infrastructure. Portworx provides a compatible foundation to protect your data with Portworx Backup. Backups of Portworx volumes which includes data and resource files are encrypted during transit.

Cloud Storage

Cloud Storage acts as backup target to provide storage for the backups you create through Portworx Backup and helps you retrieve when you require. You can add a cloud-based S3 compliant object store backup location or cloud-based NFS backup location in Portworx Backup and backup your data on them. Portworx Backup supports object lock for cloud-based S3 compliant object store backup locations to secure your critical data. You can retrieve data from these backup targets when needed with low latency.

Cloud Storage provides storage for your unstructured data and helps you store any amount of data and retrieve when you require. You can add cloud-based object store or block store backup location in Portworx Backup and backup your data on those cloud-based targets. You can retrieve data from these backup targets with low latency.

NFS server

NFS enables you to share your files and directories with the intended audience over a network and thereby consuming less storage space with a shared directory. Portworx Backup's Stork component communicates directly with NFS server through PVCs. You can add a file share that resides on your on-premises or on-cloud NFS server as backup location and backup all your data onto the NFS file share.

For more information on terminologies related to Portworx Backup, refer to Glossary.