プレイバックdevlove現場甲子園2013守チーム koudaiii

50
サービス運用からのアンチパターンとは 何だったのか? プレイバックDevLOVE現場甲子園 2013守チーム @koudaiii at 2014/11/08

Upload: -

Post on 05-Jul-2015

842 views

Category:

Technology


0 download

DESCRIPTION

2014年11月8日、ヴァルにて、2013年の発表から改善していた中で課題になった部分を話しました。

TRANSCRIPT

Page 1: プレイバックDevlove現場甲子園2013守チーム koudaiii

サービス運用からのアンチパターンとは 何だったのか?

プレイバックDevLOVE現場甲子園 2013守チーム

@koudaiii at 2014/11/08

Page 2: プレイバックDevlove現場甲子園2013守チーム koudaiii

Profile

id: koudaiii fullname: Kodai Sakabe

Page 3: プレイバックDevlove現場甲子園2013守チーム koudaiii

Attention• このお話は世の中にあるWebサービス企業とは区別

• SIerでWebサービスのOps

• 一人の人間が一年で気づきがあったところを話していきます

• 話の中で、「あー、そういう時代もございました」と思われるかと思いますがご了承下さい><

Page 4: プレイバックDevlove現場甲子園2013守チーム koudaiii

Agenda1. 前回の話した内容

2. そもそも自分が言っていたアンチパターンとは

3. 1年間の取り組み

4. 気をつけたこと

5. まとめ

6. 宣伝(JAWS-UG千葉)

Page 5: プレイバックDevlove現場甲子園2013守チーム koudaiii

1. 前回お話した内容

Page 6: プレイバックDevlove現場甲子園2013守チーム koudaiii

サービス運用からのアンチパターン

1. 運用者が作るスクリプトが増える(xx_watcher.sh等)

2. 叩いたコマンドを正しく振り返りしていない

3. ExcelでConfの丸コピ

4. バージョンと戦わない(RailsのVerUpに追従しない)

5. 説得する相手を間違える(Dev系とOps系の戦い)

Page 7: プレイバックDevlove現場甲子園2013守チーム koudaiii

サービス運用からのアンチパターン

6. ログを正しく運用しない

7. ツールの選定を正しくしていない

8. とりあえず動いたからやってみた

9. サービスのバージョン2を考えていない

10.「運用者が学ばない世界がサービスを壊す」

Page 8: プレイバックDevlove現場甲子園2013守チーム koudaiii

公衆の前で盛大に愚痴を披露

Page 9: プレイバックDevlove現場甲子園2013守チーム koudaiii

でも悪いところを文字に起こしたことで少しずつ改善が進みました

Page 10: プレイバックDevlove現場甲子園2013守チーム koudaiii

2. そもそも自分が言っていたアンチパターンとは

Page 11: プレイバックDevlove現場甲子園2013守チーム koudaiii

アンチパターンとは?(what)

アンチパターン とは、ある問題に対する、不適切な解決策を分類したものである 。

語源は、ソフトウェア工学におけるデザインパターンである。 主に失敗した開発プロセスに焦点を当てて失敗に陥るパターンを類型化する。 そうすることで、そのような事例の早期発見と対応策に関しての提案を目的とする。 ※ wikipedia

Page 12: プレイバックDevlove現場甲子園2013守チーム koudaiii

アンチパターンはいつ起こるの?(when)プロジェクトの遂行中であったり、障害対応中であったりと日々起こりえる

Page 13: プレイバックDevlove現場甲子園2013守チーム koudaiii

アンチパターンはどこで起こりえる?(where)

本番端末(サーバー)であったり、開発サーバーで起こったりとPCを使っている中で起こりえる

Page 14: プレイバックDevlove現場甲子園2013守チーム koudaiii

アンチパターンは誰が起こすのか?(who)

Ops関係者(作業者、再鑑者であったり、レビューする人であったり) !

※ここでは、Ops系を対象

Page 15: プレイバックDevlove現場甲子園2013守チーム koudaiii

アンチパターンはどのようにして起こるのか?(how)「暗黙知」や「とりあえず対応」、「今動いているからまぁいっか」、「都度コマンド実行すればいっか」etcを行った状態を蓄積していくことで起こる

Page 16: プレイバックDevlove現場甲子園2013守チーム koudaiii

アンチパターンはなぜ起こるのか?(why)

howで行ったことが蓄積していくこと・習慣化していく中で起こる。

Page 17: プレイバックDevlove現場甲子園2013守チーム koudaiii

なぜ蓄積していってしまうのか?(+αその1)蓄積したものを採算していないから。 !

※採算・・・振り返りや自動化や情報共有など行っていく中で、改善すること。

Page 18: プレイバックDevlove現場甲子園2013守チーム koudaiii

