ITの力で新たな価値を生み出すDX(デジタルトランスフォーメーション)の推進により、ITサービスが事業に与える影響は日に日に大きくなっています。
システム数は増加の一途を辿り、アーキテクチャも複雑化する中で、従来からのサイロ型で人手に頼ったシステム運用では安定的なサービス提供は難しくなっています。
システム運用が重要視される中で、「xOps」と呼ばれる様々な新たな運用手法が提唱されています。

重要性が増し続ける「システム運用」

DX推進で求められるのは、ビジネスを変革させるサービスであり、変化し続けるサービスを継続的に提供できるシステム基盤です。それを支えるのが、変化し続けるシステムを安定的に運用できる運用体制となります。

システム運用が重要視される背景:

  • ビジネスに対するITシステムへの依存度の高まり
    ビジネスの変革 ⇔ システムの改善(表裏一体の関係)
    安定的に運用できないとビジネスが止まる
  • 内製化の動き
    従来、システムは、SIerやベンダーの専門企業に外注することが当たり前だった
    現在、DXに注力する企業ほど、システムの開発と運用の内製化に取り組んでいる
  • 経営資源(ヒト・モノ・カネ)の有効活用
    持たない経営が進み、クラウドシフトが加速している
    運用コストの高騰を回避し、新たなサービス開発に投資をまわす必要がある
    特に、有限の人的リソースをいかに効率的に使うかがポイントとなる

具体的な課題:

  • 個別最適でサイロ化された運用プロセス
  • 人手に頼った運用業務
  • 短期間のリリースによる継続的なシステム環境の変更への追随
  • 性能やセキュリティに対する厳しい要件
  • 運用現場でのニューノーマルな働き方

これらの課題をクリアするシステム運用は高度なものとなります。
逆に、運用の高度化を実現することができれば、DX推進におけるサービス提供の競争優位性の確保につながり、ひいてはビジネスそのものの差別化につながるともいえます。

提唱される様々な運用手法「xOps」

xOpsと呼ばれる運用手法の多くは、DevOps(デブオプス)から派生したものです。
DevOpsとは、開発(Development)と運用(Operations)を組み合わせた造語で、「ビジネスのためにサービスに変化を加えリリースする(素早く変更したい)」ことをミッションとする開発部門と、「ビジネスのためにシステムを安定稼働させる(なるべく変更したくない)」ことをミッションとする運用部門という、対立しがちな関係にある両部門が協調することにより、開発をスムーズにする取り組みを指します。
DevOpsをベースにした実に様々な運用手法が提唱されています。その一部の定義を紹介します。

  • DevSecOps
    DevOpsの中にSec=”セキュリティ”が加わった運用手法になります。
    開発×セキュリティは、安全な開発環境、安全な開発方法で、安全な成果物を作ることであり、運用×セキュリティの最大の目的は、安全なシステムを提供し続けることです。
    より具体的には、セキュリティリスクの可視化やセキュリティパッチ適用といった対策の自動化により、日々発生する新たな脆弱性などを含めたセキュリティリスクに速やかに対応することを目的としています。
  • DevPerfOps
    DevOpsの中にPerf=”性能検証改善”が加わった運用手法になります。
    開発と運用が連携するDevOpsの取り組みの中で、性能担保に関しては解決策がないのが課題でした。これを解決するソリューションとして、NTTデータが提唱している概念です。
    DevPerfOps ではオートメーション化を徹底的に進め、リリースに併せて性能テスト・問題時の通知・情報収集・可視化・問題切分けを自動で行い、迅速な性能担保を可能にします。
  • CloudOps
    クラウドの活用メリットを最大化することを目的とした運用を手法となります。
    VMware社の定義によると、マルチクラウド、ハイブリッドクラウド、データセンター、エッジなどのクラウド環境で実行されるワークロードと IT サービスのデリバリ、調整、最適化、パフォーマンス確保を管理することを指します。
    CloudOps では、クラウドベースの運用プロセスにおける手順とベスト プラクティスを体系化します。
    それはちょうど、DevOps において、アプリケーションの開発とデリバリのプロセスを体系化するのと同様であるとされています。
  • AIOps
    昨今、様々な業務の効率化のためにAIが導入されていますが、システム運用の業務にデータサイエンスのアルゴリズムや人工知能(AI)の技術を適用することで、さらなる自動化や効率化を図ることをAIOpsと呼びます。
    具体例として、ルールエンジンを用いたイベント集約や、機械学習を用いた故障予兆検知や故障の根本原因分析などが挙げられます。
  • NoOps
    「No Operations」を省略した言葉ですが、決して運用がなくなるという意味ではありません。
    人手によるシステム運用作業の最小化を目指す継続的な活動のことを指します。
    NoOps Japanコミュニティによると、下記のように定義されています(※1)。
    「NoOpsはNo Uncomfortable Ops(システム運用の嬉しくないことをなくす)を目指すための技術、アーキテクチャ、それを実現するための活動を指します。
    このアプローチの代表例に、コンテナを活用した高回復性設計、DevOpsの活用、モニタリングと構成設定の自動化、SREによるToil削減活動、などがあります。」

    ※1 NoOps Definition v1.0 https://github.com/noopsjapan/community/blob/master/DEFINITION.md

