Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
STRICTLY CONFIDENTIAL 2019/11/8 Alpaca Japan Shinya Sasaki Why Rancher ?
Slide 2
Slide 2 text
STRICTLY CONFIDENTIAL Who? Shinya Sasaki Head of Infrastructure Engineering at AlpacaJapan Co., Ltd. Osaka, Japan 2
Slide 3
Slide 3 text
STRICTLY CONFIDENTIAL Why Rancher ?
Slide 4
Slide 4 text
STRICTLY CONFIDENTIAL KubernetesとRancherと私
Slide 5
Slide 5 text
STRICTLY CONFIDENTIAL Kubernetes 検証開始 (2017年位)
Slide 6
Slide 6 text
STRICTLY CONFIDENTIAL ➢ 苦行・・・ Kubernetesクラスタ 構築 8
Slide 7
Slide 7 text
STRICTLY CONFIDENTIAL Kubernetes 検証開始 (2017年位)
Slide 8
Slide 8 text
STRICTLY CONFIDENTIAL Kubernetes 検証開始 (2017年位) → クラスタ構築にRancherを投入
Slide 9
Slide 9 text
STRICTLY CONFIDENTIAL ➢ GUI ➢ AWS上でつくる であれ 、AccessKey情報だけでつくれた Rancherで 構築 11
Slide 10
Slide 10 text
STRICTLY CONFIDENTIAL Kubernetes 検証開始 (2017年位) → クラスタ構築にRancherを投入
Slide 11
Slide 11 text
STRICTLY CONFIDENTIAL Kubernetes 検証開始 (2017年位) → クラスタ構築にRancherを投入 マネージドサービスが出揃う (2018年位)
Slide 12
Slide 12 text
STRICTLY CONFIDENTIAL マネージドサービス 登場 14
Slide 13
Slide 13 text
STRICTLY CONFIDENTIAL Kubernetes 検証開始 (2017年位) → クラスタ構築にRancherを投入 マネージドサービスが出揃う (2018年位)
Slide 14
Slide 14 text
STRICTLY CONFIDENTIAL Kubernetes 検証開始 (2017年位) → クラスタ構築にRancherを投入 マネージドサービスが出揃う (2018年位) → Rancher こと 忘れる
Slide 15
Slide 15 text
STRICTLY CONFIDENTIAL Kubernetes 検証開始 (2017年位) → クラスタ構築にRancherを投入 マネージドサービスが出揃う (2018年位) → Rancher こと 忘れる 本番環境へ Kubernetes導入、運用開始 (2019年)
Slide 16
Slide 16 text
STRICTLY CONFIDENTIAL Kubernetes 検証開始 (2017年位) → クラスタ構築にRancherを投入 マネージドサービスが出揃う (2018年位) → Rancher こと 忘れる 本番環境へ Kubernetes導入、運用開始 (2019年) → Rancher再投入
Slide 17
Slide 17 text
STRICTLY CONFIDENTIAL Kubernetes 検証開始 (2017年位) → クラスタ構築にRancherを投入 マネージドサービスが出揃う (2018年位) → Rancher こと 忘れる 本番環境へ Kubernetes導入、運用開始 (2019年) → Rancher再投入
Slide 18
Slide 18 text
STRICTLY CONFIDENTIAL kubernetes運用を始めると出てきた課題 20 1. クラスタ 増加 2. 利用ユーザ 増加 3. 利用シーン 増加
Slide 19
Slide 19 text
STRICTLY CONFIDENTIAL 1. クラスタ 増加 ど レベルでクラスタをつくるか? • シングルクラスタ • 1つ、もしく ある程度大きなクラスタで運用 • 用途ごとにNamespaceを分ける • マルチクラスタ • 用途ごとに個々にクラスタをつくる • サービスごと • 環境(Production、Staging、Development)ごと 21
Slide 20
Slide 20 text
STRICTLY CONFIDENTIAL 1. クラスタ 増加 ど レベルでクラスタをつくるか? • シングルクラスタ • 1つ、もしく ある程度大きなクラスタで運用 • 用途ごとにNamespaceを分ける • マルチクラスタ • 用途ごとに個々にクラスタをつくる • サービスごと • 環境(Production、Staging、Development)ごと 22
Slide 21
Slide 21 text
STRICTLY CONFIDENTIAL シングルクラスタ デメリット • バージョンアップ等 メンテナンス、障害時 影響大 • 作業調整が大変 • 影響が把握できない • ポリシー 管理が複雑 • セキュリティグループ、IAMポリシー 23
Slide 22
Slide 22 text
STRICTLY CONFIDENTIAL マルチクラスタ デメリット • 複数 API URL、kubeconfig 24
Slide 23
Slide 23 text
STRICTLY CONFIDENTIAL 2. 利用ユーザ 増加 • 運用負荷 増加 • 利用方法 説明 • クラスタ追加時 アクセス方法 通知 • kubeconfig 配布 • アクセス権 • ユーザごとに権限を変えたい • Namespaceレベル • リソースレベル • RW/RO → RBAC 25
Slide 24
Slide 24 text
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
Slide 25
Slide 25 text
STRICTLY CONFIDENTIAL 3. 利用シーン 増加 • 環境 違い • 普段 セットアップされたローカルPC or Macからkubectlを実行 • 一時的にローカル環境使えない場合とか • ユーザーごと Kubernetes理解度、利用頻度 違い • kubectl? なにそれ? • こ コンテナ実行したいだけなんだけど • こ yaml実行したいだけなんだけど 27
Slide 26
Slide 26 text
STRICTLY CONFIDENTIAL 1. クラスタ 増加へ 対応 • 複数 API URL、kubeconfig 28
Slide 27
Slide 27 text
STRICTLY CONFIDENTIAL 1. クラスタ 増加へ 対応 • 複数 API URL、kubeconfig 29 Rancher URLさえわかっていれ
Slide 28
Slide 28 text
STRICTLY CONFIDENTIAL 2. 利用ユーザ 増加へ 対応 • 運用負荷 増加 • 利用方法 説明 • クラスタ追加時 アクセス方法 通知 • kubeconfig 配布 • アクセス権 • ユーザごとに権限を変えたい • Namespaceレベル • リソースレベル • RW/RO → RBAC 30
Slide 29
Slide 29 text
STRICTLY CONFIDENTIAL 2. 利用ユーザ 増加へ 対応 • 運用負荷 増加 • 利用方法 説明 • クラスタ追加時 アクセス方法 通知 • kubeconfig 配布 • アクセス権 • ユーザごとに権限を変えたい • Namespaceレベル • リソースレベル • RW/RO → RBAC 31 外部認証に対応 クラスタごと、プロジェクトごと にユーザ権限が設定可能
Slide 30
Slide 30 text
STRICTLY CONFIDENTIAL 2. 利用ユーザ 増加へ 対応 • 運用負荷 増加 • 利用方法 説明 • クラスタ追加時 アクセス方法 通知 • kubeconfig 配布 • アクセス権 • ユーザごとに権限を変えたい • Namespaceレベル • リソースレベル • RW/RO → RBAC 32 ユーザに権限を付与すれ 、 アクセス可能なクラスタ /プロ ジェクト み表示
Slide 31
Slide 31 text
STRICTLY CONFIDENTIAL 3. 利用シーン 増加へ 対応 • 環境 違い • 普段 セットアップされたローカルPC or Macからkubectlを実行 • 一時的にローカル環境使えない場合とか • ユーザーごと Kubernetes理解度、利用頻度 違い • kubectl? なにそれ? • こ コンテナ実行したいだけなんだけど • こ yaml実行したいだけなんだけど 33
Slide 32
Slide 32 text
STRICTLY CONFIDENTIAL 3. 利用シーン 増加へ 対応 • 環境 違い • 普段 セットアップされたローカルPC or Macからkubectlを実行 • 一時的にローカル環境使えない場合とか • ユーザーごと Kubernetes理解度、利用頻度 違い • kubectl? なにそれ? • こ コンテナ実行したいだけなんだけど • こ yaml実行したいだけなんだけど 34 ブラウザ上で kubectl yamlファイル コピペ GUIで コンテナ、パラメータ指定 複数 デプロイ方法に対応
Slide 33
Slide 33 text
STRICTLY CONFIDENTIAL まとめ • マネージドサービスを使っていても出てくる課題 • クラスタ 増加 • 利用ユーザ 増加 • 利用シーン 増加 • Rancherと使うとクラスタ管理 楽になる(かも) 35
Slide 34
Slide 34 text
STRICTLY CONFIDENTIAL Thank you