Install PX-Backup on AWS Marketplace


This topic explains how you can install PX-Backup on the Amazon Web Service (AWS) Marketplace in your AWS Cloud account. After installing, you can use the same AWS Cloud account to send metering data to AWS. Also, you can back up or restore PX-Backup data and applications for any AWS Elastic Kubernetes Service (EKS) cluster.

Prerequisite

For PX-Backup version 2.3.0 to support backup and restore of file share storage, you must install Stork version 2.11.4.

To install Stork version 2.11.4:

  1. Download the Stork deployment spec:

    curl -fsL -o stork-spec.yaml "https://install.portworx.com/pxbackup?comp=stork&storkNonPx=true"
  2. In the stork-spec.yaml, change the Stork version to 2.11.4.

  3. Apply the stork-spec.yaml to install Stork version 2.11.4:

    kubectl apply -f stork-spec.yaml

Configure IAM permissions with EKS cluster

You must create a IAMServiceAccount for PX-Backup and configure it with permissions for EKS cluster to send metering data to AWS:

  1. Enable the IAM OIDC Provider for your EKS cluster. Replace the <region> and <clustername> parameters to match your environment.

    eksctl utils associate-iam-oidc-provider --region=<region> --cluster=<clustername> --approve
  2. Update the existing IAMServiceAccount or create a local service account for PX-Backup, and link it to your EKS cluster. Change the namespace if you are not deploying the PX-Backup instance, and replace the <clustername> with your EKS cluster.

    eksctl create iamserviceaccount --name px-backup-account --namespace px-backup --cluster <clustername> --attach-policy-arn arn:aws:iam::aws:policy/AWSMarketplaceMeteringFullAccess \
    --attach-policy-arn arn:aws:iam::aws:policy/AWSMarketplaceMeteringRegisterUsage --approve --override-existing-serviceaccounts

Add Stork environment variable to point to the AWS image repository

For each EKS application cluster that you add to PX-Backup, you must include the MARKET_PLACE=aws environment variable to specify that Stork version 2.11.4 be deployed on the application cluster to use the AWS registry:

- name: MARKET_PLACE
value: aws

Stork uses this environment variable to pick the appropriate Kopia executor image from the AWS Marketplace repository.

Install PX-Backup on AWS

You can install PX-Backup on AWS Marketplace using the px-central Helm chart:

  1. Add the Portworx AWS Helm chart:

    helm repo add aws-portworx https://raw.githubusercontent.com/portworx/aws-helm/master/stable
  2. Install PX-Backup using the Helm chart. Replace <release-name> with the PX-Backup version you want to install. Refer to the PX-Backup Helm chart reference for more information about the configurable parameters.

    helm install <release-name> aws-portworx/px-central --namespace px-backup --set persistentStorage.enabled=true,persistentStorage.storageClassName=gp2,pxbackup.enabled=true --create-namespace
NOTE: You can override the default administrator password, and set a custom password, to access the PX-Backup UI using the oidc.centralOIDC.defaultPassword option.

Access PX-Backup UI using load balancer endpoint

In addition to accessing PX-Backup from the CLI, you can access it on a Web browser using the load balancer endpoint:

  1. Get the load balancer endpoint for PX-Backup using one of the following commands:

    kubectl get ingress --namespace {{ .Release.Namespace }} px-backup-ui -o jsonpath="{.status.load balancer.ingress[0].hostname}"`
    kubectl get ingress --namespace {{ .Release.Namespace }} px-backup-ui -o jsonpath="{.status.load balancer.ingress[0].ip}"`
  2. Access PX-Backup and Keycloak using the endpoint:

    • http://<LB_endpoint>
    • http://<LB_endpoint>/auth

Uninstall Helm chart

Perform the following steps to uninstall px-central Helm chart:

  1. Uninstall the Helm chart:

    helm delete px-central --namespace px-backup
  2. Cleanup secrets and pvc created by px-backup:

    kubectl delete ns px-backup

Last edited: Tuesday, Sep 13, 2022