2. Who am I?
Miguel Fonseca
Linux Application Engineer at Blip.pt
Contributor at Fedora Project
@miguelcnf
linkedin
twitter
github
...
3. How and Why DevOps appeared?
DevOps tries to fix mentality problems
- Siloisation
- It works on my machine
- Fear of change
- Risky deployments
The movement really started being noticed
- DevOpsDays Ghent '09
- Patrick Debois
http://www.devopsdays.org/events/2009-ghent/
4. How things used to be
Big independent silos!
Big software deliveries!
Big delivery intervals!
Lots of headaches on qa!
Lots of fights between dev and ops teams!
Lots of headaches on release!
Lots of bugs found in production!
Lots of outages!
Huge time to recover!
5. How devops hopes to be
Small collaborative teams!
Small software deliveries!
Small delivery intervals!
No headaches on qa!
No fights between dev and ops teams!
No headaches on release!
No (Errr...) bugs found in production!
No (Errr...) outages!
Minimal time to recover!
6. Mentalities needs to change
Bridge the gap between dev and ops teams!
You know you've nailed it when you hear:
- Ops asking Devs what does that http call does behind
the hood?
- Devs asking Ops how high should the http timeout of
that one call be?
7. Workflows need to change
Agile goes hand in hand with DevOps
- Developers love Scrum
- Operations love Kanban
Continuous Delivery Pipelines
- Devs are able to perform integration testing
- Ops make sure apps work on production-like systems
8. Tools need to change
Automated Testing
- We still need manual QA
Infrastructure as Code
- No manual changes
Sandboxes
- Quick/Complex validations
Much more...
9. DevOps at Blip.pt
Build web and mobile applications
Agile methodologies
Continuous delivery
Multiple technologies
- HTTP is king
- Java backend
- Javascript frontend
- NoSQL storage and caching
- Linux everywhere
- Python for the cool kids
Uptime is mandatory
12. Key tools at Blip.pt
Build Pipeline
- Unit testing
- Smoke testing
- Integration testing
- Send out build reports
- Show your pipeline on the big screens
- Package your software
13. Key tools at Blip.pt
Infrastructure as Code
- Configuration management systems
- Version control
HEAD goes to dev pipeline
prod gets latest STABLE
- No manual changes
14. Key tools at Blip.pt
Toggles and Throttles
- Select which environment get a new feature
- Features into prod before they're live ready
- Use live data to test new code
- Enable a new feature for a % of users
- Block an ilegal feature in a country
- Disable a troubling feature without releasing
15. Key tools at Blip.pt
Fast and Hot Releases
- Load balancers are a must
- GSLB really comes in handy
- Canary releases are cool
- Dark deployments are essential
16. Key tools at Blip.pt
Traffic Distribution and Monitoring
- Load balancers
+ Least connection, round-robin, etc.
- Code smart endpoints to check your app by standard
http calls
- Multi-location external monitoring
+ By-page monitoring
+ Always monitor response times
- CDNs are needed but can be tricky
17. Key tools at Blip.pt
Expose and Analyse Metrics
- Save your metrics for as long as you can
- Generate pretty graphs with it
- Use it wisely
+ Detect tendencies before problems
+ Expose problems within the systems
18. Key tools at Blip.pt
Automate Log Analysis
- Index your prod logs and make them available to dev
and ops
- Grep your dev and prod logs for exceptions and errors
- Make sure reports are visible to both devs and ops
19. Key tools at Blip.pt
Beer Sharing
- Devs and Ops in the pub together
+ super bock
+ fosters
+ estrella
+ desperados
+ corona
...
20. So is devops a buzzword?
Yes!
But it is so much more than that...
- Collaboration
- Focus on delivery
- Minimize change risks
- Dev and Ops working closely together
- Process automation
- Toolchain instrumentation
- Enable technology as a driver of the product