Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Cloud Native Kansai #01

mmorito
February 01, 2019

Cloud Native Kansai #01

mmorito

February 01, 2019
Tweet

More Decks by mmorito

Other Decks in Programming

Transcript

  1. 地方における Cloud Native
    Cloud Native Kansai#01

    View Slide

  2. 森藤 敏之(もりとう)
    - @mmorito_0318
    所属
    - 株式会社エムネス
    - 遠隔画像診断センター
    - 医療支援サービス「LOOKREC」
    イベント / 勉強会
    - GCPUG - 広島支部 organizer
    - 中国DB勉強会 - 広島担当
    - JP_Stripes - 広島
    - Cloud Native JP - 広島
    - その他

    View Slide

  3. 1. Google Cloud Platform? (GCP)
    2. Google Kubernetes Engine? (GKE)

    View Slide

  4. 1. 自己紹介
    2. Kubernetes導入事例
    3. Google Cloud の動向
    4. 地方におけるCloud Native

    View Slide

  5. Web
    サーバー
    Kubernetesの導入事例
    画像変換
    サーバー

    View Slide

  6. View Slide

  7. View Slide

  8. 1. 自己紹介
    2. Kubernetes導入事例
    3. Google Cloud の動向
    4. 地方におけるCloud Native

    View Slide

  9. Cloud Native界隈
    マイクロサービスというのが良いらしい

    View Slide

  10. http://album.cloudit.co.jp/wp-content/uploads/2017/04/MSA1.jpg

    View Slide

  11. 複雑になる作業
    - アプリケーションの全体像を
    把握するのが難しい
    - 変更時の影響範囲も複雑化
    - 毎回全ビルド、全リリース が必要
    - コンポーネントが細分化されるため
    ワークフローが複雑化
    - どのコンポーネントが どこから
    呼ばれるのか管理が大変
    - デバッグ・デプロイが超絶複雑に
    モノリシック マイクロサービス

    View Slide

  12. 幸せになるために
    様々なツールを駆使して、ワークフローを自動化しよう

    View Slide

  13. Docker/コンテナ
    サービスをパッケージ化し、
    様々な環境で実行できる状態へ

    View Slide

  14. コンテナの展開、スケール、管理を
    容易にするためのオーケストレーションツール
    Kubernetes

    View Slide

  15. http://nishadikirielle.blogspot.com/2016/02/kubernetes-at-first-glance.html

    View Slide

  16. Istio
    アプリケーションに変更を加えることなく
    サービス間の通信をセキュアに管理

    View Slide

  17. https://docs.google.com/presentation/d/1DOvrP3jhUurK3E1NtG2DcRd31qeW65rj98vsspCAY7c/edit#slide=id.p
    Control Plane API
    Mixer
    Service A Service B
    proxy proxy
    HTTP/1.1, HTTP/2,
    gRPC or TCP -- with
    or without mTLS
    Pilot Citadel
    Config data
    to Envoys
    TLS certs
    to Envoys
    Policy checks,
    telemetry
    Control Plane
    Pilot:サービス通信ポリシーを構成およびプッシュするための制御プレーン。
       (タイムアウト・リトライ・サーキットブレーカーなど)
    Mixier:Envoyからデータを収集し、アクセスコントロールを行う
        プラグインモデルによる柔軟なポリシーの施行が可能
    Citadel:アイデンティティと資格情報を管理し、
         相互TLSを使用したサービス間認証を行う[n,z]
    Data plane
    Envoy:通信を傍受してポリシーを適用するネットワークプロキシ
    Istio

    View Slide

  18. Google Cloud の方向性

    View Slide

  19. Cloud Services Platform

    View Slide

  20. - managed Istio
    - GKE on-prem (Alpha)
    オンプレミス環境とのハイブリット構成
    - Container Registry, Cloud Build
    を活用した CI/CD
    - Stackdriver Monitoring によるサービス監視
    Google Kubernetes Engine(GKE)
    その他のGCPプロダクト

    View Slide

  21. https://4.bp.blogspot.com/-S3E4fro-TTI/W14x2CzsTtI/AAAAAAAAGI4/InS86LvJ_-MEaJK7obM7oWNoGF0VFCKQgCEwYBhgL/s1600/gcp_stackdriver_topology.png

    View Slide

  22. - OSS である Knative をGKE上で管理する
    - エンドポイントを抽象化
    GKE serverless add-on
    その他のGCPプロダクト

    View Slide

  23. Build
    - GithubなどにPushしたソースコードをビルドし、
    Knative上で実行できる状態にデプロイする
    Serving
    - デプロイしたコンテナをリクエストドリブンで実行
    使われていない時は最小0までスケール
    Events
    - サービスを実行するためのイベントを登録・管理
    Knative
    https://github.com/knative/docs

    View Slide

  24. Knative
    https://codelabs.developers.google.com/codelabs/knative-intro

    View Slide

  25. Googleの目指す未来
    「最終的には、Google Cloud Functions、Google Kubernetes Engine、
    Google App Engineなどの上の全てのアプリケーションが、
    Istioのエンドポイントとして同じように見え、管理できなければならない。」
    http://www.atmarkit.co.jp/ait/articles/1808/28/news036.html

    View Slide

  26. 1. 自己紹介
    2. Kubernetes導入事例
    3. Google Cloud の動向
    4. 地方におけるCloud Native

    View Slide

  27. - Cloud Nativeな勉強会が開催されない
    - マイクロサービスを採用する程の規模のアプリがない
    - まだまだオンプレ大好きな企業が多い
    - バージョンアップがめまぐるしいので情報のキャッチアップが大変
    - Kubernetes, Istio, Envoy など平行で情報収集が必要
    - クラウドベンダーのアップデートに対応していく体力が必要
    共通の問題
    + 地方特有の問題

    View Slide

  28. Google App Engine(GAE)
    その他のGCPプロダクト
    - アプリケーションを実行するPaaSサービス
    - マイクロサービスまでは厳しいが、
    複数サービスを展開可能
    - なんだったら Knative よりも Knative

    View Slide

  29. - VMインスタンス
    - インスタンスグループを作成することで
    オートスケールも可
    その他のGCPプロダクト
    Google Compute Engine(GCE)

    View Slide

  30. - Python, Node.js, Go をサポート
    - イベントドリブンで関数を実行可能
    - Serverless Container
    その他のGCPプロダクト
    Google Cloud Functions

    View Slide

  31. プロジェクトに応じた最適なサービスや
    アーキテクチャを選択することが重要
    これは誰向けなのか
    組織の文化や既存の資産によって
    ベストプラクティスが大きく変わってくる

    View Slide

  32. https://cloud.withgoogle.com/next/sf
    Google Cloud Next’19

    View Slide

  33. ありがとうございました

    View Slide