なぜ採算していないのか?(+αその2)自分自身も含め各個人がチームまたは組織に、「蓄積していること」を共有していない。または、黙認しているから。

Page 19: プレイバックDevlove現場甲子園2013守チーム koudaiii

そもそもアンチパターンとは何だったのか?組織・チームとしてのリスク(蓄積)を持っている状態や習慣、文化が引き起こすこと

Page 20: プレイバックDevlove現場甲子園2013守チーム koudaiii

3. 1年間の取り組み

Page 21: プレイバックDevlove現場甲子園2013守チーム koudaiii

組織・チームとしてのリスク(蓄積)を持っている状態、習慣、文化からどうなればいいか?

蓄積を取っていくための仕組みだったり文化を作る

Page 22: プレイバックDevlove現場甲子園2013守チーム koudaiii

文化 コード化 正しい状態

DevOps Infrastructure as code InfraCI

実際の内容は2014守チームに託します><

Page 23: プレイバックDevlove現場甲子園2013守チーム koudaiii

いざ対応していこう!!と思った矢先。 !最初大変だった時がありませんか? !

※特に勉強会参加しているような方

Page 24: プレイバックDevlove現場甲子園2013守チーム koudaiii

4. 気をつけたこと

Page 25: プレイバックDevlove現場甲子園2013守チーム koudaiii

気をつけたこと

1. 自分のメディア力の認識 2. 企業TCP/IPが存在する 3. 仲間を作るためにベクトルをあわせる !言葉で書くと「何だそんなことか。」となりそうだけど、、

Page 26: プレイバックDevlove現場甲子園2013守チーム koudaiii

自分のメディア力の認識

メディア力とは、自身が何か発した時にうける影響度合い・または信頼度 ※1「何を言うか」より「誰が言うか」で与える印象がゴロッと変わること !

※参考文献 あなたの話はなぜ「通じない」のか 山田ズーニー 筑摩書房

Page 27: プレイバックDevlove現場甲子園2013守チーム koudaiii

・中卒社会人「学歴社会は崩壊している」 ⇒学歴関係なく仕事バリバリでやれているというメッセージ ・東大生「学歴社会は崩壊している」 ⇒学歴あってこそのメッセージ

・東スポ「ついに宇宙とコンタクト」 ⇒何かネタっぽい ・日経「ついに宇宙人とコンタクト」 ⇒本当なのか?????

※参考文献 あなたの話はなぜ「通じない」のか 山田ズーニー 筑摩書房

印象が変わる例

信頼が変わる例

Page 28: プレイバックDevlove現場甲子園2013守チーム koudaiii

自分のメディア力の認識

Ops系は基本的にサービスが動いていて当たり前の世界=減点方式 !※リリース失敗したり、障害発生!なのに勉強会ばかり。気がついたら自身のメディア力が失っている可能性も、 その状態で偉い方に要求や要望を言っても_人人人人人人人人人人人人人人人人人人人_ > 「まずは目の前の仕事を頑張り給え」 < ‾Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y‾

Page 29: プレイバックDevlove現場甲子園2013守チーム koudaiii

信頼度が見る人によって低下

��$%-�!�"�'��+�#���&��� %�-)&*7!

���(/&-66�

��) �,0132 %��� %�.%-�

���� ��� ��254�

※参考文献 あなたの話はなぜ「通じない」のか 山田ズーニー 筑摩書房

Page 30: プレイバックDevlove現場甲子園2013守チーム koudaiii

信頼度が見る人によって低下

����� ,!�*)�#�!�&�&�+�(� '��$��

Chef"�serverspec�*�'����00�

��0��!�%0�

���� ��� � -/.�

作業者と思っている Opsと思っている

※参考文献 あなたの話はなぜ「通じない」のか 山田ズーニー 筑摩書房

Page 31: プレイバックDevlove現場甲子園2013守チーム koudaiii

メディア力あげるには?

・信頼度を下げる原因をなくす ・調べたことを見える化 ・報告や共有の場で広がりを持たせる ・時間軸/空間/人の軸

Page 32: プレイバックDevlove現場甲子園2013守チーム koudaiii

���

���

��

自社 他社 世の中

未来

過去

利用者

開発者※参考文献 あなたの話はなぜ「通じない」のか 山田ズーニー 筑摩書房

Page 33: プレイバックDevlove現場甲子園2013守チーム koudaiii

企業TCP/IPが存在する

TCP/IP 実装例 会社例 役職例

アプリケーション層 www 事業 社長

トランスポート層 TCP,UDP 企画 役員

インターネット層 IP,ARP,ICMP 営業 部長

データリンク層 PPP,デバイスドライバ 開発 課長

物理層 イーサネット 運用 平

Page 34: プレイバックDevlove現場甲子園2013守チーム koudaiii

