採用時に確認すべきチュートリアル
「サーバレスアーキテクチャ」初心者ガイド まず検討すべき3大要素とは?
サーバレスアーキテクチャは開発チームに大きなメリットをもたらす一方で、採用の際には検討すべき要素が幾つかある。主要な3つの検討要素を紹介しよう。
従来のアプリケーションと比べて、「サーバレスアーキテクチャ」に基づくアプリケーション(以下、サーバレスアプリケーション)のメリットは多岐にわたる。特に物理サーバと仮想サーバのプロビジョニングやメンテナンスから開発者を解放できる点が大きい。サーバレスアーキテクチャは、アプリケーションサーバの存在を意識せずに開発可能なアプリケーションのアーキテクチャだ。
サーバレスアプリケーションでは、OSの更新など一般的なスケーリング作業やメンテナンス作業全てにクラウドベンダーが対処する。従来のアーキテクチャに基づくアプリケーションでは、開発者側がこうした作業をする必要があった。開発者はインスタンス(仮想マシン)の種類やリソースのスケーリング、アイドル状態のコンピューティングコストなどを気にする必要もなくなる。自身のアプリケーションの独自性や、その機能を高める特徴の開発に専念できる。
開発チームはサーバレスアーキテクチャを導入する前に、重要な決断を下さなければならない。チームスタッフの編成や開発フレームワーク(特定の設計手法に基づく機能群をまとめたソフトウェア)の選択、テスト方法などがその例だ。本稿はサーバレスアーキテクチャのチュートリアルとして、事前に検討すべき3つの重要な要素を取り上げる。
目次
- 検討要素1.開発チーム
- 検討要素2.フレームワークの選択(会員限定)
- 検討要素3.テスト方法(会員限定)
併せて読みたいお薦め記事
「サーバレスアーキテクチャ」とは何か
サーバレスアーキテクチャ導入事例
検討要素1.開発チーム
「サーバレスアーキテクチャを導入する際は開発者が中心的な役割を果たす」ことを最初に理解しておく必要がある。サーバレスアプリケーションのプロトタイプ開発では、コードをあまり使わない方法もある。ただしサーバレスアプリケーションの主役は、必要なカスタムロジックを構築する開発者だ。特にオープンソースの「Serverless Framework」、Amazon Web Services(AWS)の「AWS Serverless Application Model」(SAM)、「AWS Chalice」などのフレームワークを理解しているチームリーダーが必要だ。
チームには、アプリケーションの特定要素ごとに開発者が必要になる。API(アプリケーションプログラミングインタフェース)のコンポーネントとフロントエンドのコンポーネントがあるとしよう。この場合、個別の開発者チームを2つ作り、各チームが2つのコンポーネントのいずれかを担当する。従来のアプリケーションと同じように、個別の開発チームを全て連携させることがチームリーダーの役割になる。
検討要素2.フレームワークの選択
次に重要なのが「フレームワーク選び」だ。サーバレスアプリケーションの各フレームワークには長所と短所がある。前述の3つの一般的なフレームワークも例外ではない。
主に検討するのは、選んだフレームワークで、開発時間をそれほど増やさずにアプリケーションの特定の要件に対処可能かどうかだ。例えばAWS Chaliceはプログラミング言語「Python」を使用する開発者にとっては優れている。だがJavaScript実行環境「Node.js」を使用する開発者にとってはそれほど優れていない可能性がある。
Serverless FrameworkはNode.jsに関しては優れているものの、AWS ChaliceほどはPythonの使い勝手が良くない。SAMはAWSの同名クラウドサービス群での利用には最適だが、他社のクラウドサービスでは機能しない。
開発チームが最も使いやすいと感じるフレームワークが、最善の選択肢になることが一般的だ。開発チームが各フレームワークを試し、開発スタイルに最適なものを確認する。
検討要素3.テスト方法
最後は「テスト」だ。SAMやServerless Frameworkのようなフレームワークを選んだ場合、運用環境を緻密にシミュレーションできるテスト環境の作成が重要になる。開発者には各プラットフォームに各自のアカウントを設定してもらい、定義済みの運用環境を模倣できるようにする。例えばAWSでは、運用前に変更をテストするために、開発者が個別のアカウントを作成できる。
この方法はリスクを伴う恐れがある。アクセスキーなどの機密情報は一般的なコードリポジトリの外に保持する必要がある。こうした機密情報にアクセスするための手段として、機密情報を暗号化して保存する階層型ストレージサービスの「AWS Systems Manager Parameter Store」や、データベース管理サービス「Amazon DynamoDB」の暗号化されたテーブルなど、安全な保管環境を用意する。ローカル開発中でもそれは変わらない。環境変数に機密情報を格納しなければならない場合は、それらを暗号化し、AWSの「AWS Key Management Service」などの暗号鍵管理の仕組みを使用することだ。
個別の単体テストに加えて、自動化されたエンドツーエンドテスト(E2Eテスト:エンドユーザーによる画面操作を自動化して出力結果を確認するテスト)を実施する必要もある。例えばAWSのAPI管理サービス「Amazon API Gateway」でバイナリを出力するように構成していないのに、イベント駆動型コード実行サービス「AWS Lambda」の関数でPNGファイルを出力しようとしたらどうなるだろうか。一見、単体テスト中は適切に機能しているように見える。だがAmazon API Gatewayはプレーンテキストを出力しようとするため、PNGファイルの出力が文字化けのような状態になってしまう。
「Ghost Inspector」「New Relic」などの監視ソフトウェアを使用して変更を積極的に監視し、「Sentry」(開発:Functional Software)や「IOpipe」などのログ記録ソフトウェアをインストールして、実際のユーザーエラーを監視することが重要になる。
サーバレスアーキテクチャは最新のアプリケーションの開発や管理にとって優れた選択肢になる。ただし、それは適切に構成した場合に限られる。このチュートリアルにまとめたアドバイスを参考に、紹介したツールを最大限に活用してほしい。
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品資料
[株式会社インターネットイニシアティブ] 人材不足と属人化が深刻に 「攻められない情シス」を変革する一手とは? -
製品資料
[株式会社イトーキ] 会議室が「空いてるのに使えない」問題の解決策とは? -
事例
[株式会社イトーキ] 製造現場を取り巻く経営課題 「持続的な現場力」を強化する方法とは? -
製品資料
[株式会社イトーキ] 社員の力を引き出す、「ABW(Activity Based Working)」を実現する秘訣とは? -
製品資料
[株式会社BREXA Technology] 「インシデント初動対応」が遅れる3つの構造的要因とは?
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
Microsoft 365侵害企業の9割はMFA導入済み 1002人調査で見えた盲点
-
2
「Active Directory」復旧で“詰む”企業が続出 ランサムウェアに備える4対策
-
3
企業が「Microsoft Azure」を選ばざるを得ない理由
-
4
「オフィス移転・刷新に伴うネットワーク環境の実態」に関するアンケート
-
5
半数がブルーカラー転向を視野に? ベテランエンジニアを追い込む“54歳の壁”
-
6
なぜノートPCの更新が「4年→6年」に? AIインフラ急拡大の余波
-
7
Claude Codeで開発生産性は本当に上がったか? 3社の取り組みに学ぶ次なる手段
-
8
「RAGは終わった」は本当か――ロングコンテキストが変えたこと、変えられないこと
-
9
「GitLab」に最高深刻度の脆弱性 2014年以降の全版に影響を及ぼす恐れ
-
10
社員一人一人が「データの民主化」の恩恵を得られる環境の構築には何が必要?
ホワイトペーパーランキング PR
-
1
「IT史に名を残すシステム障害」8選
-
2
AIが苦手な「汚いデータ」になっていない? AI投資を無駄にしないための注意点
-
3
急増する高度なフィッシング詐欺 先回りしてブロックするには何が必要?
-
4
法人向け光回線のプランはどう選ぶ? 機能面/保守体制/コストを一覧で比較
-
5
三井ホームに学ぶ「無線LAN環境」構築 快適なオフィスと高度なIT運用の両立法
-
6
SNMPより詳細で、パケット解析より簡単な「トラフィック可視化・分析」の方法
-
7
Microsoft 365のメールセキュリティ、3つの“死角”と追加で検討すべき対策とは
-
8
「RPA導入の成果が出ない」を防ぐ、成果につながる自動化対象業務の選び方
-
9
10G回線の真価をフルに享受するには? 導入前にチェックしたいポイント
-
10
サイバー脅威「トップ50」完全解説ガイド、新たな攻撃手法に対抗するには
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー