Java Agile ALM: OTAP and DevOps in the Cloud Releasing the Cloud potentional in Application Development Bas van Oudenaarde 14 dec 2012, OSC2012
Nov 11, 2014
Java Agile ALM: OTAP and DevOps in the CloudReleasing the Cloud potentional in Application Development
Bas van Oudenaarde14 dec 2012, OSC2012
Agenda• ‘whoami’
• History, why Cloud?
• Challenges
• VX Factory
• Development needs
• Agile ALM - DevOps
• Soweto SaaS case
• Future / wrap up
Introduction
• Bas van Oudenaarde
• Technical Manager Enterprise Open Source Solutions / Java at VX Company
• Determine roadmap for development / Consultancy
• Special interest: App development, Cloud and DevOps solutions
• 15 years IT experience
! Wat$doen$we $ $IT$Dienstverlening$! Sinds $ $ $1988$! Waar $ $ $Baarn$$! Aantal$professionals$ $200$! Omzet$2011 $ $€$34$miljoen$! CerEficaEe $ $ISO$9001$! Computable:$$$‘ICTLdienstverlener$van$het$jaar’$2012$
$ $ $ $ “VX Company het bedrijf waar ik zelf graag wil werken”
Applica'on*Services*
Oracle*
Java*
Microso3*
Mobile*
Infrastructure*Services*
Microso3*
Enterprise*OSS*
Managed*Services*
IT=Management*Services*
Service*&*Project*Management*
Tes'ng*Services*
External*Resources*
VX Company
History, why Cloud infrastructure?
• Let me take you back to end 2010...
• Customer request: Build an infrastructure + application which runs most of the time on 10% of the needed hardware, but could scale up when needed
• BTW: How much experiences do you have? (real business, no prototypes and no toy examples, no ideas -> real proof)
• Big events...
• Competitions betting on winner, dutch: “pooltje”
• on demand infrastructure before week of event start, scale up
Meanwhile @VX...
• Time to Market: How quick can we start with a new project?
• Network capacity to Internet (more projects, more bandwidth needed)
• Storage of older projects, run out of SAN every year
• Flexibility, combinations of different systems / other tooling
Needed...
• Time to market (T2M): start of new projects #hours, not #weeks!
• Flexible: network constrains, firewall rules, network config
• Investment (TCO): What if project is finished?
• Maintenance of the Development infrastructure and tooling?
• Quality of Service (QoS) improvement
? Cloud Silver Bullet ?
Define Cloud (computing)...
“Cloud compu*ng is a model for enabling convenient, on-‐demand network access to a shared pool of configurable compu;ng resources (e.g., networks, servers, storage, applica;ons, and services) that can be rapidly provisioned and released with minimal management effort or service provider interac;on. This cloud model promotes availability and is composed of essen;al characteris;cs, deployment models, and various service models.”
(according: Na-onal Ins-tute of Standards and Technology (NIST))
source: IBMResource sharing, how can we control crosstalk and share on the highest possible level?
Challenges...
5 Criteria of Cloud Computing
• On-‐demand self-‐service• Resource pooling• Network access• Scale Up/Down -‐ on demand• Measured Service (e.g. "Chargebacks")
Myth #1: I'm hos-ng my instance so we're on on the 'Cloud’Myth #2: We're using VMWare, Xen, etc. so we're using the Cloud
Focus
• Looking for PaaS / SaaS level Cloud services
- Benefit maintenance -> patches, keep up to date
- Right people with expertise doing the right job
• Focus on core business: Software Development
OTAP
Factory in the CloudVXtechnogolgy partners
Controle plane hub
Development Needs
Document Management(Confluence, wiki)
Configuratie Management(Git, SVN)
Issue Management(Jira)
Atlassian provides SaaS Solution
Step 1:Minimum foundation for controlled software development
Step 2:Getting Feedback, quality check on code changes...
provides Jenkins PaaS solution -> ‘buidling’ jobs portal
Continuous Integration buildsContinuous Quality buildsContinuous Delivery ‘Deploy everywhere’
Agile Application Lifecycle Management
eco system
...
Deployment environments...
• Enterprise versions of JBoss AS (EAP)• Very rich development frameworks• Easy hook in development tooling• NoSQL solution -> mongoDB
• Mature• Many possibilities to control infrastructure • Different stacks, data solutions
...many more possible Cloud Solutions
...on premises deployments or hosted deployments
Cloud Computing Scan Solution• Get Current • Get Cloud Ready Determine Cloud Ready status
- Using decision-tree for target Cloud run-time environment- Feasible? technical / budget-wise - Taking steps: upgrade, changing interfaces
• Get Cloud Managed Migrate to target Cloud
- App migrations- Database migrations- Monitoring in place- Integration with development (Agile ALM)
Agile ALM
One small change...h"p://www.flickr.com/photos/laszlo4photo/1899390628/<
Could have a bigger impact in the total...
Agile ALM
Deming circle ’50
-Not only on the development phase, but the on complete Application Life cycle-Small steps: control risk and complexity-Quick iterations -> Feed back to adjust plan!-Many steps will build your solution
One problem...
The ‘gray’ area
Dev Ops
DevOps• Dev meets Ops -> See infrastructure as code treat it the same way
-> Don’t lean on Ops just act, scaling is also your responsibility
• Ops meet Dev -> Give a part of your control plane away: API
within certain boundaries! Still in control
-> More into the Cloud, we still need control:
e.g. stack Paas on PaaS
• Teaming to get the job done, e.g. security don’t stop at boundaries it goes from infra up to App space
• Use Agile everywhere, small steps to improve (use feedback loop)
MeasurementReal time monitoring, Running over different Clouds,Again many Cloud solutions available
Agile ALM / DevOps Scan Solutions
• Get Current -> Scanning for improvements
• Determine first steps to start with
• Not a one fit all !
• Not only in automation, also in processes and team spirit
First App through VX Factory
Soweto Care is about...
• TODO: ... explain more of field ...
• non-governmental organizations (NGOs)
• Charity project developed by VX, started as desktop application
- Spent a lot of time to keep it up & running due to virus, theft, lack of backups ect.
• 2011 completely refactored and build with new VX Factory (ultimate test)
Cloud benefits for Soweto Care
• Control plane let different people (on their Demand) do the job:
- Business Analyst gets Acceptance Test version deploy on AWS
- Business Analyst clicks at the button and deploys on production
• Easy International cooperation around the globe
• http://www.cloudbees.com/case-study/vx-company.cb
Recap• New architectures driven by Mobile Applications
• More SaaS based application,
- Scaling on demand
- Different data manipulation, which scales eed for NoSQL solutions
- Integration in the Cloud
• Cloud Solutions are out there to help!
- Innovation
- parallelism, scaling, T2M, TOC
Innovation
Future...• More interoperable Clouds
- No more Cloud locking, especially SaaS solutions are killing
- ecosystems are helping for now
• Standardization
- Security (AuthN / AuthZ)
- Control API
• It will be easier!
Red Hat CloudformsOpen Stack...
The End