Stand alone kubernetes configuration files for Constellation CDN service(multiple versions) and AppStatic service charts for AWS Cloud

Note:

Setup the service requires good understanding of containers and docker, https certificates, domain names and network server configuration. This is usually a task done by a K8s sys. admin.

The K8s yaml files are simple examples of how to deploy the service. They must be customised to the specific network and cluster configuration. Do not proceed if you do not know how to download, modify and execute the K8s files referenced below.

Prepare for the installation

  1. Ensure that you have a working kubernetes cluster and the kubectl command line interface installed on your environment and helm to deploy the service. You need access to a valid https certificate for your domain.

  2. Create a namespace for Constellation CDN service(multiple versions) and App-Static service in your cluster. - namespace 'cdn-onprem' is used in all examples here:

    For example : kubectl create namespace cdn-onprem

  3. With the Constellation CDN(multiple versions) and App-Static images available in your Docker repository, create a K8s secret to pull the docker image during cluster install. Make sure that this is created in the same namespace as step2.

  4. Install the nginx-ingress on the kubernetes cluster. For more information please check this page. This step will also have created a network loadbalancer in the cloud which will be used as the constellationservicesURI.

    Overview

  5. For persistent storage, download efs csi driver. If persistance is not required skip this step and in the step7 after downloading please comment out refences to efs

    https://docs.aws.amazon.com/eks/latest/userguide/efs-csi.html

  6. Download the helm charts from here

  7. Update the templates and values for your versions

  8. Install the charts using the below command

    helm install /path-to-/charts/constellation --values /path-to-/charts/constellation/values.yaml --namespace namespace-created-in-step2 --generate-name

  9. Let the deployment complete.

  10. Take the network load balancer url and create a record set in the hosted zone of your aws account to obtain a user friendly URL that can be used as the constellationserviceURI.

  11. Constellation CDN service version 8.8.3 should now be available at https://yourdomainname/8.8.3

  12. Constellation CDN service version 8.8.2 should be available at https://yourdomainname/8.8.2

  13. You can perform a build version check * for 8.8.3 version service at https://yourdomainname/8.8.3/react/prod/buildinfo.json * for 8.8.2 version service at https://yourdomainname/8.8.2/react/prod/buildinfo.json

  14. Now you can set the ConstellationPegaStaticURL DSS to the https://yourdomainname url to use the service. Based on the infinity version request routes to corresponding constellation service.

  15. Remember to add /cs to the path if running a CS app.

  16. Constellation Appstatic service should be available at https://yourdomainname/c11n-appstatic

  17. You can perform a ping check on the service at https://yourdomainname/c11n-appstatic/v860/ping

  18. You can perform a health check on the service at https://yourdomainname/c11n-appstatic/v860/healthcheck

  19. Now you can set the ConstellationSvcURL DSS to the https://yourdomainname/c11n-appstatic url to use the service.