Slide 1

Slide 1 text

エンプラ企業におけるK8s利用意義について再考 Copyright © 3-shake, Inc. All Rights Reserved. 2023/10/12 3-shake SRE Tech Talk #7 - @866mfs

Slide 2

Slide 2 text

免責事項 Copyright © 3-shake, Inc. All Rights Reserved. 本セッションは個人の見解であり、所属組織の立場・戦略・意見を代表するものではありません。 また技術的な内容にも言及しますが、正確性を保証するものではありません。

Slide 3

Slide 3 text

自己紹介 SaaS企業でWebアプリケーション開発や企業向けパブリッククラウド構築支 援を経験したのち、2023/7月より株式会社スリーシェイクでSREをやってま す。 現在はGoogleCloudやk8sを使用したエンプラ企業へのSRE支援を行ってい ます。 海外サッカー観戦が生きがいです。 Annosuke Yokoo (@866mfs) 株式会社スリーシェイク Sreake 事業部

Slide 4

Slide 4 text

エンプラ企業のk8s利用における課題 01 Copyright © 3-shake, Inc. All Rights Reserved.

Slide 5

Slide 5 text

エンプラ企業のk8s利用における課題 ● 技術的課題 ○ k8sを動かすのに必要なリソースのコスト ○ 成長する組織・サービスに対するスケーラビリティ ○ 現行運用ソフトウェアとのインテグレーション ○ アプリケーションモダナイゼーションに向けたチャレンジ ● 組織的課題 ○ 組織がサイロ化しており、オーナーシップを持てる人が限定されてしまう ○ サービス数が多く各サービスを配慮しながら進めるのでは、調整やコミュニケーションのコストがかかり、即効性のある 成果が出しにくい ○ 認識統一への障壁が多く、常に同じゴールイメージの共有がとりづらい ● その他 ○ ~~設計書、~~仕様書、~~申請など関係各所に納品が求められ、意思決定に必要以上のアウトプットが必要 ○ (組織・サービスによっては)単純に人員不足

Slide 6

Slide 6 text

エンプラ企業のk8s利用における課題 ● 技術的課題 ○ k8sを動かすのに必要なリソースのコスト ○ 成長する組織・サービスに対するスケーラビリティ ○ 現行運用ソフトウェアとのインテグレーション ○ アプリケーションモダナイゼーションに向けたチャレンジ ● 組織的課題 ○ 組織がサイロ化しており、オーナーシップを持てる人が限定されてしまう ○ サービス数が多く各サービスを配慮しながら進めるのでは、調整やコミュニケーションのコストがかかり、即効性のある 成果が出しにくい ○ 認識統一への障壁が多く、常に同じゴールイメージの共有がとりづらい ● その他 ○ ~~設計書、~~仕様書、~~申請など関係各所に納品が求められ、意思決定に必要以上のアウトプットが必要 ○ (組織・サービスによっては)単純に人員不足 「そもそもどういうモチベーションで k8sを利用するんだっけ?」 「我々ってk8sを利用することで特にどんな恩恵が欲しいんだっけ? 😇」

Slide 7

Slide 7 text

エンプラ企業におけるk8sの利用意義と心得 02 Copyright © 3-shake, Inc. All Rights Reserved.

Slide 8

Slide 8 text

k8sの特徴 ● Declarative(宣言的) API ● Reconciliation loop ● Custom Resource / Eco System エンプラ企業がk8sを利用することにより、 特に恩恵を受けることはいったいなんなのか 🧐

Slide 9

Slide 9 text

エンプラ企業のk8s利用意義(一例) ● コンテナオーケストレーション ○ 複数のコンテナ(Pod)を効率よく管理し、 負荷分散、 ネットワーク設定、 シークレット管理等の設定を宣言的に管理す ることが可能 ● スケーラビリティ ○ 動的なスケーリングが可能であり、 需要に応じて自動でリソースを調整できる ● ポータビリティ ○ オンプレ基盤やクラウドプロバイダーに依存せず、 環境に依存しない運用が可能 ● リソース効率 ○ CPUやメモリなどのリソースを最適に使用し、 コンテナ間でリソース共有できるため、 実行環境における効率的なリ ソース使用が可能 ● DeploymentとRollback ○ 柔軟なデプロイ方式やReconciliation loopの特性により、リリース精度の向上、 必要に応じた迅速なロールバックの 実現が可能

