Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
DevOps: Python tools to get started
Search
Victor Neo
March 15, 2014
Technology
9
13k
DevOps: Python tools to get started
Presented at Mini PyCon Malaysia 2014 (March 15)
Victor Neo
March 15, 2014
Tweet
Share
More Decks by Victor Neo
See All by Victor Neo
Django - The Next Steps
victorneo
5
620
NLTK Intro for PUGS
victorneo
7
560
Git and Python workshop
victorneo
2
790
Other Decks in Technology
See All in Technology
Node-RED × MCP 勉強会 vol.1
1ftseabass
PRO
0
170
2025-06-26 GitHub CopilotとAI駆動開発:実践と導入のリアル
fl_kawachi
1
190
Microsoft Build 2025 技術/製品動向 for Microsoft Startup Tech Community
torumakabe
2
320
より良いプロダクトの開発を目指して - 情報を中心としたプロダクト開発 #phpcon #phpcon2025
bengo4com
1
3.2k
強化されたAmazon Location Serviceによる新機能と開発者体験
dayjournal
3
230
Wasm元年
askua
0
160
生成AIで小説を書くためにプロンプトの制約や原則について学ぶ / prompt-engineering-for-ai-fiction
nwiizo
4
2.9k
使いたいMCPサーバーはWeb APIをラップして自分で作る #QiitaBash
bengo4com
0
1k
SalesforceArchitectGroupOsaka#20_CNX'25_Report
atomica7sei
0
250
asken AI勉強会(Android)
tadashi_sato
0
110
あなたの声を届けよう! 女性エンジニア登壇の意義とアウトプット実践ガイド #wttjp / Call for Your Voice
kondoyuko
4
490
Amazon S3標準/ S3 Tables/S3 Express One Zoneを使ったログ分析
shigeruoda
5
580
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Typedesign – Prime Four
hannesfritz
42
2.7k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
RailsConf 2023
tenderlove
30
1.1k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
124
52k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
Rebuilding a faster, lazier Slack
samanthasiow
82
9.1k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.6k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Transcript
DevOps Python tools to get started
DevOps is … “… development and operations teams work on
software releases in tandem, rather than throwing code back and forth across a silo.”
Make no mistake DevOps is a culture In [1]: “tools
make a culture” Out [1]: False
Background
Perspective Startup culture, but tools are useful everywhere
Carousell P2P Marketplace App iOS, Android (Web?)
Pony Powered Django + Django Rest Framework
Not too long ago 1 Technical Co-founder ! Edits code
on production server Live reload
Moments ago 4 Engineers: iOS, Android, CTO, Backend + Infrastructure
! Every engineer somewhat involved with Backend code
TODO • Deploy • Monitor Make it easy to: •
Break things Make it difficult to:
Deployment
Deployment options - Fabric + git / svn /… !
- Salt / Ansible / Chef ! - Native packaging (.rpm, .deb)
Fabric (i) from fabric.api import env, run ! hosts =
[‘app.server.com’] ! def deploy(): run(“git pull && … ”) fabfile.py
Fabric (ii) $ fab deploy [app.server.com] run: git pull &&
… [app.server.com] out: [output]
Fabric: the good parts Simple, easy to start with !
@parallel to speed up for multiple servers
Salt Configuration management, commonly used for server provisioning ! Chef,
Puppet, etc
Salt + Git
Fabric + Salt + Git fab deploy salt “app*.server.com” …
app1.server.com app2.server.com
TODO • Deploy • Monitor Make it easy to: •
Break things Make it difficult to:
Monitor and Control
Controlling processes Tools: Supervisor, Circus Allows you to control and
monitor your app processes
Supervisor (i) [program:my_app] command=python my_app.py
Supervisor (ii) $ supervisorctl status my_app RUNNING pid 7910, uptime
01:36:44
Supervisor (iii) Supervisor exposes a XMLRPC interface Allows remote monitoring
and control of processes
TODO • Deploy • Monitor Make it easy to: •
Break things Make it difficult to:
Continuous Integration
Continuous Integration Popular CIs: Jenkins, TravisCI, CircleCI
http://buildbot.net/
Jenkins + Django
Automated Feedback
Done! • Deploy • Monitor Make it easy to: •
Break things Make it difficult to:
All together now
Github Workflow Pull Request Continuous Integration Automatic Deployment
pull request Jenkins CI Test Deployment Report on Github salt
[success] [fail]
Beyond Python Docker Vagrant Virtual Machines! (LXC) Containers!
Thanks! @victorneo (psst. we are looking for web devs)