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
freee を支えるインフラ技術 / freee-infrastructure
Search
Manabu Sakai
January 19, 2017
Technology
7
15k
freee を支えるインフラ技術 / freee-infrastructure
【freee × プレイド】Tech Meetup 〜インフラ監視編〜
Manabu Sakai
January 19, 2017
Tweet
Share
More Decks by Manabu Sakai
See All by Manabu Sakai
アウトプットが切り拓いた自分のエンジニア人生 / Infra Study 2nd #8
manabusakai
0
26k
GitHub Actions の self-hosted runner と Amazon EKS を使った Docker のビルドパイプライン / secure-docker-build-pipeline
manabusakai
0
2.1k
SaaS における EKS のシングルテナントクラスタ戦略とスポットインスタンス活用術 / EKS single-tenant cluster strategy and Spot Instances
manabusakai
0
7k
freee のエンジニアは障害から何を学び、どう改善しているのか? / What do freee engineers learn and improve from failures?
manabusakai
8
19k
我々は Kubernetes の何を監視すればいいのか? / CloudNative Days Kansai 2019
manabusakai
24
8.5k
CI/CD パイプラインを最速で組み立てるための 4 つのポイント / Four points to assemble the CI CD pipeline fastest
manabusakai
9
3.7k
Kubernetes を使ってエンジニア組織の生産性を上げよう / kubernetes-and-engineer-productivity
manabusakai
3
7.2k
freee のマイクロサービスを K8s + Go で組む! 短期プロジェクト成功の記録 / microservices-using-k8s-and-go
manabusakai
4
10k
Kubernetes 入門者が 3 か月で本番導入するためにやったこと / kubernetes-beginner
manabusakai
7
14k
Other Decks in Technology
See All in Technology
サイボウズフロントエンドエキスパートチームについて / FrontendExpert Team
cybozuinsideout
PRO
5
38k
CustomCopを使ってMongoidのコーディングルールを整えてみた
jinoketani
0
220
TSKaigi 2024 の登壇から広がったコミュニティ活動について
tsukuha
0
160
どちらを使う?GitHub or Azure DevOps Ver. 24H2
kkamegawa
0
680
マイクロサービスにおける容易なトランザクション管理に向けて
scalar
0
110
スタートアップで取り組んでいるAzureとMicrosoft 365のセキュリティ対策/How to Improve Azure and Microsoft 365 Security at Startup
yuj1osm
0
210
2024年にチャレンジしたことを振り返るぞ
mitchan
0
130
第3回Snowflake女子会_LT登壇資料(合成データ)_Taro_CCCMK
tarotaro0129
0
180
【re:Invent 2024 アプデ】 Prompt Routing の紹介
champ
0
140
開発生産性向上! 育成を「改善」と捉えるエンジニア育成戦略
shoota
1
230
re:Invent 2024 Innovation Talks(NET201)で語られた大切なこと
shotashiratori
0
300
大幅アップデートされたRagas v0.2をキャッチアップ
os1ma
2
520
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
365
19k
Site-Speed That Sticks
csswizardry
2
190
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
28
2.1k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.3k
For a Future-Friendly Web
brad_frost
175
9.4k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.6k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.4k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
17
2.3k
Speed Design
sergeychernyshev
25
670
Building Applications with DynamoDB
mza
91
6.1k
Code Reviewing Like a Champion
maltzj
520
39k
Become a Pro
speakerdeck
PRO
26
5k
Transcript
を支えるインフラ監視 【freee × プレイド】Tech Meetup
#plaidtech
話すこと • freee で使っている監視系サービス • 少人数で運用するためのノウハウ
話さないこと • 監視の基本的なこと • 各監視サービスの比較や使い方
自己紹介 Twitter / GitHub @manabusakai
自己紹介 • 坂井 学(さかい まなぶ) • 2016 年にインフラエンジニアとして入社 • Scala
/ Ruby / PHP を書いてました • 得意分野は AWS ◦ AWS 認定ソリューションアーキテクト - プロフェッショナル ◦ AWS 認定 DevOps エンジニア - プロフェッショナル
スモールビジネスに携わる方が より創造的な活動にフォーカスできるよう
freee が提供するサービス • 会計 freee • 給与計算 freee • 会社設立
freee • マイナンバー管理 freee • 開業 freee
freee が提供するサービス
freee で使っている 監視系サービス
• サーバー監視 ◦ Mackerel <https://mackerel.io/> ◦ CloudWatch <https://aws.amazon.com/cloudwatch/> ◦ Prometheus
<https://prometheus.io/> • パフォーマンス監視 ◦ New Relic <https://newrelic.com/> ◦ MONyog <https://www.webyog.com/> • トラッキング ◦ Redash <https://redash.io/> ◦ Kibana <https://www.elastic.co/products/kibana/>
それぞれの守備範囲 AWS サーバ アプリ データベース Mackerel ◯ ◯ ◯ CloudWatch
◯ Prometheus ◯ New Relic ◯ MONyog ◯
インフラエンジニアは 何人いますか?
3 / 80 人
None
1 人あたり 20 万事業所
効率化しないと回らない!
少人数で運用するために 工夫していること
① 情報はプルよりプッシュ 必要な情報は一か所にプッシュされる仕組みを作る。 • Slack に通知しているもの ◦ Mackerel からのアラート ◦
GitHub など外部サービスの障害情報 ◦ アプリケーションのパフォーマンスサマリー ◦ AWS のコスト ◦ Qiita:Team の新着記事
① 情報はプルよりプッシュ
② フルマネージドサービスの活用 AWS のフルマネージドサービスを活用して、 監視するポイントを根本から減らす。 • トレードオフとの兼ね合い ◦ 運用が楽になる ⇔
ブラックボックスが増える ◦ ノーメンテナンス ⇔ 障害が起きたら手が出せない ◦ 設定が簡単 ⇔ 痒いところに手が届かない
③ 障害が起きることを前提に 障害が起きることを前提にインフラを設計する。 • 例えば ◦ サーバは Auto Scaling で管理し可用性を担保する
◦ 単一障害点を作り出さない ◦ リトライを前提としたコードを書く ◦ etc...
③ 障害が起きることを前提に “障害を避ける最もよい方法は、 常に障害を起こすことである”
④ 本業にフォーカスする サービスをより良くすることにフォーカスする。 それ以外の部分はお金で解決するのもアリ。 • Zabbix から Mackerel へ移行 ◦
結果的には Mackerel のコストは充分ペイした ◦ Mackerel Meetup #8 Tokyo (2016/10/17) で発表 ▪ ref. Zabbix から Mackerel へ - Mackerel で実現したコストダウン
④ 本業にフォーカスする
⑤ トラッキングして見える化 数値をトラッキングして見える化する。 • 数値は嘘をつかない ◦ 曖昧さを排除できる ◦ 数値を元に改善サイクルを回す
⑤ トラッキングして見える化 様々なメトリクスをトラッ キングして、見える化
まとめ
まとめ freee はごく普通の監視サービスを使っていますが、 工夫することで少人数を実現しています。 1. 情報はプルよりプッシュ 2. フルマネージドサービスの活用 3. 障害が起きることを前提に
4. 本業にフォーカスする 5. トラッキングして見える化
エンジニア募集中
最後に宣伝 今年から個人事業主として開業しました。 • AWS の導入支援 • AWS アーキテクチャのコンサルティング などをやっています。 興味を持った方は、気軽にお声がけください