Kubernetes Sapporo for BeginnersKubernetesを使ったエンタープライズ開発~ Cloud Native Sapporo #02 ~
View Slide
Kubernetes Sapporo for Beginners自己紹介松本 宏紀 ( まつもと ひろき )● Kubernetes Sapporo for Beginners主催者。● システム・アーキテクト● ソフトウェア・エンジニア● オフショアラボ・チームリーダー● スーツが普段着。私服が正装● 外で自分の好きな事をお話する人● 札幌か福岡にしか住みたくない人Twitter :@hirokimatsumo13
Kubernetes Sapporo for Beginnersはじめに札幌に住むITエンジニアの在り方について悩んでる人に、すこしでもヒントを与えることができたらと思います。
Kubernetes Sapporo for Beginners今メインとしている環境コンテナ環境。Kubernetes。
Kubernetes Sapporo for Beginnersなぜ Kubernetes?マイクロサービスで開発したかったから。
Kubernetes Sapporo for Beginnersなぜ マイクロサービス?背景● プロダクトではなく、プラットフォームとサービス。● マルチベンダー体制での請負開発● 色々な仕事上の制約● 進化的設計変えたかったことチーム毎(ベンダーさん)毎に、[ 作るもの≒動くもの ] を明確に切り分けたい。● サービスを分散できる仕組み● サービスを分散しても、運用する人・開発する人の手間がかからない仕組み
Kubernetes Sapporo for Beginnersどうやってマイクロサービス?A社 B社 BL東京内製 BL札幌内製Kubernetes契約 課金 帳票 ファイル顧客 整備 車両C社
Kubernetes Sapporo for Beginnersどうやってマイクロサービス?知っておいた方が良いこと。● 12 Factor App○ コンテナ環境だと多分、知らないと後々痛い目に合う。● Git Ops + CI/CD○ 無いと辛いと思う。最初に用意した。● コンウェイの法則○ いきなり順調にはいかない。○ 「あれ?こんな形目指してたっけ?」と思ったら、再度振り返る。
Kubernetes Sapporo for BeginnersCIとCD僕たち、CD(継続的デリバリ)はしんどいです。apps git repository (origin)developgit repository (local)Docker Desktop or localDocker Desktopの必要性● コンパイル環境無い人 (えっ?)● LB挟んでフロントエンド、バックエンド色々動かしたい人● DB関係も全部コンテナItb環境k8s manifest git repositoryKubernetesgitlab-runnergitlab-runnerST環境k8s manifest git repositoryKubernetesgitlab-runnerProduction環境k8s manifest git repositoryKubernetesgitlab-runnergitlab-runner gitlab-runnerCommitMergeCommitMergerc01CommitMergestaging環境もあるけど省略BuildTestBuildTestBuildTestmasterReviewMergeReviewMerge ReviewMerge開発系:完全ソース連動運用系:ちょっと貯め込む。 承認下りたらマージ。IT統制大事。apply apply apply
Kubernetes Sapporo for Beginners振り返り> 札幌に住むITエンジニアの在り方について悩んでる人に、> すこしでもヒントを与えることができたらと思います。大規模の開発案件においても、ニアショアや東京の下請けという形だけではなく、エンジニアそのものの力を発揮できるカタチでお仕事ができる可能性がマイクロサービスにはあります。※注意:マイクロサービスは開発組織論。
Kubernetes Sapporo for Beginners課題Kubernetesだって完璧じゃない。● Ingress Controller( nginx/GCLB )は結構ものによって動きが違う。※ローカルでこれで設定したい!→ GCLBだとできない。 でもDSRで動かしたい…。● 唐突なバグ。( どっちかというとGKEかも )マイクロサービスだから完全なる統制を求めない。
Kubernetes Sapporo for Beginners最後に( 比較的 ) 初心者向けの勉強会開催してます。https://kubernetes-sapporo-for-beginners.github.io/