---
schema_version: "1"
id: d6291068ebd641724003b90c693012749b70326d93f399447f63a5a5fec6047c
title: Installing or Upgrading Anypoint Platform Private Cloud Edition (Anypoint Platform PCE)
collection: mulesoft
version: current
locale: en-us
portal_url: https://docs.salesforce.com/mulesoft/current/en-us/private-cloud/latest/install-workflow.md
canonical_url: https://docs.mulesoft.com/private-cloud/latest/install-workflow
source_site: docs.mulesoft.com
content_type: documentation
content_hash: c3208d40949f9b4978bf0d23cbeb067a830a9fb4bb65d061700e8e61a7b2b52a
description: MuleSoft Documentation Site
release: "4.3"
latest: true
---
---
product: Anypoint Platform Private Cloud Edition
version: 4.3
is-latest-version: true
---

# Installing or Upgrading Anypoint Platform Private Cloud Edition (Anypoint Platform PCE)

> For the full documentation index, see: https://docs.mulesoft.com/llms.txt

The process to install Anypoint Platform Private Cloud Edition (Anypoint Platform PCE), consist of
the following steps:

1.  Obtaining your Anypoint PCE installation distribution

2.  Setting up and verifying your infrastructure

3.  Performing a pre-installation verification

4.  Installing or Upgrading Anypoint Platform PCE

> [!NOTE] Contract Mulesoft Processional Services or your Anypoint PCE Certified Partner to obtain
> your Anypoint PCE installation distribution and before performing the pre-installation
> verification and installation or upgrade of the Anypoint PCE Platform to ensure they are involved
> in these procedures.

