SlideShare a Scribd company logo
SCALING HUMANS:
BIGPANDA'S FABULOUS
CHATOPS ADVENTURE
BY ERIK ZAADI | DEC 13, 2016
TEAM LEADER AND COMMUNITY GUY
ERIKZAADI
• Continuous Delivery
• Deploy by ssh to deploy server (AWS)
• Ran Ansible on our playbooks repository
A TALE OF DEPLOYMENT EVOLUTION
FLASHBACK TO EARLY 2014
8 deployers
5 Microservices
15 Servers
• Synchronizing - Lack of visibility
• Not reliable deploys
• Disconnections
• Debugging
• Ansible was not common knowledge
WE SIMPLY WANTED TO DEPLOY
PROBLEMS:
Bash wrapper for Ansible
NEXT STEP: LET'S MAKE IT EASY
ENTER BASH - DEPLOY.SH
DEPLOY.SH
IS
COMING
Solved:
• No Ansible Knowledge


Problems:
• Synchronization
• Not reliable deploys
DEPLOY.SH
• Wrapped SSH login with TMUX
• Used local users with symlinked
playbooks repository
• Enabled mosh
NEXT STEP: LET'S STAY CONNECTED
TMUX TO THE RESCUE
TMUX
IS
COMING
Solved:
• Not reliable deploys
• Disconnections (session)
• Debugging
Problems:
• Synchronization
TMUX AND LOCAL USERS
• HipChat bot using Hubot
• Written in CoffeeScript
• Called Beanbot
• Limited to staging servers
• Used Jenkins to run Ansible
• Could query past deploys
NEXT STEP: CHATOPS TO THE RESCUE!
HELLO THERE HUBOT!
Problems:
• Synchronization
• Lack of HipChat usage
• Almost no visibility
• Didn’t solve the production pain
• Only 3 contributors
• People really hated Coffeescript
BEANBOT
AND WE CONTINUED GROWING
THIS WAS MID 2015
15 deployers
15 Microservices
40 Servers
Slack channel:
#deployment-locks
We'd manually notify locking.
Escalated quickly to be unusable.
Stupid Humans.
NEXT STEP: LET'S SOLVE IT IN CHAT
SO, CHAT-NOT-OPS?
• Hackathon rewrite from scratch
• Robin (Hubot)
• Written in Javascript
• Using micro services standards
• Tests
• Deploys
NEXT STEP: CHATOPS TO THE RESCUE AGAIN!
FIX THE STUPID HUMANS
• Managed deployment locks
• Deployed to production (!)
• Prevented Human Errors
• Similar syntax to bash script
ZOMG TIS’S DA THINGZ
THE HYPE TRAIN TOOK OFF
• Managed using GitHub issues
• 10 contributors (~1/2 RND)
• Javascript vs Coffeescript
• Slack vs HipChat
• Hubot Scripts
• Use anything with an API
INSTANT POPULARITY GAINED
WHY ROBIN WORKED
• Integrated part of our dev cycle
30 Deployers
30 Microservices
160 Servers
~100 daily deploys and locks
TODAY
WE CAN’T LIVE WITHOUT ROBIN
Scaling Humans - BigPanda's Fabulous ChatOps Adventure - Erik Zaadi, BigPanda - DevOpsDays Tel Aviv 2016
EXAMPLES - KEEP IT SIMPLE AND SAVE HUMAN STEPS
EXAMPLES - MINIMIZE HUMAN ERRORS AND ADD CONFIRMATION
EXAMPLES - MINIMIZE HUMAN ERRORS
EXAMPLES - PROVIDE USEFUL FEEDBACK
EXAMPLES - BE QUERY-ABLE
EXAMPLES - ENSURE NAME SPACING CHATOPS COMMANDS
EXAMPLES - UNIT TEST ALL THE THINGS! CONVERSATION REGEX
TBD: SOLARIZED LIGHT?
EXAMPLES - SOLVE NON VISIBLE OPERATIONS TASKS
EXAMPLES - DON’T SPAM PUBLIC CHANNELS TOO MUCH
EXAMPLES - HELP WITH DAY TO DAY TASKS
EXAMPLES - MAKE THE USAGE OF THE BOT FUN
• Ensure deploy can work without ChatOps as well
• Reuse existing deploy process and syntax
• Run the bot both locally and on a staging env
• Make contributing to the bot fun and easy
• Company bot skeletons (allowing quick POCs)
THINGS WE LEARNED THE HARD WAY
YOUR BOT WILL BE DOWN
• SuperPanda - Groceries wish list
• Gordon - Sales and Support
• Bellboy - Opens our office door
• Splinter - Code linting rewarder
DIVIDED THEY CONQUER
MOAARR BOTS!!!1
EOF

