68
インフラエンジニアっ てなんでしたっけ() サイバーエージェント 桑野 章弘

インフラエンジニアってなんでしたっけ(仮)

Embed Size (px)

Citation preview

Page 1: インフラエンジニアってなんでしたっけ(仮)

インフラエンジニアってなんでしたっけ(仮)サイバーエージェント 桑野 章弘

Page 2: インフラエンジニアってなんでしたっけ(仮)

今日は

Page 3: インフラエンジニアってなんでしたっけ(仮)

インフラ エンジニア

Page 4: インフラエンジニアってなんでしたっけ(仮)

って何?

Page 5: インフラエンジニアってなんでしたっけ(仮)

という話をしにきました

Page 6: インフラエンジニアってなんでしたっけ(仮)

もう同じ話 でてる可能性ある

Page 7: インフラエンジニアってなんでしたっけ(仮)

((((;゚Д゚)))) ガクガクブルブル

Page 8: インフラエンジニアってなんでしたっけ(仮)

あと会場に自分の代わりに話してよって人がいっぱいいる

Page 9: インフラエンジニアってなんでしたっけ(仮)

あと会場に自分の代わりに話してよって人がいっぱいいる

Page 10: インフラエンジニアってなんでしたっけ(仮)

((((;゚Д゚)))) ガクガクブルブル

Page 11: インフラエンジニアってなんでしたっけ(仮)

自己紹介

Page 12: インフラエンジニアってなんでしたっけ(仮)

自己紹介

• 桑野 章弘

• あだな:銀河

• 渋谷の道玄坂の上の方の緑の会社勤め

• 何やってる人?

Page 13: インフラエンジニアってなんでしたっけ(仮)

自己紹介

• 何やってるの?

• あんなサービスや、こんなサービスのサーバ構築したり、ミドルウェアやデータベース面倒みたり、監視入れたり

• いわゆるインフラエンジニア?

Page 14: インフラエンジニアってなんでしたっけ(仮)

自己紹介

• MongoDB芸人…

Page 15: インフラエンジニアってなんでしたっけ(仮)

自己紹介

