Enterprise level cloud CI
-
Upload
squadex -
Category
Technology
-
view
30 -
download
0
Transcript of Enterprise level cloud CI
Enterprise-level Cloud CI
January 2017
Enterprise-level Cloud CI
1. Whom it may benefit2. The problem (or problems) with CI in a multi-project company3. Solution architecture: Container Clouds, Microservices, Provider agnosticism4. Pipeline-as-a-Code on top of Infrastructure-as-a-Code5. Demo6. Current state of tools and technologies
Agenda
Enterprise-level Cloud CI
Whom it may benefit
January 2017
● DevOps engineers, build/release engineers, architects, CTO
● Businesses: Big enterprise and mid-size/multiple project development
● Applications: Big back-end
Enterprise-level Cloud CI
Problems
● Big number of projects, each with its own governance and culture● The need for unification but open to customizations● Scaling and Elasticity● Limited number of DEV/Test environments● Support and maintenance/Can developers really support the
process?
January 2017
Enterprise-level Cloud CI
Usual ways people do it
1. Teams own their own CIs and their own delivery process
2. Most people got at least to using same infrastructure like Private Clouds
3. Or buying a huge proprietary solutions with cost of a small space mission
Enterprise-level Cloud CI
The solution: let’s build it!
The building blocks you know and like:
Kubernetes - Private Container Cloud, runs docker, contributed by Google http://kubernetes.io/
Jenkins - open source automation server https://jenkins.io/
mAny Clouds - AWS, Google, OpenStack, Azure
Enterprise-level Cloud CI
Key points
● Build runs in Container Cloud (Kubernetes)● Infrastructure-as-a-Сode starts from the first DEV environment● Pipeline as a code gives power and flexibility to developers, keeps unification
or DevOPS/OPS● Unlimited number of DEV/Test environments / Environment for each commit● Move to shipping containers into Production instead of binaries● Integration with everything: Tickets, Dashboards
Enterprise-level Cloud CI
Build in Container Cloud: Kubernetes plugin
● Adds Kubernetes as a Cloud Provider in Jenkins
● Flexible Configuration: separate Jenkins Agents for each build configuration, Kubernetes namespaces, resources limits
● Jenkins Agents Dynamically created and deleted
January 2017
Enterprise-level Cloud CI
Benefits
Hosting agnostic: AWS,GCE, OpenStack1
2
3
Build Agent in container starts much faster than in VMs
Build isolation in containers - much easier
Enterprise-level Cloud CI
Infrastructure-as-a-Сode for DEV/Test world: Microservices
Enterprise-level Cloud CI
Infrastructure configuration is in the source codeDockerfile: Kubernetes config:
Enterprise-level Cloud CI
Benefits
Unlimited number of DEV/Test/Stage/UAT Environments, for each branch, for each build
1
2
3
No overhead for Virtualization (VMs vs. Containers)
Gets overall process ready for moving to containers in Production
Enterprise-level Cloud CI
Integration with everything
Enterprise-level Cloud CI
Pipeline as a code: the slide everybody copy-pastes
Enterprise-level Cloud CI
Some description
● Written in Groovy-based DSL
● The code is stored with the project's
source code
● So version of the pipeline is always in
sync with version of the application
January 2017
Enterprise-level Cloud CI
Implementation
(demo time)
Enterprise-level Cloud CI
How it affects process and culture
● Move to service model between the teams(Dev - DevOPS - OPS)
● Higher people's mobility between projects and teams
● Closer integration with Production system - a very logical path to Continuous Deployment
● Decoupling people and teams from limited number static environments, hence increases speed
of QA and delivery.
Enterprise-level Cloud CI
Is it production ready?
and other questions...
Enterprise-level Cloud CI
Don’t be afraid of emerging methods & techniques -
Jump onto the next band-wagon!
www.squadex.com
125 University Avenue,
Suite 290, Palo Alto,
California, 94301
Questions, details?We would be happy to answer!