Slide 1

Slide 1 text

初心者がk8sで WPを運用するまでの 学習事例 1 Japan Containerdays v18.12 @yasuhiro1711

Slide 2

Slide 2 text

・自己紹介 ・株式会社ウエディングパーク の紹介 ・k8sことはじめ ・k8s学習開始   4つの内容 ・まとめ 今日話すこと 2

Slide 3

Slide 3 text

Yasuhiro Nishiwaki @yasuhiro1711 ・所属:株式会社ウエディングパーク@表参道 (サイバーエージェントグループ) ・オライリー書籍の「監訳・監修」やってます。 ・k8sは今年から始めました。 ・今、k8s熱入っています。  インプットもアウトプットも頑張ってます。 自己紹介 3

Slide 4

Slide 4 text

株式会社ウエディングパーク ご紹介 4 ・通称「ウエパ」 ・サイバーエージェントグループ

Slide 5

Slide 5 text

株式会社ウエディングパーク ご紹介 5

Slide 6

Slide 6 text

株式会社ウエディングパーク ご紹介 日本最大級 結婚式準備口コミサイト

Slide 7

Slide 7 text

株式会社ウエディングパーク ご紹介

Slide 8

Slide 8 text

株式会社ウエディングパーク ご紹介 8 国内最大級 結婚準備口コミ情報サイト 公式キャラクター「ウエパ」

Slide 9

Slide 9 text

k8sことはじめ

Slide 10

Slide 10 text

2018年 春 10 オーケストレーションツー ルとして、k8sが世界標準を 勝ち取ったらしい。 いつのまにか、 コンテナ = k8s 独壇場に なっちゃった?  らしいじゃないか ほぼ全クラウドが k8sマネージドサービス 提供開始。

Slide 11

Slide 11 text

2018年 春 11 Openstackや、コンテナ出現の時よ りも勢いあるぞ! よし、k8sやろう!と決めた。 1UP!

Slide 12

Slide 12 text

2018年 春 12 なにから始めよう。 勘所もわからないぞ! 分からないなりに、 学習計画立ててみた!

Slide 13

Slide 13 text

学習計画 13 サイバーグループ内で、めっちゃやってる人いるぞ!  1, おうちk8sで、k8sクラスターを勉強 オンライン公式トレーニング、いくつかあるぞ!  2, GCP・AWS公式トレーニングをやろう 全体の概念もちゃんと把握したいな。  3, 2冊読もう。黄色本とオライリー そうしたら、一度運用してみるのが早そう。  4, WPサービスをk8s化して運用

Slide 14

Slide 14 text

k8s学習開始

Slide 15

Slide 15 text

学習計画 15 サイバーグループ内で、めっちゃやってる人いるぞ!  1, おうちk8sで、k8sクラスターを勉強 オンライン公式トレーニング、いくつかあるぞ!  2, GCP・AWS公式トレーニングをやろう 全体の概念もちゃんと把握したいな。  3, 2冊読もう。黄色本とオライリー そうしたら、一度運用してみるのが早そう。  4, 小さなWPサービスをk8s化して運用

Slide 16

Slide 16 text

おうちk8sで、k8sクラスターを勉強 16 ・Kubernetesの  ラズベリーパイ包み  ウエパ風 ・一家に一台  手のひらサイズの  おうちKubernetes ・見所は、鮮烈な赤、  滑らかなケーブリング 詳細は、エンジニアブログをご覧ください。 33時間クッキング【Kubernetesのラズベリーパイ包み〜ウエパ風〜】 https://engineers.weddingpark.co.jp/?p=1993

Slide 17

Slide 17 text

おうちk8sで、k8sクラスターを勉強 17 ・モノ触ってるのがめちゃたのしい。愛着まで湧いてくる。 ・マネージドサービスでは覆われている、  k8sのクラスタの仕組みを理解できる。 ・最初は、kubeadmを利用する場合から構築。 次に、kubeadmを利用ぜず、kube-apiserverやkubedns等を  個別インストールして動かしてみた。

