- 著者
-
宮下 剛輔
栗林 健太郎
松本 亮介
- 雑誌
- 研究報告インターネットと運用技術(IOT)
- 巻号頁・発行日
- vol.2014-IOT-24, no.15, pp.1-6, 2014-02-20
システムの大規模・複雑化に伴い,サーバの構築・運用を効率化するために,サーバの状態をコードで記述する手法が数多く提供されている.それらの手法を効率良く扱うプロセスとして,テスト駆動開発の手法をサーバ構築に応用した Test-Driven Infrastructure が提案されている.このプロセスを支援するテストフレームワークもいくつか登場しているが,あるものは特定の構成管理ツールに依存,またあるものは OS 毎の違いを自ら吸収しなければならないなど,汎用性に難がある.そこで,本論文では,特定の構成管理ツールや OS に依存することなく,サーバの状態を汎用的かつ可読性の高いコードでテスト可能なテストフレームワークを提案する.提案手法では,汎用性を高めるために,これまでの OS や構成管理ツール固有の振る舞いを整理して一般化し,運用業務で発生するコマンド群,特に確認作業に関するコマンド群を体系化・抽象化した汎用コマンド実行フレームワークを定義する.続いて,テストコード記述の抽象度を高め可読性を上げるために宣言的かつ自然言語に近い記法で汎用コマンド実行フレームワークを操作できる制御テストフレームワークを定義する.これにより,管理者が OS や構成管理ツールの違いを気にすることなくサーバの状態を容易にテストできるようになり,サーバの運用・管理コストを低減できる.また,フレームワークを用途別に分離して定義することにより,制御テストフレームワークを独自の記述に変更する事も容易である.提案するテストフレームワークを serverspec と名付けた.