新時代の幕開け、サーバーレスアーキテクチャの衝撃! 〜開発・運用・セキュリティ・コストがどう変わる?〜

>100 Views

June 02, 16

スライド概要

2016.6.2 AWS Summitで話した講演資料です。サーバーレスアーキテクチャおよびAWS Lambdaについて導入後の変化を中心にメリットや実例についてお話ししました。新サービスも発表しましたが都合により割愛してます。あしからず。

profile-image

アイレット株式会社 (cloudpack) エバンジェリスト / 公正取引委員会 デジタルアナリスト

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

(ダウンロード不可)

関連スライド

各ページのテキスト
1.

新時代の幕開け、サーバーレスアーキテクチャの衝撃! 〜開発・運用・セキュリティ・コストがどう変わる?〜 アイレット株式会社 cloudpack事業部

2.

アジェンダ ☁ cloudpackについて ☁ サーバーレスアーキテクチャの時代 ☁ Lambdaを使った開発とは • コスト編 • セキュリティ編 • Lambdaファースト編 ☁ Lambda関連事例 ☁ まとめ

3.

について

4.

執行役員 / エバンジェリスト 後藤 和貴 @kaz_goto

5.

☁ cloudpack事業 執行役員 • エバンジェリスト • マーケティング担当(PR、ウェブ…) ☁ バックグラウンド 執行役員 / エバンジェリスト 後藤 和貴 @kaz_goto • Oracle カスタマーサポート→開発 • ビジネス・アーキテクツ • テクニカルディレクター(フリーランス)

6.

アイレット株式会社 設立 2003年10月15日 資本金 7,000万円 代表者 齋藤 将平 従業員数 124名(2016年4月現在) 事業内容 システム開発・保守 クラウドマネジドホスティング

9.

AWSを活用しながら お客さまはビジネスに集中できる コンシェルジュサービス

10.

24時間365日 監視運用保守 企業 定額課金/ 請求書払い Pマーク、ISMS、PCI DSS取得済みの運用体制 AWS

12.

プレミアコンサルティングパートナー 全世界で46社 最上位パートナー Premier > Advanced > Standard > Registered アジア地域 5 社 cloudpackは4年連続認定

13.

認証・セキュリティの取り組み +セキュリティルーム ※写真はイメージです

15.

クラウド 導入事例 120 ※ 2016年6月時点

16.

日経ビジネス特別号、週刊BCN AWSの夏 特別号

17.

サーバーレスアーキテクチャの時代

18.

AWSJ西谷氏講演資料 “Scale Your Business with Managed Servers” より引用

19.

r r ✤ r r r ✤ ✤ ✤AWS m r m m ✤ EC2 ✤ ✤ ✤EC2 ” r “ }m } CodeDeploy EC2 Elastic BeanstalkmOpsWorks AWSJ西谷氏講演資料 “Scale Your Business with Managed Servers” より引用

20.

サーバーレスアーキテクチャとは ☁ サーバーの存在について考える必要のない マネージドサービス ☁ ビジネスロジック以外のことを任せられる アプリケーション実行環境 ☁ 結果アプリケーションコードだけに 集中できる

21.

AWS Lambda

22.

AWS Lambda Lambda : r a ” r Lambda m r “ [ m 100ms r [ v f h } r r ” m s r m r AWSJ西谷氏講演資料 “Scale Your Business with Managed Servers” より引用

23.

AWS Lambda ✤ r ✤ ✤AWS ✤ r ✤VPC r “ ” r r AWS r ” } r ✤Lambda function ✤JavaScriptsNode.jst ✤ r r JavamPython AWSJ西谷氏講演資料 “Scale Your Business with Managed Servers” より引用 r

24.

Lambdaの特長 ☁ アプリケーション実行基盤はAWSが準備 ☁ 環境周りのコードは一切不要で、 スケーリングも自動で行われる ☁ 利用者はもはや実行するファンクション 単位で実装するだけ

25.

Lambdaを使った開発とは コスト編

26.

オンプレからクラウド(EC2)へ ☁ オンプレミス • 使っても使ってなくても購入した サーバーの数だけコストがかかる • Max分だけサーバーを調達 ☁ クラウド(EC2) • 必要な分のみ都度サーバーを調達 (スペック/数)

27.

EC2の課金 1時間単位 ☁ 1分の処理のために5分間EC2を起動しても 1時間分の課金が行われる