More Related Content

PDF
20161103 Serverless Italy Meetup
PPTX
Dev-Friendly Ops
PDF
DevOps Cardiff - Puppet vs Chef vs Ansible
PDF
How Immutable Can You Get - Anton Weiss, OTomato - DevOpsDays Tel Aviv 2015
PPTX
SQL Server Features That Will Blow Your Mind!
PPTX
OpenNebula in a Multiuser Environment
PPTX
Service stack all the things
PDF
Dockercon plugins session
20161103 Serverless Italy Meetup
Dev-Friendly Ops
DevOps Cardiff - Puppet vs Chef vs Ansible
How Immutable Can You Get - Anton Weiss, OTomato - DevOpsDays Tel Aviv 2015
SQL Server Features That Will Blow Your Mind!
OpenNebula in a Multiuser Environment
Service stack all the things
Dockercon plugins session

What's hot (20)

PDF
Hashicorp at holaluz
PDF
PDF
A 5 Minute Intro To Weave - Software Circus July 2015
PPTX
Cloud Native Apps ... from a user point of view
PDF
2013 - Igor Sysoev - NGINx: origen, evolución y futuro - PHP Conference Argen...
ODP
OWASP 2013 EU Tour Amsterdam ZAP Intro
PDF
Cluster Fudge: Recipes for WordPress in the Cloud (WordCamp Austin 2014 Speaker)
PDF
Containers across Clouds - Docker Randstad, April 17th, 2015
ODP
OWASP 2014 AppSec EU ZAP Advanced Features
PDF
Conditional Logging Considered Harmful - Sean Reilly
PDF
10 Things you should know about Ruby
PDF
Dokku your own heroku 21
PDF
OSMC 2013 | Zabbix: A Practical Demo by Rihards Olups
PDF
Dokku - your own heroku
PPTX
AnsibleFest 2019 - Greenfielding Network and Systems Automation in a Large an...
PPTX
6 reasons you should program in go
PDF
Microservices Without the Hassle
ODP
2014 ZAP Workshop 1: Getting Started
ODP
OWASP 2015 AppSec EU ZAP 2.4.0 and beyond..
PPTX
Rsyslog version naming (v8.6.0+)
Hashicorp at holaluz
A 5 Minute Intro To Weave - Software Circus July 2015
Cloud Native Apps ... from a user point of view
2013 - Igor Sysoev - NGINx: origen, evolución y futuro - PHP Conference Argen...
OWASP 2013 EU Tour Amsterdam ZAP Intro
Cluster Fudge: Recipes for WordPress in the Cloud (WordCamp Austin 2014 Speaker)
Containers across Clouds - Docker Randstad, April 17th, 2015
OWASP 2014 AppSec EU ZAP Advanced Features
Conditional Logging Considered Harmful - Sean Reilly
10 Things you should know about Ruby
Dokku your own heroku 21
OSMC 2013 | Zabbix: A Practical Demo by Rihards Olups
Dokku - your own heroku
AnsibleFest 2019 - Greenfielding Network and Systems Automation in a Large an...
6 reasons you should program in go
Microservices Without the Hassle
2014 ZAP Workshop 1: Getting Started
OWASP 2015 AppSec EU ZAP 2.4.0 and beyond..
Rsyslog version naming (v8.6.0+)
Ad

Similar to Scaling Humans - BigPanda's Fabulous ChatOps Adventure - Erik Zaadi, BigPanda - DevOpsDays Tel Aviv 2016 (20)

