Slide 1

Slide 1 text

Copyright © NTT COMWARE CORPORATION 2017 Kubernetes The Hard Way の紹介 立石 勝之 NTTコムウェア ビジネスインキュベーション部 技術開発部門 Kubernetes Meetup Tokyo #5 LT 2017/06/27 Kubernetes(R)はThe Linux Foundationの登録商標です。 その他、記載されている会社名、製品名、サービス名は各社の商標または登録商標です。

Slide 2

Slide 2 text

Copyright © NTT COMWARE CORPORATION 2017 自己紹介 名前: 立石勝之 / @ktateish 仕事: ● オープンソースプロダクトの検証・社内推進・NTTグルー プ向けテクニカルサポート ● CSIRT的活動 ● OpenStack 運用・監視改善 ● デザイン思考を用いた新ビジネス創出 (現在)

Slide 3

Slide 3 text

Copyright © NTT COMWARE CORPORATION 2017 K8sクラスタ、どうやってデプロイしてますか? ● ./cluster/kube-up.sh ● kops ● kubeadm ● kargo ● kubernetes-anywhere ● GKE

Slide 4

Slide 4 text

Copyright © NTT COMWARE CORPORATION 2017 K8sクラスタ、どうやってデプロイしてますか? ● ./cluster/kube-up.sh ● kops ● kubeadm ● kargo ● kubernetes-anywhere ● GKE ● ゼロから自分で

Slide 5

Slide 5 text

Copyright © NTT COMWARE CORPORATION 2017 ゼロから自分でやるの大事 ● オペレーティング・システムを30日で作ってみたり ● NAND回路からテトリスまで作ってみたり ● Lispのインタプリタやコンパイラを作ってみたり 実用上は必要ないかもしれないけど、対象についての理解が 深まる。

Slide 6

Slide 6 text

Copyright © NTT COMWARE CORPORATION 2017 ゼロから自分でやるの大事 ● オペレーティング・システムを30日で作ってみたり ● NAND回路からテトリスまで作ってみたり ● Lispのインタプリタやコンパイラを作ってみたり 実用上は必要ないかもしれないけど、対象についての理解が 深まる。 何より楽しい。

Slide 7

Slide 7 text

Copyright © NTT COMWARE CORPORATION 2017 K8s をゼロから自分でデプロイするには ● 各種デプロイツールの中身を読み解く ○ 逐次実行する手順として読むためのものではなくつらい ● 公式ドキュメント ○ 対象とする環境がいろいろ ■ 初心者が選ぶにはつらい

Slide 8

Slide 8 text

Copyright © NTT COMWARE CORPORATION 2017 K8s をゼロから自分でデプロイするには ● 各種デプロイツールの中身を読み解く ○ 逐次実行する手順として読むためのものではなくつらい ● 公式ドキュメント ○ 対象とする環境がいろいろ ■ 初心者が選ぶにはつらい ● Kubernetes The Hard Way

Slide 9

Slide 9 text

Copyright © NTT COMWARE CORPORATION 2017 Kubernetes The Hard Way

Slide 10

Slide 10 text

Copyright © NTT COMWARE CORPORATION 2017 “The Hard Way”? Goo 辞書 (ランダムハウス英和大辞典 ) より引用

Slide 11

Slide 11 text

Copyright © NTT COMWARE CORPORATION 2017 Kubernetes The Hard Way とは ● Google のデベロッパー・アドボケイト Kelsey Hightower氏によるドキュメント ● Kuberentesをゼロから動かすためのチュートリアル ● GitHub上で公開されている ○ https://github.com/kelseyhightower/kubernetes-the-hard-way/ ○ または kubernetes the hard way で検索 ● GCE環境前提で書かれてはいるが、AWS, オンプレなど への読み替えは簡単

Slide 12

Slide 12 text

Copyright © NTT COMWARE CORPORATION 2017 Kubernetes The Hard Way の大まかな内容 1. VMを準備 2. CA, 証明書を準備 3. etcd クラスタをデプロイ 4. controllerノード(kube-{apiserver, controller-manager, scheduler} )デプロイ 5. workerノード(kubelet, kube-proxy)をデプロイ 6. コンテナ用ルーティング設定 7. DNS Add-onデプロイ

Slide 13

Slide 13 text

Copyright © NTT COMWARE CORPORATION 2017 例えば・・・ Kubernetes The Hard Way, Bootstrapping a H/A etcd cluster より引用

Slide 14

Slide 14 text

Copyright © NTT COMWARE CORPORATION 2017 効果 ● 沢山のコンポーネントを手動でセットアップする必要が あって苦労する ● 設定などでミスって動かないこともしばしば ● 欲しい機能がドキュメントでカバーされない

Slide 15

Slide 15 text

Copyright © NTT COMWARE CORPORATION 2017 効果 ● 沢山のコンポーネントを手動でセットアップする必要が あって苦労する ● 設定などでミスって動かないこともしばしば ● 欲しい機能がドキュメントでカバーされない まさに The Hard Way

Slide 16

Slide 16 text

Copyright © NTT COMWARE CORPORATION 2017 効果 ● 沢山のコンポーネントを手動でセットアップする必要が あって苦労する ● 設定などでミスって動かないこともしばしば ● 欲しい機能がドキュメントでカバーされない 楽しい。

Slide 17

Slide 17 text

Copyright © NTT COMWARE CORPORATION 2017 効果 ● 沢山のコンポーネントを手動でセットアップする必要が あって苦労する → 重要なコンポーネントを把握できる ● 設定などでミスって動かない → トラブルシュートに慣れる ● 欲しい機能がドキュメントでカバーされない → 次にやるべきことが見えてくる

Slide 18

Slide 18 text

Copyright © NTT COMWARE CORPORATION 2017 注意 ● 本当にドキュメントどおりやっても、うまく動かない場合が ある ○ kubectl get componentstatuses でetcdがUnhealthy に見える → 無視してOK ○ kubectl exec に失敗する → kube-apiserver の引数から --kubelet-certificate-authority を削除(ただし意 味を把握してから) ● GitHub の Issue を検索しよう!

Slide 19

Slide 19 text

Copyright © NTT COMWARE CORPORATION 2017 こんな人におすすめ ● K8sを運用するインフラエンジニア ○ K8sそのものへの理解・習熟 ○ マルチクラウド用デプロイツールの元ネタ ○ 新メンバーの入門 ● 各種デプロイツールの中身を詳しく知りたい人 他にも良いドキュメントあるよ、とかあったら、 ぜひ教えてください

Slide 20

Slide 20 text

Copyright © NTT COMWARE CORPORATION 2017 ご清聴ありがとうございました!