Infrastructure as Codeの課題
生産性や品質の向上を目的としてInfrastructure as Code参考1を試行導入するプロジェクトが増えています。しかしながら、管理対象数や変更発生の頻度が多くない場合は想定した効果を得られない場合があります。その主な理由は以下となります。
学習コストが必要
Infrastructure as Codeを実現するための仕組みや特定の言語仕様を理解することに時間を要します。担当者が変更となる度に発生するため学習コストの低減は重要な課題となります。
プログラミングが必要
すべてのITインフラの要素がInfrastructure as Codeに対応しているわけではありません。そのためプログラミングが非常に難しい場合があります。またITインフラの高度な設計要素をプログラミングにより試験することは容易ではありません。
プログラムの品質確保が必要
Infrastructure as Codeで使うプログラムはアプリケーション開発と同様に品質を確保する必要があります。またITインフラ変更の際に修正が必要にならないようプログラムを設計する必要があり、難度が高くなっています。
共通利用可能なITインフラモデルの整備
上記の課題を解決するためにNTTデータでは検証済のITインフラのテンプレート(リファレンスモデル)を整備し、このモデルに対しInfrastructure as Codeを適用しています。またリファレンスモデルで採用しているデザインパターン参考2、3を明記しており、要件にあわせて柔軟に変更することができます。
リファレンスモデルを利用することでプロジェクト個々にInfrastructure as Codeを一から検討する必要がなく、生産性や品質の向上効果を得やすくなります。実際にあるプロジェクトで利用したところ、従来に比べ約半分の工数で対応することができました。
今後はInfrastructure as Codeの適用範囲をさらに拡大させるとともにアプリケーション領域と統合することで、さらなる生産性や品質の向上を達成したいと考えています。