インフラエンジニアの世界
IT技術者というと世間から見たら、要件定義やシステム設計をおこなうシステムエンジニアと、それを実装するプログラマーしか見えてないと思うんですよね。でもその基盤を動かすインフラエンジニアという人たちが全体の10パーセント弱(肌感)存在しています。
インフラエンジニアと言ってもまたそこから役割分担があって、物理サーバーやOSに強いサーバーエンジニアと、ネットワークに強いネットワークエンジニアがいます。大昔は物理サーバーとネットワークしかインフラに無かったので、大体はこの二極化でした。ネットワークエンジニアはスイッチやファイアウォール、ロードバランサーくらいまでは自分の領域としてくれていますが、OSやミドルウェアのことになると、それは私の領域ではない発言が出てサーバーエンジニアをブチ切れさせること請け合い。逆にネットワークエンジニアはサーバーエンジニアがなんでもネットワークのせいにしてくるのでこちらもブチ切れ。こんなふうにサーバーエンジニアとネットワークエンジニアは犬猿の仲であることは、「IT業界あるある」とも言えます。
で、ここ最近は仮想化環境が一般化し、物理サーバーだけではインフラが動きません。後ろにストレージサーバーなるものが現れ、ファイバーチャネルという光ケーブル接続に代わって、iSCSIというTCP/IPで物理サーバーと接続できる規格が大流行りし、爆発的に普及しました。物理サーバーとストレージサーバーの間は、普通のL2スイッチだけあればいいので、サーバーエンジニアとネットワークエンジニアがいれば、設計・構築できてしまうのです。
誰がストレージの面倒を見るか
ここで不幸なことが一つ。ストレージサーバーは誰が面倒をみるか。ストレージサーバーは物理サーバーに専用のファームウェアとOSを動作させる代物です。そのうえでやっていることはiSCSIでボリュームをホスティングすることなので、そりゃサーバーエンジニアでしょということでサーバーエンジニアがアサインされることになります。
サーバーエンジニアが仮想環境の用途を考え、ストレージサーバーのボリュームの切り出しを行い、自由気ままに設定を加えていくことになります。ここで、問題が既に発生しています。
ストレージサーバーは独自のファームウェア、独自のOSですので、きちんとストレージサーバーベンダーから教育を受けていないと、ボトルネックを生み出す設計をしがちです。しかも経験がないので障害が発生してもその切り分けに相当手間取ります。その上動いているものを触って何か破損させてしまったりしたら、経営にも関わるかなりの損害を出すことになってしまいます。そして、ストレージサーバーは容量の大きいボリュームを抱えていますので設定変更しても反映させるのにかなり時間がかかるということもあります。
一方で、ストレージサーバーと物理サーバーの間は、L2スイッチなどのネットワークで接続されていると言いました。そうです。サーバーエンジニアだけでは問題の切り分けはできずネットワークエンジニアのスキルも必要です。もしネットワーク周りで障害がおきてもストレージサーバー障害に見えてしまうのです。
サーバーエンジニアはそもそもストレージサーバーエンジニアではないのです。そしてネットワークエンジニアはサーバーのことがよくわからないという体なので、仮想環境やストレージサーバーのことを知らないまま問題解析に突っ込まれることになります。
ということで、本当なら、サーバーエンジニアとネットワークエンジニアとは別に、ストレージエンジニアという職域がインフラの世界では本当は必要なのです。
にもかかわらず、ストレージエンジニアという名前は一般的ではありません。原因としては、問題が発生しない間はやることがないからです。運用手順さえできればサーバーエンジニアでも扱えるのがストレージです。したがって、ストレージで問題が起きると、「サーバーもネットワークも両方できるスーパーマン」がストレージに取られることが多く、ストレージの問題は経営問題だと言い切る、あるクラウドベンダーを見たことがあります。
昔ながらの職制ではストレージで問題が起こる
IT業界の中ではインフラエンジニアはマイノリティーであり、しかもその中でサーバーとネットワークで職域が分かれ、しかもストレージのお守りが大変負担になっている。その中で、経営者はコストを安くせい、開発者はコンテナだクラウドだと言ってくるこの世の中で、Zenlogicがストレージ周りで苦労していることは不思議ではないと思っています。
AWSやAzureなど、メガパブリッククラウドは、ストレージに対して、ヒト、モノの投資を恐ろしくやっているはずです。サーバーやネットワークとは全く別物として。
一方でホスティング業者は、以前のサーバーエンジニア、ネットワークエンジニアという枠のままなので、ストレージで大きな問題が起こりがちです。両方わかっていないとストレージ周りは最適化できないのです。
ストレージエンジニアという仕事は年収2000万くらいもらえる価値があると思います。ストレージがコケたらこんな騒ぎになるのですからわかってもらえるのではないかと思います。でも世の中はそうなっていません。だから、私はストレージに十分投資がされている、グローバルなクラウドしか使うつもりがありません。
もしくは、ストレージサーバーレス、つまり物理サーバーを並べてオンプレでシステムを組む方がよほど安定すると思っています。社内に専門家が確保できないならそうすべきと思います。
ストレージサーバーがあまりに面倒だからということで、自動制御をうたったティントリも、もはや風前の灯火ですから、本当に厄介な世界です。
もし貴社のストレージサーバーが安定運用されているとしたら、それを守っているエンジニアには相当な給料を支払ってあげてほしいなあと思います。ほんと大変なんですよストレージって。
追記
お読みいただきましてありがとうございます。
コメントへの感想を書きました。
「インフラエンジニアの独り言、ストレージは盲点になりがち」コメントへの感想 - orangeitems’s diary
新人エンジニアのためのインフラ入門 ThinkIT Books