Different Parts of the Cloud
There are many ways to build a Cloud and there are also various levels of clouds. 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 |
---|---|---|---|---|---|
Monitoring | |||||
Health Check | |||||
DOS and DDOS Mitigation | There is some argument that going true cloud no longer requires this. I'm not convinced. | Akamai |
| ||
Customer Caching | Take load off of your system. | Akamai |
| ||
Orchestration of Containers | Unified view and control of containers. |
| |||
Software Defined Network | |||||
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. |
| |||
Environment Configurator | If you have lots of integration points, centralizing one place to configure those small differences suddenly becomes cost effective. | Remove infrastructure dependency. | |||
Continous Testing | |||||
Continuous Deployment | When build completes auto deploy and hook up. | ||||
Continuous Build | Building Application Virtualization from Recipe | ||||
Source Control for Container Receipt | I currently have a gap here of how this would work. | ||||
Source Control for Code | |||||
Packer | |||||
External Log Aggregation | Remove infrastructure dependency. | ||||
Caching System | |||||
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 | Docker | |
Building Operating Virtualization from Recipe |
| ||||
Optimized Operating System for Containers | Lightweight transactionally updated operating system. |
| |||
Operating Virtualization | I would put this to a specific use case and it can greatly reduce costs (explain here). | LXD (LXC) | |||
Vagrant |
Research
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