Dazbo's Acme Blogging App on Google Cloud

Acme Blogging App Hosting on Google Cloud Platform

Requirements

Requirements, Assumptions and Other Supporting Information

Headings on This Page

Customer-Provided Business Case

The customer Acme Ltd Ltd. is currently running their website on an outdated platform hosted in their own datacenter. They are about to launch a new product that will revolutionize the market and want to increase their social media presence with a blogging platform. During their ongoing modernization process, they decided they want to use the Ghost Blog platform for their marketing efforts.

They do not know what kind of traffic to expect so the solution should be able to adapt to traffic spikes. It is expected that during the new product launch or marketing campaigns there could be increases of up to 4 times the typical load. It is crucial that the platform remains online even in case of a significant geographical failure. The customer is also interested in disaster recovery capabilities in case of a region failure.

As Ghost will be a crucial part of the marketing efforts, the customer plans to have 5 DevOps teams working on the project. The teams want to be able to release new versions of the application multiple times per day, without requiring any downtime. The customer wants to have multiple separated environments to support their development efforts. As they are also tasked with maintaining the environment they need tools to support their operations and help them with visualising and debugging the state of the environment. The website will be exposed to the internet, thus the security team also needs to have visibility into the platform and its operations. The customer has also asked for the ability to delete all posts at once using a serverless function.

Objective

You are tasked to deliver a Proof of Concept for their new website. Your role is to design and implement a solution architecture that covers the previously mentioned requirements, using the Google Cloud Platform. The solution should be optimised for costs and easy to maintain/develop in the future.

Case Study Acceptance Criteria

About Ghost

Ghost is an open source content publishing platform, built on a Node.js stack. It is one of the most popular open source projects in the world, and is the number 1 CMS on GitHub.

Whilst Ghost offer a managed hosting option, our desire here is to deploy Ghost to GCP. The Ghost documentation recommends self hosting Ghost using one of the following options:

Assumptions

Here is a summary of the some of my assumptions, when tackling this case study:

Other Considerations

Summary of Requirements

Here I’ve summarised my thoughts on what the final solution needs to deliver: