SlideShare a Scribd company logo
インフラエンジニアっ
てなんでしたっけ(仮)
サイバーエージェント 桑野 章弘
今日は
インフラ
エンジニア
って何?
という話をし
にきました
もう同じ話
でてる可能性
ある
((((;゚Д゚))))
ガクガクブルブル
あと会場に自分
の代わりに話し
てよって人が
いっぱいいる
あと会場に自分
の代わりに話し
てよって人が
いっぱいいる
((((;゚Д゚))))
ガクガクブルブル
自己紹介
自己紹介
• 桑野 章弘
• あだな:銀河
• 渋谷の道玄坂の上の方の緑の会社勤め
• 何やってる人?
自己紹介
• 何やってるの?
• あんなサービスや、こんなサービスのサーバ
構築したり、ミドルウェアやデータベース面
倒みたり、監視入れたり
• いわゆるインフラエンジニア?
自己紹介
• MongoDB芸人…
自己紹介
• リベラル(ry さんへ
まだ依頼きて
ません
インフラ
エンジニア
って何?
だから何?
インフラエンジニアって何?
• 曖昧な用語なんでとりあえずggrksしてみた
インフラエンジニアってなんでしたっけ(仮)
インフラエンジニアって何?
• 企業の情報システムを構成するコンピュータや通信ネット
ワークなどの調達・導入や運用、管理、調整、更新などを
専門に行う技術者。また、そのような業務を担う職種。
• 企業によって異なるが、システムに必要な機材などの構成の
検討や設計、コンピュータ本体の設置や配線、OSなどのソ
フトウェアの導入や設定、日常的な管理や運用、設定や性
能の調整や最適化・改善、障害発生時の原因究明や復旧、
新しいシステムへの移行などの業務を専門に手がける職種の
ことをインフラエンジニアということが多い。
ながいよ
とにかく業が深いこの言葉
• 「インフラって水とか電気とかじゃないんだ」
• 「インフラエンジニア?ネットワークエンジニア?
DBアドミニストレータ?DevOpsエンジニア?」<-
どれのこと!?どこまでが担当なの!?
• Web系でも、SIer系でも全然違う
• そもそもみんなの認識が違う
とにかく業が深いこの言葉
• というわけで
• 今回はいわゆるB2CのWeb系のサービスを運
営しているインフラエンジニアと言われてい
るような業種の方々を前提にしています(そ
もそも僕がそれ)
• 長い
クラウド時代
一昔前
• DCを持ってサーバを買って(もしくは自作し
て)、設置してネットワーク敷設してOSイン
ストールしてなんたらかんたらほげほげほげ
クラウド時代ですね
• 弊社でつかってるサービスも新しいものはク
ラウドを使っている物が多い
• AWS、GCP、等のIaaSや其れに付随する
PaaS等
でも僕らはまだDCを持ってます
• もちろん運営する人間がいてある程度以上の
規模があるなら実サーバを運用する方がコス
トは安い
• 今までのノウハウもある
でも僕らはまだDCを持ってます
• じゃあ自社DCを持たないような会社でしかイ
ンフラエンジニアはいらないの?
やっている事
をまとめよう
やってること(抜粋)
• サーバの構築したり
• 適切な監視を入れたり
• 必要な検証を行ったり
• 障害対応をしたり
変わってなく
ない?
ですよね
いやいや
やり方が変わってきている
• コード化するためのツールのコモディティ化
• そもそも1から自分で構築しない
• 基本的な部品のAPI化等
• スピード感がましている/キャッチアップが
大変
やり方が変わってきている
• 何をするにもコードを書く必要に迫られる事
が多くなって来ているし、その流れは急激に
進んでいるという方がクラウド化による変化
だと言う実感がある
サーバを構築したい!
• オールドタイプ
• 「サーバ調達でしょ」「ラックに設置して」
「ネットワーク敷設OK」「OSインストー
ル」「秘伝のタレでサーバ構築して」「監
視入れて」「動作確認して」
• 超筋肉運用
サーバを構築したい!
• オールドタイプ
• 「サーバ調達でしょ」「ラックに設置して」
「ネットワーク敷設OK」「OSインストー
ル」「秘伝のタレでサーバ構築して」「監
視入れて」「動作確認して」
• 超筋肉運用
サーバを構築したい!
• ニュータイプ
• 「AWSでインスタンス立てて」「Ansibleで
プロビジョニング」「Serverspecでテスト」
「mackerelで監視」
• 違うのは作業内容ではなく、ここまでの作業
をコード化できる土壌が ってきている事
旧態依然とした環境では
• もうスピードについていけない
ここで問題
事例1
• DBであるクエリが遅くて将来的に障害になり
そう
事例1
• 適切なインデックスを貼る
• クエリを修正する
• (垂直|水平)分散する
• 搭載メモリを増やし、バッファに割り振る
• ストレージをPCI-e SSDに変更する
事例2
• 例えば特定のサービスでたまに通信断が出る
場合の原因箇所(ただしアプリケーション、
ミドルウェアは問題無いとする)
事例2
• ネットワークインタフェース/ドライバの差異
• イーサネットケーブル切れかけ∼エラーパケット送出
• 途中の経路でパケットが落ちて再送
• ulimit系の制限にかかった(openfilesとか、nprocと
か)
• sommaxcon等のbacklog れ
事例3
• 新しいNoSQL(JSONで保存できて、冗長化
もシャーディングもできるすごい奴)を最適
に動かすためのサーバ環境の検証をするため
にどうしたら良いか
事例3
• 省略
立派なスキル
では?
だれが
消えちゃうの
どのように
生きていく
の
エンジニアの壁が薄くなってる
• アプリエンジニアがさっきの例で行っていた
ようなレイヤーの低い部分もできるようにな
る方向性もあるし、できてる人ももちろんい
る
• 逆にインフラエンジニアでアプリも書く人も
いるし書いてる
そういうのって
• フルスタックエンジニアって奴じゃないです
か?
• もちろん全員にすべてを完璧を求めているわ
けではないですよね
要するに
• パラメータは有限
だから
• 各人は各人の得意な部分を伸ばしていけばい
い
• でも周辺知識を伸ばしていかなければならな
い
だから
• 各人は各人の得意な部分を伸ばしていけばい
い
• でも周辺知識を伸ばしていかなければならな
い
ぼくらのやる
べき事
ぼくらのミッション
• サーバの負荷を抑える事?
• パフォーマンスを上げる事?
• できるだけコストを抑える事?
• 自動化する事?
• コードを書く事?
違う気がする
ぼくらのミッション
• 本質的に僕らは事業でご飯を食べている
• 事業そのものの成長を妨げない
• 成長のスピードを上げる
これでしょう
まとめ
ぼくがおもうこと
• インフラエンジニアという単語に悲観せず愚直にやっても良い
• 覚えた技術は裏切らない
• 道具は道具でしか無い
• でも変化を避ける事はできない
• 機械でもできる仕事は更にドンドンなくなっていく
• 大事なことは自分達の事業を最大化する/スピードを上げる事
(ぼくたちはコストセンターなだけじゃない)
最後にいいた
い事は
インフラエン
ジニアは死ぬ
も生きるも
そんな括りも
うなかった
そこには得意な
技術領域の異な
るエンジニアが
いるだけ
じゃない
でしょうか
(弱気)

More Related Content

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