“~クラウド化から見るインフラエンジニアの今後~ JAVAを習得し開発へシフトする方々が増加しているよう。”

クラウドとは??

クラウドとは、一言でいうと「ユーザーがインフラ※やソフトウェアを持たなくても、インターネットを通じて、サービスを必要な時に必要な分だけ利用する考え方」のことです。
クラウドは、クラウド・コンピューティングと呼ばれることもあります。
※ インフラ・・・サーバーやストレージ、ネットワークを指します。
クラウドの定義とは難しそうと思われた方も多いと思いますので、もう少し具体的に説明いたします。
今までは、ハードウェアを購入したり、ソフトウェアをパソコンにインストールしたり、ソフトウェアのライセンスを購入しなければ、サービスが使えないことが一般的でしたが、
クラウドの出現によりハードウェアを購入したり、ソフトウェアをインストールしなくても利用できるサービスがたくさん生まれました。
後者の「ハードウェアを購入したり、ソフトウェアをインストールしなくても利用できるサービス」が、クラウドサービスと呼ばれているものです。
なぜクラウドと呼ばれているのかは諸説ありますが、インターネット(雲)の向こう側のサービスを利用していることから、クラウド(cloud=雲)と呼ばれるようになったともいわれています。
この他にもcrowd(クラウド)と書いて、集約したシステムという意味でクラウドと呼ぶようになったともいわれているようです。

インフラエンジニアの働き方

ITインフラとは、ネットワーク、サーバー、ソフトウェアなどのインターネットサービスの提供に欠かせない基盤のことを言います。
この基盤をもって、ユーザーに対してwebサービスやアプリを提供しています。
ITインフラには、さまざまな通信ルールやサービスがありますが、クライアントとサーバーがデータをやり取りするためのシステム全体を、ITインフラと呼びます。
インフラエンジニアは、会社や組織で目的をもってITインフラを作っています。その目的に対し、どのような機能や性能が必要なのか、要件として書き出していきます。
要件が決まったら、どのようなインフラなのか、どのくらいの予算に設定するのか、どのくらいの期間で作るのかを設計図に書いた後、作り始めます。

インフラエンジニアの役割は、大きく3つに分かれます。まずはインフラ設計です。
情報システムの基盤を作るために必要な通信ネットワークやコンピュータの導入や調整を考えながら設計書に落とし込みます。
次にインフラ構築を行います。作成した設計書をもとに、必要となるソフトウェアの発注から機器の組み立て、取り付け、設定を行います。
最終的に負荷テストを行い、構築したインフラによって問題なくシステムが稼働するかを確認します。
また、システム構築が終了しても、運用・監視・保守・障害対応が発生します。障害が発生したときは、素早く復旧作業を行い、修正点があれば都度改善を行います。

インフラエンジニアは、必要な機器を現場に運搬し、組み立て作業を行うこともありますので、パソコンの前に座って頭を使うだけの仕事ではありません。
実際の配線を行うこともあります。全体を見通す目と、細部まで見極める目の両方が必要になる仕事です。

サーバーのクラウド化

仮想サーバを提供するクラウドサービスがさまざまな領域で浸透し、実際にハードウェアを触ることなくインフラを構築することが可能になりました。
さらに最近では、サーバリソースに加えてOSやミドルウェアまでを含めて提供するPaaSといわれるサービスも広まっており、
ハードウェアやOSの知識や経験が乏しくてもそれなりのインフラを整えることが不可能ではなくなっています。

このような背景から、インフラエンジニアの仕事も大きく様変わりしつつあります。
従来であれば、要件に応じてサーバを選定し、それをデータセンターのラックに収容してネットワークに接続し、そしてOSやミドルウェアをインストールして、といった作業を行っていました。
しかし現在では、クラウドサービスのコントロールパネルにWebサーバでアクセスすれば簡単に仮想サーバを立ち上げることができ、
ラッキングやケーブルの配線といった作業は不要です。OSやミドルウェアがあらかじめインストールされたテンプレートを利用すれば、それらのインストールや設定すら行う必要はありません。

では、従来のインフラエンジニアのスキルやノウハウは不要になったのかというと、そんなことはないでしょう。
仮に実際にサーバを触る機会がなくても、CPUやメモリ、ストレージといったハードウェアの知識、あるいはOSやミドルウェアをセットアップして設定するノウハウが必要となる場面は数多くあります。

インフラエンジニアの今後

インフラエンジニアの将来性については悲観的な意見が少なくありません。
例えば、
・仮想化、クラウド化が進む今後、ファシリティや物理サーバーの設計・構築に関わるインフラエンジニアのニーズは減少していく
・仮想化、クラウド化に伴いシステム構築が大幅に簡易化され、それによってエンジニアの単価も下落する
・安価なオフショア開発が進み、国内のエンジニアに対する需要は激減する
このようなことが挙げられます

逆にメリットとしては

・システムを動かす上ではインフラ構築は必須である
・インフラ構築はセクキュリィーも含めた構築が必要となりインフラエンジニアの領域は益々広がっていく
・金融取引、仮想通貨等でシステムのグローバル化が進みそれに伴いインフラ構築の分野でも国際基準のセキュリティ対策を含めたインフラ構築が求められる

今はAWS(Amazon Web Service)のようにランニングコストを抑えることができ、メンテナンス性も高く、導入・拡張も容易な仮想化・クラウドシステムが主流であり、
ITシステムの新規導入プロジェクトはもちろん、リプレースプロジェクトにおいても仮想化プラットフォーム上に構築するのが当たり前になっています。
そうなると、データセンターのファシリティ設計やハードウェアの物理設計といった仕事は激減すると考えられます。
また、仮想化システムならサーバの構築からOSのインストールまでワンクリックで自動化することも可能であり、
高度な専門知識を有するインフラエンジニアに仕事を依頼する必要性もないように思われます。
では、インフラエンジニアの仕事は将来的にはなくなるかというと、全てのインフラが仮想化されたとしても、インフラエンジニアの仕事はなくなることはないでしょう。

クラウドは確かにコストの面でも利便性の面でも非常に優れたシステムである反面、一つの基板上に複数のシステムが構成されている仕組み上セキュリティの面で不安が残ります。
また、どこか1か所に発生した不具合がすべてのシステムに対して影響を及ぼす可能性があるという信頼性の面でのリスクも高いという問題があります。
そのため、金融システムや官公庁の重要システムといった高いセキュリティと信頼性の求められるシステムの基盤には適しません。
このように、どれだけクラウドが浸透したとしてもインフラエンジニアの需要がなくなることはなく、将来性について悲観的になる必要はないですが
確実に業務範囲は変わり、今までのような人数が必要というわけではないでしょう。

今後も中長期的な視野でエンジニアとしてのキャリアを考えるのであれば、新しい分野のスキルや知識を常に意識して技術力+αの知識や経験を積極的に身に着けるのがよいでしょう。