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
性能検証をAnsibleにお任せした話
Search
Recruit Technologies
March 26, 2019
Technology
6
2.8k
性能検証をAnsibleにお任せした話
2019/3/26 Ansibleもくもく会 (サーバ編)2019.03 in オイシックス・ラ・大地!での中原の講演資料になります
Recruit Technologies
March 26, 2019
Tweet
Share
More Decks by Recruit Technologies
See All by Recruit Technologies
障害はチャンスだ! 障害を前向きに捉える
rtechkouhou
1
610
Flutter移行の苦労と、乗り越えた先に得られたもの
rtechkouhou
3
11k
ここ数年間のタウンワークiOSアプリのエンジニアのチャレンジ
rtechkouhou
1
1.4k
大規模環境をAWS Transit Gatewayで設計/移行する前に考える3つのポイントと移行への挑戦
rtechkouhou
1
1.8k
【61期 新人BootCamp】TOC入門
rtechkouhou
3
41k
【RTC新人研修 】 TPS
rtechkouhou
1
40k
Android Boot Camp 2020
rtechkouhou
0
40k
HTML/CSS
rtechkouhou
10
49k
TypeScript Bootcamp 2020
rtechkouhou
9
45k
Other Decks in Technology
See All in Technology
実践オブジェクト指向設計 〜Javaで学ぶオブジェクト指向(応⽤)〜
recruitengineers
PRO
1
720
Kaggleで賞金200万円ゲットした話 〜 Machine Unlearning と Google AI Assistants 〜
toshi_k_datasci
2
980
Central SREとEmbedded SREのハイブリッド体制で目指す最高のSRE組織
akiragoto
6
3.5k
聊聊生成式 AI 的衝擊下,作為工程師我們需要做好什麼準備
alantsai
0
150
TypeScript入門 2024
recruitengineers
PRO
19
11k
Browser
recruitengineers
PRO
5
780
見てわかるテスト駆動開発
recruitengineers
PRO
3
1.3k
なんでもCopilot for Security
sophiakunii
1
2.8k
第61回 コンピュータビジョン勉強会「Mip-Splatting: Alias-free 3D Gaussian Splatting」
kwchrk
1
130
2年目の技術系編集者が勝手に日本の編集者を代表して、若手エンジニアのみなさんに伝えたいこと/wakate-funwari-study_codezine.editor
yukiogawara
1
280
DatadogでPHP・Laravelアプリケーションを監視する / monitoring-php-laravel-using-datadog
m_norii
0
140
大きな組織にSLOを導入し 運用するということ、その難しさ / SRE NEXT 2024
junjunjunk
5
1.2k
Featured
See All Featured
Faster Mobile Websites
deanohume
303
30k
[RailsConf 2023] Rails as a piece of cake
palkan
43
4.5k
Imperfection Machines: The Place of Print at Facebook
scottboms
262
13k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
502
140k
Building Your Own Lightsaber
phodgson
101
5.9k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
662
120k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
26
7.2k
Web Components: a chance to create the future
zenorocha
307
41k
YesSQL, Process and Tooling at Scale
rocio
166
14k
The Language of Interfaces
destraynor
151
23k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Rebuilding a faster, lazier Slack
samanthasiow
78
8.5k
Transcript
性能検証をAnsibleにお任せした話 株式会社リクルートテクノロジーズ 中原洋志 2019年3月27日
自己紹介 中原 洋志 株式会社リクルートテクノロジーズ ITソリューション本部 インフラソリューション部 経歴 2011〜2017 独立系SIER -
主に医療系の企画・営業を担当 2017/2〜 リクルートテクノロジーズ入社 - 社内インフラ企画を経て、1年前から商用インフラの運用を担当 最近のマイブーム ・Go ・ログ分析周り ・ Ansible 2 (C) Recruit Technologies Co., Ltd. All rights reserved.
これから話す内容 • あるログ転送ツールの性能検証をAnsibleにお任せ(自動化) した事例をお話します。 • Ansibleの活用方法、性能検証のやり方に悩んでいる人の ヒントになれば嬉しいです。 3 (C) Recruit
Technologies Co., Ltd. All rights reserved. 実はAnsibleそれほど詳しくありません きつい質問は勘弁してやってください
やろうとしていた事 ログ転送ツールの導入を検討するにあたって チューニングしつつ処理性能を測定しようとしていた 4 (C) Recruit Technologies Co., Ltd. All
rights reserved. ログの処理件数 処理時間 パラメータ設定あり パラメータ設定なし 欲しかったのはよく見かけるこういうグラフ↓ ログ転送ツールの処理性能
必要だったステップ 必要だったのはこんな事をぽちぽちしていくだけの簡単なお仕事 5 (C) Recruit Technologies Co., Ltd. All rights
reserved. Apacheログを生成 Apacheログを ログ転送ツールに投入 ログ転送ツールの パラメータを変える ログ転送ツールをrestart (パラメータ反映) ログ転送ツールの ログから処理時間を集計 ログ転送ツールの パラメータを元に戻す 古いApacheログを削除 ログ転送ツールをrestart (パラメータ反映) Start End
必要だったステップ …これを シナリオの数だけ 6 (C) Recruit Technologies Co., Ltd. All
rights reserved. ※Vim(パラメータ変更&戻し)だけでも342回開きます Apacheログを生成 Apacheログを ログ転送ツールに投入 ログ転送ツールの パラメータを変える ログ転送ツールをrestart (パラメータ反映) ログ転送ツールのログ から処理時間を集計 ログ転送ツールの パラメータを元に戻す 古いApacheログを 削除 ログ転送ツールをrestart (パラメータ反映) Start End
これを人力でやる? 7 (C) Recruit Technologies Co., Ltd. All rights reserved.
(ヾノ・∀・`)ムリムリ 夜を徹しての長時間作業 よみがえる作業ミスのトラウマ なによりつまらない
Ansibleとの出会い 8 (C) Recruit Technologies Co., Ltd. All rights reserved.
でもスクリプトとか書けないしなー 手が空いている人もいないしなー と悩んでた時に出会ったのがこれ↓ マンガでわかるRed Hat Ansible Automation http://redhat.lookbookhq.com/jp_ansible_comic
9 (C) Recruit Technologies Co., Ltd. All rights reserved. ほうほう
Ansibleとの出会い マンガでわかるRed Hat Ansible Automation http://redhat.lookbookhq.com/jp_ansible_comic
10 (C) Recruit Technologies Co., Ltd. All rights reserved. つまりこういう事か!
性能に影響を及ぼすエージェントを入れずに 単調な作業を繰り返せる 性能検証にも使えるツール Ansibleとの出会い マンガでわかるRed Hat Ansible Automation http://redhat.lookbookhq.com/jp_ansible_comic
とはいえ触るの初めてなので 1.公式ハンズオンを一人モクモクしてみる (このAnsibleもくもく会でもお馴染みの内容) 2.Ansible Documentを見ながらplaybookを作る (Exampleが豊富で分かりやすい) 基本的な処理が完成 →
学習コストの低さ 1.公式ハンズオンを一人モクモクしてみる (このAnsibleもくもく会でもお馴染みの内容) 2.Ansible Documentを見ながらplaybookを作る (Exampleが豊富で分かりやすい) 基本的な処理が完成 → はじめて触ってから ここまでだいたい
2日で完了 学習コストが低い・・!!
完成したもの その後色んな人々の助けを借りて こうなりました /- name: Run role per var include:
metric-poc-role.yml with_items: - { log_amount: “1000”, var_before: “xxx_size : 512”, var_after: ”xxx_size: 1024” } - { log_amount: “1000”, var_before: “xxx_size : 512”, var_after: ”xxx_size: 2048” } ・・・・ - { log_amount: “10000”, var_before: “xxx_size : 512”, var_after: ”xxx_size: 1024” } loop_control: loop_var: rolevar パラメータを設定した分だけ ログ生成〜実行〜結果集計を 自動的にやってくれる /tasks/main.yml Number of Published Event: 10000 vars_before: xxx_size: 512 vars_after: xxx_size: 1024 Start Time: 2019-03-13T11:50:18.988 End Time: 2019-03-13T11:50:35.759 ・・・・ こんな感じで結果をログファイルに出力してくれる↓
なんということでしょう Before After シナリオの数だけ人力で実行 退社前にコマンド一発 ansible-playbook -i ./hosts metrics-poc.yml 作業時間
57時間〜 作業時間 5秒
まとめ 15 (C) Recruit Technologies Co., Ltd. All rights reserved.
1.とにかくお手軽 yumコマンド一発で導入できて、エージェントも要らない。 学習コストも低い。 2.再利用できて、汎用性が高い シナリオを変えたり、他の性能検証に使ってみたり。 もちろん性能検証以外にも! 3.ドキュメントが充実 公式ドキュメントはもちろん、先人の取組み(ネット記事)が充実。 迷ったらとりあえず導入してみよう Ansibleを性能検証に使うメリットはたくさんある (これもまだほんの一部)
おしまい ご清聴ありがとうございました! 16 (C) Recruit Technologies Co., Ltd. All rights
reserved.