Diese Präsentation wurde erfolgreich gemeldet.
Die SlideShare-Präsentation wird heruntergeladen. ×

少人数チームでのkubernetesへの移行事例

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Hier ansehen

1 von 23 Anzeige

少人数チームでのkubernetesへの移行事例

Herunterladen, um offline zu lesen

2019年12月2日,TechPlayイベント@渋谷.楽天市場で利用する大量のデータを適切なユーザーに届けるため,どのようにk8sを利用するか,またCI/CDをどのようにMono-repoに対応させたか.登壇者:菅野 翔太(Application Engineer, Business Data Platform Group, Commerce Company.)

2019年12月2日,TechPlayイベント@渋谷.楽天市場で利用する大量のデータを適切なユーザーに届けるため,どのようにk8sを利用するか,またCI/CDをどのようにMono-repoに対応させたか.登壇者:菅野 翔太(Application Engineer, Business Data Platform Group, Commerce Company.)

Anzeige
Anzeige

Weitere Verwandte Inhalte

Diashows für Sie (20)

Ähnlich wie 少人数チームでのkubernetesへの移行事例 (20)

Anzeige

Weitere von Rakuten Group, Inc. (20)

Aktuellste (20)

Anzeige

少人数チームでのkubernetesへの移行事例

  1. 1. 少⼈数チームでのkubernetesへの移⾏事例 Dec 2nd, 2019 Shota Sugano EC Marketplace Business Support Development Dept. Rakuten, Inc.
  2. 2. 2 ⾃⼰紹介
  3. 3. 3 背景 • ⼤学院時代 • 関数型⾔語,型システムとかEDSLの研究 • 今のチームでインターンとアルバイト (サービス開発とインフラとCI) • ⼊社 • 5⼈のチーム,⽇本⼈⼀⼈… • 社内のクラウド利⽤状況はチームごとバラバラ • ⾃分達のチームは VM → Docker+Kubernetes を決めた
  4. 4. 4 どんなサービス︖ service DB DB DB DB kafka …
  5. 5. 5 現状 kafka cockroacDB DB DB DB DB Consumer Consumer Consumer Consumer Consumer VMごとに書き込み service VMごとにデータを取得 ここのスケールがボトルネック
  6. 6. 6 Kubernetesはどこで使ってる︖ kafka cockroacDB DB DB DB DB Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Podごとに書き込み Podごとにデータを取得 service スケールアップが容易
  7. 7. 7 Kubernetesはどこで使ってる︖ kafka cockroacDB DB DB DB DB Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Podごとに書き込み Podごとにデータを取得 service もしPodが死んでも
  8. 8. 8 Kubernetesはどこで使ってる︖ kafka cockroacDB DB DB DB DB Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Consumer Podごとに書き込み Podごとにデータを取得 service 新しいPodが追加される Consumer
  9. 9. 9 ダウンタイム0を⽬指して (安全な限り) できるだけ⼩さいイメージを使う
  10. 10. 10 ダウンタイム0を⽬指して Podの冗⻑性 Rolling update
  11. 11. 11 Manifestの管理 Kustomizeを利⽤ CIでversion等のlabelを与えたいが… https://github.com/kubernetes- sigs/kustomize/issues/1009
  12. 12. 12 Manifestの管理 Kustomizeを利⽤ CIでversion等のlabelを与えたいが… https://github.com/kubernetes- sigs/kustomize/issues/1009patches(かvars)を使えばなんとかなるが⾯倒 ⇒ とりあえず kubectl patch…
  13. 13. 13 現状のCI/CD monorepo Registory 1. Check repository Status 2. Push image 3. Deploy
  14. 14. 14 Monorepoって何? Registory 1. Check repository Status 2. Push image 3. Deploy monorepo ソースコードレベルのライブラリ共有による 複数のプロダクトを1つのリポジトリで管理 ⇒ 単⼀バージョン管理でサイクルを効率化 ⇒ CI/CDを共通化できる︕
  15. 15. 15 monorepo これからやること Registory 1. Check repository Status 2. Push image 3. Deploy
  16. 16. 16 現状の監視 k8s prometheus pod pod pod prometheus splunk zipkin grafanapagerduty federate
  17. 17. 17 splunk zipkin Podのmetrics k8spod pod grafanapagerduty prometheus prometheus federate pod
  18. 18. 18 splunk zipkin Podのmetrics k8spod pod grafanapagerduty pod prometheus prometheus federate 多分これが⼀番楽だと思います
  19. 19. 19 これからやること k8s prometheus pod pod pod prometheus zipkin grafanapagerduty loki
  20. 20. 20 これから考えること monorepo Registory 1. Check repository Status 2. Push image 3. Deploy grafana pagerduty … ここを効率化したい
  21. 21. 21 Questions?

×