• イベントレポート
  • 自動化
  • 運用管理
  • DX

『人手不足時代への備え』
-「Ansible」を使った自動化2.0の実現へ -


                                                                        ansible_article.jpg

DX(デジタルトランスフォーメーション)への取り組みが本格化する中で、企業においてはこれまで以上にITインフラの重要性が高まっています。IT部門の限られた要員でも最適な運用を実現するため、ITインフラ管理の自動化に向けた取り組みが行われています。しかし実際には、その自動化がなかなか進んでいなかったり、せっかく自動化しても大きな効果を生み出すことができなかったり、というのが現状です。この課題を克服するための、理想的なインフラ管理のあり方として描かれたのが「自動化2.0」です。
自動化2.0とはいかなるものなのか。またそれはどのような形で導入し、どういう効果をもたらすのか。自動化2.0を牽引するレッドハット株式会社(以下、Red Hat)のキーマンを招き、SCSKが開催したオンラインセミナーの概要を紹介します。

Red Hat が考える「自動化2.0」実現のポイント

<講演者>
レッドハット株式会社 パートナーソリューションアーキテクト部 アソシエイトプリンシパルソリューションアーキテクト 岡野 浩史 氏
レッドハット株式会社
パートナーソリューションアーキテクト部
アソシエイトプリンシパルソリューションアーキテクト
岡野 浩史 氏

なかなか進まないインフラ自動化とその課題

経済産業省が、2030年にIT人材が数十万人不足するというデータを発表してから、既に数年が経過しました。しかし、インフラの自動化は思ったように実現されていないのが実情です。
Red Hatが調査したアンケート(※)によれば、6割以上がITインフラ管理の自動化の達成率を25%以下としています。(※Red Hatが開催しているインフラ運用の自動化をテーマとしたワークショップに参加した企業へのアンケート調査)

なぜ、自動化は進まないのでしょうか。その背景として仮想化やクラウド化、コンテナ化などにより、システムが複雑化・大規模化していることが挙げられます。システム規模や関係者が増えるほど調整や準備に費やす工数が指数関数的に増えていくため、単純な作業の自動化だけでは効率は上がらないのです。
実際に、実作業以外の調整や準備が全体の90%以上を占めているシステムも珍しくありません。残る10%の実作業のうちの仮に半分を自動化したとしても、全体としてはほとんど効果を得られないのです。

システム規模の異なるインフラ管理の作業内容の割合

この、単純な作業の自動化だけでは効率が上がらないという課題に対して、Red Hatが理想的なインフラ管理のあり方として描いているのが「自動化2.0」です。自動化1.0と自動化2.0の違いについてITインフラの自動化を例に説明します。
自動化1.0とは、サーバーやストレージ、ネットワーク、OS、アプリケーション、仮想化、クラウドを、熟練のエンジニアが各自の技量でツールを使い構築しているイメージです。対する自動化2.0は、そういったシステム管理をサービス化し、必要なときに目的にあったボタンを押せば、それぞれの分野の専門家によって作られた、最適な運用サービスが自動的に動き出すイメージです。

自動化で効果を出すための次の3つのポイント

では、いかにしてITインフラ管理における自動化2.0を実現していくのでしょうか。Red Hatの岡野浩史氏は、自動化で効果を出すために次のポイントを示します。

1.自動化の標準化

自動化の開発と活用を標準化します。自動化の対象ごとに開発物や利用方法がバラバラになっていると、せっかく自動化しても他のシステムとの連携ができず、また別のシステムへの再利用が困難です。そのため、自動化の開発と活用を最大限に標準化する必要があります。

2.自動化のサービス化

自動化をどれか一つの作業に限定するのではなく、さまざまな業務を纏めて簡潔にするサービスとして利用者に提供します。また、作業に登場する「登場人物」を減らすことで、調整そのものが発生しない状態にします。これにより現在のインフラ管理で大部分を占めている調整や準備を劇的に削減することが可能となります。

自動化で効果を出すためのポイント

1.自動化の標準化

ITインフラ管理の自動化は標準化されにくく、独立してしまうことがあります。例えば、複数のシステムを構成する機器として、ネットワークやサーバー、ストレージを管理する場合、システム管理者が手作業もしくは、特定のシステムでしか利用できない特殊な自動化方法を採用することがあります。このような状況では、自動化を再利用することができません。

こうした課題に対して「Ansible」では、全員が同じ方法で自動化を作成できるようにする「作り方を標準化」、全員が同じ方法で自動化を実行できるようにする「実行方法を標準化」という2段階のアプローチを展開しています。
岡野氏は「サーバーはシェルスクリプト、クラウドはWebベースの専用のツール、ネットワーク機器についてはTeraTermからのマクロ実行といったように、これまで機器単位や管理者の好みによって異なっていた自動化の作り方や実行方法を、Ansibleでは『Playbook』という標準化されたわかりやすい手順書に統一することができます」と話しました。

自動化を標準化し自動化の開発効率を向上

2.自動化のサービス化

