「DevOps」の概念は理解できても、技術への落とし込みは難しい
コンテナなどを利用した、クラウドネイティブ環境の導入は進んでいる。しかし、それらを活用するための「DevOps」や「NoOps」による“運用の自動化”は思うように進んでいない。
ITシステムの運用・保守やアプリケーション開発などを経験し、現在はSCSKでDynatraceの技術担当をしている粟津嘉大氏は「DevOpsやNoOpsは開発や運用の新しい概念であり、特定の技術を指すものではありません。そのため具体的な技術に落とし込むことが難しいのです」と指摘する。概念は理解できても、実際に自分たちで運用しているシステムに導入するための“How”の部分がハッキリとしていないのだ。DockerやKubernetesなどをインストールする方法は調べればわかる。しかし、それらを設定した瞬間に運用体制がDevOpsやNoOpsに変わるわけではない。
「導入の先まで見越さなければ、DevOpsを組織に浸透させることはできません」(粟津氏)
また、IT業界における“箱売り”のようなビジネスモデルにも問題があると指摘するのは、Dynatraceのプリセールスエンジニアでエバンジェリストとしても活躍する渡邊孝典氏だ。
基本的にはシステム構築だけを目的とし、その開発スタイルもウォーターフォールが一般的。その従来的なやり方が染みついたまま、新たに使うツールだけはモダナイズしようとするために大きなミスマッチが生まれているという。
さらに「従来のウォーターフォール開発では『絶対に壊れないシステム』を構築しようとしており、その前提で運用も考えられています」と、レッドハットで技術営業を担当する手塚由起子氏も指摘する。その一方、クラウドネイティブな運用では「壊れることは必然であり、もし壊れたとしても『いかに早く復旧させてサービスを停止させないか』が重要なのです」と話す。
これまで多くの企業において、運用よりも開発に重きを置いてきた傾向があり、人材投資も開発だけで運用に投資されることは少なかった。むしろ、“運用はコスト”と捉えられるケースも多々あるため、運用の領域は日常的に人手不足だ。DevOpsの考え方が先行する欧米などでは、Ops(=運用)のスペシャリスト育成が行われていることを鑑みると、日本が出遅れている要因だとも考えられる。