運用自動化が実現できない本当の理由:多忙な毎日の中で、属人化した運用手順の棚卸し・標準化なんて無理
仮想化、クラウドの浸透により、コスト削減、ビジネスのスピードアップに対する期待が高まる一方で、運用管理作業は複雑かつ煩雑なものとなっている。こうした中、2009年ごろから注目を集めてきた運用自動化ツールだが、使いこなせている企業は多いとはいえない。その真因は何か? 運用自動化を実現できない理由から、ツール導入・活用のポイントを探る。
仮想化、クラウドの浸透がもたらした「システム運用管理の危機」
仮想化によるサーバー集約や、クラウドの「保有から利用へ」という考え方は、多くの企業にコスト削減というメリットをもたらした。加えて、ITリソースを柔軟・迅速に調達できることから、ビジネス展開のスピードアップも期待されている。だが一方で、こうしたメリットを阻害しかねないデメリットも顕在化している。その最たるものが、システム運用管理の複雑化だ。
仮想環境では単一の物理サーバー上で複数の仮想サーバーが稼働し、場合によっては1つの仮想サーバーが異なる物理サーバー間を移動するケースもある。これを運用管理する側から見れば、仮想サーバーという新たな監視対象が加わり、しかも物理サーバーとの関係が動的に変化するなど、仮想化はシステム運用管理の複雑化・煩雑化を招いたわけだ。
クラウドも同様だ。それまで企業システムは自社で保有するハードウェア/ソフトウェアで構成されるのが普通だった。それが、社外のクラウドサービスを利用することで、「他社が保有するシステム」も運用管理の対象になる。しかも近年は、複数のクラウドベンダーのサービスを併用する「マルチクラウド」の運用体制も増えている。
こうなると、運用管理者は物理・仮想の混在環境、社外の複数のクラウドサービスを併せて管理しなければならなくなる。つまり、仮想化やクラウドの利用が進めば進むほど、運用管理は複雑化の一途をたどり、従来通りの体制や人数での運用管理には限界が見えてくるのだ。
特に負荷が高まるのが、頻繁に発生する定型的な作業だ。例えば、サーバーの定期的なパスワード変更のタスク。仮想化の活用が進み、仮想サーバーの数が増えると、それに伴いサーバーのパスワード変更の作業も増える。その結果、パスワード変更ミスのリスクが高くなり、ミスが原因でシステム利用に混乱が生じる恐れもある。
日々のシステム監視タスクも、システムの複雑化により発生イベントが一気に増えると、もはや人手で対応するのは難しくなってくる。作業手順・ノウハウが明文化されていなければなおさらだ。だが現実には、作業手順・ノウハウが属人化し、可視化されていないことが多くの運用現場で問題になっている。
運用自動化を手早く導入・活用できる「JP1/Automatic Operation」
では、こうした運用管理の課題に対して、どのような対策が有効なのだろうか? まず必要なのは、複雑化・煩雑化した作業を、従来と同じか、より少ない人員でこなせるようにすること。もう1つが、作業の手順・ノウハウの属人化をなくすことだ。
この2つを実現するために最も有効なのが、これまで人手に頼っていた作業を自動化することだ。運用の自動化により、少ない人手で多くの作業をこなせるようになる他、人的ミスも防止できるようになる。また、特定の人員のスキルやノウハウに頼る必要がなくなるため、属人化も防ぐことができる。
周知の通り、こうした効果を狙った運用自動化ツールは、これまでも複数のベンダーから提供されてきた。いわゆる「ランブックオートメーション」と呼ばれる製品群だ。その多くは「これを使えば、煩雑・複雑な運用管理タスクの大部分を効率的に自動化できる」とアピールしてきた。だが現実には、これらの製品を使いこなして成果を挙げることができた企業は一部にとどまっている。理由としては、やはり「既存の運用手順・ノウハウの可視化」と「効率化・標準化」、さらには「ツール適用の難しさ」につまずいてしまった例が多いようだ。
そうした“現実”を見据えて、確実・効率的に導入・活用できるように開発されたのが、日立製作所(以下、日立)の運用自動化ツール「JP1/Automatic Operation」(以下、JP1/AO)だ。
図2 運用自動化ツール「JP1/Automatic Operation」の概要。あらかじめ定義した作業手順を自動的に実行する機能を持つ。作業手順の可視化・標準化やツール適用の難しさなど、運用自動化導入のハードルを下げるさまざまな配慮が盛り込まれている点が特長だ《クリックで拡大》
JP1/AOの機能をひと言でいえば、「事前に定義した運用管理のワークフローを自動実行できるツール」となる。ただし、パッチ適用など「単一のツールを使った単一の作業」の自動化ではなく、「複数のツールを使った、複数の手順を踏む作業」を自動化できる点がポイントだ。「仮想サーバーの追加」というタスクを例にとると、ハイパーバイザーに対する仮想サーバー生成のコマンドや、データストア作成のコマンドなどの入力が求められるが、JP1/AOは、そうした手順を定義しておくことで、最終的に仮想サーバー環境を準備するまでの一連のワークフローを自動実行する。
JP1/AOでは、こうした定義済みのワークフローを「コンテンツ」と呼ぶ。日立では自社データセンターや多数のユーザー企業のコンサルティング経験などを通じて、運用管理フローの豊富な知見を蓄積している。JP1/AOには、そうした知見を基に洗い出した「一般的な企業で頻繁に行われる定型的な運用管理フロー」を定義したコンテンツを多数用意しているのだ。さらに、同製品のサポートサイトから、ニーズに応じて開発・追加された最新のコンテンツを随時ダウンロード可能としている。
これらをそのまま適用するか、あるいは一部を自社に合わせてGUIでカスタマイズするだけで、ユーザーは簡単・迅速に、自社に即した効率的な自動実行ワークフローを定義できる。つまり、多くの企業がつまずいた「運用手順・ノウハウの可視化」「標準化」という運用自動化の最初のハードルを大幅に解消できるのだ。
こうしたワークフローは、GUIツール上に「部品として表示された個々の運用タスク」をドラッグ&ドロップで選択・配置し、線で結ぶだけで作成できる。このような機能は、JP1/AOに限らず複数の運用自動化ツールが備えているが、JP1/AOがユニークなのは、こうしたツールを使って、一から運用管理ワークフローを定義できるだけでなく、あらかじめ利用頻度の高い定義済みのワークフローを数多く用意している点にある。
他システムとの連携で、人の作業ステップも含めて一連のフローを自動化
実際、運用自動化は「運用手順・ノウハウの可視化」を行い、その上で「優先度の高いタスクから自動化する」といったステップがセオリーとされている。しかし現実的には、人・時間・コストが制限されている中で、日々の作業をこなしつつ作業手順の棚卸しから始めるのは至難の業だ。運用自動化ツールにしても、作業部品が数千個ある製品の場合、運用手順・ノウハウの可視化と整備はもちろん、粒度の細かい多数の部品の中から必要なものを選んでワークフローを一から定義しなければならない。JP1/AOはそうした課題を見据え、確実・効率的に自動化に乗り出せるよう配慮したわけだ。
また「運用管理作業は100%自動化できるわけではない」ことに着目している点もJP1/AOの大きな特長だ。例えば「仮想サーバーの配備」なら、リソース容量など求められたスペックの承認、障害対応なら目視による確認など、どこかで必ず「人の手を介した作業」が必要となる。しかし往々にして、この人手による作業ステップがボトルネックとなったりミスの発生源になったりするケースが多い。これも作業手順・ノウハウの属人化が大きな原因だ。特に日々行っている作業ならともかく、まれにしか行わない作業、あるいはトラブルシュートなど突発的に発生する作業などはルーチン化されていないだけにミスが発生しやすい。
そうした点を見据え、日立が提供しているのが「JP1/Integrated Management - Navigation Platform」(以下、JP1/IM - NP)というワークフローツールだ。JP1/IM - NPは、一連のワークフローや、個々の作業の詳細な手順、ノウハウなどを可視化するツール。これをJP1/AOと連携させることで、人手による作業ステップを含む、一連のワークフローを自動化できる。
図6 左側の画面イメージのように、「JP1/Integrated Management - Navigation Platform」(JP1/IM - NP)は全てのフローを可視化する。これと連携させることで、JP1/AOがワークフローを自動的に実行し、人の判断が必要なステップになるとJP1/IM - NPが人をナビゲートすることで、ミスのない運用作業を実現する《クリックで拡大》
例えば仮想サーバーの配備なら、リソースの切り出しなどはJP1/AOが自動的に行い、承認が必要なステップになると、JP1/IM - NPがあらかじめ定義した承認者に「作業プロセス」や「入力すべき情報」などを表示して作業をナビゲート。人手作業が終われば再びJP1/AOに引き継ぎ、仮想サーバーの配備まで自動的に行う、といった具合だ。これにより、システム運用管理全般の品質・効率を容易に高めることができる仕組みだ。
REST APIによる広範な連携インターフェース。OpenStack環境にも対応
こうした他製品との柔軟な連携は、JP1/AOの大きな特長であり、JP1/IM - NP以外にも、JP1シリーズの各種ツールと連携させることができる。さらに外部システムとの連携インターフェースをREST APIとして公開しているため、サードパーティー製ツールや、ユーザーが自前で開発したソフトウェアなど、広範なツールとの連携を可能としている。「Active Directory」と連携し、Active Directoryで管理しているユーザーおよびグループをJP1/AOで利用することもできる。管理対象側のサーバーにエージェントをインストールする必要がない点もポイントだ。
図7 REST APIの採用により、さまざまな既存システムと柔軟に連携できる。《クリックで拡大》※REST API(Representational State Transfer API):近年急速に普及しつつあるWeb APIの一種。RESTful APIと呼ばれることもある
例えば、社内で利用しているワークフローツールからJP1/AOを呼び出して運用管理タスクを自動実行したり、ユーザーが独自に開発した運用管理ポータルの画面上に、API経由でJP1/AOから取得したシステム稼働情報を表示させたりと、さまざまな連携パターンが可能。さらにはJP1/AOを、統合コンソール「JP1/Integrated Management」、サービスレベル管理「JP1/IT Service Level Management」、サーバー稼働管理「JP1/Performance Management」と連携させて、レスポンス悪化の予兆検知→原因究明→レスポンス回復といった一連の処理を自動化することもできる。
また、近年はサーバー監視、ネットワーク監視など個々の運用管理ツールにオープンソースソフトウェア(以下、OSS)を使用している企業も増えつつあるが、「複数のツールを使って、複数のステップを踏む作業」を自動化するためにはOSS同士の連携が不可欠となり、これには一定以上のスキルと時間が必要となる。REST APIを用いたJP1/AOはそうした高度なツール連携をより手軽・迅速に実現できる点で、優れた利便性を提供してくれるのではないだろうか。
導入事例も豊富だ。例えば、ある企業ではシステムのトラブルシュート作業をJP1/AOとコンテンツセットを使って短期間で自動化を実現。その結果、作業時間が約3分の1にまで短縮した(※)。これにより、運用管理作業の効率が向上しただけでなく、システムの稼働率が向上しユーザー部門の満足度も大幅にアップしたという。
2009年、運用自動化が国内で注目されて以降、運用自動化ツールは関心を集め続けてきたが、「導入のセオリーと現実との乖離(かいり)」が、ユーザー企業にとって大きなハードルとなってきた。JP1/AOは、そうした問題を解消する“現実的な運用自動化ツール”である点が、従来の他社製品との大きな違いだろう。
さらに、2014年9月30日に発売されたばかりの最新版、JP1/AO V10.5ではOpenStack環境のコンテンツも拡充。今後、本格化するマルチクラウド環境での運用自動化も実現可能とするなど各種機能を強化している。運用管理の複雑化という仮想化、クラウドの弊害を解消し、そのメリットを確実に享受する上で、JP1/AOは即効性が高くリーズナブルなソリューションといえそうだ。
※適用効果はユーザー企業の環境によって異なる
関連リンク
提供:株式会社日立製作所
アイティメディア営業企画/制作:@IT 編集部/掲載内容有効期限:2014年11月19日
Copyright © ITmedia, Inc. All Rights Reserved.