PDF
Ransack, an Application Built on Ansible's API for Rackspace -- AnsibleFest N...
PDF
What we talk about when we talk about DevOps
PDF
Serverless On Stage - Serverless URL Shortener
PDF
How LogicMonitor Automates Deployments with Bamboo and Ansible
PDF
Infrastructure as Data with Ansible for easier Continuous Delivery
PDF
Scala Matsuri 2017
PDF
Nllug 2010-web-services
PDF
Nllug 2010 - Web-services bootcamp
PDF
MJ Berends talk - Women & Non-Binary Focused Intro to AWS
KEY
Full-Stack CakePHP Deployment
PDF
Increasing velocity via serless semantics
PDF
Midwest php 2013 deploying php on paas- why & how
KEY
Standardizing and Managing Your Infrastructure - MOSC 2011
PPTX
Ansible @ WebElement 2015
PDF
The Architect Way - JSCamp.asia 2012
PDF
Configuration manager presentation
PPTX
AWS ELB Tips & Best Practices
PPTX
Operational challenges behind Serverless architectures
PPTX
Free Mongo on OpenShift
PDF
[HKOSCON][20190615][DevOps with Ansible, From Native to Kubernetes]
Ransack, an Application Built on Ansible's API for Rackspace -- AnsibleFest N...
What we talk about when we talk about DevOps
Serverless On Stage - Serverless URL Shortener
How LogicMonitor Automates Deployments with Bamboo and Ansible
Infrastructure as Data with Ansible for easier Continuous Delivery
Scala Matsuri 2017
Nllug 2010-web-services
Nllug 2010 - Web-services bootcamp
MJ Berends talk - Women & Non-Binary Focused Intro to AWS
Full-Stack CakePHP Deployment
Increasing velocity via serless semantics
Midwest php 2013 deploying php on paas- why & how
Standardizing and Managing Your Infrastructure - MOSC 2011
Ansible @ WebElement 2015
The Architect Way - JSCamp.asia 2012
Configuration manager presentation
AWS ELB Tips & Best Practices
Operational challenges behind Serverless architectures
Free Mongo on OpenShift
[HKOSCON][20190615][DevOps with Ansible, From Native to Kubernetes]
Ad

More from DevOpsDays Tel Aviv (20)