これらの取り組みを全体的に俯瞰すると、短期間のリリースによる継続的なシステム環境の変更に対応するために生まれたのがDevOpsであり、そこから派生し、セキュリティや性能に対する厳しい要件に対応するのが、DevSecOps、DevPerfOpsとなります。
他方、クラウド活用のメリットを最大化することにフォーカスしているのが、CloudOpsです。
そして、課題解決の手段として、先進的なAIをシステム運用に活用しようとする試みが、AIOpsであり、最終的に人手に頼った運用からの脱却を目指すのがNoOpsと捉えることができます。

IDCの報告によると、国内でDevOpsを実践している企業の割合は年々上昇し続け、2022年の調査では59.3%の実践率となっています。また、DX定着化段階にある企業では、DevOpsの実践率が79.2%、DX導入段階にある企業では63.4%と、DXが進行している企業ほど実践率が高い傾向が見られるとのことです(※2)。
このように、DXの推進とシステム運用の見直しは密接に関連しています。
DevOps及び、そこから派生した更なる運用の高度化であるxOpsに取り組むことが、DX推進に必要な要素となります。

xOpsで提唱されている運用手法の内容は、プロセスだけに留まらず、多分にツール(ソフトウェアやサービス)や体制にも話が及びます。xOpsを推進するには、体制や組織文化の醸成もまた重要です。
これまで開発や運用を外注してきた企業では、開発と運用の組織が分断されることから、それぞれの利害関係の対立が発生しやすく、ワンチームとしてのxOpsへの実践が遅れがちです。
現状を変えてxOpsをいかに実践していくか、取り組み可能な組織体制へとどのように変革していくかが大きなポイントとなります。
必要となるのは成功体験であり、重要なのは小さな成功を積み重ねることです。
つまり、スモールスタートで導入できるところから取り組むということです。


※2 国内企業のDevOps/開発プラットフォーム ユーザー動向に関する最新の調査結果を発表 https://www.idc.com/getdoc.jsp?containerId=prJPJ49999523