28.

EC2の限界(コスト) ☁ スケジュールに 従って動作(1) • 1日1回メールを送信 ☁ 待機時間が発生(2) • ユーザーからの要求 (頻度小)があった ときだけ稼動

29.

AWS Lambdaの課金 実行した「時間」と「回数」 ☁ 実行した時間は100ミリ秒単位 • メモリサイズに応じて$0.000000208/100ミリ秒〜 ☁ 100万リクエストにつき $0.20

30.

調整中 EC2からAWS Lambdaへ

31.

Lambda導入後コストの変化 ☁ Lambdaを利用することで、コストを抑え ることが可能 cloudpackの脅威 利用料の何%ビジネスの先細り!?

32.

Lambdaを使った開発とは セキュリティ編

33.

責任共有モデル ☁ データセンターの物理的ファシリティ、ネット ワーク・ハイパーバイザなどクラウド基盤の部 分はAWSが責任をもつ ☁ 基盤以外の部分はオンプレミスと同様の考え方 でユーザー責任 ☁ 必要に応じて外部パートナーのソリューション も必須

34.

EC2での責任共有モデル • • • • • • • • • • cloudpackが支援に入った場合のモデル SOC 1/SSAE 16/ISAE 3402 SOC 2 SOC 3 FISMA, DIACAP, and FedRAMP DOD CSM Levels 1-5 PCI DSS Level 1 ISO 9001 / ISO 27001 ITAR FIPS 140-2 MTCS Level 3

35.

EC2 → Lambda 責任分解点の変化 EC2の場合 OS やミドルウェアも含め ほとんどが利用者の責任 利用者 Lambdaの場合 アプリケーション以外は AWS の責任 利用者 アプリケーション ミドルウェア データ 運用ツール OS • セキュリティ設定 • アカウント管理 • ネットワーク設定 • パラメータチューニング • 監視 /バックアップ/ 障害対応 責任分岐点 • ファシリティ • ストレージインフラ • 物理セキュリティ • ネットワークインフラ • コンピュートインフラ • 仮想レイヤー アプリケーション データ • セキュリティ設定 • アカウント管理 責任分岐点 ミドルウェア 運用ツール OS • ネットワーク設定 • パラメータチューニング • 監視 /バックアップ/ 障害対応 • ファシリティ • ストレージインフラ • 物理セキュリティ • ネットワークインフラ • コンピュートインフラ • 仮想レイヤー

36.

Lambda導入後セキュリティの変化 ☁ ミドルウェアやOSなどの管理から解放さ れ運用負担は無し cloudpackの脅威 インフラ担当の出番が減少

37.

Lambdaを使った開発とは Lambdaファースト編

38.

クラウドファースト ☁ クラウドファーストとは、企業が情報システム の設計や移行に際してクラウドサービスの採用 を第一に検討する方針のこと ☁ クラウドの「制約」と「実績」が浸透し、クラ ウドの利点がオンプレの利点を上回った結果

39.

Lambdaファースト ☁ Lambdaファーストとは、企業が情報システムの設計や移 行に際してLambdaの採用を第一に検討する方針のこと • AWS Lambdaを採用を第一に検討するということは必然的に クラウドネイティブなシステムを検討することになる ☁ 気づいたらcloudpackのエンジニアはLambdaファースト な思考になっていた • 社内で「制約」と「実績」の浸透が暗黙的に始まっている

40.

代表的な制約 ☁ 利用できる言語 • Python、Node.js、Java ☁ タイムアウトは最大で5分 • 5分以上の処理はできない ☁ 同時起動数はアカウント(リージョン)あたり100 • 上限アップの申請は可能 ☁ VPCサポート機能ではENIが利用される • ENIの作成の上限が存在(サブネット/EC2の数)

41.

代表的な実績(後述) ☁ EC2を使わないWebシステム • API Gateway + Lambda ☁ 頻度の少ないPush配信システム • Lambda + SNS ☁ 運用ツール • Lambda + S3 / CloudWatch

42.

Lambdaファースト導入後 ☁ ナレッジ = 制約 + 実績 + … ☁ アプリケーション開発と保守まで対応でき ると効果を最大化しやすい cloudpackの機会 Lambda開発ナレッジの提供

43.

