Upgrade to Pro — share decks privately, control downloads, hide ads and more …

KOF2019 Why Rancher?

sasaki
November 08, 2019

KOF2019 Why Rancher?

sasaki

November 08, 2019
Tweet

More Decks by sasaki

Other Decks in Technology

Transcript

  1. STRICTLY CONFIDENTIAL
    2019/11/8
    Alpaca Japan
    Shinya Sasaki
    Why Rancher ?

    View Slide

  2. STRICTLY CONFIDENTIAL
    Who?
    Shinya Sasaki
    Head of Infrastructure Engineering
    at AlpacaJapan Co., Ltd.
    Osaka, Japan
    2

    View Slide

  3. STRICTLY CONFIDENTIAL
    Why Rancher ?

    View Slide

  4. STRICTLY CONFIDENTIAL
    KubernetesとRancherと私

    View Slide

  5. STRICTLY CONFIDENTIAL
    Kubernetes 検証開始 (2017年位)

    View Slide

  6. STRICTLY CONFIDENTIAL
    ➢ 苦行・・・
    Kubernetesクラスタ 構築
    8

    View Slide

  7. STRICTLY CONFIDENTIAL
    Kubernetes 検証開始 (2017年位)

    View Slide

  8. STRICTLY CONFIDENTIAL
    Kubernetes 検証開始 (2017年位)
    → クラスタ構築にRancherを投入

    View Slide

  9. STRICTLY CONFIDENTIAL
    ➢ GUI
    ➢ AWS上でつくる であれ 、AccessKey情報だけでつくれた
    Rancherで 構築
    11

    View Slide

  10. STRICTLY CONFIDENTIAL
    Kubernetes 検証開始 (2017年位)
    → クラスタ構築にRancherを投入

    View Slide

  11. STRICTLY CONFIDENTIAL
    Kubernetes 検証開始 (2017年位)
    → クラスタ構築にRancherを投入
    マネージドサービスが出揃う (2018年位)

    View Slide

  12. STRICTLY CONFIDENTIAL
    マネージドサービス 登場
    14

    View Slide

  13. STRICTLY CONFIDENTIAL
    Kubernetes 検証開始 (2017年位)
    → クラスタ構築にRancherを投入
    マネージドサービスが出揃う (2018年位)

    View Slide

  14. STRICTLY CONFIDENTIAL
    Kubernetes 検証開始 (2017年位)
    → クラスタ構築にRancherを投入
    マネージドサービスが出揃う (2018年位)
    → Rancher こと 忘れる

    View Slide

  15. STRICTLY CONFIDENTIAL
    Kubernetes 検証開始 (2017年位)
    → クラスタ構築にRancherを投入
    マネージドサービスが出揃う (2018年位)
    → Rancher こと 忘れる
    本番環境へ Kubernetes導入、運用開始 (2019年)

    View Slide

  16. STRICTLY CONFIDENTIAL
    Kubernetes 検証開始 (2017年位)
    → クラスタ構築にRancherを投入
    マネージドサービスが出揃う (2018年位)
    → Rancher こと 忘れる
    本番環境へ Kubernetes導入、運用開始 (2019年)
    → Rancher再投入

    View Slide

  17. STRICTLY CONFIDENTIAL
    Kubernetes 検証開始 (2017年位)
    → クラスタ構築にRancherを投入
    マネージドサービスが出揃う (2018年位)
    → Rancher こと 忘れる
    本番環境へ Kubernetes導入、運用開始 (2019年)
    → Rancher再投入

    View Slide

  18. STRICTLY CONFIDENTIAL
    kubernetes運用を始めると出てきた課題
    20
    1. クラスタ 増加
    2. 利用ユーザ 増加
    3. 利用シーン 増加

    View Slide

  19. STRICTLY CONFIDENTIAL
    1. クラスタ 増加
    ど レベルでクラスタをつくるか?
    • シングルクラスタ
    • 1つ、もしく ある程度大きなクラスタで運用
    • 用途ごとにNamespaceを分ける
    • マルチクラスタ
    • 用途ごとに個々にクラスタをつくる
    • サービスごと
    • 環境(Production、Staging、Development)ごと
    21

    View Slide

  20. STRICTLY CONFIDENTIAL
    1. クラスタ 増加
    ど レベルでクラスタをつくるか?
    • シングルクラスタ
    • 1つ、もしく ある程度大きなクラスタで運用
    • 用途ごとにNamespaceを分ける
    • マルチクラスタ
    • 用途ごとに個々にクラスタをつくる
    • サービスごと
    • 環境(Production、Staging、Development)ごと
    22

    View Slide

  21. STRICTLY CONFIDENTIAL
    シングルクラスタ デメリット
    • バージョンアップ等 メンテナンス、障害時 影響大
    • 作業調整が大変
    • 影響が把握できない
    • ポリシー 管理が複雑
    • セキュリティグループ、IAMポリシー
    23

    View Slide

  22. STRICTLY CONFIDENTIAL
    マルチクラスタ デメリット
    • 複数 API URL、kubeconfig
    24

    View Slide

  23. STRICTLY CONFIDENTIAL
    2. 利用ユーザ 増加
    • 運用負荷 増加
    • 利用方法 説明
    • クラスタ追加時 アクセス方法 通知
    • kubeconfig 配布
    • アクセス権
    • ユーザごとに権限を変えたい
    • Namespaceレベル
    • リソースレベル
    • RW/RO
    → RBAC
    25

    View Slide

  24. STRICTLY CONFIDENTIAL
    EKSで ユーザアクセス制限
    1. AWS側でIAMユーザを作成
    2. kubernetes側でRBAC設定適用
    3. kubernetes側でconfigmap/aws-authを編集し、IAM
    ユーザに紐づけ
    26
    $ kubectl edit -n kube-system configmap/aws-auth
    • 問題点
    • aws-auth ワーカーノード IAMロールも含まれる で、Git管理しにくい
    • あとから確認しにくい
    https://docs.aws.amazon.com/ja_jp/eks/latest/userguide/add-user-role.html

    View Slide

  25. STRICTLY CONFIDENTIAL
    3. 利用シーン 増加
    • 環境 違い
    • 普段 セットアップされたローカルPC or Macからkubectlを実行
    • 一時的にローカル環境使えない場合とか
    • ユーザーごと Kubernetes理解度、利用頻度 違い
    • kubectl? なにそれ?
    • こ コンテナ実行したいだけなんだけど
    • こ yaml実行したいだけなんだけど
    27

    View Slide

  26. STRICTLY CONFIDENTIAL
    1. クラスタ 増加へ 対応
    • 複数 API URL、kubeconfig
    28

    View Slide

  27. STRICTLY CONFIDENTIAL
    1. クラスタ 増加へ 対応
    • 複数 API URL、kubeconfig
    29
    Rancher URLさえわかっていれ

    View Slide

  28. STRICTLY CONFIDENTIAL
    2. 利用ユーザ 増加へ 対応
    • 運用負荷 増加
    • 利用方法 説明
    • クラスタ追加時 アクセス方法 通知
    • kubeconfig 配布
    • アクセス権
    • ユーザごとに権限を変えたい
    • Namespaceレベル
    • リソースレベル
    • RW/RO
    → RBAC
    30

    View Slide

  29. STRICTLY CONFIDENTIAL
    2. 利用ユーザ 増加へ 対応
    • 運用負荷 増加
    • 利用方法 説明
    • クラスタ追加時 アクセス方法 通知
    • kubeconfig 配布
    • アクセス権
    • ユーザごとに権限を変えたい
    • Namespaceレベル
    • リソースレベル
    • RW/RO
    → RBAC
    31
    外部認証に対応
    クラスタごと、プロジェクトごと
    にユーザ権限が設定可能

    View Slide

  30. STRICTLY CONFIDENTIAL
    2. 利用ユーザ 増加へ 対応
    • 運用負荷 増加
    • 利用方法 説明
    • クラスタ追加時 アクセス方法 通知
    • kubeconfig 配布
    • アクセス権
    • ユーザごとに権限を変えたい
    • Namespaceレベル
    • リソースレベル
    • RW/RO
    → RBAC
    32
    ユーザに権限を付与すれ 、
    アクセス可能なクラスタ /プロ
    ジェクト み表示

    View Slide

  31. STRICTLY CONFIDENTIAL
    3. 利用シーン 増加へ 対応
    • 環境 違い
    • 普段 セットアップされたローカルPC or Macからkubectlを実行
    • 一時的にローカル環境使えない場合とか
    • ユーザーごと Kubernetes理解度、利用頻度 違い
    • kubectl? なにそれ?
    • こ コンテナ実行したいだけなんだけど
    • こ yaml実行したいだけなんだけど
    33

    View Slide

  32. STRICTLY CONFIDENTIAL
    3. 利用シーン 増加へ 対応
    • 環境 違い
    • 普段 セットアップされたローカルPC or Macからkubectlを実行
    • 一時的にローカル環境使えない場合とか
    • ユーザーごと Kubernetes理解度、利用頻度 違い
    • kubectl? なにそれ?
    • こ コンテナ実行したいだけなんだけど
    • こ yaml実行したいだけなんだけど
    34
    ブラウザ上で kubectl yamlファイル コピペ GUIで コンテナ、パラメータ指定
    複数 デプロイ方法に対応

    View Slide

  33. STRICTLY CONFIDENTIAL
    まとめ
    • マネージドサービスを使っていても出てくる課題
    • クラスタ 増加
    • 利用ユーザ 増加
    • 利用シーン 増加
    • Rancherと使うとクラスタ管理 楽になる(かも)
    35

    View Slide

  34. STRICTLY CONFIDENTIAL
    Thank you

    View Slide