xOpsを適用した運用改善への取り組み方

  1. 運用改善のポイントを定める
    まずは、現在の運用の課題を整理することが必要です。
    運用課題をどこに設定するのかによって、それに応じた運用手法(xOps)の選択が異なってきます。
    ここでは、「既存のプロセスに疑問を持つ」という姿勢が大切となります。
    現在の運用を棚卸し、現状とあるべき姿、AsIs、ToBeを描きます。
    しかし、「運用を改善したいが、どこから手をつけてよいのかわからない」といった声も多く聞かれます。
    そのような場合は、自社に閉じた取り組みとせず、社外の有識者の力も借りて検討を進めることが有効です。
    そうすることで、第三者視点で現行に捕らわれずに課題抽出を行うことができ、同業他社の事例を広く活用する機会が得られ、客観的に自社の運用の成熟度を測ることが可能となります。
    ToBe像が定義できれば、そのあるべき姿に近づくための現実解ともいえるCanBeを描くことが重要となります。できるところから、プロセスの改善に取り組みます。

  2. 積極的に運用の自動化を行う
    プロセスの整理ができれば、次はそれを自動化することを考えます。
    xOpsのどの運用手法にも含まれるのが、ツールを利用した自動化です。
    自動化により人手作業を減らすことで、オペミスを回避し、プロセスの迅速化と品質の向上をはかることができます。
    自動化の対象は様々であるため、単独のツールでは実現できず、例えば「xOpsツール」といったものは存在しません。
    適切なツールを組み合わせて導入することが必要です。
    よく聞く失敗談として、「ツールを導入したものの効果が限定的だった。」「提供される機能は非常に多いが、有効に使いこなせない。」といった声があります。
    これは、ツールの導入を行う際に、その使いどころ、ベストプラクティスが理解できていないことに起因します。
    個々のツールは、有効に活用できる領域が限られています。
    極端な例ではありますが、似たようなワークフローが組めるからといって、業務ワークフロー用のツールでシステム制御を行うべきではありません。
    そして、自動化対象の選定も重要です。
    無人化を目指して、完全な自動化を目指すのもひとつの方法ではありますが、手段が目的化することは避けたいところです。
    自動化が困難な業務まで無理して自動化することで、システム構成が複雑になってしまい、保守が大変になってしまっては本末転倒です。
    自動化はあくまで運用を効率化するためのひとつの手段であると捉えたほうが、健全であるといえます。
    これらの課題に対し、単品のツール提供に留まらず、自動化対象に応じて適材適所でツールを組み合わせて利用するユースケースと、それを実際に活用するプロセスまで整理したアセットが「運用ソリューション」として提供されていますので、それらを活用し自動化を促進してください。

  3. 新たな運用への継続的な取り組み
    運用高度化の取り組みには、終わりはありません。
    新たな技術やサービスの登場というイノベーションも、それらをシステム化し、継続的に利用する運用の仕組みがないと意味を成しません。
    これまでも、新たなシステムアーキテクチャ(サーバ仮想化、パブリッククラウド、コンテナ)や新たな製品(ミドルウェア、アプリケーションパッケージ)・サービス(SaaS)が生まれるたびに、それに応じた運用方法の確立が求められてきました。
    今後も変わり続けるシステムに対して、常に新たな運用手法が必要となります。
    この先も新たなxOpsが提唱されるでしょう。
    それらを柔軟に取り入れ、実践していく必要があります。

NTTデータ先端術が取り組む「統合運用ソリューション」

我々は「DXの推進はシステム運用から」を標榜し、今回ご紹介した運用手法も取り込みながら、運用の様々な課題を解決するトータルソリューションに取り組んでいます。

図.INTELLILINK統合運用ソリューション

本ソリューションの目指すところは、システムの可用性・性能・セキュリティといった非機能要件を満たす安定運用を当たり前に実現できるようになる仕組みの提供です。
加えて、自動化による運用コスト低減と運用品質の向上、そして、運用ログを活用した運用改善とサービス改善が行える運用アナリティクスを実現します。
提供するソリューションは、実証済みのアセットであり、リファレンスモデルです。

我々は、これらのツール(ソフトウェア、サービス)および、その活用方法の提供と、その仕組み作り(運用の作り込み)の支援にフォーカスして取り組み、ユーザ様には、xOpsを推進する体制や組織文化の醸成に重点的に取り組んで頂けるように努めています。

まとめ

DXへの取り組みという点では若干距離があるように思われがちなシステム運用ですが、むしろ運用改善は最優先で取り組むべき重要な課題となっています。
運用を制する者だけが、継続的なシステムの改善と拡張を実現し、より良いサービスを提供するができ、ビジネスを拡大できるともいえます。
今こそ、運用を高度化するxOpsをうまく活用し、システム運用の改善に取り組むべきときです。

※記載されている会社名、商品名、またはサービス名は、各社の登録商標または商標です。