Different Parts of the Cloud
There are many ways to build a Cloud and there are also various levels of clouds.
Before we get too deep, we should look at the key Cloud Advantages to look at the why to then implement using Path to Cloud.
Driving Cloud Concepts
Elasticity - to grow and shrink as needed.
Table Legendb
Colour | Note |
---|---|
De Facto Leader Emerged | |
Immature |
This table aims to cover the key aspects and list various options from top down.
Component | Why You Need It | What Does it Do | Driving Cloud Concept | BonsaiFramework Pick | Popular Options |
---|---|---|---|---|---|
Synthetic Monitoring |
| ||||
Health Check | |||||
System Monitoring | |||||
Application Insight Monitoring | Look inside the code to determine performance and support Production problems inside the code. | n/a | Microsoft Azure - Application Insight (free and poweful) Dynatrace was previous winner for stand alone. |
| |
DOS and DDOS Mitigation | There is some argument that going true cloud no longer requires this. I'm not convinced. | n/a | Akamai. However, for smaller implementations Cloud Provider built-in services may be enough. |
| |
Customer Caching | Take load off of your system. | Elasticity | Akamai. However, for smaller implementations Cloud Provider built-in services may be enough. |
| |
Orchestration of Containers & Service Discovery | Unified view and control of containers who should hook themselves up and configure to the larger group. | Elasticity |
| ||
Application Packaging | Means to create application packages and manage centerally. | ||||
Software Defined Network | Infrastracture as Code. | Cloud Provider Module or Container Technology |
| ||
Virtualization Cloud Provider | No point in running the hardware and base OS yourself. Instead use a provider that will take care of auto-scaling hardware, providing IP addresses, storage and a network infrastructure. Bonus points for instituted caching and monitoring. ++ Bonus points for an proven CICD system. Some of the Bonus items you can implement yourself and are documented higher in this stack. | n/a | At the moment (2016) Microsoft Azure for ease of use. |
| |
Environment Configurator | If you have lots of integration points, centralizing one place to configure those small differences suddenly becomes cost effective. This is not actually service discovery (though having it helps immensely) | Remove infrastructure dependency. |
| ||
Continous Testing | |||||
Continuous Deployment | When build completes auto deploy and hook up. |
| |||
Continuous Build | Building Application Virtualization from Recipes. Think entire ecosystem (not just code) is built from recipes. |
| |||
Source Control for Code | GitHub |
| |||
Packer | |||||
Centralized Log Aggregation and Alerting | Simplification of adapters to be pipeline will likely emerge as part of Cloud Providers and container technology. | Remove infrastructure dependency. | Splunk | ||
Application Caching System | Lots of noSQL databases in this space. | ||||
Messaging System | Guarantee delivery and integrity of key transactions across systems. | Depends on your specific messaging needs. Will break this up later. |
| ||
Application Virtualization | Microservices concept of running ephemeral containers at the focusing on escapulating a single immutable application. |
| Docker |
| |
Building Operating Virtualization from Recipe | Build from recipe. |
| |||
Optimized Operating System for Containers | Newish concept of lightweight transactionally updated operating system. Solaris had the transactional aspect a whle back. |
| |||
Distributed Operating System for Containers | Similar in concept to what Hadoop technology solves for databases. | Elasticity |
| ||
Operating Virtualization | I would put this to a specific use case and it can greatly reduce costs (explain here). | LXD (LXC) |
Research
To watch this video - https://mesosphere.com/product/
Rackspace now provides consulting and support to build your own private cloud on OpenStack - http://www.rackspace.com/cloud/private_edition/
Rackspace even provides their Reference Architecture online - http://www.referencearchitecture.org/
Ubuntu has a program called Jumpstart for $9,000 for 5 days to help you build your own private cloud with UEC (Ubuntu Enterprise Cloud) previously powered by Eucalyptus now powered by OpenStack at http://www.ubuntu.com/cloud
This might be a worthwhile setup tutorial - http://cssoss.wordpress.com/2011/04/27/openstack-beginners-guide-for-ubuntu-11-04-installation-and-configuration/
https://mesosphere.com/ - Dickson recommended
https://www.ansible.com - Dickson recommended
Best Practices for Cloud from IBM - http://www.ibm.com/developerworks/websphere/techjournal/1404_brown/1404_brown.html
Cloud Infrastructure design strategies - http://realscale.cloud66.com/cloud-server-scaling-strategies/