Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides ›...
Transcript of Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides ›...
![Page 1: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/1.jpg)
GitOps, Jenkins & Jenkins XTracy Miranda, Director of Open Source Community | CloudBees
[email protected] | @tracymiranda
@tracymiranda
![Page 2: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/2.jpg)
What is DevOps?
@tracymiranda
![Page 3: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/3.jpg)
DevOps is the new legacy
@tracymiranda
![Page 4: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/4.jpg)
Cloud Native Technologies
• On demand self-service
• Broad network access
• Resource pooling
• Rapid elasticity
• Measured service
![Page 5: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/5.jpg)
DORA State of DevOps
Reports
@tracymiranda
![Page 6: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/6.jpg)
The Science of Lean Software and DevOps
@tracymiranda
![Page 7: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/7.jpg)
Building and scaling high performance technology organisations
@tracymiranda
ThroughputFrequent deployments
Low lead time from commit to deploy
StabilityFast mean time to recovery (MTTR)
Low change failure rate
![Page 8: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/8.jpg)
GitOps
@tracymiranda
Operation by pull request
Git as the single place where we operate
All changes are observable
![Page 9: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/9.jpg)
https://www.weave.works/blog/what-is-gitops-really
@tracymiranda
![Page 10: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/10.jpg)
@tracymiranda
![Page 11: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/11.jpg)
Jenkins
@tracymiranda
![Page 12: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/12.jpg)
JENKINS
PIPELINE
JENKINS
EVERGREEN
CONFIGURATION
AS CODE
CLOUD NATIVE
JENKINS
JENKINS X
![Page 13: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/13.jpg)
CONFIGURATION AS CODE
![Page 14: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/14.jpg)
WHAT IF …
C O N F I G U R AT I O N A S C O D E
You can apply a sane change control
practice to Jenkins configuration?
Jenkins stops being a snowflake?
You can safely roll back a failed upgrade?
You could cookie cutter lots of
identical Jenkins instances?
![Page 15: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/15.jpg)
jenkins:
securityRealm:
ldap:
configurations:
- server: ldap.acme.com
rootDN: dc=acme,dc=fr
managerPasswordSecret:
${LDAP_PASSWORD}
cache:
size: 100
ttl: 10
userIdStrategy: CaseSensitive
groupIdStrategy: CaseSensitive
![Page 16: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/16.jpg)
1
This is
happening
Launch Docker container withsaid config file
![Page 17: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/17.jpg)
Getting Started with config-as-code
• https://www.praqma.com/stories/start-jenkins-config-as-code/
![Page 18: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/18.jpg)
@tracymiranda
![Page 19: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/19.jpg)
@tracymiranda
![Page 20: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/20.jpg)
JENKINS X
![Page 21: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/21.jpg)
COMMON PLATFORM IN ALL CLOUDS
AWS, Microsoft Azure, Google Cloud
Platform, OpenShift, Cloud Foundry
FUNCTIONALITY
Cluster scheduler, service discovery,
load balancer
EXTENSIBILITY
NEW Cloud Operating System
![Page 22: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/22.jpg)
You can have fun
tinkering
![Page 23: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/23.jpg)
Or you can just get
productive
![Page 24: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/24.jpg)
Jenkins X Vision
Figure out the best practice of how to CD cloud native appsNot just build and test, but review, promote, changelog, collaborate, etc.
Integrate best of breed software in this ecosystem to achieve it
Democratize it by building a pleasant CLI that represents high-level
steps
Be opinionated on how to do things
Kubernetes is a means to the end
![Page 25: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/25.jpg)
@tracymiranda
![Page 26: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/26.jpg)
@tracymiranda
![Page 27: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/27.jpg)
@tracymiranda
![Page 28: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/28.jpg)
@tracymiranda
![Page 29: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/29.jpg)
Best Practice We Preach
Use cloud to develop, keep your
laptop for what it needs to do
Promote apps through
multiple environments
GitOps: deployment should be
recorded and tracked in Git
Develop/collaborate changes in PR,
review/test before merge
Keep master always releasable
Inform other people about
where changes are
Deploy often and in small increments
![Page 30: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/30.jpg)
Wrap-up
![Page 31: Jenkins Jenkins X & Gitops - JAX London › wp-content › uploads › slides › Gitops__Jenkin… · Building and scaling high performance technology organisations @tracymiranda](https://reader036.fdocuments.in/reader036/viewer/2022063001/5f1a18bb7069f3098a02a130/html5/thumbnails/31.jpg)
Conclusions
• Configuration as code is a best practice to follow.
• If you are using cloud native technologies, GitOps has essentialtechniques and practices to help you go faster without costing you stability.
• There are some problems your tools won’t fix, for everything else there’s Jenkins X.
@tracymiranda