2020年以降のDevOpsトレンド:4つのテクノロジー予測
IDCの研究によると、世界中のデータとバイナリは2020年までに宇宙にある星の数と同じくらいになります。合計44ゼタバイト(44兆ギガバイト)になり、2年ごとに倍増していくと予測されています。
DevOpsが今後の主役になっていくことは間違いありません。Forrester Researchの調査によると、2017年末までに調査対象の90%がDevOpsを既に実装しているか、実装する予定があることが明らかになりました。
その結果CI/CDの自動化と再現性が向上したため、スピーディーなアプリケーションのビルドとマーケットへのデプロイが可能になりました。
DevOpsは、すでに非常に速いペースで生産されているバイナリとデータをさらに加速させてきました。スマート電気自動車やモノのインターネット(IoT)デバイスなどの新しいアプリケーションでは、DevOpsがソフトウェア開発・システム運用における中心的な手法となります。Bain Capitalによると、IoTの市場だけでも2021年までには2017年の2倍以上である520億ドルに成長すると見込まれています。
このような技術のトレンドを追っていくと、すべての企業がソフトウェア企業になりつつあるのではないかと思われます。それには「自動化されたCI/CDこそ、本当の意味での継続的アップデートである」と定義するLiquid Software方式が欠かせません。
それでは、未来のDevOpsはどのように進化するのでしょうか。これからお伝えするトレンドは、すでに実現している最新技術です。
トレンドその1:DevOps AI
DevOpsの自動化により、より頻繁に多くのビルドが情報と一緒に生成されます。そうなるとAIと機械学習はますます重要な役割を果たします。より多くのデータが生成されるほど、AIと機械学習でパターンの検出や予測する精度が高くなり、CI/CDパイプラインを円滑に稼働させ続けることができます。
AIは、アクティビティやリポジトリログを分析してコードがどのように動作するか予測できるため、近い将来に手動テストが不要になる可能性があります。情報が蓄積されるにつれて、AIは自動化された機能テスト、受け入れテストやデプロイテストを作成できるようになるため、継続的デリバリーの信頼性を高めてソフトウェアのリリースを迅速化できます。
インフラをコードとして利用する機会が増えていることは、コードの記述を変更するだけで運用管理者がサーバ環境とクラスタを柔軟に割り当てることができることを意味します。しかし人間がコードを書く必要はありません。Alは大量のログレポートを分析して推測し、自動化されたサービスを通じてそのコードを生成することができます。
最も重要なことは、AIは大量のログとパフォーマンスデータから、DevOpsプロセスそのものを自動化できることです。AIはCI/CDパイプラインの継続的な改善に貢献し、ビルドを中断するミスを避け、さらに障害予測にも役立ちます。AIはいつの日かAIそのものを改良するために使われるかもしれません。
トレンドその2:5GがIoTに及ぼす影響
2020年に発売予定の5Gインターネットを利用した、高速で大規模に接続されたデバイスに対する最大の障害とは、システムが落ちてしまうことでしょう。Huawei Technologiesは最近のホワイトペーパーで、10GB/秒の速度を持つ5G世代では、少なくとも1000億のデバイスとの接続と1000倍の容量をサポートできると予測しています。これはネットワークに接続しているか意識する必要がなくなるかもしれないことを意味しています。
つまり、IoTを使用したコネクテッドカーや住宅、都市のネットワークを構成するデバイスなどに、より複雑な操作をサポートする大きなバイナリを配信できます。
ネットワークの速度が上がると、より多くのデバイスがオンラインになっていくため、更新頻度も高まり、IoTが成功するLiquid Softwareの理想に近づくことになります。
トレンドその3:コーディング不要なDevOps
DevOpsの自動化によってCI/CDのプロセスは合理化されますが、それでも実際には開発者がジョブのスペックやYAMLファイルなどを手作業でコーディングし、パイプラインの大部分を定義する必要があります。
DevOpsを構築する際にスピードが重要視されるようになったため、DevOpsには今後マウスだけで操作が完結するような使いやすいUIでパイプラインを定義するコーディング不要のツールが期待されます。アプリとデバイスを簡単に接続できるIFTT(If-This-Then-That)のようなプラットフォームが一般的になりつつあり、ノードグラフのような直感的にプログラミングできるUIが必要になっていくでしょう。
このようなコーディング不要なツールを使用すると、今までよりもはるかに多い技術者がパイプラインやポリシー、Helm chartの作成やメンテナンスに対応できます。企業にとっては、DevOpsプロセスを構築する際のセットアップとトレーニングのコストを圧縮できます。
トレンドその4:DataOps
データ駆動型コンピューティングが普及し分析が誰でもできるようになると、データ集約型アプリケーションを開発してデプロイする時にアジャイル方式が求められます。この場合、重要なデータを複数のデータソースやパイプラインから受け取るようになるため、確実に管理するプロセスが必要です。
新しく登場したDataOpsでは、DevOpsで重要な自動化をベースにして、分散するチームでCI/CDを高頻度でサポートします。DevOpsが開発者やQAを支援し、円滑・安全に共同作業するオペレーションを実行することと同様に、DataOpsにも開発者やデータサイエンティスト、データエンジニアを支援してオペレーションの共同作業に対して同じメリットがあります。
DataOpsをサポートするには、使用する多くのコアなツールが同じでもインフラやプラットフォームに変更が必要です。Rなど統計処理を得意とする言語やフレームワークをDataOpsに採用し、厳密なデータアクセスとガバナンスのポリシーをプロセスに適用する必要があります。
データが多くのアプリケーションで効力を発揮するにつれ、DaaS(Data as a Service)を含むデータ市場の拡大が期待されます。
以上、4つのトレンド予測すべてが、DevOpsがもっとエキサイティングになることを示しています。
JFrogのLiquid Softwareというビジョンと業界をリードするDevOpsツールで、2020年以降もみなさまの未来が明るいものであるようお手伝いします。