「自動化のサービス化」については、作業に関連する調整業務の削減を目指します。Webアプリケーションの更新を例にとると、これまでアプリケーション開発チームは、作業前と作業後のバックアップをサーバーチームに、ロードバランサーの閉塞と開放をネットワークチームに、それぞれ依頼する必要がありました。そのため、アプリケーション開発担当者は、各チームに手順書を作成して配布し、レビューを依頼するといった手間もかかります。
例えば、ロードバランサーの閉塞と開放を自動的に実行するボタンが提供されればどうなるでしょうか。ネットワークチームは準備作業から解放され、アプリケーション開発チームもサーバーチームとのみ合意形成を行えば更新作業を行うことが可能となります。

サービス化によって登場人物(NWチーム)が減った状態

岡野氏は「このように作業工程の登場人物が減ることで調整・確認量は大幅に減少します。さまざまな業務を順次サービス化し、インテグレーションすることで、自動化2.0が実現します」と語りました。

自動化2.0の実現(サービス化・連携・連結)した状態

自動化 2.0への着実なステップアップをRed Hatが支援

こうした自動化2.0の実現を目指す企業に向けて、Red Hatでは「Automation Adoption Journey(AAJ)」という有償のコンサルティングサービスを提供しています。
「AAJ」はこれまでRed Hatが培ってきたノウハウを成功パターンとして提供します。企業内に自律的な自動化組織を立ち上げて、ITインフラ業務の抜本的な効率化を支援します。

岡野氏は「自律的な自動化組織の実現には、十分なスキルとナレッジの保有、サービス開発の進め方を習得するプロセス改善が求められます。加えて、最終的には新しい技術やプロセスを企業内で定着させる『文化』を醸成することが非常に重要です。AAJはそこまで一貫して支援します」と話しました。

また、いきなり有償のAAJを導入するのは難しいという企業に向けて、AAJを始める前の第1ステップとして、「Automation Day」を提供しています。インフラの自動化をテーマとした個社向けのイベントで、完全リモートによる座学コンテンツと参加型コンテンツから構成されています。自動化2.0の価値をさらに詳しく理解するとともに、現時点での自社の自動化の進み具合を把握し、将来像を描いていくことが可能となります。

自動化2.0 を実現する「Ansible Automation Platform」 のご紹介

<講演者>
レッドハット株式会社 パートナーソリューションアーキテクト部 シニアソリューションアーキテクト 手塚 由起子 氏
レッドハット株式会社
パートナーソリューションアーキテクト部
シニアソリューションアーキテクト
手塚 由起子 氏

「Ansible Automation Platform」の役割と特長

Red Hatの手塚由起子氏は、自動化2.0へのステップアップを支援するソリューションとして、同社の「Ansible Automation Platform」を紹介しました。
Ansible Automation Platformはシステム構築作業から構成変更、テスト/動作確認、確認作業まであらゆる運用業務を対象とし、なおかつLinux/Windowsなどのサーバー、ネットワーク、クラウドを一貫して管理できるツールです。

Ansible Automation Platformの役割

Ansible Automation Platformの特長として「Powerful」「Simple」「Agentless」があげられます。


1.Powerful

Ansible Automation Platformは多様な制御対象を統一的な手法で自動化する「モジュール」と呼ばれる仕組みが実装されています。これにより、さまざまなベンダーのサーバーやOS、ネットワーク、ストレージ、クラウドから、開発ツールや監視ツールに至るまでを、自動化の対象とすることができるのです。これがPowerfulな特長です。
手塚氏は「岡野の講演でも業務ごとにサイロ化されがちな自動化の課題が語られましたが、Ansible Automation Platformのモジュールを活用すれば、サーバーの管理はこのツールを使い、ネットワーク機器の管理ではまた別のツールを使う、といった分断を発生させることなく、『Ansible』という共通言語で自動化を実現できます」と話しました。

2.Simple

Ansible Automation PlatformにはYAML 形式で自動化のパラメータと手順を簡単に記述できる「Playbook」の機能が搭載されています。Ansible Automation Platformによる自動化とは、このPlaybookを作成することを指します。
手塚氏は「Playbookに記述された手順は可読性が非常に高く、何をしようとしているのかその内容を一目瞭然で理解することができます。一方、Playbookはコードであるため、標準のコーディング規約にしっかり準拠した作成や運用を行えるほか、Gitを使ったバージョン管理やインフラCIにも対応できる仕組みとなっています」と話しました。

3.Agentless

Ansible Automation Platformでは対象機器にエージェントを入れることなく、安全に監視することができます。

Ansible Automation Platformの特長

より分散・モジュラー化したアーキテクチャーへ

Ansible Automation Platformは、上記3つの特長により、自動化の標準化を可能にします。加えて、自動化の標準化が局所的にならないよう、組織や他のシステムと連携して自動化をスケールしていける仕組みを備えていることも大きな特長です。

Ansible Automation Platformは、作業の属人性を排除し、継続的な改善を可能とする仕組みや、API連携によりシステムの一部として自動化を組み込む仕組み、ジョブテンプレートにより自動化する対象を抽象化したサービス化しやすい仕組みを提供しています。Playbookを作った人だけがPlaybookを実行できる状態だと、永遠に自動化1.0のままです。Ansible Automation Platformでは、Playbookを誰でも簡単に実行できる状態にし、権限を委譲された適切な人が実行する仕組みを実現します。このように、Ansible Automation Platformは、自動化1.0をカバーするだけでなく、自動化2.0への移行を具現化します。

そして、手塚氏は2021年末にリリースされた「Ansible Automation Platform 2.x」を紹介し、特に重要なアップデートのポイントとして、次の2点を強調しました。
1つ目は、コンテナ化された実行環境を装備したことです。Ansible Automation Platform 2.xは実行環境を管理するためのツール群も併せて提供しており、より分散・モジュラー化したアーキテクチャーへ生まれ変わりました。
2つ目は、モジュールが最初から全部入りではなく、必要なものを取捨選択する形に変更されたことです。基本機能以外のモジュールは、必要に応じて Collections からインストールすることができます。

SCSK社内事例
netXDC ネットワーク基盤 の運用「Ansible Automation Platform」による業務自動化の取り組み

<講演者>
SCSK株式会社 netX データセンター事業本部 センター基盤部 第二課 馬立 侑典
SCSK株式会社
netX データセンター事業本部
センター基盤部 第二課
馬立 侑典 氏

「Ansible」を導入した目的と選定理由

SCSK netX データセンター事業本部 センター基盤部(以下、SCSK)では、データセンター内のネットワーク基盤の運用や、ユーザー向けのネットワークサービスの提供などを担っています。その過程で発生する運用業務の効率化が課題であった中で、運用自動化による障害対応などの工数削減、オペレーションミスの防止による品質向上を目的として導入したのが「Ansible」です。自動化に取り組むにあたって、最初からAnsibleというツールありきで検討を進めてきたわけではありません。

SCSKの馬立侑典は、「いくつかの候補となったツールに対して、『ネットワーク作業の自動化事例が多いか』『24時間365日体制の製品サポートがあるか』『エージェントレスで導入できるか』といった観点から比較検討を行った結果として、最終的にAnsibleの選定に至りました」と話しました

これまでに自動化した作業と今後の取り組み

SCSKがこれまで実施してきた自動化は、大きく次の3つの作業です。
1つ目は、ファイアウォールの設定変更作業の自動化です。従前から利用していた運用手順書に「Ansible Automation Platform」のAPI実行ボタンを埋め込み、ボタン1つでファイアウォールの設定変更作業を行えるようにしました。これにより作業工数を15分から5分に削減するとともに、人的ミスも大幅に低減しています。

2つ目は、スイッチングハブやルーターの障害一次対応作業です。障害が発生した際にまず実施しなければならないのが現状把握です。監視システムから発せられたアラートメールを確認し、障害が発生した機器の設定内容やシステムリソースの状態を確認します。Ansibleを用いることで、障害が発生したネットワーク機器の情報を取得し、運用者にメールで通知する仕組みを自動化しました。これまでは、営業時間外に障害が発生した連絡を受けた場合、PCを立ち上げてリモート接続を行い、障害が発生した機器の設定内容やシステムリソースを調査、確認していました。しかし、Ansibleとワークフローを連携させることで、携帯でメールを受信するだけで、障害の解析を開始できるようになったのです。これにより、作業工数を30分から5分に削減でき、迅速な対応を可能にしました。

3つ目は、ロードバランサーの負荷分散ルールを切り替える作業の自動化です。Webサーバーのメンテナンスを行う際には、ユーザーの通信を一時的にメンテナンスサーバーに移す必要があります。この作業をAnsibleで自動化しました。これまでロードバランサーの負荷分散ルール切り替え作業を行う際には、ネットワーク運用者に作業を依頼し、日程などを調整した上で、あらかじめ取り決めたフローに則って作業を実施する必要がありました。現在はポータルから作業依頼を申請するだけで、セルフオーダー型(ユーザーが自分たちでネットワークの設定変更ができる状態)のネットワーク作業が実現しています。

さらに直近では、Ansibleと構成管理情報の連携にも取り組んでいます。現状、SCSKで作成しているAnsibleの仕組みでは、Ansibleで設定変更を行った場合、構成管理を手入力で反映しています。そのため、作業結果を自動で構成管理に反映し、作業の効率化を目指しています。加えてデータセンターネットワーク業務の自動化を通じてこれまで蓄積してきたノウハウをもとに、セルフオーダー型によるネットワーク作業のサービス化も実現したいと考えています。
ただし、Ansibleと構成管理情報の連携については、構成管理データベースの用意や連携の仕組み構築が必要となります。また、セルフオーダー型によるネットワーク作業のさらなる効率化についても、サービス化を見据えたAnsibleサーバーや自動化システムの設計見直しが不可欠です。

馬立は「このように新たな2つのテーマは難易度が大きく上がるため、Red Hatのサポートも受けながら課題解決を図っていきます」と語り、Red Hatが提供するコンサルティングを軸としたサービスであるGPS(Global Professional Services)の導入も視野に入れ、取り組みを進めていく意向を示しました。

最新情報などをメールでお届けします。
メールマガジン登録

×