構築・設定・運用・障害対策まで、今すぐできるクラウド時代の運用自動化入門特集:運用自動化ツールで実現する、クラウド時代の運用スタイル(5)(3/3 ページ)

» 2015年01月09日 19時00分 公開
[高橋和也TIS株式会社]
前のページへ 1|2|3       

運用自動化を挫折せずに進めるための3つの注意点

 以上のように、システム構成が頻繁に変動することを前提として運用を行うためには、構築、設定変更、テスト等の作業の自動化は欠かすことができない。しかし実際に自動化を行おうと思うと、さまざまな困難に直面する。

 運用を自動化する上で、最初に直面する課題は、自動化を行うための知識を持った人員を育てるのが難しいという点だろう。ひと口に運用自動化といっても、それを実現するためのツールやサービスはさまざまなものが存在する。それらのツールの特性を踏まえた上で適切なツールを選択し、それを使いこなせるようになるまでには相応の期間が必要になる。

 また、各種ツールのバージョンアップも精力的に続けられており、時折仕様が変更されることもあるため、バージョンアップによって何が変わったのかも定期的に押さえておく必要がある。こうしたツールは実際に使ってみないとなかなか経験を積むことができないが、知識がないとなかなか実際に適用することができないというジレンマを抱えている。

 もう一つの課題として、最初に自動化を始めるまでのハードルが高い点も挙げられる。自動化のためのコードを書くのは、単純に手作業による作業内容を手順書にまとめるよりも多くの工数を要する。特に、実装者が自動化ツールにまだ習熟していない場合はその傾向が顕著である。運用を自動化することでその後の運用工数を削減し、削減した時間を元手に新たな改善を行うのが理想的なサイクルだが、実際にそのサイクルを回し始めるまでには多大な労力を要する。この最初の壁を乗り越えられないと、自動化を始めるところまで行き着かず、従来通りのやり方に戻ってしまう可能性が高い。

 こうした課題を乗り越えるためには、以下のような点に注意する必要がある。

1. 運用自動化もスモールスタートを心掛ける

 必ずしも全ての運用作業を自動化することが最適であるわけではない。クラウドの特性を生かし、ビジネス環境の変化に応じて動的に構成を変更するためには運用自動化が欠かせないが、一方で、将来にわたってシステム構成を変動させる可能性が低いシステムであれば自動化の優先度は下がる。そうしたシステムにおいても運用自動化によって人的ミスを削減するなどさまざまな恩恵は受けることができるが、工数に見合う効果が得られるかの検討が必要になる。

 まずは「繰り返し何度も実行することになる作業」「長時間を要する作業」「人的ミスが生じやすい作業」などから自動化を始め、経験を積みながら徐々に適用範囲を広げていくことが望ましい。自動化ツールに不慣れな間は、適用が簡単な単純作業や他に影響が出にくい作業から自動化を始め、自動化が難しいところは割り切って従来通りの手順で行うというのも一つの選択肢である。

2. 既存の資産やクラウド事業者などが提供するサービスを最大限に活用する

 従来の運用現場においても、運用作業をスクリプト化したものが活用されていることは少なくない。そうした資産があるなら、なるべくそれらの資産をそのまま生かしやすい自動化ツールを選択することで、運用自動化の実現のために行うべき作業を削減することができるだろう。全ての作業を特定のツールに集約して行うのは理想ではあるが、最初からそれを実現しようとすると、途中で頓挫してしまう可能性も高まる。それを実践するのはある程度自動化の勘所をつかんでからでも遅くはないだろう。

 また、クラウド事業者が提供するサービスや、その他の自動化を支える有用なツールがあれば、それを利用するのも有効な選択肢となる。クラウド上のリソースはAPIを呼び出すことでプログラムから動的に制御できるが、その制御を全て自前で行うと複雑な処理になってしまい、維持管理が難しくなる。

 例えばAWSであれば、「Elastic Load Balancing」や「Auto Scaling」の機能をうまく活用すれば、負荷に応じて動的に台数を変動させ、障害が発生すれば自動的に新しいインスタンスを立ち上げて復旧させるシステムを簡単に構築することができる。また、例えばChefであれば、「Chef Supermarket」において、先人の知恵が詰まった「Cookbook」と呼ばれる自動化のためのスクリプトが数多く公開されている。こうしたサービスやツールをうまく活用できれば、実際に自動化を始めるまでのハードルを下げることができる。

3. 継続的に改善を続けられる体制を維持する

 自動化された運用を維持し続けるためには、最初に各種作業を自動化して終わりにするのではなく、運用手順の変化やツールなどのバージョンアップに合わせて、継続的にコードなどの修正を行っていく必要がある。従来の手順書ベースのやり方であれば、何を変えるべきかが分かっていれば、手順書の更新はそれほど難しい問題ではなかった。しかし、自動化された作業を修正するには、運用自体の知識に加え、使用している自動化ツールなどの知識もある程度必要になり、求められるスキルレベルも高くなる。そのため運用作業自体は自動化することで属人化から開放されても、そのコードの維持管理が新たな属人化の温床となりかねない

 「変化に合わせて、自動化のためのコードを更新し続ける体制」を維持することができなければ、せっかく自動化した運用作業も従来のやり方に逆戻りしてしまう。そうならないためにも、継続して改善しなければ運用自動化は実現できないという意識を持って、自動化されたコードがブラックボックスにならないように維持し続けていくことが重要だ。

まずは簡単なところから実践してみよう

 ビジネス環境の変化が激しい昨今では、迅速にサービスを立ち上げ、拡大し、撤退できるクラウドの活用は、新しい取り組みを始める上で非常に魅力的だ。構成の変更が自在なクラウドの特徴を最大限に生かすためには、運用面もそれに対応するための自動化が欠かせない。

 運用自動化は非常に労力のかかる作業ではあるが、一度軌道に乗せることができれば、それに見合った恩恵を得ることができる。まずは簡単に手を付けられるところから始めてみてはどうだろうか。

著者プロフィール

▼高橋 和也(たかはし かずや)

TIS株式会社

コーポレート本部 戦略技術センター所属

運用業務やAWSをはじめとするクラウドサービスの検証を経て、クラウドやOSSを 活用したシステムの設計・構築に従事。現在は様々なOSSを駆使してインフラ・ 運用のパターン化、自動化を実現するクラウドオーケストレーションツールである「CloudConductor」の開発に携わる。


特集:運用自動化ツールで実現する、クラウド時代の運用スタイル

インフラ整備に一層のスピード・柔軟性が求められている今、仮想化、クラウドは企業にとって大きな武器となった。ただ運用管理を人海戦術で行うスタイルでは、そのメリットを生かし切ることは難しい。サーバー配備や監視など、あらゆる定型業務のミスを抑止し確実・迅速に行える「運用自動化」を取り入れることが、仮想化・クラウドを生かす大前提となるのだ――本特集ではツール導入の要件からOSS/商用ツールの使い方、ツール同士の比較まで、「運用自動化」を徹底的に深掘りする。




前のページへ 1|2|3       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。