サイト内の現在位置
専門家コラム
「クラウドネイティブ」とは何か?
求められる理由と実現に向けた課題
- 【執筆者】松本 央氏
- F5ネットワークスジャパン合同会社 ソリューションエンジニア

UPDATE : 2022.01.21
近年、YouTubeなど我々の生活を大きく変えるサービスが世界中でブームを起こしています。それらのアプリケーションは大量のユーザを抱える中、驚異的なスピードで変化・拡張を続けています。実現可能にしているのは「柔軟性」と「俊敏性」を兼ね備えた「クラウドネイティブ」というコンセプト。クラウドネイティブとは何か?求められる理由や課題などについて、F5ネットワークスジャパンのソリューションエンジニア松本 央氏が解説します。
INDEX
世界を塗り替えてしまう
近年のアプリケーションが生み出す顧客体験
皆様、YouTubeをご存知でしょうか?読者の皆様の多くはご存知であると思います。一部の方は実際に動画を作成し、ご自身のチャンネルをお持ちだという方もいらっしゃるのではないでしょうか。
インターネット上でYouTubeのようなプラットフォームを使い、個人が日々の生活を動画に残すVlog(Video Blog)や、YouTubeを中心に様々な情報発信を行うYouTuberなど、多くの動画コンテンツを活用した仕組みが当たり前になってきています。
このように、現在のITではインターネットという国境を超えて多くの人とつながる仕組みや、スマートフォンやラップトップなどの多様なデバイス、そしてそれらの上で様々な機能を提供するアプリケーションが動作し、急激な変化や熱狂が多くの人を包み、様々な変化を経てそれらが大きな市場として成熟していくのです。
YouTubeというプラットフォームはどのように変化をしていったのでしょうか。その変遷を以下の図に示します。


2005年にアメリカで始まったサービスが、多くの人に利用され世界中に広がっています。その世界中に広がる中で様々な要望・ニーズに合わせた機能の拡張を行っており、昨今では若者を中心に人気のショート動画機能YouTube Shortsなどの提供が行われています。
2005年時点で、もしあなたがYouTubeのようなサービスを実現する場合、これらの変化を予め予測できるでしょうか?はたまた、爆発的なユーザの増加に対応し、世界中からサービスを利用される状態で、新たな機能の拡張ができるでしょうか?
多くの人にとって、答えは「NO」でしょう。しかし、YouTubeを生み出した当人でさえ簡単ではありません。では、どのようにしてこれらの要件をみたせば良いのでしょうか。それはアプリケーションを自由に変化できる「柔軟性」とユーザのニーズに合わせて自由にシステム規模を拡張できる「俊敏性」を実現することです。
YouTubeがその代表例ですが、この変化は国境を超えインターネットで瞬時に広がります。BtoCを中心としたYouTubeやFacebook、Twitter等だけでなく、BtoBにおけるSalesforceやMS Office365等、あらゆる分野で新しいサービスが大きな変化を生み出しています。これらの代表的なサービスがアプリケーションの価値を最大化させるために作り上げたもの、それが「クラウドネイティブ」というコンセプトなのです。
それでは次の章から「クラウドネイティブ」について考えていきましょう。
アプリケーションの価値を最大化させるための必須条件
「クラウドネイティブ」
「クラウドネイティブ」とは一体どのような状態をさすのでしょうか。CNCF(Cloud Native Computing Foundation)の定義が以下です。


この文章は、はじめに「クラウドネイティブ技術」、次に「技術がもたらす性質・効果」、最後に「CNCFのポリシー」が書かれています。つまり、クラウドネイティブにより果たすべきゴールは2つ目のパラグラフに記載されている「回復性、管理力、および可観測性のある疎結合システム」と「これらを堅牢な自動化と組み合わせることで、エンジニアはインパクトのある変更を最小限の労力で頻繁かつ予測どおりに行える状態」を実現することになるのです。
皆様のシステムは現在どのように開発・運用をされているでしょうか。従来のシステムと昨今のシステムの特徴を以下の表にまとめました。
従来 | 今日・将来 | |
---|---|---|
インフラ | 物理、静的 | 仮想/クラウド、動的 |
変更頻度 | 少ない、初期の構成を継続 | 多い、柔軟な変化が必要 |
開発手法 | ウォーターフォール型 | アジャイル開発、複数のチームによる開発 |
システム間の 連携 |
少ない、限られた連携先と専用のプロトコルなど | 多い、社内外問わず多くのシステムと連携、APIを外部に公開し様々な拡張を前提とする |
古くからシステムの開発や運用を行っている皆様はウォーターフォール型の手法で開発していた方も少なくないと思います。アプリケーションは設計当初目的とした要件に向かって開発を行い、一度完成したシステムは基本となる機能を変えることなく長年に渡って利用します。システムとクライアントは専用のコンソール端末から操作し、操作は予め決められたもののみ、システム間通信は独自のプロトコルで行われる場合があります。データはそのシステムのみで利用され、外部との連携はもちろんありません。
これらの要件は現在と異なり、ある特定の作業(演算・帳票など)を集中管理し、高速に行うことを目的としており、昨今のような変化をすることが必要とされていませんでした。しかし、先述の通り、現在のテクノロジーは大きく進化し、様々な変化が内部だけでなく外部から、そして日本という国の枠を超えて押し寄せてきます。


