Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Kubernetesのない世界 すべてがサーバーレスになる

303 views

Published on

2018.4.19 Japan Container Days で話した漫談です

Published in: Technology
  • Be the first to comment

Kubernetesのない世界 すべてがサーバーレスになる

  1. 1. Kubernetesのない世界 すべてがサーバーレスになる 2018.4.19 Japan Container Days v18.04 #containerdaysjp 吉田真吾 @yoshidashingo Yasuhiro HARA @toricls 公 開 版
  2. 2. 吉田真吾 n バックグラウンド 証券システム基盤開発 p 基盤システム開発、Oracleチューニングなど エバンジェリスト p 講演113回(2013年実績) p AWS設計・構築・移行(2014-2015) n 現在のしごと (株) セクションナイン 代表取締役社長 p APN コンサルティングパートナー p DevOps Dockerize Serverless 支援など (株) 実績等 p AWSウルトラクイズ 初代チャンピオン (2012年) p AWS Samurai 2014 / 2016
  3. 3. Yasuhiro HARA @toricls SUPINF Inc. SI, コンサルティング
  4. 4. AWSによるサーバーレスアーキテクチャ サーバーレスアーキテクチャ• による 動画共有サイト構築 オンライン• 教育動画サイト「A Cloud Guru」で実際に使われている技術や コードをベースにした詳細説明 AWS Lambda / API Gateway / S3 /• CloudFront / Elastic Transcoder / Auth0 / Firebase Realtime Database
  5. 5. 今年もやります!!
  6. 6. 本日はざっくりこんなスタンスで すべてがサーバーレスになる! んなあほな
  7. 7. われわれがすべきこと はなんだろう? ソフトウェア開発者
  8. 8. ソフトウェアを通じて価値を提供する われわれがすべきこと
  9. 9. 短い時間で 価値の高いもの / 素早く / たくさん デリバリー /フィードバック / 改善
  10. 10. Less Ops, More Code!!
  11. 11. われわれの戦いの歴史 Less Ops, More Code ちょっと振り返って みて良いですか?
  12. 12. PaaSの普及 2008〜 インフラ• を隠蔽したソフトウェア実行基盤 →インフラや実行環境のメンテに費やす作業が減る 12• -Factor App / PaaSを活かすアプリのつくりか た すべてが• PaaSになったか レガシーシステム• の移植性 パッケージング• やポータビリティの再現性の低さ
  13. 13. コンテナ技術の一般化 2013(Docker)〜 アプ• リごとの環境分離 複雑• なインフラの依存性からの脱却 すべてが• コンテナ+スケジューラーになるか クラウド• やオンプレミスのサーバーへのデプロイか の手間 イメージ• のビルドプロセス スケーラビリティ• の管理
  14. 14. FaaS 2014〜 FaaS• :コードを用意して渡すだけで実行できるソ フトウェア実行基盤 超並列的:• キャパシティプランニング不要 サーバ• ーのプロビジョニング / ソフトウェアのインス トール不要 コンテナ• のビルド / デプロイ 不要 サーバ• ーレスアーキテクチャ 「サーバ• ーに直接アクセスしなくても仕事ができる」新 しいソフトウェアアーキテクチャ
  15. 15. コードに全力を注ぎたい Less Ops, More Code ようするに
  16. 16. コンテナってDockerでビルドしてKubernetes でクラウド上にスケジューリングするというス タイルで完成形なんですかね? んなあほな
  17. 17. 理想の Less Ops, More Code. サーバーレス コンテナ オンプレミス +H/W Less Ops な調達モデル Kubernetes コンテナ オンプレミス
  18. 18. クラウドがなかったらこういう組み合わせが多 かったのかなと思ってたけど、今日色々聞いて みたらむしろクラウド事業者もこぞってオンプ レにk8sベースのスタックを構築できるソ リューション出してますな 当日はRancherとかに触れてど うのこうの言ったけど何話した か忘れちゃった
  19. 19. 理想の Less Ops, More Code. サーバーレス コンテナ オンプレミス +H/W Less Ops な調達モデル Kubernetes コンテナ VM
  20. 20. 理想の Less Ops, More Code. サーバーレス コンテナ オンプレミス +H/W Less Ops な調達モデル KubernetesもVM もない世界
  21. 21. VMレスコンテナ、便利そう。でもFargate、 本番で振り回すには単純にまだ高いなーって。 機能性や運用工数やリスクまで 含めてうんぬんかんぬん
  22. 22. じゃぁ次はサーバーレスの紹介しますね
  23. 23. What is Serverless ? / = = PI
  24. 24. Serverless PaaS は黎明期 Gartner Identifies Three Megatrends That Will Drive Digital Business Into the Next Decade http://www.gartner.com/newsroom/id/3784363
  25. 25. 原則 マイクロサービスn 指向 小規模• で自律的なシステム • 1つの目的にフィットしている マイクロサービス:ビジネスü の境界=サービスの境界 サーバーレスü で実行する各ランタイムはサービスの境界よりずっと細かい リアクティブn なアーキテクチャ リクエストルーティング• 機能/状態管理/永続ストレージを コードから「分離」することで、メンテナンスしやすい最小限に維持し、生産 性を向上する 認証・認可n にもとづくリソースアクセス ドメイン• の違うサービス間のリソースへのアクセスを適切な範囲に限定する DRYn 競争力• を得られない汎用機能をアウトソースする
  26. 26. 理想の Less Ops, More Code.サーバーレス Less Ops な調達モデル コードだけあれば いいじゃない
  27. 27. とても良い質問ですね。 FaaSを中心にしたサーバーレスではデプロイメント を便利にしたりアプリケーションスタックを宣言的 に記述して管理できるフレームワークがエコシステ ムを中心に発展してきてるんですよ でもサーバーレスってコード書く以外のとこで 大変なこともまだありますよね? チーム開発どうやる?とか ちょっと会話の流れに出来レース感があr
  28. 28. https://dan-serverless-platform-refactor--landscape.netlify.com/grouping=landscape&landscape=serverless CNCF Landscape
  29. 29. ベンダーやオープンソース作者やそれにコントリ ビュートする人たちが増えてエコシステムが大きく なってきてるという実感はありますね。 それ以外にもおとといこんな面白い話を聞いたんで すよ。 VS Code や Cloud 9 も便利ですよね ここもかなり出来レース感g
  30. 30. チーム開発って難しいですか? アーキテクト• と実装の分割さえできればむしろ 工程や品質管理しやすい 中山桂一さん@キャラウェブ WebもアプリもサーバーサイドはREST API化 してますが「Swagger定義」と「DynamoDB のテーブル定義」さえちゃんとできていれ ば、外部ベンダに関数ごとに制作お願いでき るんで管理しやすいですよ (明日の開発カンファレンス より) 現場的コンウェイの法則 (マイクロサービスの実践)
  31. 31. マイクロサービスやるとデススターになりが ちなので、イベントハブを中心にしてイベン トの経路の見通しが良いアーキテクチャを作 るのが大事だと思うんですよね。 となるとイベントハブ部分にほぼ無限のスケーラビ リティが確保できるプラットフォームって自ずと限 られてきそうですね
  32. 32. マイクロサービス “デス・スター”
  33. 33. サーバーレス独特なObservabilityサービスも 最近はいろいろあるし、トレンドも変わって来 てるみたいなので紹介しますね
  34. 34. Observability Engineering “サーバーレス時代”の
  35. 35. たとえばFaaS主体で機能単位に構成していくと どんな感じになるかというと…
  36. 36. Mackerel とか とか、あと Mackerel とかも けっこうみなさん入れてt サーバーがあった頃であれば、個別のメトリク スってZabbixやNagiosのエージェント入れて 収集したり、NewRelicみたいなAPMのエー ジェントも入れてたと思うんですよ。 分散トレーシングしたければZipkinとか Jaegerあたりとか。でもね…
  37. 37. OS以下の情報にアクセスできない
  38. 38. それぞれのシステムや共通監視システムの マネージャーインスタンスでログのアグリ ゲートしてたりすると思うんですけど、
  39. 39. 並列でスケーラブルにログが飛んでくる
  40. 40. ベンダーが提供するツールや専業のスタート アップも増えてきてますね
  41. 41. モニタリング層 Serverless Application Lens Amazon CloudWatch AWS X-Ray ※非同期処理はトレースされない
  42. 42. https://dan-serverless-platform-refactor--landscape.netlify.com/grouping=landscape&landscape=serverless この2つ紹介しますね
  43. 43. Building Composable Serverless Apps Eric Windisch IOpipe, Inc.#iopipe
  44. 44. = SL O I
  45. 45. ただこれだと毎回数百msec余計なレイテンシ が増えて課金もバカにならないんですよね
  46. 46. O E A S = E R - - O
  47. 47. トレンドは「Functionをラップしてステート などをタッピングする同期型のツール」から Epsagon, THUNDRA のような「CloudWatch Logsに必要なメトリクスを出力させたうえで それをサービスダッシュボードで可視化する 非同期型のツール」に移りつつあるように思 います
  48. 48. といったあたりでお時間です。まとめとしては「ソフト ウェア実行基盤の調達モデルに違いがあっても、Less Ops, More Code. を目指そう」そして「コンテナのエコ システム同様、サーバーレスにもそれぞれの課題とそれ を解決するエコシステムがありますよ」て感じですかね xxxxxxxxxxxxxxxxxxxxx まとめ

×
Save this presentationTap To Close