Slide 18

Slide 18 text

おうちk8sで、k8sクラスターを勉強 18 ・おうちk8s上にWPサービスを構築。 ・ベアメタルのk8sでの構築方法を理解できた。 ・metalLBで「type LoadBalancer」出来るようにする。 ・minikubeやDocker for mac 等でも可能だがクラスターとしは  不十分。

Slide 19

Slide 19 text

   ハマりポイント! 19 ・kube-dnsの構築と挙動理解にめちゃ時間かかった。 → dnsのport、storage等マニフェスト作成と理解が    初心者にはかなりハードだった。 kubeadmの偉大さを感じた。 ・metalLBは、構築が出来ても本当の理解は出来ていなかった。  → 私がそもそもGCPを知らなかったからイメージが弱い。 GCPを利用したあとにやればよかった。

Slide 20

Slide 20 text

   ハマりポイント! 20 kubernetesの概念はクラスター構築だけでは理解できない。  → そもそもこの段階では、k8s全体像が見えてない。 クラスタを理解し、WPを立ち上げても、    deploymentって? podって?な状態。

Slide 21

Slide 21 text

学習計画 21 サイバーグループ内で、めっちゃやってる人いるぞ!  1, おうちk8sで、k8sクラスターを勉強 オンライン公式トレーニング、いくつかあるぞ!  2, GCP・AWS公式トレーニングをやろう 全体の概念もちゃんと把握したいな。  3, 2冊読もう。黄色本とオライリー そうしたら、一度運用してみるのが早そう。  4, WPサービスをk8s化して運用

Slide 22

Slide 22 text

GCP・AWS 公式トレーニングをやろう 22 GCP公式 GKEチュートリアル https://cloud.google.com/kubernetes-engine/docs/tutorials? hl=ja

Slide 23

Slide 23 text

GCP・AWS 公式トレーニングをやろう 23 AWS公式 EKSユーザガイド https://docs.aws.amazon.com/ja_jp/eks/latest/userguide/wha t-is-eks.html (私が利用した時は英語のみのgithubにあるガイドでした。  https://github.com/aws-samples/aws-workshop-for-kubernetes)

Slide 24

Slide 24 text

GCP・AWS 公式トレーニングをやろう 24 ・各マネージドサービスで可能なので、環境構築・学習が楽。 ・マネージドk8sの始め方から、クラスタの構築、ボリューム永 続化やモニタリング、リリース手法等を作業しながら学習するこ とができ、理解しやすかった。 ・どちらも、日本語が少なく大変だったが、現在は日本語がかな り増えているため、取り組みやすい。 ・知りたい所、興味ある所から実施するのが効果的。

Slide 25

Slide 25 text

   ハマりポイント! 25 ・私はそもそも、AWS使いであって、GCP経験ゼロだったので  「GCPはなんぞや?」の理解から始めるところからだった。  → AWSでいうところのxxxxは、GCPだとxxxxというのが   全くわかっていなかったのは辛かった。 ・大手マネージドサービス EKSがいいのか?GKEがいいのか?   それは今でも悩む所。(他ももちろん)  → みなさんは、どんな理由から、   何のマネージドサービスを推薦されますでしょうか?

Slide 26

Slide 26 text

学習計画 26 サイバーグループ内で、めっちゃやってる人いるぞ!  1, おうちk8sで、k8sクラスターを勉強 オンライン公式トレーニング、いくつかあるぞ!  2, GCP・AWS公式トレーニングをやろう 全体の概念もちゃんと把握したいな。  3, 2冊読もう。黄色本とオライリー そうしたら、一度運用してみるのが早そう。  4, WPサービスをk8s化して運用

Slide 27

Slide 27 text

2冊読もう。黄色本とオライリー 27 当時発売していた書籍を独断と偏見で選びました。 - 全体像を日本語で仕入れることが目的&近道。 - 数冊読めば重要なポイントが浮き出てくるだろう...。 - 今なら、「青山本」「山田本」を選んでます。

Slide 28

Slide 28 text

2冊読もう。黄色本とオライリー 28 気づき - 先に構築作業を少ししたので、理解しやすかった (書籍上でのワーク作業も良いが、k8sはversion upが早く、    古い情報になっていることも。) - 複数ソースから得た知識を、自分の知識としてまとめると良 い。アーキテクチャー等の理解がとても進む。

Slide 29

Slide 29 text

学習計画 29 サイバーグループ内で、めっちゃやってる人いるぞ!  1, おうちk8sで、k8sクラスターを勉強 オンライン公式トレーニング、いくつかあるぞ!  2, GCP・AWS公式トレーニングをやろう 全体の概念もちゃんと把握したいな。  3, 2冊読もう。黄色本とオライリー そうしたら、一度運用してみるのが早そう。  4, WPサービスをk8s化して運用

Slide 30

Slide 30 text

WPサービスをk8s化して運用 30 - アーキテクチャー - アプリケーション設計 - 運用設計 - 監視設計       等を検討し構築するため実践的。 今回は、 - 基本はGKEでのWP構築ベストプラクティス採用 - datadogによるモニタリング - CI/CDによる自動化              を試した。

Slide 31

Slide 31 text

   ハマりポイント! 31 ・ググるとよくヒットするものは構築法であって、  運用法ではない。  → 初期構築は出来ても、運用で引っかかった。    運用に必要なポイントを検討しておく必要あり。 (リリースは?データ更新は?セキュリティは?) ・k8sも大事だけど、「イイDockerイメージ」作る事が  めちゃ重要。  → build時に、どこで何を詰め込むかを意識。    軽量・高速を目指す。アプリケーションの運用しやすさ。

Slide 32

Slide 32 text

学習計画 32 サイバーグループ内で、めっちゃやってる人いるぞ!  1, おうちk8sで、k8sクラスターを勉強 オンライン公式トレーニング、いくつかあるぞ!  2, GCP・AWS公式トレーニングをやろう 全体の概念もちゃんと把握したいな。  3, 2冊読もう。黄色本とオライリー そうしたら、一度運用してみるのが早そう。  4, WPサービスをk8s化して運用 1UP!

Slide 33

Slide 33 text

学習計画 33 その次は、 ・k8s公式ドキュメント理解 ・CKA、CKAD 資格 ・自社サービスへも導入へ

Slide 34

Slide 34 text

今やってること 34 ・モノリシックなアプリ、  どこまでをマイクロサービス化するか。 ・組織、プロジェクトのあり方を変えざる得ない。 ・エンジニアに新しい負担となりうる。

Slide 35

Slide 35 text

まとめ

Slide 36

Slide 36 text

今回の学習の振り返り 36 ・結果としてk8sを利用し  WP運用開始するまで出来た。 ・この学習法は自分には合っていたが、  同時期にクロス学習出来たら、  より理解が促進し効率がよかった。 ・想定よりも理解に時間をとても使った。 ・今後、様々なマニフェストの多読を進めたい。

Slide 37

Slide 37 text

私から初心者に送るk8s学習法 37 1, 概念やアーキテクチャーを楽しく理解しよう → 自分に合う読み物、先生を探そう。 2, 分からなくても手を動かすと、道が開ける   → 1にもワーク。2にもワーク。   作業を通じて体が覚えてくれます。

Slide 38

Slide 38 text

私から初心者に送るk8s学習法 38 3, 実践運用しよう → よく言われることだけど、   実際に運用してみるのが一番の近道。 4, コンテナを深く理解しよう → コンテナ理解がないとk8sは語れません。

Slide 39

Slide 39 text

完 k8s好きなエンジニア絶賛募集中! 39