on-prem-pks-common-install
Prerequisites
Ensure that your Tanzu cluster meets the minimum requirements for Portworx.
Configure your environment
Follow the instructions in this section to configure your environment before installing Portworx.
Enable privileged containers and kubectl exec
Ensure that the following options are selected on all plans on the TKGi tile:
- Enable Privileged Containers
- Disable DenyEscalatingExec (this is useful for using
kubectl execto runpxctlcommands)
Configure Bosh Director addon
Bosh Director ensures the upgrades to Portworx TKGI clusters are performed with minimal disruption to the cluster's availability and functionality.
In the process of stopping and upgrading instances within a TKGI cluster, it is responsible for unmounting the /var/vcap/store directory. However, Portworx employs /var/vcap/store/opt/pwx/oci as the root filesystem for its OCI container, which is essential for the operation of the runc container.
To enable zero downtime upgrades for Portworx TKGI clusters, it is important to stop Portworx and unmount /var/vcap/store/opt/pwx/oci. This step allows Bosh Director to proceed smoothly with the task of stopping the instances.
Perform these steps on any machine where you have access to the Bosh CLI.
Upload a Portworx release to your Bosh Director environment
Run the following command to clone the
portworx-stop-bosh-releaserepositories:git clone https://github.com/portworx/portworx-stop-bosh-release.git
cd portworx-stop-bosh-releaseCreate the Portworx release with a final version (in this example, version 1.0.0) using the Bosh CLI:
mkdir src
bosh create-release --final --version=1.0.0Upload the release to your Bosh Director environment (replace
director-environmentwith your actual environment):bosh -e director-environment upload-release
Add the Addon to the Bosh Director
Get your current Bosh Director runtime config:
bosh -e director-environment runtime-configIf this is empty, you can simply use the runtime config at runtime-configs/director-runtime-config.yaml.
If you already have an existing runtime config, add the release and addon in runtime-configs/director-runtime-config.yaml to your existing runtime config.
Once you have the runtime config file prepared, update it in the Director:
bosh -e director-environment update-runtime-config runtime-configs/director-runtime-config.yaml
Apply the changes.
After the runtime config is updated, navigate to your Operations Manager Installation Dashboard and click Apply Changes. This will ensure Bosh will add the addon on all new VM instances.
If you already have an existing Portworx cluster, you will need to recreate the VM instances using the bosh recreate command.