Computer Weekly製品導入ガイド
開発者にとって「クラウドネイティブ」が意味すること
クラウドネイティブアプリを構築する場合、開発者は演算処理とストレージと分析がどこで行われるかを本質的に理解してコーディングをしなければならない。
アプリケーション開発者の世界では考え方の飛躍が起きている。サービスベースのクラウドモデルを採用する必要性に突き動かされ、今、開発者が向かう世界ではクラウドファーストとアプリケーション実行パラダイムを実証する必要性が増している。クラウドネイティブ時代の到来だ。
だがある意味で、ソフトウェアの世界は同じような経験を経てきた。10年ほど前、プログラマーは、自分たちのアプリケーションがモバイルファーストでなければならないことをいや応なく認識させられた。Appleの革新がもたらした新世代のスマートフォンとタブレットに対応するためだ。
ある意味で、クラウドネイティブアプリケーションへのシフトはこれと似ている。開発者は自らクラウドファーストを宣言しなければならない。演算処理とストレージと分析が行われる場所を本質的に理解してコーディングしなければならない。ほとんどの場合、その場所とはオンプレミスではなく、パブリッククラウドでホスティングされた仮想サーバでさえない。
それよりも開発者は、マイクロサービスやコンテナ化といった概念に基づく、区分化されたアプリケーションコンポーネントの完全な新しいスタックに慣れなければならない。
実際のところ、Sumo Logicが同社顧客1500社の調査に基づいてまとめた報告書「The State of Modern Applications in the Cloud Report - 2017」(2017年のクラウドにおけるモダンアプリケーションの現状)によると、Amazon Web Services(AWS)上のDockerは、本番環境におけるコンテナ技術として最も人気が高いだけでなく、インストールベースは2016年の17%から、2017年には24%へと増大した。
Computer Weeklyは、多数の業界エキスパートに話を聞き、クラウドアプリケーション開発の現場で経験されている幾つかの厳しい現実を掘り起こした。
精神的・プログラミング的抽象化
顧客アイデンティティー、検索、クラウドサービスに関するコンサルティング企業Amidoの技術ディレクター、クリス・グレイ氏は、クラウドネイティブとはサーバレスのことだと解説する。「基本的には、サーバレスアーキテクチャに移行して、『Azure App Service』や『AWS Elastic Beanstalk』『ECS』のような管理型サービスプロバイダーの利用を選択できる。そうすることによって、複数のチームを持つこと(訳注)に伴うコストを排除し、プラットフォームツールを使ってシンプルに開発と運用ができるスキルを持った従業員を多数抱えることができる」
訳注:1つのチームがアプリケーションやソリューション開発のプログラミングを担当し、別のチームはそれが順調に運用されていることを確認するなど。
結果として、IT部門がデータパイプラインや機械学習アルゴリズムといったデータ処理の複雑な要素を実装するために、できるだけ多くのスペシャリストを採用する必要はなくなる。そうした要素は全てドラッグ&ドロップインタフェースになるので、開発者はインフラとアルゴリズムの構築ではなくデータが導き出す洞察に集中できる。
ただ、一部のクラウドネイティブプラットフォームを取り入れる場合、サプライヤーに依存しない状態を継続するのは難しいかもしれない。そうしたプラットフォームの仕組みにはそれぞれ大きな違いがあり、機能パリティーは提供しないからだ。クラウドネイティブアプリケーションは、マイクロサービスを中心として構築し、機能のまとまりを孤立させることができる。
グレイ氏の経験では、マイクロサービスアーキテクチャはオール・オア・ナッシングを前提とする必要はない。企業が大規模なデジタルトランスフォーメーションを求められることもない。例えば、全てを一から始めなくても、小売業者がマイクロサービスの世界に足先を踏み入れることは可能だという。「オンライン対応に関して、顧客の高まる期待と需要に追い付き追い越したいと願う企業にとって、これは願ってもないことに思えるかもしれない」と同氏は言う。
マイクロサービスの利用は、コンテナ化と同時進行する傾向がある。アプリケーションの全インスタンスに仮想マシン(VM)をデプロイしなくても、企業はコンテナを利用できる。軽量のコンテナは、VMに比べてOSのリソース消費も少ない。「この組み合わせのパワーは大きい。
これでアップグレードや変更は、一般のポータル利用に支障を来すことなく、ほぼ即座に適用できる」とグレイ氏は話す。
サーバの単純労働排除
クラウドネイティブマシンデータ分析を手掛けるSumo Logicの筆頭アナリスト、ベン・ニュートン氏は、管理者がサーバに名前を付けて構築していた古い時代のITを回想する。「クラウド以前の世界では、Oracleのクラスタが愛情を持って構成され、面倒を見られていた。ネットワーク機器の仕様やハードウェアの構成を決めるのに何時間もかけた」
クラウドネイティブの世界では、そうした単調な作業を理解しない。「なぜデータベースクラスタを構築するのか。単純なコマンドを使ってものの数秒で立ち上げることができ、単純に考えただけで拡張できるのに。そうした思考が導かれる時代において、クラウドネイティブは既に、そのデータベースクラスタを3大陸に拡張している」(ニュートン氏)
クラウドファーストの世界の拡張は当然のこととして受け止められる。データセンターの物理的な所在地も同様だ。「昔、新しいデータセンターへの移行は、新しい街を最初から作り上げるようなものだった。苦痛を伴い、何年も続いた。クラウドネイティブでは、国際的野心に境界はない」
再発明の必要はなし
デジタル運用管理プラットフォームを提供するPagerDutyのDevOps責任者、エリック・シグラー氏によれば、同氏が話を聞いたほとんどの企業はクラウドへ移行しているという。
クラウドネイティブとは、開発者が車輪を再発明し続ける必要がなくなることだと同氏は言う。「クラウドネイティブになることは、インフラ上にアプリケーションをどう構築するかを巡る『強制作用』の役割を果たす」(同氏)。企業がコンピューティングやネットワークといった低いレベルのコンポーネントの動作を標準化することは、事実上、そうした小型でアジャイル性の強いソフトウェアを手掛ける個々のチームに対し、アプリケーション層の下にあるものの変更にかける時間の浪費をやめるよう促すことになる。
こうしたアプローチと違って、従来型の、あるいは仮想化されたアプリケーションの設計では、ソフトウェアを出荷する方法を再発明するために開発者が多大な時間を費やす傾向があった。このプロセスは負担が重いだけでなく、ビジネスの役に立つ価値を生み出すこともあまりないとシグラー氏は話す。
同氏は開発者に対し、自分のアプリケーションの失敗に対する忍耐力を高めて、アプリケーションの耐性を強めるよう促している。「例えば、ネットワークに障害が起きた場合、ソフトウェアはその失敗とは無関係だと推定される。だがそうではない。クラウドネイティブインフラの運用では、あらゆる部分とあらゆる局面で障害が起きる。私の経験では、この現実を無視する責任は自分が負うことになる」
データ配信の再考
データプラットフォームを提供するDataStaxのデベロッパー関係担当副社長パトリック・マクフェイディン氏は、クラウドネイティブアプリケーションのアーキテクチャに関してIT部門が考えなければならないことの1つとして、データの置き場所を挙げる。
同氏によると、クラウドスケールとは、何十万、何百万というユーザー全てが、常にデータを生成し続けることを意味する。「データが複数の場所で共有され、その全てが急速に埋まっていく場合、データを1カ所で1つのリレーショナルデータベースに保存するのは難しいこともある。従って、クラウドでのアプリケーション運用を機能させるためには、データにまつわる新しいアプローチが必要になる」(マクフェイディン氏)
同氏は開発者に対し、データを継続的に配信する方法を検討し、データを複数の場所に保存して、それぞれの記録の複製をそうした場所で利用できるようにすべきかどうかに目を向けるよう促している。「そうしたアプローチがなければ、拡張を成功させるのは難しいだろう」とマクフェイディン氏は話す。
コラボレーション文化の形成
アーキテクチャについて検討する他に、開発チームは文化的問題についても考慮する必要がある。
「クラウドネイティブアプローチへのシフトは、組織内の開発チームと運用チームとの協力関係を絶対的に変化させる」。PagerDutyのシグラー氏はそう語る。
「クラウドネイティブは、チームが利用できる持続的な、標準化された一連の原則への移行を伴う。これはそのサービスの完全な保有に近く、一部のチームにとっては居心地が悪い」
そうした原則は必ずしも社内にとどまらない。「DNSプロバイダーやSMTP配信サービスといった、外部アプリケーションへの依存は無視できない」とシグラー氏は警告する。
軽量開発についての理解
事は容易になったのか。クラウドネイティブに関するコンピューティングはもっと直接的になるのか。残念ながら、そうでもあり、そうではないともいえる。
クラウドは(ほぼ)無限に柔軟性とパワーと拡張性を高める。だが一方で、ますますハイブリッド化が進む世界のための新しいインテグレーション需要に沿って、プラットフォームとツール機能の均衡を取ることも求められる。同時に、データセンターバックエンドでは分析および処理能力が大幅に増大し、マイクロサービスが大規模で機能的かつ個々に定義可能な演算処理能力のまとまりを提供する中で、それを適切に使う責任を託された開発者が使うことのできる重量級の武器は豊富にある。
クラウドネイティブの領域に踏み込むためには、「軽量」という用語の明確な理解が求められる。抽象サービス層を任意の数の精密に設計された高性能エンジンの上に載せ、全てが特定の地形に合わせて調整され、車体前部(この場合はVM)を真に軽量に保つことが、クラウドネイティブアプリケーションを公道で走らせるための鍵を握る。
技術的教訓とアルゴリズム理論を基盤とするネイティブクラウドは、仮想ワークフローの中で仮想ツールを使う仮想チームにとっての文化的シフトでもある。仮想冷水器から水を飲む時代の到来だ。
コンテナ化におけるモノリシックコードへの対応
従来型のエンタープライズに好まれるモノリシックなアプリケーションは、マイクロサービスが必要とするツール類と大きく異なることから、コンテナ化にはあまり適さない。大規模プロジェクトを、管理しやすい独立した緩い組み合わせのサービスに分割したマイクロサービスの方が、コンテナ化にははるかに適している。
一部のレガシーアプリケーション、あるいはモノリシックアプリケーションにとって、ソフトウェアのコンテナ化を決めるに当たっては念入りな検討が必要とされる。
モノリシックアプリケーションを複数の小さなコンポーネントに分割して、コンテナ化されたインフラで横断的に分散できる場合、コンテナ化の価値はある。
だが、どんなアプリケーションでもうまくいくとは限らない。それがコンテナ化されたデプロイの手法に適しているかどうか、慎重な見極めが求められる。
Copyright © ITmedia, Inc. All Rights Reserved.
Computer Weekly日本語版
この記事の著者
関連記事
新着ホワイトペーパー PR
-
事例
[株式会社マクニカ] アイカ工業に学ぶ脆弱性対策 情シスが把握できずにいたアセットも正確に把握 -
製品資料
[株式会社マクニカ] 「脆弱性総まとめ」解説 被害事例から考える必須の対策ポイント -
製品資料
[Splunk Services Japan合同会社] サイバー脅威「トップ50」完全解説ガイド、新たな攻撃手法に対抗するには -
製品資料
[株式会社うるる] 「入札市場」完全ガイドブック:メリットから資格取得のポイントまで -
市場調査・トレンド
[株式会社うるる] はじめての「自治体/官公庁入札」 必要な知識がすぐに学べる入門ガイド
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
100億円の「Linux更新」を回避 みずほ銀行が選んだ“おきて破り”のRHEL延命策
-
2
Oracle巨大ITプロジェクトはなぜつまずいたのか 8年で導入1割、追加で170億ドル
-
3
Microsoft製品でここまで自動化できる 情シスがやめられる手作業10選
-
4
「VMware離れ」は本当か 3000社がVCF 9にかじを切った現実的な理由
-
5
「Microsoft 365」が乗っ取られる 跡形もなくMFAを破る手口
-
6
AI全部入り「Microsoft 365 E7」に企業が二の足を踏む訳 移行意向はわずか4%
-
7
ISMSの“コンサル丸投げ”が招く数千万円の無駄 NTTドコモビジネスの脱出劇
-
8
Netflixのバックエンドは「ほぼJava」 3000超のアプリを支える開発基盤の裏側
-
9
「IoT通信環境の構築・運用」に関するアンケート
-
10
「技術屋」で終わらないために 情シスが今取るべき認定資格5選
ホワイトペーパーランキング PR
-
1
AIエージェントで多様な日常業務を効率化するための入門ガイド
-
2
AIが「わざわざ使うツール」になっていない? 業務で自然に使う導線にする秘訣
-
3
5回聞くだけじゃ足りない? トヨタ式「なぜなぜ分析」の正しい実践方法
-
4
JR西日本ITソリューションズが「監視業務の属人化」を解消した方法とは?
-
5
「脱Excel」か「Excel快適化」か? 現場にやさしい業務改善の進め方
-
6
インシデント対応工数を約3割削減、東京ガスの事例に学ぶ監視体制刷新のコツ
-
7
PostgreSQLの「機能」「性能」「運用」「拡張性」に関する悩みの解消法
-
8
5分で分かる「セキュア大容量ファイル転送サービス」の機能とメリット
-
9
Macの安全神話は崩壊? 最新の脅威動向から見えた攻撃のトレンドと有効な対策
-
10
情報セキュリティ対策早分かりガイド:25の自社診断で弱点と解決策を理解
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー