【特集記事】クラウド時代のインフラエンジニアに必要なもの

2008年にGoogleとAmazonが クラウドコンピューティング のサービスを正式にリリースしてから早10年と少し経ち、今やクラウドは社会のあらゆる場所に浸透してきました。Google、AWS、Microsoft、Oracleなどの大手クラウドサービスプロバイダは今こうしているうちにも世界のどこかのデータセンターで着々とクラウド基盤の拡張を進めています。

また、先週IBMがRed Hatの340億ドル(約3.7兆円)規模の買収を完了し、社運をかけてオープンクラウドソリューションの提供を開始しようとしています。

IBMによると、多くの企業におけるクラウド化への道のりはまだわずか20%程度であり、クラウドはまだ非常に大きな成長の余地があると言います。

Monitor Binary Cloud Computing Binary Code Cloud

これらの動きを見ても分かる通り、クラウドビジネスは紛れもなく拡大を続け、企業もそれに必要な人材の拡充を継続していくでしょう。今後、クラウドエンジニアの需要も更に伸びていくと思われます。

クラウドエンジニアはクラウド上でのネットワーク構築や保守などをおこなう、クラウドに精通したエンジニアの事を言います。クラウドが普及する数年前までは、サーバーを自分の会社で管理していましたが、現在ではクラウドを利用したシステムの開発が徐々に一般的となってきました。ITインフラに関わるエンジニアにとってはちょうど今が過渡期の状況であると言えます。

ITインフラ運用形態の変化

少し歴史を振り返ってみましょう。

1964年にIBMがリリースしたSystem/360から始まったメインフレームは、エンジニアは通信回線を通じて入出力端末(ターミナル)を接続し、 電算室に設置された中央の大型ホストコンピュータが集中的に処理を行うといった運用が一般的でした。

その後、 1980年代中頃から1990年に入ると、分散化の時代に入り、メインフレームからダウンサイジングされたPCサーバが使われるようになり、WindowsNTのリリースから各企業で自社内サーバールームの構築が盛んになり、企業のIT担当者の業務範囲は一気に広がっていきました。

IBM System/360 – Wikipedia

サーバールーム – Wikimedia Commons

その頃のインフラエンジニアの担当領域は、ネットワーク、サーバー、そしてファシリティなど多岐に渡る、システム全般の設計を行い、導入、そして運用を行っていました。

その後、World Wide Web、インターネットの普及が始まり、 1995年にWindows95が発売される前年の 1994年にAmazonが設立されましたが、クラウドが始まるのはまだもう少し先のことでした。

クラウドという概念はGoogleが2006年に提唱したのが始まりで、本格的なクラウドの普及はその数年後からであり、クラウドの歴史はまだ始まったばかりです。

歴史をまとめると、メインフレームからクライアント・サーバ方式による分散化、そして仮想化を経て、現在ではご存知の通りクラウドが全盛です。更に最近では「 サーバレスアーキテクチャ 」といわれるサーバーという概念すら打ち消したアーキテクチャまで出てきており、ますますインフラの概念化・ブラックボックス化が進んでいます。しかし一方では、 IoT – エッジデバイスが要求する膨大な双方向 ビッグデータ を 低 レイテンシ で処理するニーズから、 エッジコンピューティング という、再度オンプレにシステムが分散化する動きも出始めています。

このように、コンピュータシステムは集中⇒分散⇒集中、そして再度分散の方向へ歴史を繰り返しつつ進化をしてきています。

集中と分散を繰り返すコンピューティングの歴史

物理インフラを知らないエンジニアが増えている?

Question Mark Face Networked Woman Connection

さて、近年のクラウドの普及 により、 身近にあった物理インフラがクラウド上に置かれ、既にITベンダーやユーザー企業内ではハードウエアやOSや 実際の物理インフラを知らないインフラエンジニアが現れつつあるようです。

特に若手のエンジニアはクラウド関連の技術には詳しいが、 実際のサーバーを触った経験がない人もいるようで、企業のIT部門の一つの課題になっているようです。

しかも驚くべきことに、中にはサーバーやネットワーク機器を触ったことがないばかりか、そもそもそれがどのような形状や構成であるかすら知らないエンジニアもいるようです。

また、実際にデータセンターに立ち入った事がないエンジニアの人も多いと思います。

従来のインフラエンジニアの業務範囲は、社内ITネットワークインフラの基盤全体の設計・構築・運用保守でした。

例えば、ネットワークやサーバー・ストレージのハードウェア構築及び管理、OSやミドルウェアの設定、更にはそれらITインフラデバイス間のネットワーク配線、そして、それら重要なインフラを正常に稼働・維持する為に小型 UPS で電源の冗長化構成を組んだり、更にはセキュリティ管理やサーバールーム内の温度環境の適切な維持等、非常に多くの作業を強いられていました。

このように、従来のインフラエンジニアは日常の運用の中で、IT基盤の設計・構築から非常に多岐に渡る領域のトラブル対応までをこなしてきました。これは、サーバー上で動作するミドルウェアやアプリケーションの管理・運用だけではなく、サーバーのハードウェア・OS障害やネットワークの障害、あるいは場合によっては、物理的なケーブリング配線のエラーや、電源や環境に起因した障害対応なども含んでいました。

現在、これらの「厄介な」インフラ設備がクラウド上に置かれたことで、インフラエンジニアを悩ませていた問題からは解放されました。

しかし、業務の100%全てがクラウド環境上でのシステム構築・拡張やメンテナンス業務になっていれば良いのですが、実際にはそうではありません。企業のクラウド化はまだ2割程度と道半ばであり、クラウド化が進んでいくであろう今後においても、オンプレミス環境は必ず残っていくと思われます。

フルスタックな知識を持つことの重要性

では、実際どのような問題があるのでしょうか?

まず、一つ目の問題として、何らかの障害に遭遇した時の対応力に影響が出てきます。

もし物理インフラにまつわる様々なアーキテクチャや基本理論、物理構成などを理解していないと、 仮にクラウド環境上で 障害が発生した場合の切り分けや対処を行う上で、何が根本原因であるのか?を把握する必要がありますが、勘所がつかめず、より迅速な対処ができない可能性があります。もちろん勘所には、過去実際にトラブルシュートで積んだ現場での苦い経験がある程度必要ではあるので、それを今から経験積むのは難しいですが、最低限の基本理論は理解しておくべきです。

クラウド上で障害が発生した際の原因特定は、オンプレミスと違いサービスを利用している企業ではできません。もちろんクラウド事業者からの障害アナウンスはありますが、障害についてのあれこれを解説はしません。よって、企業側には状況に応じた臨機応変な対応が必要になります。

それにはやはり、ベーシックな知識が必要です。

例えば、ネットワーク上のデータ通信が良い例です。

コンピュータ間のデータ通信は、 OSI階層モデル や TCP/IP プロトコル・スイートで定められたルールに従い処理されます。

レイヤ7のアプリケーション層にデータが届けられるまで、レイヤ1の物理層から発信された電気信号が符号化され、符号化されたフレームを異なるネットワークの指定アドレスのホストに届ける為にパケット化され、更にホストに届いたパケットはTCPやUDPのポート番号で分類され、 SSL で暗号化され…、といった仕組みの理解が無いと、原因究明に困ってしまいます。

アプリケーションが正常に動作しない原因は、アプリケーション自体のバグや設定ミスが原因であることもありますが、原因がネットワークに関係する場合、それが暗号化の問題なのか、ポート指定の問題なのか、ルーティング上の問題なのか、それとも単純にケーブルが抜けているのか?(話が少しそれるが、実はこれが原因であることが意外に多い)など知識と経験と勘を頼りに切り分けを行う必要があります。

オンプレミスのシステムで、ハード/ミドルウエア/アプリケーションという構成を知っていれば障害発生時にその知見が役立ちます。

考えられる2つ目の問題として、オンプレミス設備の設計・構築・運用業務が依然として要求されるシチュエーションがある、という事実です。

