This presentation is to reflect on the amazing advancement of the open source community in the field of Cloud Computing and how does it now allow us to build reliable software components quickly within truly agile infrastructure.
2. Dynamic 21st
Century
2001: People were excited about the internet but most software shipped on CDs
Internet was revolutionising computing
Mainly because of the companies like Google and Amazon, the technology we now
call “cloud computing” was becoming a reality
2006: Amazon Web Services (AWS) came into existence and API access to compute changed
everything
2007: Heroku (built on AWS), automated application deployment
2008: Google App Engine
2010: Cloud Foundry and OpenStack
2014: Cloud Foundry Foundation (CF) was established making the open source Cloud
Foundry project a recognised standard for platform as a service (PAAS), making it faster
and easier to build, test, deploy and scale applications, crucially considering operations
and enabling continuously delivery of anti-fragile microservices with agility. Over 40
members of the CF now contribute to the project, including Pivotal, EMC, GE and IBM.
3. Continuous
Delivery
Agile engineering brought us automated
test driven development, continuous
integration, pair programming, small
releases and rapid iterations but it did
NOT solve deployment and operations.
Continuous delivery comes to the rescue
and solves these problems by enforcing a
truly agile infrastructure
4. Continuous
Delivery (cont’d)
It’s not easy to implement. Technically highly advanced and established IT team of
developers and operators are needed to efficiently collaborate and:
Externalise environment specific configuration
Recreate environments frequently a.k.a servers are not puppies
AUTOMATE EVERYTHING i.e. tests, builds, deployments, database changes
Deploy less but often
Engage in continuous improvement of processes and continue to strive to perfect them
CF PAAS makes it easier to achieve it:
Get a new environment in seconds and have complete consistency between
environments
Inject environment specific configuration and external dependencies
Automate build and testing
Automate deployments with zero downtime
Scale on-demand
5. E.g. Pivotal CF (A
Commercial Edition) Offers
Automatic application server and OS configuration (i.e. purpose built containers)
Application containerisation & cluster scheduling
Application network security groups
Plug and play generic services e.g. Databases, Build Continuous Integration (CI
e.g. Jenkins Enterprise), Messaging and many more. And extensibility to allow
for custom services
Application health, management, load balancing, rapid scaling and availability
zones (automatic failover)
Policy, identity and role management
IaaS provisioning, scaling and configuration
logging as a service, application metrics & performance, and metric based
scaling
Developers develop. Operations operate/monitor. Business makes business decisions. And Pivotal
CF does the rest
6. This is just the beginning. Revolution driven by
the open source community is set to continue
Let us explore how a Pivotal CF PAAS enhances development experience,
adds operational agility and continuously delivers to the business
7. Developers
1. $cf login
2. $cf push
3. View logs and events for monitoring as
needed using CF command line
interface or the web console
4. That is it! Really
Deploy & Monitor
Note: Deployed app can then be added to the CI build for automated deployment. And from here on its all about writing code, its unit and
integration tests and committing it to the repository
8. Operations
The old operations way New Pivotal CF operations way
1. Get the metal ready OR contact
Data Centre for a VM provisioning
2. Install runtime and container
3. Install services e.g. database,
messaging, etc.
4. Setup load balancing, SSL
termination and dynamic routing
5. Setup/config/cluster high
availability
6. Setup monitoring
7. Setup log streaming
8. App deployed (3 weeks later)
9. Not to mention upgrades, scaling,
maintenance etc.
1. Developer —-> $cf
push
2. App is deployed
(minutes ,
sometimes seconds
later). Scaling a
click away and
nothing to worry
about maintenance
Developer —-> Deploy to Dev
9. Operations (cont’d)
Click to install
No downtime updates
Explore install logs
Click to scale the platform
Built-in high availability
Built-in platform monitoring
Integrated services
Policy, identity and role
management
All operator concerns addressed by Pivotal CF Ops Manager
10. Other CF PAASes
Pivotal CF: VMware vSphere
OpenStack
Amazon Web Services (AWS)
Google Cloud Platform
11. App developers can be far more
successful when they are supported
by a truly agile infrastructure with
least hurdles. CF helps operations
provide them with that support using
a standardised PAAS that makes
continuous delivery look easy
allowing the business as a whole to
focus on the real business.