• リベラル(ry さんへ

Page 16: インフラエンジニアってなんでしたっけ(仮)

まだ依頼きてません

Page 17: インフラエンジニアってなんでしたっけ(仮)

インフラ エンジニア

Page 18: インフラエンジニアってなんでしたっけ(仮)

って何?

Page 19: インフラエンジニアってなんでしたっけ(仮)

だから何?

Page 20: インフラエンジニアってなんでしたっけ(仮)

インフラエンジニアって何?

• 曖昧な用語なんでとりあえずggrksしてみた

Page 21: インフラエンジニアってなんでしたっけ(仮)
Page 22: インフラエンジニアってなんでしたっけ(仮)

インフラエンジニアって何?

• 企業の情報システムを構成するコンピュータや通信ネットワークなどの調達・導入や運用、管理、調整、更新などを専門に行う技術者。また、そのような業務を担う職種。

• 企業によって異なるが、システムに必要な機材などの構成の検討や設計、コンピュータ本体の設置や配線、OSなどのソフトウェアの導入や設定、日常的な管理や運用、設定や性能の調整や最適化・改善、障害発生時の原因究明や復旧、新しいシステムへの移行などの業務を専門に手がける職種のことをインフラエンジニアということが多い。

Page 23: インフラエンジニアってなんでしたっけ(仮)

ながいよ

Page 24: インフラエンジニアってなんでしたっけ(仮)

とにかく業が深いこの言葉

• 「インフラって水とか電気とかじゃないんだ」

• 「インフラエンジニア?ネットワークエンジニア?DBアドミニストレータ?DevOpsエンジニア?」<-どれのこと!?どこまでが担当なの!?

• Web系でも、SIer系でも全然違う

• そもそもみんなの認識が違う

Page 25: インフラエンジニアってなんでしたっけ(仮)

とにかく業が深いこの言葉

• というわけで

• 今回はいわゆるB2CのWeb系のサービスを運営しているインフラエンジニアと言われているような業種の方々を前提にしています(そもそも僕がそれ)

• 長い

Page 26: インフラエンジニアってなんでしたっけ(仮)

クラウド時代

Page 27: インフラエンジニアってなんでしたっけ(仮)

一昔前

• DCを持ってサーバを買って(もしくは自作して)、設置してネットワーク敷設してOSインストールしてなんたらかんたらほげほげほげ

Page 28: インフラエンジニアってなんでしたっけ(仮)

クラウド時代ですね

• 弊社でつかってるサービスも新しいものはクラウドを使っている物が多い

• AWS、GCP、等のIaaSや其れに付随するPaaS等

Page 29: インフラエンジニアってなんでしたっけ(仮)

でも僕らはまだDCを持ってます

• もちろん運営する人間がいてある程度以上の規模があるなら実サーバを運用する方がコストは安い

• 今までのノウハウもある

Page 30: インフラエンジニアってなんでしたっけ(仮)

でも僕らはまだDCを持ってます

• じゃあ自社DCを持たないような会社でしかインフラエンジニアはいらないの?

Page 31: インフラエンジニアってなんでしたっけ(仮)

やっている事をまとめよう

Page 32: インフラエンジニアってなんでしたっけ(仮)

やってること(抜粋)

• サーバの構築したり

• 適切な監視を入れたり

• 必要な検証を行ったり

• 障害対応をしたり

Page 33: インフラエンジニアってなんでしたっけ(仮)

変わってなくない?

Page 34: インフラエンジニアってなんでしたっけ(仮)

ですよね

Page 35: インフラエンジニアってなんでしたっけ(仮)

いやいや

Page 36: インフラエンジニアってなんでしたっけ(仮)

やり方が変わってきている

• コード化するためのツールのコモディティ化

• そもそも1から自分で構築しない

• 基本的な部品のAPI化等

• スピード感がましている/キャッチアップが大変

Page 37: インフラエンジニアってなんでしたっけ(仮)

やり方が変わってきている

• 何をするにもコードを書く必要に迫られる事が多くなって来ているし、その流れは急激に進んでいるという方がクラウド化による変化だと言う実感がある

Page 38: インフラエンジニアってなんでしたっけ(仮)

サーバを構築したい!

• オールドタイプ

• 「サーバ調達でしょ」「ラックに設置して」「ネットワーク敷設OK」「OSインストール」「秘伝のタレでサーバ構築して」「監視入れて」「動作確認して」

• 超筋肉運用

Page 39: インフラエンジニアってなんでしたっけ(仮)

サーバを構築したい!

• オールドタイプ

• 「サーバ調達でしょ」「ラックに設置して」「ネットワーク敷設OK」「OSインストール」「秘伝のタレでサーバ構築して」「監視入れて」「動作確認して」

• 超筋肉運用

Page 40: インフラエンジニアってなんでしたっけ(仮)

サーバを構築したい!

• ニュータイプ

• 「AWSでインスタンス立てて」「Ansibleでプロビジョニング」「Serverspecでテスト」「mackerelで監視」

• 違うのは作業内容ではなく、ここまでの作業をコード化できる土壌が揃ってきている事

Page 41: インフラエンジニアってなんでしたっけ(仮)

旧態依然とした環境では

• もうスピードについていけない

Page 42: インフラエンジニアってなんでしたっけ(仮)

ここで問題

Page 43: インフラエンジニアってなんでしたっけ(仮)

事例1

• DBであるクエリが遅くて将来的に障害になりそう

Page 44: インフラエンジニアってなんでしたっけ(仮)

事例1

• 適切なインデックスを貼る

• クエリを修正する

• (垂直|水平)分散する

• 搭載メモリを増やし、バッファに割り振る

• ストレージをPCI-e SSDに変更する

Page 45: インフラエンジニアってなんでしたっけ(仮)

事例2

• 例えば特定のサービスでたまに通信断が出る場合の原因箇所(ただしアプリケーション、ミドルウェアは問題無いとする)

Page 46: インフラエンジニアってなんでしたっけ(仮)

事例2

• ネットワークインタフェース/ドライバの差異

• イーサネットケーブル切れかけ~エラーパケット送出

• 途中の経路でパケットが落ちて再送

• ulimit系の制限にかかった(openfilesとか、nprocとか)

• sommaxcon等のbacklog溢れ

Page 47: インフラエンジニアってなんでしたっけ(仮)

事例3

• 新しいNoSQL(JSONで保存できて、冗長化もシャーディングもできるすごい奴)を最適に動かすためのサーバ環境の検証をするためにどうしたら良いか

Page 48: インフラエンジニアってなんでしたっけ(仮)

事例3

• 省略

Page 49: インフラエンジニアってなんでしたっけ(仮)

立派なスキルでは?

Page 50: インフラエンジニアってなんでしたっけ(仮)

だれが 消えちゃうの

Page 51: インフラエンジニアってなんでしたっけ(仮)

どのように 生きていく の

Page 52: インフラエンジニアってなんでしたっけ(仮)

エンジニアの壁が薄くなってる

• アプリエンジニアがさっきの例で行っていたようなレイヤーの低い部分もできるようになる方向性もあるし、できてる人ももちろんいる

• 逆にインフラエンジニアでアプリも書く人もいるし書いてる

Page 53: インフラエンジニアってなんでしたっけ(仮)

そういうのって

• フルスタックエンジニアって奴じゃないですか?

• もちろん全員にすべてを完璧を求めているわけではないですよね

Page 54: インフラエンジニアってなんでしたっけ(仮)

要するに

• パラメータは有限

Page 55: インフラエンジニアってなんでしたっけ(仮)

だから

• 各人は各人の得意な部分を伸ばしていけばいい

• でも周辺知識を伸ばしていかなければならない

Page 56: インフラエンジニアってなんでしたっけ(仮)

だから

• 各人は各人の得意な部分を伸ばしていけばいい

• でも周辺知識を伸ばしていかなければならない

Page 57: インフラエンジニアってなんでしたっけ(仮)

ぼくらのやるべき事

Page 58: インフラエンジニアってなんでしたっけ(仮)

ぼくらのミッション

• サーバの負荷を抑える事?

• パフォーマンスを上げる事?

• できるだけコストを抑える事?

• 自動化する事?

• コードを書く事?

Page 59: インフラエンジニアってなんでしたっけ(仮)

違う気がする

Page 60: インフラエンジニアってなんでしたっけ(仮)

ぼくらのミッション

• 本質的に僕らは事業でご飯を食べている

• 事業そのものの成長を妨げない

• 成長のスピードを上げる

Page 61: インフラエンジニアってなんでしたっけ(仮)

これでしょう

Page 62: インフラエンジニアってなんでしたっけ(仮)

まとめ

Page 63: インフラエンジニアってなんでしたっけ(仮)

ぼくがおもうこと

• インフラエンジニアという単語に悲観せず愚直にやっても良い

• 覚えた技術は裏切らない

• 道具は道具でしか無い

• でも変化を避ける事はできない

• 機械でもできる仕事は更にドンドンなくなっていく

• 大事なことは自分達の事業を最大化する/スピードを上げる事(ぼくたちはコストセンターなだけじゃない)

Page 64: インフラエンジニアってなんでしたっけ(仮)

最後にいいたい事は

Page 65: インフラエンジニアってなんでしたっけ(仮)

インフラエンジニアは死ぬも生きるも

Page 66: インフラエンジニアってなんでしたっけ(仮)

そんな括りもうなかった

Page 67: インフラエンジニアってなんでしたっけ(仮)

そこには得意な技術領域の異なるエンジニアがいるだけ

Page 68: インフラエンジニアってなんでしたっけ(仮)

じゃない でしょうか (弱気)