10 Principles of a Sound Cloud Strategy

These are principles rather than laws. They apply in every situation, but how they are applied will differ depending on circumstances. If you would like to know more about how they will apply to YOUR organization, just send me a message from the contact page.

(In no particular order)

PrincipleBrief Description
1. Cloud FirstConsider using a Cloud Solution before you look at other options.
Why Cloud 1st?
2. Automate EverythingEverything you build should be both automated and repeatable
Read why here
3. Build Everything using CodeMouse Clicks on portals aren't automated. 🙂
Benefits of IaC
4. Security is ParamountSecurity shouldn't be an after-thought but should be built into everything.
Stay Safe
5. Measure EverythingTag everything. Log everything centrally.
Save money and future headaches
6. Create Scalable MicroservicesScale horizontally
No monoliths
7. Prepare for FailureAssume things will break. Build self-healing solutions.
here's how
8. Optimize for CostNever over-provide!
9. Consider PortabilityWill you need to use another Cloud Service Provider?
10. Follow Cloud Native Best PracticesAll applications should be designed in line with best practices

Leave a message

So today I am delighted to announce that Insperitas can now take your messages despite being hosted as static pages on S3. <Fanfare>

When the contact form is completed and you hit Send then your browser should collect your data and send it to AWS API Gateway. Then AWS Lambda will post that into S3.  If this doesn’t work well for your specific browser please let me know. You can still email  via your normal method to contact@insperitas.com.

Contact Page

 

Some Worthy Credits

I want to take a few minutes to thank the authors and developers whose code I used or whose direction I followed to get this insperitas site to where it is today. I can’t possibly mention every name as I scoured the internet for clues when things went wrong and spent hours on stackoverflow. 🙂

For the contact form:   Thanks to Collins Abonghama  https://www.sitepoint.com/build-your-own-wordpress-contact-form-plugin-in-5-minutes/

For the lambda suggestions along with API Gateway I have to thank David Maple  https://www.codeengine.com/articles/process-form-aws-api-gateway-lambda/

For Form building I followed TGroshon at CodeHabitude https://codehabitude.com/2016/04/05/forms-to-emails-using-aws-lambda-api-gateway/ and also Matt West whose work is posted at https://blog.teamtreehouse.com/create-ajax-contact-form

Also I had some help from my good friend Tim Fuller https://www.linkedin.com/in/tim-fuller-788a2421/ Since I am not a natural developer I needed considerable syntax troubleshooting help.

Of course I also need to thank all the people I have worked on Cloud Solutions with over the course of the past few years at HSBC, FlyBe and  Odeon. There are some great minds out there building some incredible solutions.

There are a number of trainers too at AWS, Google and RedHat who have helped enormously. Having run a number of training courses myself its easy to spot the professionalism.

Contact Page

Lesson 2: Using Cloud or Embracing Cloud

Continuing with the analogy of electricity, if your company decided to build a new motor or machine that would be driven by electricity you would likely build it to utilize the service that is commonly available. ie. 230 Volts, Single Phase, Alternating Current. You might choose something different if you had a particular need but it would be unusual to specify some random voltage just because you can. Also if you had multiple electricity suppliers are available you MAY not want ton tie yourself to a specific provider unless there is a clear benefit.

So it is with Cloud Computing. If we think of Cloud as simply a bunch of servers off site then we are missing 95% of the benefits. we could just lift and shift our existing server estate and provision it from a Cloud Service Provider but that is unimaginative and prosaic.

The right approach is “embrace” Cloud. This will necessitate a complete change of mind set within your current IT world!

One reason for this is that Cloud Services are charged for by the minute or by the hour (depending on some basic choices) and therefore you should only build EXACTLY what you need to consume. Most servers only operate at a small fraction of their capacity for most of a day. Traditional server estates are designed to be much larger than needed to be able to cope with spikes in demand. Cloud Servers should be stopped when they are not being used and therefore you wont need to pay for them.  It wouldn’t make sense to have someone on standby to start and stop machines when needed either. So therefore all Cloud Services SHOULD be consumed programmatically!