Slide 10

Slide 10 text

エンプラ企業のk8s利用意義(一例) ● コンテナオーケストレーション ○ 複数のコンテナ(Pod)を効率よく管理し、 負荷分散、 ネットワーク設定、 シークレット管理等の設定を宣言的に管理す ることが可能 → 組織のガバナンスや権限移譲がされやすくなる ● スケーラビリティ ○ 動的なスケーリングが可能であり、 需要に応じて自動でリソースを調整できる → システムに対して、コスト効率良く柔軟性を持たせられる ● ポータビリティ ○ オンプレ基盤やクラウドプロバイダーに依存せず、 環境に依存しない運用が可能 → モダナイゼーションを図るリフト&シフトのような、異なるインフラ環境への移行が簡略化される ● リソース効率 ○ CPUやメモリなどのリソースを最適に使用し、 コンテナ間でリソース共有できるため、 実行環境における効率的なリ ソース使用が可能 → ワークロード整備における運用負荷の低減 ● DeploymentとRollback ○ 柔軟なデプロイ方式やReconciliation loopの特性により、リリース精度の向上、 必要に応じた迅速なロールバックの 実現が可能 → リリースに対する安定性・安全性の担保により開発生産性の向上

Slide 11

Slide 11 text

エンプラ企業に対するk8s伝道者(Evangelist)としての心得 ● 組織統制の取りにくいエンプラ企業では、特に k8sの利用意義を明確にし、ステークホルダー間でいつでも目線を揃えられるように しておくことが重要 ● k8sリソースはManifestファイルにDesired Stateを宣言するが、「組織におけるk8s利用意義と理想状態」 もマニフェスト(公約)のよ うに言語化し、みんなが認識にしておくことが大切 ○ 抽象化したk8sの利用意義の1つは 「理想状態への回帰」 にある ○ 本来はここからスタートする方が良いが、スモールスタートだと疎かになりがち ● k8sにおけるテクニカルな支援をする者は、 Manifestfileを書けるだけでなく、組織における k8sの利用意義から言語化できた方が品 質が向上する

Slide 12

Slide 12 text

参考資料 Copyright © 3-shake, Inc. All Rights Reserved. ● エンプラにKubernetesを導入してみて分かった 4つのLessons Learned ○ https://speakerdeck.com/foobar3173/enpuranikuberneteswodao-ru-sitemitefen-katuta4tunolessons-learned ● Kubernetes再入門 - K8s活用するならこれだけは知っておきたいこと - ○ https://speakerdeck.com/devops_vtj/kuberneteszai-ru-men-k8shuo-yong-surunarakoredakehazhi-tuteokitaikoto ● 全てがクラウドネイティブで良いのか。その謎を明らかにすべく我々はエンプラの奥地に向かった ○ https://speakerdeck.com/jyoshise/quan-tegakuraudoneiteibudeliang-ifalseka-sofalsemi-woming-rakanisubekuwo-haenpurafalseao-di-nixiang- katuta ● 「VM 時代の開発とKubernetes による Cloud Native な開発のこれから」 Infra Study Meetup #2 / infrastudy2-k8s ○ https://speakerdeck.com/masayaaoyama/infrastudy2-k8s ● Kubernetes で実践するクラウドネイティブ DevOps / Cloud Native DevOps with Kubernetes ○ https://speakerdeck.com/superbrothers/cloud-native-devops-with-kubernetes-devops-cloudnative-and-gitops

Slide 13

Slide 13 text

Thank you Copyright © 3-shake, Inc. All Rights Reserved.