そういえば6年前も… ☁ AWSに衝撃を受けながらも、クラウド環 境下での開発ナレッジを提供・拡散 ☁ その結果新規顧客を獲得、クラウド上ので システム構築・運用まで行うことで成長し てきた キタ━━━━(゚ ゚)━━━━ッ!!

44.

Lambda関連事例

45.

近畿大学様 業務システム基盤 https://cloudpack.jp/casestudy/116.html

46.

☁ 業務システム一式 AWS移行 ☁ シンガポールにDR用 VPC設置 ☁ 10年トータルで20% コスト削減

47.

☁ Lambdaで、シンガ ポールに定期的にAMI コピー ☁ コスト押さえるために 一部のインスタンスを 日中だけ起動する仕組 みをLambdaで実装

48.

日本放送協会様 第66回NHK紅白歌合戦 https://cloudpack.jp/casestudy/117.html

49.

☁ 大晦日4時間半リアルタイム進行 ☁ RabbitMQ + WebSocketで同時 数十万接続 ☁ 生放送中にセカンドスクリーン アプリにアーティストや楽曲情 報が配信される ☁ リアルタイムにアーティスト情 報、中間投票、最終投票の様子 を集計・表示

50.

☁ RabbitMQ配信状況監視 &統計情報API実装 ☁ スケールアウト/メッセー ジ再配信などには Lambda/API Gateway/ DynamoDBを採用

51.

キャンペーンサイト 画像アップロード・変換

52.

EC2を使わないWebシステム ☁ 要件 • ユーザーが画像をアップロード • 画像変換を行いS3&DynamoDB へメタデータ保管 • アップロードした画像をランダ ムに取得して表示 ☁ ポイント • SQSを入れることでDynamoDB への集中アクセスを回避

53.

コストの単純比較(参考) ☁ Lambdaの場合 • ¥5,000 • 1ドル = 120円 ☁ EC2を使った構成の場合 • ¥10,000 • 1ドル = 120円 • EC2/RDSのインスタンスタイプ は「t2.micro」として計算

54.

モバイルプッシュ配信システム

55.

頻度の少ないPush配信システム ☁ 要件 • S3にPush送信対象リストを アップロード • 短時間でPush送信 • 1日1回実施 ☁ ポイント • S3にファイルが配置される タイミングでLambdaを起動 • 並列にファンクション実行

56.

コストの単純比較(参考) ☁ AWS Lambdaの場合 • ¥1,000 • 1ドル = 120円 ☁ EC2を使った構成の場合 • ¥5,000 • 1ドル = 120円 • EC2のインスタンスタイプ は「t2.micro」として計算

57.

攻撃データ可視化 ダッシュボード

58.

☁ 攻撃状況をダッシュボードで可視化 • 外部からの攻撃ログをKinesis経由で保管 フィルタ • 生ログはS3保管、ミラーしてLambdaで フィルタ後にさらにKinesisへ • フィルタ・整形済みログをS3へ →INCAPSULA/AKAMAI両ログの共通化 ログ整形 生ログ保管

59.

管理画面 ☁ 攻撃状況をダッシュボードで可視化 • 分析済み生データはRedshiftへ • 管理画面で必要な即時データ(キャッ シュ)はJSONでS3保管 • 管理画面(ダッシュボード)表示はAPI Gateway経由でアクセス JSON保管 生データ分析

60.

その他運用ツール

61.

運用ツール ☁ S3/CloudWatch Logsに出力されたログの監視 • キーワードを検出したら通知 ☁ AWS IPレンジ更新→差分記録&WAF登録 • SNS→Lambda→S3保管+Backlog起票 • WAFのAWS IPレンジ更新 ☁ ENIの数のモニタリング • CloudWatchのカスタムメトリクスとして登録

62.

まとめ

63.

まとめ ☁ サーバーレスアーキテクチャの採用は、 コスト最適化・運用負担軽減など メリットが大きい ☁ LambdaはAWS上の既存仕組みに馴染んで 自然に効果を発揮する ☁ クラウドファーストは時代遅れ(当たり前) 時代はLambdaファーストへ

64.

cloudpack ホワイトペーパー 4兄弟 サーバーレス開発 ホワイトペーパー (AWS Lambda) クラウドセキュリティ サポートデスク(運用) 部数 限定 clou dpac k ブー スで 頒布 中! AWS Summit会場限定 先行頒布 専用線接続 (AWS Direct Connect)