挙手してください。この記事を読んでいる方のうち、実稼働環境で OpenStack を実行している方はいらっしゃいますか? プロメテウス? Grafana ダッシュボードを生成しているのでしょうか? GitHub です。 ギットラボ。 ナギオス。 ジェンキンス。 アンシブル。 パペットエンタープライズ?
さあ、手を下ろしてください。 ほんと、どうせ見えないんだもん。
この不完全なリストのポイントは、運用環境でのアプリケーションの展開、管理、監視を担当するオープンソース ソリューションが 12 個以上ある可能性があるということです。
2017 年に最も人気のあるオープンソース プロジェクトでは、IT 運用のカテゴリが、データと分析、DevOps 対応ツールに次いでトップ 3 にランクされました。 2018年のトレンド ML、AI、レスポンシブ アプリをターゲットとする強力なオープン ソース ソフトウェアの中で、 自動化を目的として設計されたソフトウェア: Ansible (#3)、セキュリティの管理: Vault (#7)、および実行時にアプリケーションをスケーリング/ルーティングします。 Kubernetes(#9)。 運用に重点を置いたソフトウェア。
オープンソース運用の人気が高まっている理由の1つは、もちろん、DevOpsの影響とクラウドネイティブ アーキテクチャの採用です。 後者では、完全に機能するスケーラブルなアプリケーションを作成するために、インフラストラクチャとアプリケーションの結合が必要です。 前者は、継続的なデリバリーと継続的なデプロイメントをシームレスに統合し、拡大するアプリケーション資本のポートフォリオのビジネスで期待される価値実現までの時間を実現する手段として採用する必要があります。
たとえば、 NGINX Ingress Controller を考えてみましょう。 文字通り、無料かつオープンソースです。 はい、これはクラウドネイティブ アプリケーションの一部ですが、その目的はアプリケーション要求をルーティングすることです。これは通常、ほとんどのエンタープライズ ネットワーク アーキテクチャにおける運用機能です。 実際、半年ごとに実施される CNCF 調査の最新の結果を見ると、回答者の 36% が運用担当者である中で、NGINX が最も多く使用されているイングレス コントローラー (64%) であることがわかります。
しかし、それはインフラ運用ですよね? ネットワーク操作はどうですか? そうです、彼らも「運用」者であり、オープンソース ユーザーでもあります。 たとえば、 Ansible を例に挙げてみましょう。Ansible は、文字通り、アプリケーション インフラストラクチャとアプリケーション サービスの展開を自動化するパイプライン実行型の運用ソフトウェアです。 当社独自のアプリケーション サービスの現状に関する調査によると、NetOps を含むあらゆる役割による自動化のための Ansible の使用は、2018 年の 20% から 2019 年には 23% に増加しました。 これは、Chef、Puppet、OpenStack などの競合するオープンソース ソリューションと並んでいます。
現実には、オープンソース ソフトウェアが IT を食い尽くしているソフトウェアを食い尽くしています。 IT には運用も含まれます。
オープンソースへのこの動きの大きな影響は、日常的に IT を運用するために使用されるソフトウェアだけにとどまりません。 これは、アイデアやソリューションが共有され、協力され、最終的には仲間によって消費されるコミュニティの文化的影響でもあります。 これは、他者の成功を支援することに関心を持つオープンマインドなコミュニティによって設計および改良されたテンプレート、構成、スクリプトを格納するオープンリポジトリの増加からも明らかです。
アプリケーション配信の高速化と拡張に必要なデプロイメント成果物に関するコミュニティでのコラボレーションは、アプローチに関連する方法論 (アジャイルなど) と同様に、DevOps を企業に拡張するものです。 このコラボレーションにより、最終的には、アプリケーションのセキュリティ、パフォーマンス、可用性を網羅するアーキテクチャ全体を展開するための有機的に開発されたベスト プラクティスと事実上の標準が生まれます。
今日の運用環境の圧倒的な複雑さを考えると、このようなコラボレーションとサポートは、より高速で安全なアプリケーション展開という目標を達成するために不可欠です。
運用ではオープンソース ソリューションを採用しており、採用すべきです。 ただし、メリットを最大限に実現するには、運用部門が実装に関する構成、テンプレート、ベスト プラクティスを作成するコミュニティに積極的に参加し、貢献する必要もあります。
オープンソースは、もはやコードを作成するだけではありません。顧客に提供されるコードがどのようにパッケージ化、展開、運用されるかも重要です。
オープンソースは運用にも絶対必要です。