PDF
YOUR OPEN SOURCE PROJECT IS LIKE A STARTUP, TREAT IT LIKE ONE, EYAR ZILBERMAN...
PPTX
GRAPHQL TO THE RES(T)CUE, ELLA SHARAKANSKI, Salto
PPTX
MICROSERVICES ABOVE THE CLOUD - DESIGNING THE INTERNATIONAL SPACE STATION FOR...
PPTX
THE (IR)RATIONAL INCIDENT RESPONSE: HOW PSYCHOLOGICAL BIASES AFFECT INCIDENT ...
PPTX
PRINCIPLES OF OBSERVABILITY // DANIEL MAHER, DataDog
PPTX
NUDGE AND SLUDGE: DRIVING SECURITY WITH DESIGN // J. WOLFGANG GOERLICH, Duo S...
PPTX
(Ignite) TAKE A HIKE: PREVENTING BATTERY CORROSION - LEAH VOGEL, CHEGG
PPTX
BUILDING A DR PLAN FOR YOUR CLOUD INFRASTRUCTURE FROM THE GROUND UP, MOSHE BE...
PPTX
THE THREE DISCIPLINES OF CI/CD SECURITY, DANIEL KRIVELEVICH, Cider Security
PDF
THE PLEASURES OF ON-PREM, TOMER GABEL
PPTX
CONFIGURATION MANAGEMENT IN THE CLOUD NATIVE ERA, SHAHAR MINTZ, EggPack
PPTX
SOLVING THE DEVOPS CRISIS, ONE PERSON AT A TIME, CHRISTINA BABITSKI, Develeap
PPTX
OPTIMIZING PERFORMANCE USING CONTINUOUS PRODUCTION PROFILING ,YONATAN GOLDSCH...
PPTX
HOW TO SCALE YOUR ONCALL OPERATION, AND SURVIVE TO TELL, ANTON DRUKH
PPTX
HOW TO OPTIMIZE NON-CODING TIME, ORI KEREN, LinearB
PPTX
FLYING BLIND - ACCESSIBILITY IN MONITORING, FEU MOUREK, Icinga
PPTX
(Ignite) WHAT'S BURNING THROUGH YOUR CLOUD BILL - GIL BAHAT, CIDER SECURITY
PPTX
SLO DRIVEN DEVELOPMENT, ALON NATIV, Tomorrow.io
PPTX
ONBOARDING IN LOCKDOWN, HILA FOX, Augury
PPTX
DON'T PANIC: GETTING YOUR INFRASTRUCTURE DRIFT UNDER CONTROL, ERAN BIBI, Firefly
YOUR OPEN SOURCE PROJECT IS LIKE A STARTUP, TREAT IT LIKE ONE, EYAR ZILBERMAN...
GRAPHQL TO THE RES(T)CUE, ELLA SHARAKANSKI, Salto
MICROSERVICES ABOVE THE CLOUD - DESIGNING THE INTERNATIONAL SPACE STATION FOR...
THE (IR)RATIONAL INCIDENT RESPONSE: HOW PSYCHOLOGICAL BIASES AFFECT INCIDENT ...
PRINCIPLES OF OBSERVABILITY // DANIEL MAHER, DataDog
NUDGE AND SLUDGE: DRIVING SECURITY WITH DESIGN // J. WOLFGANG GOERLICH, Duo S...
(Ignite) TAKE A HIKE: PREVENTING BATTERY CORROSION - LEAH VOGEL, CHEGG
BUILDING A DR PLAN FOR YOUR CLOUD INFRASTRUCTURE FROM THE GROUND UP, MOSHE BE...
THE THREE DISCIPLINES OF CI/CD SECURITY, DANIEL KRIVELEVICH, Cider Security
THE PLEASURES OF ON-PREM, TOMER GABEL
CONFIGURATION MANAGEMENT IN THE CLOUD NATIVE ERA, SHAHAR MINTZ, EggPack
SOLVING THE DEVOPS CRISIS, ONE PERSON AT A TIME, CHRISTINA BABITSKI, Develeap
OPTIMIZING PERFORMANCE USING CONTINUOUS PRODUCTION PROFILING ,YONATAN GOLDSCH...
HOW TO SCALE YOUR ONCALL OPERATION, AND SURVIVE TO TELL, ANTON DRUKH
HOW TO OPTIMIZE NON-CODING TIME, ORI KEREN, LinearB
FLYING BLIND - ACCESSIBILITY IN MONITORING, FEU MOUREK, Icinga
(Ignite) WHAT'S BURNING THROUGH YOUR CLOUD BILL - GIL BAHAT, CIDER SECURITY
SLO DRIVEN DEVELOPMENT, ALON NATIV, Tomorrow.io
ONBOARDING IN LOCKDOWN, HILA FOX, Augury
DON'T PANIC: GETTING YOUR INFRASTRUCTURE DRIFT UNDER CONTROL, ERAN BIBI, Firefly

Recently uploaded (20)

PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
OMC Textile Division Presentation 2021.pptx
PDF
August Patch Tuesday
PDF
Approach and Philosophy of On baking technology
PDF
project resource management chapter-09.pdf
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Web App vs Mobile App What Should You Build First.pdf
PPTX
cloud_computing_Infrastucture_as_cloud_p
PDF
Hindi spoken digit analysis for native and non-native speakers
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
1 - Historical Antecedents, Social Consideration.pdf
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
PDF
Zenith AI: Advanced Artificial Intelligence
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Group 1 Presentation -Planning and Decision Making .pptx
A comparative analysis of optical character recognition models for extracting...
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Unlocking AI with Model Context Protocol (MCP)
OMC Textile Division Presentation 2021.pptx
August Patch Tuesday
Approach and Philosophy of On baking technology
project resource management chapter-09.pdf
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Web App vs Mobile App What Should You Build First.pdf
cloud_computing_Infrastucture_as_cloud_p
Hindi spoken digit analysis for native and non-native speakers
Building Integrated photovoltaic BIPV_UPV.pdf
1 - Historical Antecedents, Social Consideration.pdf
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
Zenith AI: Advanced Artificial Intelligence

