We the people of the United States, in order to form a more perfect union, establish justice, insure domestic tranquility, provide for the common defense, promote the general welfare, and secure the blessings of liberty to ourselves and our posterity, do ordain and establish this Constitution for the United States of America.
In times of profound change, the learners inherit the earth, while the learned find themselves beautifully equipped to deal with a world that no longer exists. - Eric Hoffer
Services (stateful): Run in virtual machines Applications (stateless): Run in containers A (narrow) Artificial Intelligence that manages transformations between existing and desired system states, using immutable infrastructure. Amend (Re)deploy (Re)configure (Re)connect Monitor Current State Desired State def: Platform
Cloud Native Framework Contract: 12 Factor App Contract: BOSH Release Contract: Cloud Provider Interface Culture Dev Dev IT Ops Tools Spring Cloud Spring Boot Cloud Foundry BOSH AWS VMware OpenStack Application Framework Runtime Platform Infrastructure Automation Infrastructure IT Ops IT Ops
1 Spring Cloud Spring Boot Dev Spring Boot From 0 to app in < 5 min Spring Cloud Designed for fragile infrastructure in partnership with Netflix Application Framework
2 Infrastructure Automation Infrastructure BOSH AWS VMware OpenStack manage services not servers zero downtime no maintenance windows infra as code multi cloud support IT Ops IT Ops embedded OS
All changes, even the most longed for, have their melancholy; for what we leave behind us is a part of ourselves; we must die to one life before we can enter another. ~Anatole France
• Micro-service Architecture and Principles • API first design Cloud Native • Design for failure • Apps are unaffected by dependant service failure • Proactive testing for failure • Metrics and monitoring baked in • Cloud agnostic runtime implementation Cloud Resilient • Twelve Factor App • Horizontally scalable • Leverage platform for HA Cloud Friendly • No file-system requirements or uses S3 API • Self contained application • Platform managed ports and addressing • Consume off platform services using platform semantics Cloud Ready Cloud Native Maturity Model
Application Lifecycle Management: CI/CD Delivery High Quality Software, Faster and Continuously From Idea to Production Solution: Distributed revision control and source code management. Collaborative software development Solution: Build and test software projects continuously and incrementally. Hundreds of compatible plugins Solution: Share binaries and manage distributions. Manage artifact lifecycle. Avoid license violations Develop, test, QA and production on the same platform. Simple, developer friendly commands and APIs. Operational benefits for every app. Built-in ecosystem services. Deploy, operate and scale on any IAAS AUTOMATION. Integrate tools and automate processes from testing to builds and deployment SPEED. Release more frequently with smaller bits will reduce complexity and improve time-to-market QUALITY. Reduce feedback loop using test- driven development to surface problems sooner and be responsive AGILITY. Push updates on regular basis with no downtime to improve customer experience and time to market Commit Code Change Automate Build & Test (Unit Test, Static Code Analysis) Store Binaries & Build Artifacts Automated Integration Testing Acceptance, Performance & Load Zero Downtime Upgrade to Production Build Pipeline Operations Tool Chain Gitlab Jenkins Development Test + UAT + Staging Production Problem: Customers want to use Git distributed source code control system, yet maintain on-premise control of it Problem: Current application delivery pipeline is manual and error-prone, and lacks automation, scale, speed, transparency, compliance and reliability. Problem: Development requires management of binary artifacts to incorporate 3rd party components and track application binary artifacts