Introduction to DevOps and CI/CD
In this session, we will cover the concept of DevOps and the tools of trade.
Date: 20 February Time: 4:00 a.m. UTC
Herfiedhantya Bhagaskara
Associate Technical Manager
Cisco Confidential • Care About • Everything is stable • Standards • Templates • Not getting bothered at 2:00 am • Success • Software is stable • Backup and restore works • Systems are operating within defined thresholds Operations World
Cisco Confidential • Care About • Writing Software • Working Code • APIs • Libraries • Sprints • Success • Software works – Laptop and Test • Finished Sprint Developers World
Confidential “If you are doing quarterly releases and your competitor is doing daily releases you will fall so far behind” Adrian Cockcroft – former Netflix Architect
Cisco Confidential Gene Kim - author of “The Phoenix Project” and the “DevOps Handbook” “[DevOps is] a set of cultural norms and technical practices that enable this fast flow of work from dev through test through operations while preserving world class reliability”
Confidential • Organization can never have enough information to understand how to do better in the marketplace. • The more we experiment, the more information we can gather • Solid Information leads to improved strategy and benefits our customer as well as the business. Improve Ability to Respond and Shift
Cisco Confidential What is a Microservice? • A small and focused piece of software • Stateless loosely coupled • Language and technology independent • Highly scalable and fault tolerant
Cisco Confidential Better aligning to the Dev and Ops of DevOps • Puppet, Chef, Ansible are popular with Ops but not Devs • Containers are equally popular with both • Containers create a natural segmentation of effort • Devs inside the container, Ops outside the container The Impact of Containers on DevOps
Cisco Confidential • Guaranteed consistency for CI/CD • Simplified light weight image files • Only what the app needs and nothing else • What is built on a laptop will work the same in production • Open community built best of breed containers • Public container repository - Docker Hub • SPEED • Deploy in seconds instead of minutes The Impact of Containers on DevOps
Cisco Confidential • Open Source system started by Google in 2014 for automating deployment, operations, and scaling of containerized applications • Written in Go (aka golang) • Portable • Public, Private and Hybrid • Extensible • Modular, Pluggable • Self-Healing • Auto-scaling, Auto-replication • Contributed to CNCF in July 2015 What is Kubernetes (K8S) ?
Confidential • Place to store your current and past versions of code/configuration • Ability to merge, branch, fork • Ability to see who has changed which file • Highly available service • Ability to revert to prior versions • Public or Private / OnPrem / OffPrem • Source Code Management / Version Control System
Confidential Infrastructure as Code Management of infrastructure (networks, virtual machines, load balancers, and connection topology) in a descriptive model, using the same versioning as DevOps team uses for source code
Confidential • Integration with Development Environment • Code commits should appear • Chat with History • Team Rooms • Multi-Platform Clients • “Chat-Ops” Collaboration, Communication and Sharing
Confidential • Continuous Integration: Merging of development work with code base constantly so that automated testing can catch problems early • Continuous Delivery: Software package delivery mechanism for releasing code to staging for review and inspection • Continuous Deployment: Relies on CI and CD to automatically release code into production as soon as it is ready. Constant flow of new features into production Continuous Integration, Delivery, and Deployment