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

コンテナベースのアプリケーションをGCPで運用する際に考えること

 コンテナベースのアプリケーションをGCPで運用する際に考えること

GCP at GDG Nagoya & GDG Osaka Online Sessionで発表されました

kumakumakkk

April 25, 2020
Tweet

More Decks by kumakumakkk

Other Decks in Technology

Transcript

  1. コンテナベースのアプリケーションをGCP
    で運用する際に考えること
    Kuma Arakawa

    View Slide

  2. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    今日のポイント
    あなたのプロダクトに本当に必要な構成をもう
    一度考えてみよう
    ROIを考えよう
    流行りや自分の好みに惑わされないように

    View Slide

  3. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    技術的なことは
    https://cloud.google.com/docs
    できるだけ英語で読みましょう
    日本語訳は最新でない場合があります

    View Slide

  4. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    ユーザ フロント
    データベース
    キャッシュ
    ビジネスロジック

    View Slide

  5. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    ユーザ フロント
    巨大なOracleDB
    キャッシュ
    ビジネスロジック

    View Slide

  6. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    ユーザ フロント
    データベース
    キャッシュ
    ビジネスロジック

    View Slide

  7. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    LB
    ユーザ
    カスタマ向け
    フロントロジック
    クライアント向け
    フロントロジック
    管理者(社内)向け
    フロントロジック
    カスタマ向け
    ビジネスロジック
    クライアント向け
    ビジネスロジック
    管理者(社内)向け
    ビジネスロジック
     各種トランスコード
    各種メッセージ送信
    データベース
    キャッシュ
    ETL
    各種モニタリング
    DWH

    View Slide

  8. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    LB
    ユーザ
    カスタマ向け
    フロントロジック
    クライアント向け
    フロントロジック
    管理者(社内)向け
    フロントロジック
    カスタマ向け
    ビジネスロジック
    クライアント向け
    ビジネスロジック
    管理者(社内)向け
    ビジネスロジック
     各種トランスコード
    各種メッセージ送信
    データベース
    キャッシュ
    ETL
    各種モニタリング
    DWH

    View Slide

  9. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

    View Slide

  10. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

    View Slide

  11. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem


    View Slide

  12. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    Microservice Architecture

    View Slide

  13. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    http://album.cloudit.co.jp/wp-content/uploads/2017/04/microservice.jpg

    View Slide

  14. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    Microservice最高!とってもよい!!!
    ・コンポーネントごとに言語や設計を柔軟に変更できる
    ・向いている(とされる)言語や設計を自由に使える
    ・チーム編成もそれに応じて変更可能
    ・Monolithと違い、改修がコンポーネントごとに変更できる
    ・テスト・デプロイが早くできる
    柔軟性・敏捷性・加速度を得る
    ことが可能に

    View Slide

  15. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    まとめ
    ・柔軟性・敏捷性・加速度を得ることが可能に
    ・Microservice最高!
    ・Microservice最高!
    もうちょっと続くんじゃ

    View Slide

  16. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    http://simianviz.surge.sh/netflix

    View Slide

  17. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    Microservice最高…?とってもよい…?
    運用が複雑に
    ・どのコンポーネントがどこと通信してる?超絶複雑な通信をどうやって俯瞰する?
    ・コンポーネントがありすぎて、デバッグもデプロイもしにくい

    View Slide

  18. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    じゃあMicroserviceやらないほうがいいの?

    View Slide

  19. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    MicroserviceでもMonolithでも結局は複雑になる

    View Slide

  20. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    いろんなツールを使って管理できるように
    運用・管理に必要なものものを自動化
    ・インフラ
    ・ネットワーク
    ・監視、アラート
    ワークフローを自動化しよう

    View Slide

  21. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

    View Slide

  22. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    コンポーネントをパッケージ化

    View Slide

  23. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    アプリケーションの実行・管理

    View Slide

  24. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    クラウド

    View Slide

  25. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    サービスを管理

    View Slide

  26. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    http://callistaenterprise.se/assets/blogg/docker/kubernetes-on-docker-in-docker/kubernetes.jpg

    View Slide

  27. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

    View Slide

  28. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

    View Slide

  29. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    Istio難しい
    ただでさえKubernetesが難しいのに、更にIstio…?
    Istio 1.0 とか言ってるけど、Prodで使えるの?
    管理するモノが増える
     →最終的なROIを考えたら、マネージドサービスを最大限活用+モノリシックのほうが良いので
    は?

    View Slide

  30. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    ネットワーク以外にも様々な複雑さが
    CI/CDどうするの?
     ・マイクロサービスの粒度によるが、 1メソッド1マイクロサービスぐらいにすると、圧倒的なデプ
    ロイスピードは得れるが、週に何十回、何百回とデプロイすることに

    View Slide

  31. 「近年のソフトウェアの開発サイクルは加速しすぎて
    テストを行う時間が短すぎる」
    - Fortune 500 で働く QA Leader

    View Slide

  32. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    ネットワーク以外にも様々な複雑さが
    Observability(可観測性)
     ・ログはすべて取る、監視も全てするとして(そもそも全て滞りなく、網羅的に監視するのってど
    うすれば?)ログも多すぎるし、監視するものも多いし、それらのデータをどのように見たら良い
    のだろうか

    View Slide

  33. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    ネットワーク以外にも様々な複雑さが
    どこにアプリケーションを置くの? or すでにオンプレ資産があるんだけど
     ・特定の業種は特定の法律・法令に準拠しなければいけない

    View Slide

  34. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    ところでこれは誰向け?
    様々なミートアップで GKEやIstioの話をすると最近よく聞かれる:
    「うちもKubernetesとかやらないといけないと思うんですがどうなでしょう?」
    「どこからKubernetesを始めたらいいんでしょう?」
    「やっぱり最近はマイクロサービス目指さないとだめなんでしょうかね?」
    「運用とか自動化できそうでとても楽になりそうですね」

    View Slide

  35. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    ところでこれは誰向け?

    View Slide

  36. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    ユーザ フロントロジック
    データベース
    キャッシュ
    ビジネスロジック

    View Slide

  37. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

    View Slide

  38. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem

    View Slide

  39. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    ところでこれは誰向け?
    アーキテクチャの複雑性を紐解き、
    複雑なシステムを自動化し、
    許容できる範囲を明確に定義し、
    事業・システム・ヒトに整合性を無理なく保たせたい、
    柔軟性が持てるシステムをしたい人向け

    View Slide

  40. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    Cloud
    Functions
    App Engine
    Cloud Run App Engine
    Kubernetes
    Engine Compute
    Engine
    Flex

    View Slide

  41. Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
    今日のポイント
    あなたのプロダクトに本当に必要な構成をもう
    一度考えてみよう
    ROIを考えよう
    流行りや自分の好みに惑わされないように

    View Slide

  42. Kuma Arakawa
    Google Developers Expert, Cloud and G Suite
    twitter: @kumakumakkk
    ご清聴ありがとうございました

    View Slide