また、コロナ禍で、あらゆるサービスがオフラインからオンラインに切り替わり、ユーザ体験(ユーザエクスペリエンス)が重視されるようになってきました。すでに「安定」だけを目指した堅牢なシステムの時代は終わり、「変化」をするシステムでない場合、それは競合他社だけではなく日々変化するユーザニーズにも答えることができなくなり、企業の収益すらも脅かす状態になってしまうのです。
それでは「クラウドネイティブ」を実現するために我々がどのように立ち向かっていくべきか、考えていきたいと思います。
真に「クラウドネイティブ」な状態となるために
クラウドネイティブという言葉の定義については前章で確認しましたが、定義を読むだけで組織が変化し、他社に負けない大きな競争力を身に付けられるのであれば苦労はありません。クラウドネイティブのコンセプトや技術は、最新鋭の企業が多くの苦労の中から生み出し、既存の環境では満たすことのできないものを再定義し、理想とする状態をまとめたものですので、これから習得する我々もそれ相応の覚悟で挑む必要があります。
技術面で求められるもの
それではまず、技術面について考えたいと思います。
クラウドネイティブの定義でも確認したように、多くの新しい技術を取り入れることにより旧来の環境では実現できなかった柔軟性や俊敏性を実現します。
カテゴリ | 解説 | 代表的なサービス・テクノロジー |
---|---|---|
クラウド技術 | ・パプリッククラウドやプライベートクラウドで提供される機能 ・コンピュータリソースの仮想化技術を中心に、柔軟なリソースの割当て、管理が可能 |
AWS、MS Azure、GCP、VMware、OpenStack 等 |
コンテナ技術 | ・アプリケーションとそのアプリケーションに必要となる実行環境をパッケージ化する技術 ・仮想化技術と比較し、素早いアプリケーションの提供が可能 ・Kubernetes(コンテナオーケストレーションツール)を利用し、アプリケーションやプラットフォームのリソース拡張を柔軟に対応 |
Docker、Kubernetes、OpenShift、Rancher、EKS、ECS 等 |
自動化技術 | ・プラットフォームのデプロイや、コンテナの管理を自動化 ・アプリケーションのコードに変更が加えられた際に自動的にデプロイ、動作テストを実施する等、要件に応じた実装が可能 |
Ansible、Chef、HELM、Jenkins、argo 等 |
これらの技術すべてが必要になるわけではありませんが、自社の利用するデータやアプリケーションに合わせて適切なサービスを選択し取り入れる必要があります。
組織面で求められるもの
次に、組織の面で考えたいと思います。
クラウドネイティブな各種テクノロジーの活用は課題ではあるもののゴールではありません。「クラウドネイティブ」な組織とは、それらのテクノロジーを活用し、顧客の要望に柔軟に対応できるアプリケーションを提供する組織となることです。この目的を達成するためには以下の観点で捉える必要があります。
目的・ゴール | 検討すべき内容 |
---|---|
アプリケーションを中心に考える。 アプリケーションの役割、価値を定義 |
組織にとってアプリケーションはどのような存在か? ・収益を生み出すか? ・利用者は誰か? 顧客、社内、国内、海外 等 |
機能要件・非機能要件の定義 | アプリケーションを提供する上で必要となる要件は? ・データ機密性、セキュリティ ・SLA(Service Level Agreement) ・アプリケーションの更新頻度 ・通信量、応答速度 ・上記項目を考慮した適切なプラットフォームを選択 等 |
アプリケーションに最適な組織の役割を定義 | どのような組織であればスムーズに目的達成可能か? ・開発チームはアプリケーションの開発、実装に向けて最適な対処ができるか ・インフラ・セキュリティチームは、アプリケーションの展開・保護に向けて開発チームと十分な連携が取れるか ・理想とするチームと現在のチームにどのような組織・役割の変更が必要となるか 等 |
「クラウドネイティブ」はアプリケーション・開発を中心に広がっているコンセプトです。クラウドネイティブと共に発展するテクノロジーを採用するだけではなく、本来の目的であるアプリケーションを原動力とした組織の成長であることを念頭に考えなければいけません。そうすることで、クラウドネイティブ文化の発展と共に進化する様々な技術要素を取り入れ、組織が理想とする形で市場へアプリケーションの投入が可能となるのです。
これらのイノベーションによるメリットは定量化が難しいのも事実です。この章の最後に、これらのイノベーションがもたらすメリットをいくつか記載いたします。
効率的な顧客要望への対応により、自社サービスのファンが増え収益が向上する
- DevOpsおよび開発チームが行うアプリケーションのリリースがタイムリーかつ頻繁となる
- 一つ一つのアプリケーションリリース・変更の負荷が減り、ユーザからの要望への対応など、顧客満足を高める対応を継続して行うことが可能である
アプリケーションに必要なプラットフォーム費用の最適化
- 稼働するアプリケーションに対し柔軟な計画を立てることが可能となる。このため、余剰のリソースを確保する必要が減り、インフラコストが最適化される
プラットフォーム安定化による運用の効率化とシステム信頼性の向上
- コンテナやKubernetesを中心とした実装により、コンテナの即時起動・削除と、オートーヒーリング、さらには運用の自動化により、運用チームの作業が大幅に削減される
- 疎結合を前提としたサービスの実装により、ある障害の影響が局所化され、障害発生時のオペレーションを効率的にすすめることが可能である
次の章ではより具体的に想像いただくため、実例を元に「クラウドネイティブ」の実現に向けてどのようにアプローチを取ることができるか見ていきましょう。
クラウドネイティブな環境を有効活用し、
最小限の労力で最大限に将来の変化に対応するには?
「クラウドネイティブ」を実現するために、多くのチャレンジや変化が求められることが見えてきました。これから来るクラウドネイティブの荒波を乗りこなし、誰もが成功したいと願うものの、既存の業務がある中で変化することは決して容易ではありません。
ここで、皆様に一つの事例をご紹介したいと思います。