Once we have taken that important leap in understanding we are well on the way to EMBRACING rather than USING Cloud. In my next post I will get to IaC to describe why this is such a BIG THING. 🙂

 

Lesson 1: What is Cloud

Today I am going to start my Cloud 101 blog posts. In this section I will cover all the main Cloud questions so, in time, this site should become a repository of all basic Cloud lessons. I will include links to important upcoming events and also show you where free beneficial online training can be found.

So to start at the beginning: What Is Cloud?

Using the term Cloud to refer to computing services really took off in 2006 as Amazon started to sell access to the computing power that they used to manage the Amazon.com market-place. Google followed suit two years later with Google App Engine. It essentially refers to the practice of providing computer resources that  are consumed over the internet. Commonly these resources are Compute and Storage resources but can  (and will) be expanded to cover almost all IT Technical Services.

A good analogy is electricity. Very few companies today would find it necessary to to generate their own electricity. Rather it is a service that they consume. It is cheaper and easier to let experts handle power generation and deliver it to your door, to be consumed by your company, paid for in units as you use them.

There are some important definitions that we will cover later that will explain some of the differences between different flavours and styles of Cloud Computing such as SaaS, PaaS and IaaS. Also we will cover Hybrid Cloud Public Cloud and Private Cloud to see if we can understand which of these will be most beneficial for you.

Next See “Using Cloud or Embracing Cloud” as this will help you understand some of the reasons why you should ensure that you and your company are properly engaged with the Cloud world.

Contact Page

welcome to insperitas

welcome to the insperitas unhackable website. 🙂

It isn’t the first unhackable site by any means and to get here I followed the advice of many who have been before me. I’ll get around to some credits another time.

This site is hosted on Amazon S3 but written in WordPress.

I wanted to host a static website  on S3 because S3 is quick and cheap. Quick is important if you don’t want to irritate your customers. Cheap is important always. One of the real benefits of embracing Cloud is that you should only pay for what you need. Static pages on S3 are also pretty secure and much more secure than native WordPress.

I chose to use WordPress because I am NOT a web designer. (I can point you in the direction of some excellent web designers if that’s what you are looking for.) As WordPress is ubiquitous and was used to build about 1/4 of all websites across the world I thought I might find plenty of good themes and lots of support. In the end I chose to use only the latest theme but published support has been very helpful.

So this is how my website works.

  1. Its hosted on S3
  2. I use Terraform to build an EC2 instance using a bitnami base build
  3. I auto – run scripts to download a backup of my site.
  4. At this point I have a running WordPress  instance that I can edit, add blogs etc. I usually compose offline in advance so that blog uploading is more of a copy and paste.
  5. Then , when I am done for the day,  I use httrack to take a copy of the updated site.
  6. I gzip the site
  7. I use S3cmd to upload the files to S3.
  8. I take a backup of the site and use S3cmd to copy that to S3 too.
  9. Then (and this is the important part) I destroy the virtual machine.

To many out there this will seem crazy and I agree, it’s not a way that many will want to emulate. But my goal is not to host a website, but to be able to illustrate:

  1. Good Cloud practice
  2. That static sites are ideal in many circumstances
  3. An entirely cattle based approach to CMS
  4. … and some other things I haven’t quite got round to yet.

So whats next? Well I will be adding some more blogs about Cloud Strategy and implementation over the next few weeks. That will keep me pretty busy.

The site is a little ugly and bare so it will need some improvements.

I will also be writing a Cloud 101 so if there are references in here that don’t make sense or you are a Cloud beginner, I will have something useful here in the near future.

In the future I hope to use to Lambda collect and display comments (you will notice that at this time you can’t comment. If you want to contact me you can now leave a message on our contact page.

Contact Page