Self-Hosted Installation and Upgrades

Cloud Native Experience

Subscription

Liferay’s Cloud Native Experience (CNE) is a toolkit for running Liferay DXP on your own cloud infrastructure. CNE targets teams that run Liferay on AWS, Azure, or GCP and want a standardized, automated approach aligned with Liferay’s operational standards.

CNE supports Liferay DXP 2024.Q1 and later. Ensure your environment uses a supported DXP version before proceeding.

The toolkit follows DevOps best practices to solve common operational challenges:

  • GitOps-Driven Releases: Drive all infrastructure and application changes through your Git repository for versioned, traceable, and repeatable deployments.

  • Automated Resilience: Use the Horizontal Pod Autoscaler (HPA) to adjust capacity based on traffic and rely on self-healing Kubernetes clusters to replace unresponsive pods automatically.

  • Unified Observability: Access product-aware metrics and dashboards to track system health and resource consumption using standard industry tools like Grafana.

  • Risk-Free Upgrades: Leverage automated pre-checks and zero-downtime deployment patterns to apply patches and DXP updates without service interruption.

  • Cloud-Native Integration: Offload the burden of maintaining hardware by natively integrating with managed services like RDS, S3, and OpenSearch.

Depending on your requirements for portability versus automation, the toolkit is available in two versions: Kubernetes Ready and Cloud Provider Ready.

Kubernetes Ready

The Kubernetes Ready path runs on any CNCF-certified Kubernetes cluster using the official liferay-default Helm chart. The chart packages Liferay DXP as a StatefulSet with cluster-aware portal properties, init containers, autoscaling, and Gateway API integration. Your team brings the cluster and the dependencies Liferay needs (database, search, object storage), and the chart wires Liferay to them through purpose-named Kubernetes Secrets.

  • Best for: on-premises clusters, OpenShift, regulated environments, or organizations standardized on a different GitOps controller, ingress, and observability stack.

  • Manual effort: moderate. You operate the cluster and managed services; Liferay provides the chart and the integration contract.

Cloud Provider Ready

These vendor-specific versions (e.g., AWS Ready) include opinionated Terraform scripts to automate your entire foundation. They automatically link Liferay to managed services like Amazon RDS and S3 on Day 0.

  • Best for: teams looking to minimize overhead and reach production quickly.

  • Manual effort: minimal (roughly one-fifth the effort of manual self-hosting).

Deployment Models and Responsibilities

Choosing between a standard Self-Hosted setup and the Cloud Native Experience depends on how much of the platform operations your team intends to manage manually.

Platform OperationSelf-HostedCNE Kubernetes ReadyCNE Cloud Provider Ready
Provisioning AutomationManualAdditional SubscriptionIncluded
Container OrchestrationManualIncludedIncluded
Networking SetupManualManualAutomated
Managed Services ConfigManualLimited/ManualFull Integration
Auto Scaling StrategyManualIncludedIncluded
Backup & RestoreManualManualAutomated
Security by DesignManualIncludedIncluded

Core Components

The toolkit combines three technologies to manage infrastructure and application lifecycle:

Infrastructure Blueprints (Terraform)

Infrastructure code written with Terraform defines your cloud foundation. These blueprints provision Kubernetes clusters, networking, and supporting services in your cloud provider.

Application Blueprints (Helm Charts)

Application configuration packaged as Helm charts defines how Liferay runs inside Kubernetes. These charts configure memory, replicas, database connections, and health checks.

Visual Management Dashboard (Argo CD)

The toolkit installs Argo CD to manage deployments using GitOps principles. The dashboard provides a real-time view of your environments and synchronizes changes directly from your Git repository.

Next Steps

Review the Prerequisites for your specific toolkit to ensure all local CLI tools and cloud access levels are configured correctly before beginning deployment.