ライター:片野 祐
ネットワンシステムズに新卒入社し、PF, NW, SW, AIといった様々な製品、技術の担当として技術検証、提案導入支援、データ分析等を行ってきた。その後、よりお客様に近い立場でSW開発支援や自動化技術を中心とした案件推進活動を実施。現在は自動化技術を中心に扱うチームで製品担当やソリューション開発に従事。
はじめに
2022年9月8日、9日にオンラインで開催された Red Hat Ansible Automates 2022 Japan で講演してきました。Red Hat Ansible Automates 2022 Japanは自動化における日本最大級のオンラインイベントであり、事例を中心に自動化推進における成功のポイントが各社から紹介されたイベントです。今回ネットワンは20分の講演枠でお話ししましたが、その枠では伝えきれなかった内容を含め、講演内容について簡単にまとめたいと思います。また、後日動画も公開される予定ですので併せてご覧いただければと思います。
講演の概要
本講演では「 自社内の自動化推進とお客様へのDX推進を通して見えた壁とその乗り越え方 」というタイトルで、今まで社内外に自動化を推進してきた中で感じた壁や、それをどう乗り越えてきたのかについてお話ししました。自動化の実装にはコードを作成する技術的なスキルや自動化対象となる機器に関する知識が必要なのですが、自動化による効果を最大化するために一つ視座を上げた、業務やフローを整理して組み替えるスキルも必要であり、本講演ではここにフォーカスしてお話を進めました。また、自動化することが目的ではなく、自動化は一つの手段にすぎないため、何のために自動化するのか、どの範囲を自動化するのかという部分が定まっていると自動化を推進していく上での指標になり、また立ち返るポイントにもなるということも併せてお伝えしました。
講演で特に伝えたかったこと
講演の中では以下の3点が重要だとお伝えしました。
自動化の実現のためには最初が肝心
理想の状態とそこに行き着くまでのプロセスを明確化して共有する
自動化サイクルを回す仕組みを作り改善を続ける
ここからはこの3点を少し掘り下げていきます。
自動化の実現のためには最初が肝心
小さな自動化を作りながら改善していくという意味ではアジャイルに近いかもしれませんが、ウォーターフォールで進めざるを得ない状況もまだまだあるかと思います。どちらの場合でも、目指すべき理想(To-Be)を掲げて、現状(As-Is)と比較し、どのように理想に近づいていくかステップを決めながら進んでいくことになります。組織で同じ理想を見ながら、一歩ずつ進んでいくことで、最終的に理想の状態になることができます。
また、計画→設計→構築→導入とフェーズごとに進めていく場合でも、より上流(計画や設計)が重要なことは変わりません。特に計画段階で自動化したいと思っている業務の棚卸や、実現可否の検討は後続のフェーズを進める上で必要不可欠なインプットになります。
最初が肝心だということはなんとなく理解していただけたかもしれませんが、その進め方を次の「 理想の状態とそこに行き着くまでのプロセスを明確化して共有する 」で少し具体的に見ていきます。
理想の状態とそこに行き着くまでのプロセスを明確化して共有する
理想とする姿が組織内で共有されていても、その理想へ向かう方法が人それぞれで異なっていると、上手く自動化が進みません。少し言葉を変えると、「ゴール」と「プロセス」の明確化と共有がポイントになります。例えば以下の図のように、「ゴール」をWindowsサーバへのパッチ適用とした場合、ゴールに向けた作業内容は環境ごとに変わります。
そのため、いきなり自動化のためのコード作成に取り掛かるのではなく、まずは業務フローの作成や自動化範囲の決定、自動化範囲の業務の詳細化をし、その後コードの作成に移るのが一般的かと思います。また、今まで手動で行ってきた業務を自動化する場合、手動で行ってきたプロセスをそのまま自動化するよりも、順番を入れ替えたり、統合したり、自動化によって必要なくなるプロセスを除いたりすることでより効果を高めることができるため、ここでも今までのプロセスと変わる可能性があります。より効果が高く、 できるだけ 後戻りのないように自動化を進めるには、このプロセスの明確化は非常に重要な点と言うことができます。
ゴールに向かって自動化を推進していき、ステップに分けて進んでいく場合でも、「フィードバック」を得ることは新たなインプットになり、自動化がより加速します。これを踏まえて次の「自動化サイクルを回す仕組みを作り改善を続ける」に移ります。
自動化サイクルを回す仕組みを作り改善を続ける
ここではCI/CDの話になりますが、重要性は理解しつつもCI/CDを組み込むとなるとさらに時間やスキルが必要となるため、今回はその手前の段階に注目しています。自動化のためのコードを作った際、そのコードを永久的にそのまま使えるかというとそうではなく、バグが見つかればコードの改修の必要がありますし、コード側に変更はなくても自動化対象機器側のバージョンアップ等でコードが使えなくなることもあります。そのため、自動化を行う場合は運用をどのようにするかを検討しておく必要があります。自動化することで削減された工数の一部を運用最適化のために使えると、自動化した環境の維持管理だけでなく更なる自動化に踏み出すこともできると考えられます。
また、自動化サイクルを回す際はいろいろな立場、視点からフィードバックをもらい改善点を見つけることで、より自動化の効果が上がると考えています。そのためにいろいろな立場の人が 自動化を 自分も関係したものとして捉える必要があり、その組織が自動化を前提として業務をする空気感や文化があるか、ということが重要になります。文化を短期間で作ることは難しく、労力もかかることではありますが、理想に近づいていくためには必要な労力であると考えていて、ネットワンでも徐々に自動化の輪を広げていく活動をしています。
まとめ
今回はRed Hat Ansible Automates 2022 Japanでの講演内容のまとめを行いました。最終的には広く、多くの人が自動化のメリットを理解し、連携することで大きな効果を生むことになります。また、お客様向けの自動化導入や、自社での自動化推進を通して、関係する方々とは同じ方向を向いて、共に自動化への道を歩んでいくことが重要だと感じました。自動化に興味はあるけれども、どのように進めたらいいか悩んでいる方は、是非弊社までご相談ください。
※本記事の内容は執筆者個人の見解であり、所属する組織の見解を代表するものではありません。