Scaling Humans - BigPanda's Fabulous ChatOps Adventure - Erik Zaadi, BigPanda - DevOpsDays Tel Aviv 2016

  • 1. SCALING HUMANS: BIGPANDA'S FABULOUS CHATOPS ADVENTURE BY ERIK ZAADI | DEC 13, 2016
  • 2. TEAM LEADER AND COMMUNITY GUY ERIKZAADI
  • 3. • Continuous Delivery • Deploy by ssh to deploy server (AWS) • Ran Ansible on our playbooks repository A TALE OF DEPLOYMENT EVOLUTION FLASHBACK TO EARLY 2014 8 deployers 5 Microservices 15 Servers
  • 4. • Synchronizing - Lack of visibility • Not reliable deploys • Disconnections • Debugging • Ansible was not common knowledge WE SIMPLY WANTED TO DEPLOY PROBLEMS:
  • 5. Bash wrapper for Ansible NEXT STEP: LET'S MAKE IT EASY ENTER BASH - DEPLOY.SH DEPLOY.SH IS COMING
  • 6. Solved: • No Ansible Knowledge 
 Problems: • Synchronization • Not reliable deploys DEPLOY.SH
  • 7. • Wrapped SSH login with TMUX • Used local users with symlinked playbooks repository • Enabled mosh NEXT STEP: LET'S STAY CONNECTED TMUX TO THE RESCUE TMUX IS COMING
  • 8. Solved: • Not reliable deploys • Disconnections (session) • Debugging Problems: • Synchronization TMUX AND LOCAL USERS
  • 9. • HipChat bot using Hubot • Written in CoffeeScript • Called Beanbot • Limited to staging servers • Used Jenkins to run Ansible • Could query past deploys NEXT STEP: CHATOPS TO THE RESCUE! HELLO THERE HUBOT!
  • 10. Problems: • Synchronization • Lack of HipChat usage • Almost no visibility • Didn’t solve the production pain • Only 3 contributors • People really hated Coffeescript BEANBOT
  • 11. AND WE CONTINUED GROWING THIS WAS MID 2015 15 deployers 15 Microservices 40 Servers
  • 12. Slack channel: #deployment-locks We'd manually notify locking. Escalated quickly to be unusable. Stupid Humans. NEXT STEP: LET'S SOLVE IT IN CHAT SO, CHAT-NOT-OPS?
  • 13. • Hackathon rewrite from scratch • Robin (Hubot) • Written in Javascript • Using micro services standards • Tests • Deploys NEXT STEP: CHATOPS TO THE RESCUE AGAIN! FIX THE STUPID HUMANS
  • 14. • Managed deployment locks • Deployed to production (!) • Prevented Human Errors • Similar syntax to bash script ZOMG TIS’S DA THINGZ THE HYPE TRAIN TOOK OFF
  • 15. • Managed using GitHub issues • 10 contributors (~1/2 RND) • Javascript vs Coffeescript • Slack vs HipChat • Hubot Scripts • Use anything with an API INSTANT POPULARITY GAINED WHY ROBIN WORKED
  • 16. • Integrated part of our dev cycle 30 Deployers 30 Microservices 160 Servers ~100 daily deploys and locks TODAY WE CAN’T LIVE WITHOUT ROBIN
  • 18. EXAMPLES - KEEP IT SIMPLE AND SAVE HUMAN STEPS
  • 19. EXAMPLES - MINIMIZE HUMAN ERRORS AND ADD CONFIRMATION
  • 20. EXAMPLES - MINIMIZE HUMAN ERRORS
  • 21. EXAMPLES - PROVIDE USEFUL FEEDBACK
  • 22. EXAMPLES - BE QUERY-ABLE
  • 23. EXAMPLES - ENSURE NAME SPACING CHATOPS COMMANDS
  • 24. EXAMPLES - UNIT TEST ALL THE THINGS! CONVERSATION REGEX TBD: SOLARIZED LIGHT?
  • 25. EXAMPLES - SOLVE NON VISIBLE OPERATIONS TASKS
  • 26. EXAMPLES - DON’T SPAM PUBLIC CHANNELS TOO MUCH
  • 27. EXAMPLES - HELP WITH DAY TO DAY TASKS
  • 28. EXAMPLES - MAKE THE USAGE OF THE BOT FUN
  • 29. • Ensure deploy can work without ChatOps as well • Reuse existing deploy process and syntax • Run the bot both locally and on a staging env • Make contributing to the bot fun and easy • Company bot skeletons (allowing quick POCs) THINGS WE LEARNED THE HARD WAY YOUR BOT WILL BE DOWN
  • 30. • SuperPanda - Groceries wish list • Gordon - Sales and Support • Bellboy - Opens our office door • Splinter - Code linting rewarder DIVIDED THEY CONQUER MOAARR BOTS!!!1
  • 31. EOF