Audi社が目指したビジネスゴールと、これらの事例で得られた成果を以下に示します。
ビジネスゴール | ・AudiのIT部門が、同社全体にわたるデジタル・トランスフォーメーションの主要な推進役となり、物理構成に依存せずアプリケーションを拡張することを使命とする ・”一度作ったものをどこでも使えるようにする”という機能性をセキュリティポリシーにも実現する ・セルフサービス&自動化の統合により、生産性を向上する |
---|---|
結果・成果 | ・フルマネージド型のKubernetesプラットフォームであるKubika Oソリューションを開発 ・アプリケーションの複雑な状況に対処するため、必要とする技術要件を持ち、軽量でクラウドへの依存を持たず利用できるプロダクトを選択 ・DevOpsとSecOpsが効果的かつ調和的に運用でき、スピードやアジリティを損なうことなく、Kubernetesアプリケーションをシームレスに保護することが可能 ・アプリケーションのオーナーが、インフラについて心配する必要が全くなくなり、リアルタイムスキャンや脆弱性スキャンなどのインフラに関する問題は、すべてプラットフォームに組み込むことができ、セキュリティ評価の80%を完了した状態を実現 |
Audi社ではクラウドに依存しないセルフサービス開発環境「Kubika O」を構想しました。これは、アプリケーションをユーザのニーズに即応させる必要性を理解し、プラットフォームにおいて安定したパフォーマンスと高いセキュリティの実現のためです。
この事例より以下の事がわかります。
市場投入までの時間短縮
- アプリケーション・開発を中心にすえて、それらに最適な環境を目的としている
マルチクラウド基盤の作成
- RedHat OpenShiftやNGINX App Protectを活用することにより、環境に依存しないアプリケーションデリバリーを実現
クラウドネイティブテクノロジとセキュリティの調和
- セキュリティもアプリケーションと同様に再利用性・可搬性が高く、アプリケーションのアジリティとパフォーマンスを損なうことのない環境を実現
ソフトウェア・開発の分野は変化が非常に早く、日々新しいテクノロジーが生まれています。自社が目指すべき要件を適切に定義し、アプリケーションにとって最適なプラットフォームをデザインすることで、開発者が真に開発に集中することができ、プラットフォームはその開発プロセスと調和することで「柔軟性」と「俊敏性」の実現が可能となるのです。
まとめ
「クラウドネイティブ」を取り巻く文化を理解し、テクノロジーを習得することは企業にとって大きな原動力となることは間違いありません。既存のITシステムの慣習に強く縛られた状態でテクノロジーを一部利用するだけでは十分な成果を得ることは難しいでしょう。
インターネットやスマートフォン、またそれらの環境で動作するアプリケーションが日々、人の生活を便利にしていることは疑うべくもありません。しかし、これは同時に今まで国内を中心にビジネスを行っていた企業にとっても、知らない間に大きな変化が訪れ、想定しない競争にさらされてしまう事態になるのです。
そして、この変化は既に始まっています。
皆様がこれらの変化の波を乗りこなし、自社への大きな力として進んでいただけることを願っております。

■執筆者プロフィール
松本 央(まつもと ひろし)
F5ネットワークスジャパン合同会社 ソリューションエンジニア
ISPでネットワークエンジニアとしてキャリアをスタート。ネットワークのコアとして様々なプロトコルを扱うことに楽しみを感じF5ネットワークスジャパンでBIG-IPのコンサルタントやソリューションエンジニアとしての経験を経て、NGINXを中心とした顧客の「モダンアプリケーション」の実現を目指す。