※参考文献 http://net-newbie.com/tcpip/stack/tcpip-impl.html

Page 35: プレイバックDevlove現場甲子園2013守チーム koudaiii

企業TCP/IPが存在する

• レイヤーに合わせて会話しないと愚痴にしか聞こえなかったり、絵に描いた餅にしか見えないことがある

• 基本的にレイヤーを飛び越えて通信は行えません。(代理でこの人に話をしてもらうとか)

Page 36: プレイバックDevlove現場甲子園2013守チーム koudaiii

仲間を作るためにベクトルをあわせる

Page 37: プレイバックDevlove現場甲子園2013守チーム koudaiii

対立して話している場合

一緒に話をしている場合

Page 38: プレイバックDevlove現場甲子園2013守チーム koudaiii

仲間を作るためにベクトルをあわせる

• 一番最初にお互いに共通の問いをもつことが重要 ※サービスをもっとよくするためにインフラをどうればいいか?等 !• 「問いに対して意見⇒理由」であれば対立は起こりにくい。

Page 39: プレイバックDevlove現場甲子園2013守チーム koudaiii

問いを共有していない時のあるある障害の分析する際に、、 A「原因はなんだろう。この前作業に何かあったのかな?」

B「俺は一生懸命やったし、手順通り確認して行っていた!」

!Aさんの問い「障害の原因はなにか?」

Bさんの問い「私(Bさん)がいいか?悪いか?」

Page 40: プレイバックDevlove現場甲子園2013守チーム koudaiii

5. まとめ

Page 41: プレイバックDevlove現場甲子園2013守チーム koudaiii

結局のところ、、、• アンチパターンは自分自身が作っていることに、気付かなかったあまちゃんな自分

• 別にやるなとは誰も言っていない。理解してもらえていないだけ。

• 作業者の枠を越えて行くことができていなかった

Page 42: プレイバックDevlove現場甲子園2013守チーム koudaiii

まとめ• アンチパターンは、組織・チームとしてのリスク(蓄積)を持っている状態や習慣、文化が引き起こす

• DevOps,Infrastructure as code,infraCIで治していきましょう

• 確実に治していくために、以下を気を付けました 1. 自分のメディア力の認識 2. 企業TCP/IPが存在する 3. 仲間を作るためにベクトルをあわせる

Page 43: プレイバックDevlove現場甲子園2013守チーム koudaiii

Reference• サービス運営からのアンチパターン

• http://www.slideshare.net/ssusera9d121/devlove-28161257

• あなたの話はなぜ「通じない」のか山田ズーニー 筑摩書房

• http://www.amazon.co.jp/%E3%81%82%E3%81%AA%E3%81%9F%E3%81%AE%E8%A9%B1%E3%81%AF%E3%81%AA%E3%81%9C%E3%80%8C%E9%80%9A%E3%81%98%E3%81%AA%E3%81%84%E3%80%8D%E3%81%AE%E3%81%8B-%E3%81%A1%E3%81%8F%E3%81%BE%E6%96%87%E5%BA%AB-%E5%B1%B1%E7%94%B0-%E3%82%BA%E3%83%BC%E3%83%8B%E3%83%BC/dp/4480422803

• TCP/IPにおける実装

• http://net-newbie.com/tcpip/stack/tcpip-impl.html

Page 44: プレイバックDevlove現場甲子園2013守チーム koudaiii

6. 宣伝

Page 45: プレイバックDevlove現場甲子園2013守チーム koudaiii
Page 46: プレイバックDevlove現場甲子園2013守チーム koudaiii

千葉祭り!!(JAWS-UG千葉支部vol5 番外編)

2014年12月13日

コワーキングスペース茅場町 Co-Edo

http://jawsug-chiba.doorkeeper.jp/

Page 47: プレイバックDevlove現場甲子園2013守チーム koudaiii

コンセプト• 『千葉に縁のあるエンジニアなら誰でも来い』

• 千葉にもこういう事やってるエンジニアがいるよ!

• 参加者同士の交流

Page 48: プレイバックDevlove現場甲子園2013守チーム koudaiii

テーマ• 『個人ベースのゆく年くる年』

• 今年あつかったこと

• 今年がんばったこと

• 来年チャレンジしてみたいこと

Page 49: プレイバックDevlove現場甲子園2013守チーム koudaiii

千葉祭り!!(JAWS-UG千葉支部vol5 番外編)

2014年12月13日

コワーキングスペース茅場町 Co-Edo

http://jawsug-chiba.doorkeeper.jp/

Page 50: プレイバックDevlove現場甲子園2013守チーム koudaiii

登壇したい!方は下記までご連絡 @koudaiii or @jawsug_chiba !

参加したい!方はdoorkeeperまで

※近日公開予定。お知らせも@jawsug_chiba