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
Starting Over: Designing a new server environme...
Search
Lisa Seelye
January 20, 2016
Technology
0
33
Starting Over: Designing a new server environment from scratch using lessons of old environments
How we set about using new tools to create a new server environment from scratch.
Lisa Seelye
January 20, 2016
Tweet
Share
More Decks by Lisa Seelye
See All by Lisa Seelye
Multi-Architecture Container Images: Why Bother, and How To
thedoh
0
190
SLO Creation and You: Or, How We Learned to Stop Worrying and Love the Queue Length
thedoh
0
170
SLOs and You, or: How We Learned to Stop Worrying and Love the Queue Length
thedoh
0
140
Other Decks in Technology
See All in Technology
Functional TypeScript
naoya
11
4.6k
自社開発した大規模言語モデルをどうプロダクションに乗せて運用していくか〜インフラ編〜
pfn
PRO
24
6.9k
DroidKaigi 2024 たすけて!ViewModel
mhidaka
5
560
Oracle Base Database Service:サービス概要のご紹介
oracle4engineer
PRO
0
13k
Google CloudのLLM活用の選択肢を広げるVertex AIのパートナーモデル
nayuts
0
100
SORACOMで実現するIoTのマルチクラウド対応 - IoTでのクリーンアーキテクチャの実現 -
kenichirokimura
0
350
セキュリティ監視の内製化 効率とリスク
mixi_engineers
PRO
7
910
Autonomous Database Serverless 技術詳細 / adb-s_technical_detail_jp
oracle4engineer
PRO
15
40k
Road to Single Activity
yurihondo
1
190
AWSを始めた頃に陥りがちなポイントをまとめてみた
oshanqq
1
3.4k
Monitor GraalVM Native Apps with OpenTelemetry
logico_jp
0
120
Jetpack Compose Modifier 徹底解説 / Jetpack Compose Modifier
wiroha
0
120
Featured
See All Featured
Designing Experiences People Love
moore
138
23k
Imperfection Machines: The Place of Print at Facebook
scottboms
263
13k
Producing Creativity
orderedlist
PRO
340
39k
No one is an island. Learnings from fostering a developers community.
thoeni
18
2.9k
Done Done
chrislema
180
16k
Embracing the Ebb and Flow
colly
83
4.4k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.4k
Adopting Sorbet at Scale
ufuk
73
8.9k
A Tale of Four Properties
chriscoyier
155
22k
Side Projects
sachag
451
42k
Fashionably flexible responsive web design (full day workshop)
malarkey
401
65k
Ruby is Unlike a Banana
tanoku
96
11k
Transcript
Starting Over Designing a new server environment from scratch using
lessons of old environments Me: Lisa Seelye, @thedoh FreshBooks, Operations 1
The Plan • Test environment • Minimize source control repositories
• More recent versions of tools 2
The Old Production What it looked like 3
Ops has no place to test • It is risky
to deploy changes • High risk deployments • Development bottleneck 4
Collaboration is hard • Too many source control repositories (repos)
• Complex workflow • Ops testing bottleneck 5
Technical Debt • Overly complex code • Comes from unplanned
organic growth • Difficult to pay down • Makes life tough 6
Old versions of tools 7 • Old version is unsupported
• Upgrading in old environment is high risk • New version has killer features
Designing something better If you build it, they will come
8
Tools of the trade 9
Git, for source control • Source control software. Wildly popular
• Paired with the GitHub GUI to ease management • Used throughout FreshBooks • Supports our workflow 10
Testing with Vagrant and beyond • Easy to develop and
test locally • Larger test environment to fit all the pieces together 11
The New Workflow 12
Puppet • Configuration management tool. Widely adopted • Ensures our
config is always applied • One tool amongst many of its kind • Deep history within Ops and FreshBooks using Puppet 13
• Integrate them from the start • Each environment must
have a purpose • Leverage tools to get value out of the complexity Life with our many environments 14
Hiera • Abstracts environment settings from code • Manage settings
in separate files 15
Hiera Secrets • Passwords • Tokens • API credentials •
SSL Certificates 16
So how’s it going? Our report card 17
Our new environment report card 18
Thanks for listening! Want to come work for FreshBooks? We’re
hiring! https://freshbooks.com/jobs 19
Questions? Comments Want to come work for FreshBooks? We’re hiring!
https://freshbooks.com/jobs 20