Install PX-Central on-premises in air-gapped environment
Prepare air-gapped environments
For air-gapped clusters, you must pull the PX-Central and related Docker images to either your Docker registry or directly onto your nodes:
Create a
kube_version
environment variable, and assign your Kubernetes version to it.kube_version=`kubectl version --short | awk -Fv '/Server Version: / {print $3}'`
Pull the following required Docker images onto your air-gapped environment.
- docker.io/portworx/pxcentral-onprem-api:2.2.3
- docker.io/portworx/pxcentral-onprem-ui-frontend:2.2.3
- docker.io/portworx/pxcentral-onprem-ui-backend:2.2.3
- docker.io/portworx/pxcentral-onprem-ui-lhbackend:2.2.3
- docker.io/portworx/pxcentral-onprem-post-setup:2.2.3
- docker.io/portworx/postgresql:11.16.0-debian-11-r5
- docker.io/portworx/keycloak:16.1.1
- docker.io/portworx/keycloak-login-theme:2.2.0
- docker.io/portworx/busybox:1.31
- docker.io/portworx/mysql:5.7.38
Push Docker images to internal registry
To pull the above Docker images and push them to an internal registry:
Download the
pxcentral-ag-install-central.sh
air-gapped bootstrap PX-Central install script.curl -o pxcentral-ag-install-central.sh -L https://install.portworx.com/pxcentral-air-gapped?px-backup=true
You can also download the install script for a specific release by specifying a
version
query. For example:curl -o pxcentral-ag-install-central.sh -L https://install.portworx.com/pxcentral-air-gapped?version=2.2.3&px-backup=true
Pull the container images using the
pxcentral-ag-install-central.sh
script../pxcentral-ag-install-central.sh pull
Push the images to a local registry server accessible by the air-gapped nodes. Replace
<repo>
with your registry location../pxcentral-ag-install-central.sh push <repo>
Generate the PX-Backup installation spec (Helm command) from PX-Central. Select the Use custom registry button and provide the values for registry, repository, and image pull secret.
Note: Create a secret, only if image pulling from an internal repository requires credentials.From the machine where you run the
helm3
command:Download the latest px-central package with the following command:
curl -O https://raw.githubusercontent.com/portworx/helm/master/stable/px-central-2.2.3.tgz
Modify the Helm command generated from Step 2 to provide the helm package, instead of providing the repository. For example:
helm install px-central portworx/px-central --namespace central --create-namespace --version 2.2.3 -f values-px-central.yaml
Following is the modified command for air-gapped environment using the downloaded helm package:
helm install px-central px-central-2.2.3.tgz --namespace central --create-namespace --version 2.2.3 -f values-px-central.yaml
After pushing the docker images, refer to the Install PX-Central on-premises section to install PX-Central.