サーバレスとコンテナ技術でも変わらない
「サーバレスでも開発者はインフラを気にすべきだ」と専門家が口をそろえる理由
サーバレスアーキテクチャとコンテナ技術のおかげで、新しいアプリケーションを構築する際のインフラの役割は小さくなっている。それでも、開発者にとっては残念な話だが、インフラの重要性は変わっていない。
パブリッククラウドはインフラスタックの中で重要性を増し続けている。パブリッククラウドのサービスは、ユーザーから単調なIT業務を引き受け、間違いなくインフラの制約から開発者を解放する。ベンダーが推し進めるサーバレスアーキテクチャなどの手法により、ユーザーはアプリケーションを支える物理資産を意識する必要がなくなる。では、開発者はもうインフラを気にする必要はないのだろうか。
2018年5月初旬に米国シアトルで開催したMicrosoftのデベロッパーカンファレンス「Build 2018」のセッションのうち、Bitnami、Microsoft、Pivotalの各責任者が参加したパネルディスカッションでは「開発者はインフラを気にする必要がある」という意見で全員が一致した。「最低限でも関心を持つ必要がある」という。クラウドへの移行が進む中で、インフラの役割はどのように進化するだろうか。同カンファレンスでは、その点について各社の責任者が意見を交わした。
本稿では、Microsoftで「Azure Compute」の製品部門の責任者を務めるコーリー・サンダース氏、Microsoftで「Azure Storage」と「Azure Stack」の製品部門の責任者を務めるタッド・ブロックウェイ氏、Bitnamiの共同創設者兼最高執行責任者(COO)のエリカ・ブレシア氏、Pivotalでシステムアドバイザリーグループ部門の統括責任者を務めるジョシュア・マッケンティー氏の各氏の発言を編集している。
併せて読みたいお薦め記事
コンテナとサーバレスを比較
クラウドサービスのサーバレス機能を比べる
サーバレスアーキテクチャにおけるインフラの役割
ジョシュア・マッケンティー氏(以下マッケンティー氏):開発者として、インフラについて詳しく知りたいと思ったことはあまりない。だが分散型システムを構築している場合は、恐らく一部のコードが別のサーバ上で実行される。そうなれば、そこにネットワークホップが存在する。サーバレスを利用するコードを作成しているなら、これを「Function as a Service」と呼んでも良いが、開発している機能がさまざまなサーバに配置されることになる。そのため、少なくともネットワークを理解しておくことは重要だ。
エリカ・ブレシア氏(以下ブレシア氏):サーバレスには非常に大きな魅力がある。だが、物事が変わるには長い時間がかかる。インフラを意識することはまだ絶対に欠かせない。これまで作成されてきた優れたアプリケーションはいずれもインフラを大いに意識している。サーバレスはこうしたサービスとは別のツールだ。だが、インフラに多大な注意を払っているさまざまなサービスを結び付けるためにサーバレスが使用されることは多い。
タッド・ブロックウェイ氏(以下ブロックウェイ氏):インフラが変化しているのは間違いない。だが、サーバレスはストレージのような従来のインフラと一部併用されている。これは実際、非常に強力な組み合わせだ。というのも、オンプレミスの資産とクラウドファーストの資産を全て利用し、それらをインフラにプールして、興味深い取り組みを実現できるためだ。それも、大量のコードを記述したり、IPアドレスのようなものを気にしたりする必要はない。
開発者がインフラを全く意識しなくても済むようにするために
マッケンティー氏:インフラを意識する必要のない開発が数多く進行していることは間違いないだろう。線引きのポイントは、実際にパフォーマンスが懸念されるかどうかだ。簡単な開発から進め、その後、ネットワークとパフォーマンスの影響を受けやすい複雑な開発を進める。インフラを意識しなければならないチームの規模を可能な限り小さくして、そのチームをできるだけインフラに近づける。そうして、2つの開発を結び付ければよい。
コーリー・サンダース氏(以下サンダース氏):一部のコンピューティングサービスとデータサービスではその性質上、完全に管理できる抽象化をどの程度できるかによって決まるだろう。Microsoftの「SQL Server」のようなものを考えてみよう。その場合しばしば、基本インフラの一部に構成、変更、調整などを加えることが前提になる。そのため、インフラが大きく変わらなければ、そうしたものを完全に抽象化するのは難しい。
Azure Functionsのようなものはどうだろうか。この場合はその実行先の要素や、実行先のOSでさえ通常は抽象化される。だが、そこにも課題はある。MicrosoftではAzure FunctionsのLinuxサポートに取り組んでいる。Javaは、WindowsよりもLinuxの方が非常に適切に動作することが分かっている。そのため、記述先となるこうした既存サービスのこれまでの背景を考慮すると、これらの抽象化の一部を完全に切り離せないことが問題になる。
クラウド移行前の企業についてベンダーが把握しておくべきこと
サンダース氏:どのように近代化するか。何を残すか。サービスのどの部分をコンテナ化するか。どの部分を新たに構築し、構築済みのコンテナからどの部分を取得するか。どの要素をサーバレスベースのソリューションに移行するか。つまり、どのような道を進みたいかが問題になる。その道筋の多くはアプリごとに変わるもので、顧客ごとに異なるものではない。
ブレシア氏:われわれが最初に知りたいのは、顧客がクラウドへの移行を考えている理由だ。コストを削減しようとしているのか。データセンターを閉鎖するように命じられているのか。身軽に動けるようになりたいのか。何らかの競争上のメリットに関わるのか。こうしたことを全て把握することが、適切な道へと導く上で非常に重要になる。
もう1つは、社内にどのような種類のリソースがあるかだ。制御と使いやすさのどこで線引きをするかについても把握する必要がある。制御の対象が増えればそれだけ責任も増す。制御できることに関心があるかどうか。そうした制御を管理するための社内リソースがあるかどうか。そうしたことも知っておきたい。
マッケンティー氏:ツールや一部のプロセスを積極的に変更しようとする人は多い。だが、革新について話をすると、自分の身に起こることではなく、社内にいる他の全員に起こるものと考えている。一般に、想像通りの革新へと向かう道を半ばに達したときに、自分がそのような急進派になることを考えられないなら、それ以上近づくことはできないだろう。
サーバレスアーキテクチャやその他の抽象化が増える中で、開発者にインフラを意識させる方法
マッケンティー氏:答えは、開発者にとって理にかなった言語とフレームワークを用意することだ。それが開発者の世界観の一部になれば開発者は意識するようになる。毎日、導入から始まり運用へと至っている。CI/CD(継続的インテグレーションと継続的デリバリー)から始める。開発者が運用に到達するCIパイプラインを最初に記述していても、「コードを書いてから、それを支えるインフラのことを考える」わけではない。実際は「まず、インフラとコードの組み合わせとしてコードを考えている。それから、そのような関わり合いの中で、自分のソフトウェアですべきことのメンタルモデルを当てはめる」だ。
クラウドの最新かつ優れたテクノロジーを全て利用する必要性
ブレシア氏:新しいことや新しいサービスを試すのは素晴らしい。だが、管理が必要なアプリやサービスを実際に構築するなら、考えなければならないことがある。それは、そのような行動をとる理由や目的だ。最新の輝かしいものを試すことだけを目的にすべきではない。
人々は物事を必要以上に複雑化する。モノリシックな単一サーバ環境で問題なく動作するアプリもある。こうしたアプリは単一サーバから全てのビジネス価値を引き出している。その後、そのアプリを1000個の異なるサービスへと分解しようとする姿を目にする。それが新しい流行だからだろう。決して実用的だからではない。週末のプロジェクトとして何かクールなものを構築して、新しいサービスについて学ぶのは素晴らしいことだ。それは全面的に後押しする。だが、自分や誰かが長期にわたってその何かを運用し続けなければならないなら、勧められない。何が合理的かを理解し、そこから進めるべきだ。
マッケンティー氏:「Microsoft Azure」に取り組んでいて、それを運用している人でさえ、全てのサービスについては把握していない。今後把握することもなければ、その必要もないだろう。それは「プロジェクトがある。解決しようとしている問題もある」という状況においては、北極星(つまり、常に変わることのない目印)のようなものだ。こういう問題に必要な要素は何か、と注目することが重要なのだ。パブリッククラウドの全てを極めようとしてはいけない。いずれにせよ明日には変わっているし、あらゆるものの名前が変わっていく。取り残されることを恐れてはならない。
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
関連記事
新着ホワイトペーパー PR
-
事例
[株式会社キーエンス] PCが苦手でも自動化できる ポポラマーマなど4事例に学ぶ「ナビ搭載型RPA」活用 -
製品資料
[株式会社キーエンス] 自分ひとりでデスクワークを効率化 「AI&ナビ搭載RPA」で実践する業務自動化 -
製品資料
[デジタルサーカス株式会社] Drupalサイト監査サービスでは何をどのように確認できるのか? -
事例
[横河ソリューションサービス株式会社] フィード・ワンの事例に学ぶ、基幹システム刷新を成功させるためのポイント -
事例
[横河ソリューションサービス株式会社] AGC 化学品カンパニーに学ぶ「Dynamics 365」導入 国内関係会社全体のDXも加速
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
PHPはそもそも必要か? 脆弱性で問われる自社サイト安全性と保守負担のバランス
-
2
Microsoft 365導入後も稟議は「Excelをメールで回覧」 承認が止まる理由
-
3
米国防総省で300万人分の個人情報が流出 その「意外な原因」と教訓
-
4
PHP2Shellの「事前の情報流出」でパニックに パッチ公開を巡る“混乱劇”
-
5
京王電鉄・東京メトロの被害から学ぶ境界防衛 ITの侵害はどこまで波及するか
-
6
「Microsoft 365」が乗っ取られる MFAを破る“本物の画面”の恐怖
-
7
PHP脆弱性「PHP2Shell」で2260万件に影響 情シスの緊急チェックリスト
-
8
金融・通信で情報漏えいが続出 IPAとJPCERT/CCが情シスに求める緊急点検
-
9
「GitLab」に最高深刻度の脆弱性 2014年以降の全版に影響を及ぼす恐れ
-
10
Microsoft 365侵害企業の9割はMFA導入済み 1002人調査で見えた盲点
ホワイトペーパーランキング PR
-
1
AI駆動攻撃にどう対抗する? 超速の攻撃からエンドポイントを保護する方法
-
2
経験豊富な即戦力人材に直接アプローチできる、「攻めの採用」への転換術
-
3
「IT史に名を残すシステム障害」8選
-
4
10G回線の真価をフルに享受するには? 導入前にチェックしたいポイント
-
5
SCS評価制度時代の「SASE選定」ガイド
-
6
HDDを使わない「SSDオンリー」が無謀なのはなぜ?
-
7
2026年のサイバーセキュリティには何が必要か? 最新データに学ぶ傾向と対策
-
8
「EDR」選定ガイド:比較・検討フェーズで整理すべきポイントを解説
-
9
MDMだけでは防げない? Appleデバイスに潜む5つのセキュリティギャップ
-
10
情報セキュリティ対策早分かりガイド:25の自社診断で弱点と解決策を理解
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー