Use SaaS Boost to sell a multi-tenant fully managed WordPress service deployed in an ACK cluster
Compute Nest SaaS Boost provides an independent storefront where your customers can buy and use your services without managing the underlying infrastructure. You can combine Compute Nest with SaaS Boost to sell a multi-tenant fully managed WordPress service that runs in a Container Service for Kubernetes (ACK) cluster. This topic describes how a service provider creates and deploys the service, and how a customer purchases and accesses a WordPress site.
Service overview
SaaS Boost integrates with Compute Nest and provides a multi-tenant architecture, continuous integration and continuous delivery (CI/CD), plan management, and application monitoring. These capabilities help you transform traditional software into Software as a Service (SaaS) offerings and simplify sales and pricing.
Workflow
Two roles are involved in the end-to-end process: the service provider, who builds and sells the service, and the customer, who buys a WordPress site. The process consists of the following stages:
Step 1: Create a service (service provider) — Create the WordPress fully managed service from a featured template in the Compute Nest console.
Step 2: Deploy SaaS Boost (service provider) — Deploy a SaaS Boost instance in an ACK cluster and open the SaaS Boost storefront. Share the storefront URL (SaaSBoostEndpoint) with your customers. This is the handover point between the service provider and the customer.
Step 3: Purchase and access WordPress (customer) — The customer orders the service in the storefront and completes the payment. WordPress is then automatically deployed in the ACK cluster of the service provider. When the deployment is complete, SaaS Boost returns the URL of the WordPress site for the customer to access.
Service architecture
The multi-tenant WordPress service runs in an ACK cluster that the service provider operates. Customers buy the service from the SaaS Boost storefront, and Compute Nest deploys WordPress for each customer in that cluster.
The service involves the following components:
SaaS Boost storefront — The independent storefront where customers order the service and complete the payment.
Compute Nest service — The WordPress fully managed service that the service provider creates in Step 1. Compute Nest deploys WordPress for a customer after that customer completes the payment.
ACK cluster — The cluster that hosts the WordPress deployments of all tenants.
The multi-tenant design has the following characteristics:
Ingress routes requests to each tenant's WordPress deployment based on the domain name.
Each tenant uses a separate Kubernetes namespace for isolation.
WordPress and MySQL are deployed from YAML files.
When a customer opens a WordPress site, the request reaches the ACK cluster and Ingress routes it by domain name to the WordPress deployment in the namespace of that tenant. WordPress reads and writes data through the MySQL deployment in the same namespace.
Prerequisites
The following resources and information are required to complete the procedures in this topic:
ACK cluster — An ACK cluster that hosts the tenant WordPress deployments. In Step 2, you select this cluster from the ClusterId drop-down list.
WordPress service — The Compute Nest service for WordPress, which you create in Step 1. In Step 2, you select the service ID of this service from the Compute Nest Service ID drop-down list.
Alipay key pair — (Optional) An Alipay public key and private key. You can skip the Alipay encryption parameters in Step 2.
Account balance (customer) — A sufficient account balance to complete the order in Step 3.
Step 1: Create a service
The service provider performs this step. Create the WordPress service from a featured template in the Compute Nest console.
Log on to the Compute Nest console.
In the left-side navigation pane, choose My Services.
Click Create Service, select Create Service from Featured Template, and then select Fully Managed Service for Select Service Type.
From the featured templates, select WordPress Multi-tenant Fully Managed Service on ACK.
Click View Details for the selected template to view its Deployment Documentation and Service Configuration YAML File.
Click Next: Configure Settings and configure the basic and advanced service information.
Click Create Service.
Step 2: Deploy SaaS Boost
The service provider performs this step. In the Compute Nest console, deploy a SaaS Boost instance and link it to the WordPress service that you created in Step 1.
In Service Catalog, find SaaS Boost Community, click the service to open its details page, and then click Create.
You can also view the service instance deployment document, architecture, and template content on the service details page.
On the Create Service Instance page, configure the service instance parameters as prompted.
The parameters are grouped into the following four sections:
ACK cluster configuration — Select the cluster where the WordPress Compute Nest service is sold from the ClusterId drop-down list. Enable ack-pod-identity-webhook if needed.
Compute Nest service configuration — Select the Compute Nest service ID for WordPress from the Compute Nest Service ID drop-down list.
Image configuration — Configure ServerDockerImage (default value:
registry.cn-hangzhou.aliyuncs.com/compute-nest-saas-boost/server:1.0.0) and ServerlessDockerImage (default value:registry.cn-hangzhou.aliyuncs.com/compute-nest-saas-boost/serverless:1.0.0). Retain the default values if you did not build custom images.Alipay encryption parameters — Specify the public and private keys, or skip this section.
Click Next: Confirm Order.
Review the order, select the Terms of Service checkbox, and click Create Now.
On the SaaS Boost service instance details page, click SaaSBoostEndpoint to open the SaaS Boost storefront.
Share this URL with your customers so that they can purchase your managed multi-tenant service.
Step 3: Purchase and access WordPress
The customer performs this step. Order the WordPress service in the SaaS Boost storefront, complete the payment, and then access your WordPress site.
Open the SaaS Boost storefront URL that the service provider shared with you.
In the left-side navigation pane, click Featured Services. On the Service Instances page, click Buy Now.
On the Compute Nest purchase page that opens, configure the parameters as prompted, and then click Next: Confirm Order.
The page includes the following parameters:
Template — Valid values: Basic Edition and High-availability Edition.
Service Instance Name
Region
Billing Method — Valid values: Pay-as-you-go and Subscription.
ECS Instance Configuration — Select the number of vCPUs, the memory size, and the instance type of the ECS instance, such as the general-purpose g6 or g7 instance family.
Click Create Now to return to the SaaS Boost order page.
On the confirmation page, confirm that the dependency check passes and that the account balance is sufficient, select the Terms of Service checkbox, and then click Create Now.
The confirmation page displays a price preview for the resources of the service instance, for example, an ECS instance (
ecs.g6.large, 2 vCPUs, 8 GiB of memory, and a 40 GiBcloud_essdsystem disk) and an RDS database instance. The preview lists the hourly price of each resource and the total hourly price.Complete the payment with Alipay or WeChat Pay.
After the payment is complete, the Service Instance page appears. In the Service Instance Information section on the Overview tab, find VisitUrl, the public network access URL of the service instance, and click it to access your WordPress site.
Use WordPress. On the language selection page of the WordPress installation wizard, select a language from the list. The default value is English (United States). Click Continue.