では、運用自動化ツールにおいては、OSSと商用ツールをどのように使い分ければよいのだろうか? 先のような運用現場の不安感を払拭(ふっしょく)するためには、まず「運用自動化の対象となるシステム」に求められる要求仕様を明確にし、採用候補の運用自動化ツールと照らし合わせて適・不適を判断すべきである。ここでは弊社がOSSの採用検討の際に取っているアプローチを紹介しよう。
〇ポイント1:「運用自動化の対象となるシステム」の非機能要求レベルを知る
まずは、「運用自動化の対象となるシステム」の非機能要求レベルを知る必要がある。運用自動化ツールは、その要求レベルを達成するための重要な構成要素であるためだ。それに応じて、運用自動化ツール自体に求められる非機能要求レベルも決まってくる。例えば「サーバー監視ツールの性能拡張性はどの程度か」「バッチジョブ実行ツールの障害時停止時間はどの程度まで許容できるのか」などだ。
ただ厄介なのは、非機能要求レベルの見極めだ。「レベルが高い方が良い」に決まっているためである。障害時の停止時間も「ゼロが良い」、性能拡張性も「高い方が良い」に決まっている。ある意味分かりやすいのだが、高い非機能要求を追求すると、「運用自動化の対象となるシステム」も「運用自動化」も実現コストが高くなる。その点を考慮して、適切に要求レベルを設定するのが難しい。
その指針となるのが、以下の「システム基盤の非機能要求に関するグレード表」だ。これを基に「運用自動化の対象となるシステム」の非機能要求を判断する。その上で、運用自動化ツールの非機能要求も考慮する。
その点、OSSは比較的シンプルな機能を実現したものが多い。非機能要求が高い場合は商用の方が対応しやすく、必要な機能を欲張り過ぎなければOSSを採用しやすくなる。
参考リンク:システム基盤における非機能要求の見える化ツール(IPA)
〇ポイント2:「なるべく広い範囲に適用できる」ツールを選ぶ
二つ目のポイントは、運用自動化ツールの適用範囲だ。非常に高い非機能要求レベルや、多くの機能が求められるシステムのサーバー/サービスは“特別なもの”として切り分け、その他の多数派のサーバー/サービスを支えられる運用自動化ツールを選択する。ポイントは、なるべく広い適用範囲で、適切なコストで導入できるツールを選ぶこと。世の中で最強のツールを選ぶことではない。前述のように、管理ツールは少ない方が運用効率が上がることは自明だからだ。
特に、「全システムの自動化を100%確実にできなければならない」と考えてしまうと、一部でしか使われないスペックの運用自動化ツールを複数抱えてしまうことになりかねない。例えば、バッチジョブの管理・実行機能は全てのシステムで必要ではないはずだ。このような観点から、一つの運用自動化ツールでどれほどのシステムをカバーできるかを考える。
その点で、OSSは前述の通り、シンプルな機能を実現したものが多いため、「あれもこれも必要」と機能要求を高め過ぎると採用しにくくなる。適用範囲を広げる上で複数の機能が必要になる場合は、運用効率・コストとのバランスを考えて、機能が充実した商用ツールが選択肢として候補に挙がることになる。
ただ、運用自動化ツールに限ったことではないが、机上で考慮するだけで後悔しない判断ができるかというと、少々難しい面もある。機能面についていえば大方の部分は分かるだろうが、それでも「それらは期待通りの機能なのか」を判断しにくいことが多い。
さらに、非機能面についていえば、それが達成できるかどうかは実機で確かめてみるしか手段はない。ユーザビリティ(使用性、使いやすさ)はカタログスペックではまず分からない。特にOSSの活用を考えている場合には、この「実際に試して判断する姿勢」が重要になる。
では、こうした観点を実際の運用現場で活用するためには、どのようなアプローチで考えればよいのだろうか? 以降では4つのケーススタディを基に、OSSと商用ツールの使い分けを考えてみよう。
Copyright © ITmedia, Inc. All Rights Reserved.