Cloud-Engineering: Sending a Website Live
When a site has finished implementation, then it is ready to be reviewed by the client. Once the client signs off on the new website, it is time to send it live. The process of sending a site provisioned by the deployment manager live is relatively straightforward.
Staging Load-balancer DNS
Production Load-balancer DNS
ae53586f5fd6f4488a23848040be54b4-1342266048.us-west-2.elb.amazonaws.com
Pre-requisites
Control of the client’s existing DNS/domain name.
Client approval of the site.
PMS connection checks (bookings no longer in test mode for Escapia, etc.)
Database backup of existing Bluetent/LMPM/Q4L website if a migration.
Distribution Channel Updates
Values relevant to a site’s checkout confirmation page exist within the settings of a given distribution channel.
Select the desired company/website combination:
Update the booking confirmation ID and site referrer’s list to include the new domain name(s):
Save your changes.
Update the permitted referrers to include your domain name(s):
Save your changes.
Navigate to the tags and publish your new channel configuration tag:
Click “Create New Tag”
Add the Hostname(s) to the Site Configuration
Navigate to https://ngen-manager.rezfusion.com/ and login using your Auth0 credentials
Navigate to the desired website, in our use-case example it will be
bttessentials
:At the bottom, click “Add Hostname” and add the desired DNS value(s). Check “Redirect traffic to WWW” to also support routing to www. URLs.
Save the site configuration. If successful, you will be redirected to the list of sites. Several jobs related to site promotion should kick off within the
wp-platform
namespace of the Kubernetes cluster associated with production. These jobs are detailed in the specs & capabilities portion of this Confluence space.The site ID’s ingress should reflect the new hostname entry within minutes:
kubectl get ing -n wp-platform bttessentials -o yaml apiVersion: networking.k8s.io/v1 kind: Ingress metadata: annotations: cert-manager.io/cluster-issuer: letsencrypt kubernetes.io/tls-acme: "true" nginx.ingress.kubernetes.io/proxy-body-size: 250m nginx.ingress.kubernetes.io/rewrite-target: / nginx.ingress.kubernetes.io/upstream-vhost: bttessentials.rezfusion.com creationTimestamp: "2023-11-30T20:48:05Z" generation: 6 labels: app: green condos-pipeline-name: UPDATE_INGRESS moniker: bttessentials queue-id: "10" queue-name: upgrade name: condos namespace: wp-platform resourceVersion: "163479485" uid: aca25f14-d124-42ca-b7ff-21a8932b4f06 spec: ingressClassName: nginx rules: - host: conallscondos.com http: paths: - backend: service: name: green port: number: 80 path: / pathType: Prefix - host: www.conallscondos.com http: paths: - backend: service: name: green port: number: 80 path: / pathType: Prefix
Add the Hostname(s) to the Site Configuration
Add a new CNAME entry or update an existing entry to point to the new hostname of the elastic load balancer in front of our blue/green services:
a5346b82d442149549a54fddefb6bb5c-289507650.us-west-2.elb.amazonaws.com (44.228.73.241)
Confirm the DNS routes to the proper site by visiting the URL and confirming it is the same as the implementation URL (bttessentials.rezfusion.com and conallscondos.com should show the same site, in this case.)