> [!NOTE] To install Anypoint Platform PCE on OpenShift, see
> [Installing Anypoint Platform PCE on OpenShift](https://docs.mulesoft.com/private-cloud/latest/install-openshift).

> [!NOTE] To install Anypoint Platform PCE into namespaces that your organization creates and names,
> see [Installing Anypoint Platform PCE with Bring Your Own Namespaces](https://docs.mulesoft.com/private-cloud/latest/install-byons).

## Set Up and Verify your Infrastructure

Before you install Anypoint Platform PCE, ensure your infrastructure team installed and configured
correctly the infrastructure for your organization following the requirements as described in
[Anypoint Platform PCE Prerequisites](https://docs.mulesoft.com/private-cloud/latest/install-checklist).

## Perform a Pre-installation Verification

To perform the pre-installation healthcheck verification for the Kubernetes (K8s) cluster, follow
these steps:

1.  Confirm your Kubernetes cluster version is 1.35.x, 1.34.x, 1.33.x, or 1.32.x.

2.  Create an `input.yaml` file using this template and update it with your environment details:

```json
# Container Registry configuration to upload PCE images
containerRegistry:
  endpoint: "" # Container Registry Endpoint
  username: "" # Provide either Username/Password OR Certificate to authenticate with container registry
  password: ""
  certificate: "/etc/registry/certificate/ca.crt"
  subproject: "mulesoft" # Container registry subproject under which all the PCE images will be part of.
  tlsSkipVerify: True  # True or False.
# Platform configuration for the shared ReadWriteMany (RWX) filesystem.
# Choose exactly one of the two storage modes below. NFS mode has two configuration
# variants (Option A or Option B). StorageClass mode is Option C. The modes are
# mutually exclusive.
platformConfiguration:
  platformDNS: ""
  # ---- NFS mode (Option A and Option B) ----
  # Requires a pre-installed CSI driver in the Kubernetes cluster.
  fileSystemCsiDriverName: "" # CSI driver name (e.g., nfs.csi.k8s.io, efs.csi.aws.com)
  # Optional NFS mount option overrides. Comma-separated string. Only used in NFS mode.
  fileSystemBareMountOptionsOverride: ""
  fileSystemWcMountOptionsOverride: ""
  fileSystem01MountOptionsOverride: ""
  # Option A - Generic NFS CSI driver: provide DNS and path.
  # fileSystemDNS: ""   # NFS server hostname or IP
  # fileSystemPath: ""  # NFS export path (e.g., /exports/pce)
  # Option B - CSI driver with individual volume handles (all 4 required, e.g. EFS CSI Driver
  # with 4 access points that point to the same directory in the EFS):
  fileSystemWcCsiVolumeHandle: "" # CSI volume handle for wc filesystem. E.g.: fs-0835b0d1eb7588eb1::fsap-03f6c68563ceb5acf
  fileSystem01CsiVolumeHandle: "" # CSI volume handle for 01 filesystem
  fileSystemBareCsiVolumeHandle: "" # CSI volume handle for bare filesystem
  fileSystemBackupRestoreCsiVolumeHandle: "" # CSI volume handle for backup-restore filesystem
  # ---- StorageClass mode (Option C, Anypoint Platform PCE 4.3.0 and later) ----
  # Mutually exclusive with NFS mode. The StorageClass must support ReadWriteMany.
  # Leave fileSystemCsiDriverName and all NFS-mode fields above empty when using this option.
  # For backup retention, use a StorageClass with reclaimPolicy: Retain so deleting the PVC
  # does not destroy historical backup tarballs.
  # fileSystemStorageClass: "" # e.g. ocs-storagecluster-cephfs
  platformCertificate: /path/to/platform/certificate/cert.crt
  platformCertificateKey: path/to/platform/certificate/cert.key
  firstUserAccount:
    organizationName: 'Test Org'
    username: 'username'
    email: 'username@mulesoft.com'
    password: '<a-valid-password>'
# Storage class configuration for persistent data services
storageConfiguration:
  pceobjectstore:
    type: "persistentVolumeClaim"
    storageClass: "<storage-class-name>"
    controlPlaneSize: "10Gi" # Optional. Defaults to 10Gi
    volumeSize: "100Gi" # Optional. Defaults to 100Gi
    volumeIndexSize: "10Gi" # Optional. Defaults to 10Gi
  stolon:
    type: "persistentVolumeClaim"
    storageClass: "<storage-class-name>"
    size: "100Gi" # Optional. Defaults to 100Gi
  backupRestoreTmp:
    storageClass: "<storage-class-name>" # Storage class for backup/restore temporary storage
```

3.  Obtain the `license.lic` file from the MuleSoft Professional Services team.

4.  Set the `KUBECONFIG` environment variable to the path to the `kubeconfig` file of the cluster.

5.  Verify that the cluster satisfies the prerequisites by running the following command against
    your `input.yaml` file and the `license.lic` file:

    `./pcectl pre-install-check --input-file/path/to/input.yaml --license-file /path/to/license.lic`

6.  For Anypoint Platform PCE workload to be scheduled on designated nodes, apply the following
    labels to all worker nodes:

    - `mulesoft-role=node`

    - `redis-role=node`

7.  Apply the following labels to any three worker nodes. These do not need to be the same three
    nodes:

    - `stolon-keeper=yes`

    - `pce-data-nodes=yes`

8.  (Optional) Apply taints to controlplane nodes to ensure that no Anypoint Platform PCE workload
    is scheduled on the control plane. This also affects any other workload your organization may
    want to run on control plane nodes. Consult with your Kubernetes cluster admin to perform this
    step:

    `mulesoft.pce/controlplane-node=true:NoSchedule`

## Install Anypoint Platform PCE

After your infrastructure is correctly set up and you performed a pre-installation verification,
MuleSoft Professional Services or your Anypoint PCE Certified Partner will assist you with the
installation of Anypoint Platform PCE.

To install Anypoint Platform PCE, run this command:

`./pcectl install --input-file /path/to/input.yaml --license-file /path/to/license.lic`

## Upgrade Anypoint Platform PCE

After you have completed a pre-installation/upgrade verification, MuleSoft Professional Services or
your Anypoint PCE Certified Partner will assist you with the upgrade of Anypoint Platform PCE.

To upgrade Anypoint Platform PCE, run this command:

`./pcectl upgrade /path/to/input.yaml --license-file /path/to/license.lic`

## See Also

- [Anypoint Platform PCE Prerequisites](https://docs.mulesoft.com/private-cloud/latest/install-checklist).