企業のITインフラ基盤は100%クラウド化されているわけではありません。 現在、企業はクラウドとオンプレミスを組み合わせたハイブリッドITインフラ基盤を運用しています。 一部の例外を除き、さまざまな理由によりオンプレミス環境は依然として残ります。また、 エッジ・コンピューティング 環境として、オンプレミス設備を新たに構築するケースも増えてくると思われます。

このように、いわゆる「 フルスタックエンジニア 」は企業にとって今後更に必要な人材として求められていくでしょう。

ITインフラは全ての要素が複雑に絡み合って構成されています。フルスタックエンジニアとして、あらゆる領域の知識を持つことで、システム全体を俯瞰できるようになり、全体最適に向けてのアクションもとれるようになります。

現代のITインフラを支えるデータセンターの技術を学ぶ

クラウドであれ、ハウジングであれ、ホスティングであれ、全てのITエンジニアは普段の業務の中で、毎日必ずどこかしらのデータセンターにアクセスをしています。クラウドではインフラ部分はブラックボックス化され、通常、エンジニアが敢えてそこを知らなくても特に問題にはなりません。しかし、実際にデータセンターがどのように構成され、今自分がアクセスしているプラットフォームがどのようなサーバー構成で動作しており、どのようなネットワーク経由で今目の前に到達しているのか?を理解することは重要です。

もちろん、「そのようなことはクラウドプロバイダー、インフラ提供ベンダーのエンジニアだけが知っていれば良い、クラウドエンジニアはインフラがどうであれ知る必要は無い。」という反論意見もあるかと思います。

GoogleやAWS、Azureを含むクラウドサービスもしばしば障害に見舞われており、被害を被るのは利用ユーザー側です。障害が発生した際に自社で出来る範囲の対処を迅速に行うためには、やはり全体を俯瞰でき、迅速に対処するための知識や経験であると考えます。


【直近のクラウドサービスに関連した障害事例】


AWSなどクラウド系の資格以外で、Ciscoをはじめとしたネットワーク系の資格やMicrosoft、Oracle、LPICなどのOSやミドルウェアの知識や資格の取得、そして実務経験の習得はもちろん最も重要です。

そして、通常エンジニアはあまり足を踏み入れない領域であろう物理層インフラに関する知識を習得することで、ITインフラ・システム全体を完全に俯瞰し、コンサルティングが可能なレベルのエンジニアになることができます。

本来、特に物理インフラに関する知識の習得は、特殊な環境での実務経験を積むしか方法がありませんでした。しかも、通常、関係するベンダーやユーザーにしか入室を許可されていないデータセンター設備に関する知識となれば更に困難です。

このような背景から、データセンター・インフラの知識や経験を持つエンジニアはごく限られた一部の人員しかおらず、今後の技術者人材不足が課題となっています。

そこで、イギリス・ロンドンを拠点とするData Center Dynamics社は、「DCPRO データセンター教育・資格」コースをグローバルに展開し、人材育成に力を入れています。

DCPROでは、データセンターインフラの設計から運用に至るまで、普段中々身に付けることができないデータセンター物理インフラに関する知識、最新技術やベストプラクティスなどの習得ができます。

DCPROデータセンター教育・資格 – DCPRO

DCPROは世界中で最もスタンダードなデータセンターインフラエンジニア向け教育コースとしての知名度を確立しており、世界中で12,000名以上のエンジニアや関係者が受講してきました。

DCPROは2017年以降日本向けにローカライズされ、国内での受講も可能となっています。既に200名弱のデータセンターに携わるインフラ、ファシリティエンジニアの方々が受講してきました。

これからのクラウド時代、ITインフラに携わるエンジニアにとって、ますます見えずらくなる物理インフラの技術知識の習得は更に重要性を増していくと思われます。

そして、一方で人材不足が深刻な課題になりつつあるデータセンターサービスプロバイダー自体で働くインフラ・ファシリティエンジニアの育成にも役に立っており、業界の下支えになっています。

DCPROについての詳細やお問い合わせはこちらのページからご覧ください。

DC ASIA