Post on 09-Jan-2017
アイレット株式会社 cloudpack事業部
新時代の幕開け、サーバーレスアーキテクチャの衝撃! 〜開発・運用・セキュリティ・コストがどう変わる?〜
アジェンダ
☁ cloudpackについて
☁ サーバーレスアーキテクチャの時代 ☁ Lambdaを使った開発とは
• コスト編 • セキュリティ編 • Lambdaファースト編
☁ Lambda関連事例
☁ まとめ
について
後藤 和貴@kaz_goto
執行役員 / エバンジェリスト
後藤 和貴@kaz_goto
執行役員 / エバンジェリスト
☁ cloudpack事業 執行役員 • エバンジェリスト • マーケティング担当(PR、ウェブ…)
☁ バックグラウンド • Oracle カスタマーサポート→開発 • ビジネス・アーキテクツ • テクニカルディレクター(フリーランス)
アイレット株式会社
設立
資本金
代表者
従業員数
事業内容 システム開発・保守 クラウドマネジドホスティング
2003年10月15日
7,000万円
齋藤 将平
124名(2016年4月現在)
AWSを活用しながら お客さまはビジネスに集中できる
コンシェルジュサービス
24時間365日
定額課金/ 請求書払い
Pマーク、ISMS、PCI DSS取得済みの運用体制
監視運用保守
企業 AWS
プレミアコンサルティングパートナー
全世界で46社アジア地域5社
最上位パートナーcloudpackは4年連続認定Premier > Advanced > Standard > Registered
認証・セキュリティの取り組み
+セキュリティルーム※写真はイメージです
120
クラウド 導入事例
※ 2016年6月時点
日経ビジネス特別号、週刊BCN AWSの夏 特別号
サーバーレスアーキテクチャの時代
AWSJ西谷氏講演資料 “Scale Your Business with Managed Servers” より引用
r r✤
✤ r✤ r✤AWS r m r m
✤ m
✤ EC2✤ ” r }m EC2
✤EC2 “ } CodeDeploy Elastic BeanstalkmOpsWorks
AWSJ西谷氏講演資料 “Scale Your Business with Managed Servers” より引用
サーバーレスアーキテクチャとは
☁ サーバーの存在について考える必要のないマネージドサービス
☁ ビジネスロジック以外のことを任せられるアプリケーション実行環境
☁ 結果アプリケーションコードだけに集中できる
AWS Lambda
Lambda : r m r r r
AWS Lambda
a [ vf h
}
100ms r
[ s
” rm m
”
r r “ mLambda
AWSJ西谷氏講演資料 “Scale Your Business with Managed Servers” より引用
AWS Lambda✤ “ ” r r
r r✤ AWS✤AWS r ” r
✤ r }✤VPC r
✤Lambda function✤JavaScriptsNode.jst JavamPython✤ r r
AWSJ西谷氏講演資料 “Scale Your Business with Managed Servers” より引用
Lambdaの特長
☁ アプリケーション実行基盤はAWSが準備 ☁ 環境周りのコードは一切不要で、
スケーリングも自動で行われる ☁ 利用者はもはや実行するファンクション
単位で実装するだけ
Lambdaを使った開発とはコスト編
オンプレからクラウド(EC2)へ
☁ オンプレミス
• 使っても使ってなくても購入したサーバーの数だけコストがかかる
• Max分だけサーバーを調達
☁ クラウド(EC2)
• 必要な分のみ都度サーバーを調達(スペック/数)
EC2の課金
☁ 1分の処理のために5分間EC2を起動しても1時間分の課金が行われる
1時間単位
EC2の限界(コスト)
☁ スケジュールに従って動作(1) • 1日1回メールを送信
☁ 待機時間が発生(2) • ユーザーからの要求
(頻度小)があったときだけ稼動
AWS Lambdaの課金
☁ 実行した時間は100ミリ秒単位 • メモリサイズに応じて$0.000000208/100ミリ秒〜
☁ 100万リクエストにつき $0.20
実行した「時間」と「回数」
EC2からAWS Lambdaへ
調整中
利用料の何%ビジネスの先細り!?cloudpackの脅威
Lambda導入後コストの変化
☁ Lambdaを利用することで、コストを抑えることが可能
Lambdaを使った開発とはセキュリティ編
責任共有モデル
☁ データセンターの物理的ファシリティ、ネットワーク・ハイパーバイザなどクラウド基盤の部分はAWSが責任をもつ
☁ 基盤以外の部分はオンプレミスと同様の考え方でユーザー責任
☁ 必要に応じて外部パートナーのソリューションも必須
EC2での責任共有モデル
• 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
cloudpackが支援に入った場合のモデル
EC2 → Lambda 責任分解点の変化
アプリケーション
• ファシリティ• 物理セキュリティ• コンピュートインフラ
• ストレージインフラ• ネットワークインフラ• 仮想レイヤー
• ネットワーク設定• パラメータチューニング• 監視/バックアップ/障害対応
• セキュリティ設定• アカウント管理
OSやミドルウェアも含めほとんどが利用者の責任
利用者
データ
ミドルウェア 運用ツール
OS
EC2の場合
責任分岐点
アプリケーション以外はAWSの責任
Lambdaの場合
利用者
アプリケーション
• ファシリティ• 物理セキュリティ• コンピュートインフラ
• ストレージインフラ• ネットワークインフラ• 仮想レイヤー
• セキュリティ設定• アカウント管理データ
• ネットワーク設定• パラメータチューニング• 監視/バックアップ/障害対応
ミドルウェア 運用ツール
OS
責任分岐点
インフラ担当の出番が減少cloudpackの脅威
Lambda導入後セキュリティの変化
☁ ミドルウェアやOSなどの管理から解放され運用負担は無し
Lambdaを使った開発とはLambdaファースト編
クラウドファースト
☁ クラウドファーストとは、企業が情報システムの設計や移行に際してクラウドサービスの採用を第一に検討する方針のこと
☁ クラウドの「制約」と「実績」が浸透し、クラウドの利点がオンプレの利点を上回った結果
Lambdaファースト
☁ Lambdaファーストとは、企業が情報システムの設計や移行に際してLambdaの採用を第一に検討する方針のこと
• AWS Lambdaを採用を第一に検討するということは必然的にクラウドネイティブなシステムを検討することになる
☁ 気づいたらcloudpackのエンジニアはLambdaファーストな思考になっていた
• 社内で「制約」と「実績」の浸透が暗黙的に始まっている
代表的な制約
☁ 利用できる言語 • Python、Node.js、Java
☁ タイムアウトは最大で5分 • 5分以上の処理はできない
☁ 同時起動数はアカウント(リージョン)あたり100
• 上限アップの申請は可能
☁ VPCサポート機能ではENIが利用される
• ENIの作成の上限が存在(サブネット/EC2の数)
代表的な実績(後述)
☁ EC2を使わないWebシステム • API Gateway + Lambda ☁ 頻度の少ないPush配信システム
• Lambda + SNS ☁ 運用ツール
• Lambda + S3 / CloudWatch
Lambdaファースト導入後
☁ ナレッジ = 制約 + 実績 + … ☁ アプリケーション開発と保守まで対応でき
ると効果を最大化しやすい
Lambda開発ナレッジの提供cloudpackの機会
キタ━━━━(゚∀゚)━━━━ッ!!
そういえば6年前も…
☁ AWSに衝撃を受けながらも、クラウド環境下での開発ナレッジを提供・拡散
☁ その結果新規顧客を獲得、クラウド上のでシステム構築・運用まで行うことで成長してきた
Lambda関連事例
☁ 業務システム一式AWS移行
☁ シンガポールにDR用VPC設置
☁ 10年トータルで20%コスト削減
☁ Lambdaで、シンガポールに定期的にAMIコピー
☁ コスト押さえるために一部のインスタンスを日中だけ起動する仕組みをLambdaで実装
日本放送協会様 第66回NHK紅白歌合戦
https://cloudpack.jp/casestudy/117.html
☁ 大晦日4時間半リアルタイム進行 ☁ RabbitMQ + WebSocketで同時
数十万接続 ☁ 生放送中にセカンドスクリーン
アプリにアーティストや楽曲情報が配信される
☁ リアルタイムにアーティスト情報、中間投票、最終投票の様子を集計・表示
☁ RabbitMQ配信状況監視&統計情報API実装
☁ スケールアウト/メッセージ再配信などにはLambda/API Gateway/DynamoDBを採用
キャンペーンサイト 画像アップロード・変換
EC2を使わないWebシステム
☁ 要件 • ユーザーが画像をアップロード • 画像変換を行いS3&DynamoDB
へメタデータ保管 • アップロードした画像をランダ
ムに取得して表示 ☁ ポイント
• SQSを入れることでDynamoDBへの集中アクセスを回避
コストの単純比較(参考)
☁ Lambdaの場合 • ¥5,000
• 1ドル = 120円
☁ EC2を使った構成の場合 • ¥10,000
• 1ドル = 120円 • EC2/RDSのインスタンスタイプ
は「t2.micro」として計算
モバイルプッシュ配信システム
頻度の少ないPush配信システム
☁ 要件 • S3にPush送信対象リストを
アップロード
• 短時間でPush送信
• 1日1回実施
☁ ポイント
• S3にファイルが配置されるタイミングでLambdaを起動
• 並列にファンクション実行
コストの単純比較(参考)
☁ AWS Lambdaの場合 • ¥1,000
• 1ドル = 120円
☁ EC2を使った構成の場合 • ¥5,000
• 1ドル = 120円 • EC2のインスタンスタイプ
は「t2.micro」として計算
攻撃データ可視化 ダッシュボード
☁ 攻撃状況をダッシュボードで可視化 • 外部からの攻撃ログをKinesis経由で保管
• 生ログはS3保管、ミラーしてLambdaでフィルタ後にさらにKinesisへ
• フィルタ・整形済みログをS3へ→INCAPSULA/AKAMAI両ログの共通化
生ログ保管ログ整形
フィルタ
☁ 攻撃状況をダッシュボードで可視化 • 分析済み生データはRedshiftへ • 管理画面で必要な即時データ(キャッ
シュ)はJSONでS3保管 • 管理画面(ダッシュボード)表示はAPI
Gateway経由でアクセス
生データ分析
JSON保管
管理画面
その他運用ツール
運用ツール
☁ S3/CloudWatch Logsに出力されたログの監視 • キーワードを検出したら通知
☁ AWS IPレンジ更新→差分記録&WAF登録 • SNS→Lambda→S3保管+Backlog起票 • WAFのAWS IPレンジ更新
☁ ENIの数のモニタリング • CloudWatchのカスタムメトリクスとして登録
まとめ
まとめ
☁ サーバーレスアーキテクチャの採用は、 コスト最適化・運用負担軽減などメリットが大きい
☁ LambdaはAWS上の既存仕組みに馴染んで 自然に効果を発揮する
☁ クラウドファーストは時代遅れ(当たり前)時代はLambdaファーストへ
cloudpack ホワイトペーパー 4兄弟
クラウドセキュリティ
サーバーレス開発 ホワイトペーパー(AWS Lambda)
サポートデスク(運用) 専用線接続 (AWS Direct Connect)
部数限定 cloudpack ブースで頒布中!
AWS Summit会場限定 先行頒布