Intro Flashcards
What is Devops
A cultural amd professional movement that stresses communication, collaboration and integration between software developers and IT operations professionals while automating the process of software delivery and infraestructure changes.
It aims at establishing a culture and environment where building, testing, and releasing software, can happen rapidly, frequently, and more reliably
Keys from the definition of devops
Core messages:
Cultural
Professionalism
Communication
Collaboration
Automation
Speed and frequency
What DevOps is not
It’s not a title nor a team.
It’s not just a tool.
It’s not only culture
It can’t be reduced to just automation
It does not mean that developers can do whatever they want
What are the goals of DevOps
- Smaller, mor frequent releases
- Reduced effor and risks
- Reduced cost of product iterations and delays
- A culture of communication and collaboration
- Consistency and speed through automation
What are the improvements DevOps brings?
- time to market
- integration with the business
- Responsiveness
- Code and deployment quality
- Productivity
- Visibility
- Agility
NoOps or NewOps
While automation is the goal of NoOps, there will always be a need for human competencies and roles, like managing the operational automation, designing, implementing, and managing internal and external infraestructures and enterprise architectures.
Migratino to the cloud does not signal the end of Ops. The role of Ops is evolving as much as the role of Dev.
DevOps Values
- Culture. Relates to the people and processes aspects of DevOps and the need to improve communication and collaboration. Without the rigth cultureautomation attempts will be fruitless.
- Automation. Tools that enable automation are important aspects of DevOps.
- Lean: maximizing customer value while minimizing waste and improving flow
- Measurement: If yo can’t measure, you can’t improve.
- Sharing: Is the feedback loopback
Autoamtion is essential
Automation enables agility, consistency, speed and realiability.
Automation and Toochains help increase the speed and consistency of IT delivery.
Inconsistency in tools, frameworks, and methodologies are the enemy of broad, enterprise-wide DevOps success
DevOps stakehoders
Dev includes all the people involved in developing software products and services. Product and project managers are here.
Ops includes all the people involved in delivering and managing software products and services.all administrators are here.
DevOps improves Cadency and Velocity
Every business has become a tech business.
Customers value outcomes, not products.
Time to value is replacing time to market
Golden Circle
Simon Sinek, 2009.
Three circles: Why, How, What.
Why: Purpose, cause, belief, the reason the org exists.
How: What sets the organization apart.
What: Product and services.
Business Value of DevOps
Companies with high IT performance are twice as likely to exceed their goals.
Value is defined by the customer. IT must contribute to the business value stream
Challenges of IT in DevOps
Internal:
IT must go faster without risking quality
IT’s silo culture is constraining the value stream
Prior investments (ITSM, Agile, Automation) aren’t delivering end to end value.
Wall of Confusion
Devs want change, Ops want stability
DevOps is a response to the growing awareness that there is a disconnect between what is traditionally considered development activity and what is traditionally considered operations activity.
What does the business want?
Equilibrium between extreme focus on change, quality and extreme focus in stability
Top 5 predictors of IT performance
- Peer-reviewed change approval process.
- Version control for all production artifacts.
- Proactive monitoring.
- high-trust organizatinoal culture.
- Win-win relationship between Dev and Ops.
The Three Ways
- Flow. Understand and increase the flow of work (left to right)
- Feedback. Create short feedback loops that enable continuous improvement.
- Continuous experimentation and learning. Create a culture that fosters them.
The First Way: Flow
Increase flow by understanding and removing constraints.
Never passing a known defect downstream
Never allow local optimization to cause global degradation
Achieve profound understanding of the entire system
Theory of Constraints
A methodology for identifying the most important limiting factor that stands in the way of achieving a goal and then systematically improving that constraint unitl it is no longer the limiting factor.
Every process has at least one constraint or bottleneck that affects its ability to consistently meet its goal.
The Process will only meet the capacity of its constraints and will be only as successful as its weakest link.
Improving constraints is the fastest and most efficient way to improve the entire process or system.
Common Constraints
Development delays.
Environment creation.
Code deployment.
Test setup and run.
Security or QA assessments.
Overly tight architecture.
Product management .
Complex or bureaucratic processes.
The Second Way: Feedback
Understand and respond tot he needs of all customers, both internal and external
Shorten and amplify all feedback loops.
It stresses the importance of right to left feedback
Without feedback teams lack the information needed to continuosly improve.
Examples of feedback loops
Automated testing.
Peer review of production changes.
Monitoring/Event management data.
Dashboards.
Production logs.
Process measurements.
Post-mortems.
Shared on-call rotation.
Change, incident, problem and knowlwedge management data.
The Third Way: Continual Experimentation and Learning
Allocate time for the improvement of daily work.
Create rituals that reward tje team for taking risks.
Introduce faults into the system to increase resilience.
Plan time for safe experimentation and innovation.
Simian Army / Chaos Monkey
Simian Army was adopted by Netflix as a service that randomly terminates a production instance.
Response to attacks helps to build competencies to recover the productino environment from inevitable failures
Chaos Monkey is a service that identifies groups of systems and randomly terminates one of the systems in a group. It runs only in business hours with the intent that engineers will be alert and able to respond.
Encourage a learning culture
Create a learning culture is critical to sustain growth and innovation
Encourage daily learning and knowledge sharing
Create training and skills-based education plans
Incorporte learning into processes
Use technology to accelerate learning
Make work educatinoal through experimentation, problem solving and demonstrations
Allow and use mistakes as sources of learning
Make the results of learning visible