SlideShare a Scribd company logo
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
2018年11月5日
ヤフー株式会社 アスクル 内田 聡史
Kubernetes Cluster
Admin やってました
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
ターゲット
2
これからコンテナをProductionで
動かそうという方
どっちかっていうとk8sの話…。
k8s用語が出るのはご了承ください。
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
自己紹介
内田 聡史
2008 – ヤフー株式会社
 ヤフオク
 システム統括本部PF開発本部
 2018年10月より
アスクル株式会社に出向
LOHACO 担当
3
#水曜どうでしょう
#WWE
#バンド活動
#vivabeers
#4弦 #bass
#二郎
#golang
#k8s
#docker
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
私のミッション
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
私のミッション
5
Kubernetes Cluster Admin
としてホスティング環境を提供する
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
Why
6
エンジニアがアプリケーションの
開発に注力できる環境を作るため
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
Kubernetes導入前
7
チームA
チームB
End Users
VM or BareMetal(IaaS)
Dev/Ops
Dev/Ops
Use
Use
アプリケーションの開発・運用
デプロイ・ロールバック
ランタイム管理
VIPなどのネットワーク設定
Kernelなどのバージョン管理・脆弱性対応
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
Kubernetes導入後
8
チームA
チームB
End Users
Kubernetes Cluster
deploy/publish
deploy/publish
Use
Use
Docker Imageの管理
アプリケーションの開発
デプロイ管理
Kubernetes
Cluster
Admin
Kubernetes自体の管理
Kernelのバージョン管理・脆弱性対応
VIPなどネットワーク設定
Docker
Image
Docker
Image
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
戦いの日々
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
OS問題
10
CentOS 7.xでIssue踏みまくり。
Container Linux化を目指してます。
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
Update時間かかる問題
11
OSSを使おうとした
• kubeadm → Production非推奨
• kubespray → Updateに4時間!
独自にIaC化。それでも40分くらい。
Container Linux化でおそらく変わる。
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
Updateの安全性問題
12
安全にKubernetes Updateしたい。
• 利用者の使い方にもよってしまう
• サービスの瞬断が発生しうる状況
Service Discoveryが必要?
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
権限管理問題
13
マルチテナントで提供
• 他のチームのアプリは操作不可能に
• Clusterの権限は利用者に付与しない
KubernetesのRBACで権限管理。
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
Fat Image問題
14
Docker Imageが大きすぎ
• Pullに時間がかかる
• デプロイやスケールが遅い
ネットワークの調整(10G)で対応。
利用者には小さくしてもらうことを呼びかけ。
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
セキュリティ問題
15
役割と責任範囲の分離のため
• NodeにSSHさせない。
• ホストOSのdocker.sockは使用禁止。
• マルチテナントなのでPod間通信を抑制。
Pod Security Policy/Pod Network Policy
サーバのアカウント設定で対応。
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
Kubernetesのリリースサイクル問題
16
バージョンアップが早い
• 3ヶ月に1回マイナーバージョンが上がる
• 2017/09 v1.8 → 2018/09 v1.12
• キャッチアップが追いつかない
ひたすら追いかける
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
more and more and more …
17
• Multiple Zone/Federation
• Stateless or Stateful(Storage)
• キャパシティプランニング
• モニタリング(Prometheus)
• コンテナのログは消えますよね
…
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
得た学び
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
得た学び
19
コンテナをProductionで動かす時は
1. 管理者/利用者を分けましょう
2. マルチテナント or シングルテナント
を決めましょう
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
管理者/利用者を分ける
20
Node
Orchestration
Container アプリを作る人。
Containerの動作環境を
管理する人。
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
管理者/利用者を分ける
21
アプリ開発者が
アプリの開発に注力するため。
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
マルチテナント or シングルテナント
22
マルチテナント
• クラスタ数が少なくて済む
• サーバリソース(CPU/Memory)
の有効活用
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
マルチテナント or シングルテナント
23
シングルテナント
• 権限管理が比較的楽
• コンテナ間通信の防止が不要
• Statefulを実現しやすい
• スケールを担保しやすい
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
マルチテナント or シングルテナント
24
正解はありません。
状況によってどちらが適切かの
判断が必要。
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
心がけていたこと
Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.
心がけていたこと
26
• とにかくTry & Errorをしよう
• 早く失敗しよう
• ミニマムにシンプルに始めよう

More Related Content

What's hot (20)

楽しいGit外部公開用
楽しいGit外部公開用楽しいGit外部公開用
楽しいGit外部公開用
CROOZ, inc.
 
OpenStack上の環境構築自動化に向けたTerraform/Pulumiの活用
OpenStack上の環境構築自動化に向けたTerraform/Pulumiの活用OpenStack上の環境構築自動化に向けたTerraform/Pulumiの活用
OpenStack上の環境構築自動化に向けたTerraform/Pulumiの活用
Keiichi Hikita
 
Docker国内外本番環境サービス事例のご紹介
Docker国内外本番環境サービス事例のご紹介Docker国内外本番環境サービス事例のご紹介
Docker国内外本番環境サービス事例のご紹介
ThinkIT_impress
 
Edge Computing と k8s でなんか話すよ
Edge Computing と k8s でなんか話すよEdge Computing と k8s でなんか話すよ
Edge Computing と k8s でなんか話すよ
VirtualTech Japan Inc.
 
大規模運用で見えるWebプロトコルの理想と現実、そして今後 #html5j #html5j_b
大規模運用で見えるWebプロトコルの理想と現実、そして今後  #html5j #html5j_b大規模運用で見えるWebプロトコルの理想と現実、そして今後  #html5j #html5j_b
大規模運用で見えるWebプロトコルの理想と現実、そして今後 #html5j #html5j_b
Yahoo!デベロッパーネットワーク
 
Recap: [Code fresh] Deploying to kubernetes thousands of times per day @kuber...
Recap: [Code fresh] Deploying to kubernetes thousands of times per day @kuber...Recap: [Code fresh] Deploying to kubernetes thousands of times per day @kuber...
Recap: [Code fresh] Deploying to kubernetes thousands of times per day @kuber...
Masaya Aoyama
 
GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」
GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」
GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」
Taisuke Inoue
 
自作クラウド基盤 n0stack in ICTSC 2018
自作クラウド基盤 n0stack in ICTSC 2018自作クラウド基盤 n0stack in ICTSC 2018
自作クラウド基盤 n0stack in ICTSC 2018
h-otter
 
怖くないブランチ開発外部公開用
怖くないブランチ開発外部公開用怖くないブランチ開発外部公開用
怖くないブランチ開発外部公開用
CROOZ, inc.
 
SkyWayを使いこなすために How to use SkyWay -SkyWay UG Kansai #1 スペシャルバージョン-
SkyWayを使いこなすために How to use SkyWay -SkyWay UG Kansai #1 スペシャルバージョン-SkyWayを使いこなすために How to use SkyWay -SkyWay UG Kansai #1 スペシャルバージョン-
SkyWayを使いこなすために How to use SkyWay -SkyWay UG Kansai #1 スペシャルバージョン-
Yusuke Naka
 
OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料
OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料
OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料
VirtualTech Japan Inc.
 
OpenStack Summit Sydney Report (NEC鳥居) - OpenStack最新情報セミナー
OpenStack Summit Sydney Report (NEC鳥居) - OpenStack最新情報セミナーOpenStack Summit Sydney Report (NEC鳥居) - OpenStack最新情報セミナー
OpenStack Summit Sydney Report (NEC鳥居) - OpenStack最新情報セミナー
VirtualTech Japan Inc.
 
OpenStack & Container
OpenStack & ContainerOpenStack & Container
OpenStack & Container
Hiroki Ito
 
Upstream University
Upstream UniversityUpstream University
Upstream University
NTT Communications Technology Development
 
Contiv 20160914
Contiv 20160914Contiv 20160914
Contiv 20160914
Takao Setaka
 
最速・最短・最簡単でKubernetesを始めるハウツー with k0s
最速・最短・最簡単でKubernetesを始めるハウツー with k0s最速・最短・最簡単でKubernetesを始めるハウツー with k0s
最速・最短・最簡単でKubernetesを始めるハウツー with k0s
Kamon Nobuchika
 
高速にコンテナを起動できるイメージフォーマット
高速にコンテナを起動できるイメージフォーマット高速にコンテナを起動できるイメージフォーマット
高速にコンテナを起動できるイメージフォーマット
Akihiro Suda
 
Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)LT①
Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)LT①Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)LT①
Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)LT①
Yahoo!デベロッパーネットワーク
 
AIの力で障害検知・解析をサポート!Loom(ログ解析ソリューション)のご紹介 - OpenStack最新情報セミナー 2017年7月
AIの力で障害検知・解析をサポート!Loom(ログ解析ソリューション)のご紹介 - OpenStack最新情報セミナー 2017年7月AIの力で障害検知・解析をサポート!Loom(ログ解析ソリューション)のご紹介 - OpenStack最新情報セミナー 2017年7月
AIの力で障害検知・解析をサポート!Loom(ログ解析ソリューション)のご紹介 - OpenStack最新情報セミナー 2017年7月
VirtualTech Japan Inc.
 
OpenStack Ops Mid-cycle Meetup 参加報告
OpenStack Ops Mid-cycle Meetup 参加報告OpenStack Ops Mid-cycle Meetup 参加報告
OpenStack Ops Mid-cycle Meetup 参加報告
NTT Communications Technology Development
 
楽しいGit外部公開用
楽しいGit外部公開用楽しいGit外部公開用
楽しいGit外部公開用
CROOZ, inc.
 
OpenStack上の環境構築自動化に向けたTerraform/Pulumiの活用
OpenStack上の環境構築自動化に向けたTerraform/Pulumiの活用OpenStack上の環境構築自動化に向けたTerraform/Pulumiの活用
OpenStack上の環境構築自動化に向けたTerraform/Pulumiの活用
Keiichi Hikita
 
Docker国内外本番環境サービス事例のご紹介
Docker国内外本番環境サービス事例のご紹介Docker国内外本番環境サービス事例のご紹介
Docker国内外本番環境サービス事例のご紹介
ThinkIT_impress
 
Edge Computing と k8s でなんか話すよ
Edge Computing と k8s でなんか話すよEdge Computing と k8s でなんか話すよ
Edge Computing と k8s でなんか話すよ
VirtualTech Japan Inc.
 
大規模運用で見えるWebプロトコルの理想と現実、そして今後 #html5j #html5j_b
大規模運用で見えるWebプロトコルの理想と現実、そして今後  #html5j #html5j_b大規模運用で見えるWebプロトコルの理想と現実、そして今後  #html5j #html5j_b
大規模運用で見えるWebプロトコルの理想と現実、そして今後 #html5j #html5j_b
Yahoo!デベロッパーネットワーク
 
Recap: [Code fresh] Deploying to kubernetes thousands of times per day @kuber...
Recap: [Code fresh] Deploying to kubernetes thousands of times per day @kuber...Recap: [Code fresh] Deploying to kubernetes thousands of times per day @kuber...
Recap: [Code fresh] Deploying to kubernetes thousands of times per day @kuber...
Masaya Aoyama
 
GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」
GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」
GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」
Taisuke Inoue
 
自作クラウド基盤 n0stack in ICTSC 2018
自作クラウド基盤 n0stack in ICTSC 2018自作クラウド基盤 n0stack in ICTSC 2018
自作クラウド基盤 n0stack in ICTSC 2018
h-otter
 
怖くないブランチ開発外部公開用
怖くないブランチ開発外部公開用怖くないブランチ開発外部公開用
怖くないブランチ開発外部公開用
CROOZ, inc.
 
SkyWayを使いこなすために How to use SkyWay -SkyWay UG Kansai #1 スペシャルバージョン-
SkyWayを使いこなすために How to use SkyWay -SkyWay UG Kansai #1 スペシャルバージョン-SkyWayを使いこなすために How to use SkyWay -SkyWay UG Kansai #1 スペシャルバージョン-
SkyWayを使いこなすために How to use SkyWay -SkyWay UG Kansai #1 スペシャルバージョン-
Yusuke Naka
 
OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料
OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料
OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料
VirtualTech Japan Inc.
 
OpenStack Summit Sydney Report (NEC鳥居) - OpenStack最新情報セミナー
OpenStack Summit Sydney Report (NEC鳥居) - OpenStack最新情報セミナーOpenStack Summit Sydney Report (NEC鳥居) - OpenStack最新情報セミナー
OpenStack Summit Sydney Report (NEC鳥居) - OpenStack最新情報セミナー
VirtualTech Japan Inc.
 
OpenStack & Container
OpenStack & ContainerOpenStack & Container
OpenStack & Container
Hiroki Ito
 
最速・最短・最簡単でKubernetesを始めるハウツー with k0s
最速・最短・最簡単でKubernetesを始めるハウツー with k0s最速・最短・最簡単でKubernetesを始めるハウツー with k0s
最速・最短・最簡単でKubernetesを始めるハウツー with k0s
Kamon Nobuchika
 
高速にコンテナを起動できるイメージフォーマット
高速にコンテナを起動できるイメージフォーマット高速にコンテナを起動できるイメージフォーマット
高速にコンテナを起動できるイメージフォーマット
Akihiro Suda
 
AIの力で障害検知・解析をサポート!Loom(ログ解析ソリューション)のご紹介 - OpenStack最新情報セミナー 2017年7月
AIの力で障害検知・解析をサポート!Loom(ログ解析ソリューション)のご紹介 - OpenStack最新情報セミナー 2017年7月AIの力で障害検知・解析をサポート!Loom(ログ解析ソリューション)のご紹介 - OpenStack最新情報セミナー 2017年7月
AIの力で障害検知・解析をサポート!Loom(ログ解析ソリューション)のご紹介 - OpenStack最新情報セミナー 2017年7月
VirtualTech Japan Inc.
 

Similar to Kubernetes Cluster Adminやってました #con_rider (20)

半日でわかる コンテナー技術 (応用編)
半日でわかる コンテナー技術 (応用編)半日でわかる コンテナー技術 (応用編)
半日でわかる コンテナー技術 (応用編)
Toru Makabe
 
Japan Container Day 2018
Japan Container Day 2018Japan Container Day 2018
Japan Container Day 2018
Yoshio Terada
 
Kubecon NA 2019 Recap: Your Path to Production Ready Kubernetes hosted by Wea...
Kubecon NA 2019 Recap: Your Path to Production Ready Kubernetes hosted by Wea...Kubecon NA 2019 Recap: Your Path to Production Ready Kubernetes hosted by Wea...
Kubecon NA 2019 Recap: Your Path to Production Ready Kubernetes hosted by Wea...
Tomohiro Tsuchida
 
20191120 beyondstudy#21 kitaoka
20191120 beyondstudy#21 kitaoka20191120 beyondstudy#21 kitaoka
20191120 beyondstudy#21 kitaoka
beyond Co., Ltd.
 
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャーKubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Toru Makabe
 
Acm2.1 short public
Acm2.1 short publicAcm2.1 short public
Acm2.1 short public
Yuhki Hanada
 
Kubernetes ときどき Serverless -- cndjp第1回勉強会
Kubernetes ときどき Serverless -- cndjp第1回勉強会Kubernetes ときどき Serverless -- cndjp第1回勉強会
Kubernetes ときどき Serverless -- cndjp第1回勉強会
Hiroshi Hayakawa
 
K8s(gke)をプロダクトに投入するまでの話
K8s(gke)をプロダクトに投入するまでの話K8s(gke)をプロダクトに投入するまでの話
K8s(gke)をプロダクトに投入するまでの話
Koki Shibata
 
コンテナ時代にインフラエンジニアは何をするのか
コンテナ時代にインフラエンジニアは何をするのかコンテナ時代にインフラエンジニアは何をするのか
コンテナ時代にインフラエンジニアは何をするのか
gree_tech
 
Kubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tk
Kubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tkKubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tk
Kubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tk
whywaita
 
Java on Kubernetes on Azure
Java on Kubernetes on AzureJava on Kubernetes on Azure
Java on Kubernetes on Azure
Yoshio Terada
 
Architecting on Alibaba Cloud - Fundamentals - 2018
Architecting on Alibaba Cloud - Fundamentals - 2018Architecting on Alibaba Cloud - Fundamentals - 2018
Architecting on Alibaba Cloud - Fundamentals - 2018
真吾 吉田
 
Kubernetes超入門
Kubernetes超入門Kubernetes超入門
Kubernetes超入門
Takashi Suzuki
 
インフラエンジニアがk8sでアプリを作って見えた今後のインフラ
インフラエンジニアがk8sでアプリを作って見えた今後のインフラインフラエンジニアがk8sでアプリを作って見えた今後のインフラ
インフラエンジニアがk8sでアプリを作って見えた今後のインフラ
susumu tanaka
 
Kubernetes on Alibaba Cloud
Kubernetes on Alibaba CloudKubernetes on Alibaba Cloud
Kubernetes on Alibaba Cloud
真吾 吉田
 
捕鯨!詳解docker
捕鯨!詳解docker捕鯨!詳解docker
捕鯨!詳解docker
雄哉 吉田
 
Webアプリ開発向け ゆるふわDocker使いが Cloud Naive開発に必要なetc.
Webアプリ開発向け ゆるふわDocker使いが Cloud Naive開発に必要なetc.Webアプリ開発向け ゆるふわDocker使いが Cloud Naive開発に必要なetc.
Webアプリ開発向け ゆるふわDocker使いが Cloud Naive開発に必要なetc.
YASUKAZU NAGATOMI
 
AKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab ContentsAKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab Contents
Yoshio Terada
 
Cloud Native をやっていくにはどう学んでいくかをみんなで考えてみる
Cloud Native をやっていくにはどう学んでいくかをみんなで考えてみるCloud Native をやっていくにはどう学んでいくかをみんなで考えてみる
Cloud Native をやっていくにはどう学んでいくかをみんなで考えてみる
YASUKAZU NAGATOMI
 
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
Koto Shigeru
 
半日でわかる コンテナー技術 (応用編)
半日でわかる コンテナー技術 (応用編)半日でわかる コンテナー技術 (応用編)
半日でわかる コンテナー技術 (応用編)
Toru Makabe
 
Japan Container Day 2018
Japan Container Day 2018Japan Container Day 2018
Japan Container Day 2018
Yoshio Terada
 
Kubecon NA 2019 Recap: Your Path to Production Ready Kubernetes hosted by Wea...
Kubecon NA 2019 Recap: Your Path to Production Ready Kubernetes hosted by Wea...Kubecon NA 2019 Recap: Your Path to Production Ready Kubernetes hosted by Wea...
Kubecon NA 2019 Recap: Your Path to Production Ready Kubernetes hosted by Wea...
Tomohiro Tsuchida
 
20191120 beyondstudy#21 kitaoka
20191120 beyondstudy#21 kitaoka20191120 beyondstudy#21 kitaoka
20191120 beyondstudy#21 kitaoka
beyond Co., Ltd.
 
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャーKubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Toru Makabe
 
Acm2.1 short public
Acm2.1 short publicAcm2.1 short public
Acm2.1 short public
Yuhki Hanada
 
Kubernetes ときどき Serverless -- cndjp第1回勉強会
Kubernetes ときどき Serverless -- cndjp第1回勉強会Kubernetes ときどき Serverless -- cndjp第1回勉強会
Kubernetes ときどき Serverless -- cndjp第1回勉強会
Hiroshi Hayakawa
 
K8s(gke)をプロダクトに投入するまでの話
K8s(gke)をプロダクトに投入するまでの話K8s(gke)をプロダクトに投入するまでの話
K8s(gke)をプロダクトに投入するまでの話
Koki Shibata
 
コンテナ時代にインフラエンジニアは何をするのか
コンテナ時代にインフラエンジニアは何をするのかコンテナ時代にインフラエンジニアは何をするのか
コンテナ時代にインフラエンジニアは何をするのか
gree_tech
 
Kubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tk
Kubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tkKubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tk
Kubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tk
whywaita
 
Java on Kubernetes on Azure
Java on Kubernetes on AzureJava on Kubernetes on Azure
Java on Kubernetes on Azure
Yoshio Terada
 
Architecting on Alibaba Cloud - Fundamentals - 2018
Architecting on Alibaba Cloud - Fundamentals - 2018Architecting on Alibaba Cloud - Fundamentals - 2018
Architecting on Alibaba Cloud - Fundamentals - 2018
真吾 吉田
 
インフラエンジニアがk8sでアプリを作って見えた今後のインフラ
インフラエンジニアがk8sでアプリを作って見えた今後のインフラインフラエンジニアがk8sでアプリを作って見えた今後のインフラ
インフラエンジニアがk8sでアプリを作って見えた今後のインフラ
susumu tanaka
 
Kubernetes on Alibaba Cloud
Kubernetes on Alibaba CloudKubernetes on Alibaba Cloud
Kubernetes on Alibaba Cloud
真吾 吉田
 
捕鯨!詳解docker
捕鯨!詳解docker捕鯨!詳解docker
捕鯨!詳解docker
雄哉 吉田
 
Webアプリ開発向け ゆるふわDocker使いが Cloud Naive開発に必要なetc.
Webアプリ開発向け ゆるふわDocker使いが Cloud Naive開発に必要なetc.Webアプリ開発向け ゆるふわDocker使いが Cloud Naive開発に必要なetc.
Webアプリ開発向け ゆるふわDocker使いが Cloud Naive開発に必要なetc.
YASUKAZU NAGATOMI
 
AKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab ContentsAKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab Contents
Yoshio Terada
 
Cloud Native をやっていくにはどう学んでいくかをみんなで考えてみる
Cloud Native をやっていくにはどう学んでいくかをみんなで考えてみるCloud Native をやっていくにはどう学んでいくかをみんなで考えてみる
Cloud Native をやっていくにはどう学んでいくかをみんなで考えてみる
YASUKAZU NAGATOMI
 
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
Koto Shigeru
 
Ad

More from Yahoo!デベロッパーネットワーク (20)

ゼロから始める転移学習
ゼロから始める転移学習ゼロから始める転移学習
ゼロから始める転移学習
Yahoo!デベロッパーネットワーク
 
継続的なモデルモニタリングを実現するKubernetes Operator
継続的なモデルモニタリングを実現するKubernetes Operator継続的なモデルモニタリングを実現するKubernetes Operator
継続的なモデルモニタリングを実現するKubernetes Operator
Yahoo!デベロッパーネットワーク
 
ヤフーでは開発迅速性と品質のバランスをどう取ってるか
ヤフーでは開発迅速性と品質のバランスをどう取ってるかヤフーでは開発迅速性と品質のバランスをどう取ってるか
ヤフーでは開発迅速性と品質のバランスをどう取ってるか
Yahoo!デベロッパーネットワーク
 
オンプレML基盤on Kubernetes パネルディスカッション
オンプレML基盤on Kubernetes パネルディスカッションオンプレML基盤on Kubernetes パネルディスカッション
オンプレML基盤on Kubernetes パネルディスカッション
Yahoo!デベロッパーネットワーク
 
LakeTahoe
LakeTahoeLakeTahoe
LakeTahoe
Yahoo!デベロッパーネットワーク
 
オンプレML基盤on Kubernetes 〜Yahoo! JAPAN AIPF〜
オンプレML基盤on Kubernetes 〜Yahoo! JAPAN AIPF〜オンプレML基盤on Kubernetes 〜Yahoo! JAPAN AIPF〜
オンプレML基盤on Kubernetes 〜Yahoo! JAPAN AIPF〜
Yahoo!デベロッパーネットワーク
 
Persistent-memory-native Database High-availability Feature
Persistent-memory-native Database High-availability FeaturePersistent-memory-native Database High-availability Feature
Persistent-memory-native Database High-availability Feature
Yahoo!デベロッパーネットワーク
 
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
Yahoo!デベロッパーネットワーク
 
eコマースと実店舗の相互利益を目指したデザイン #yjtc
eコマースと実店舗の相互利益を目指したデザイン #yjtceコマースと実店舗の相互利益を目指したデザイン #yjtc
eコマースと実店舗の相互利益を目指したデザイン #yjtc
Yahoo!デベロッパーネットワーク
 
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtc
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtcヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtc
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtc
Yahoo!デベロッパーネットワーク
 
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtcYahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
Yahoo!デベロッパーネットワーク
 
ビッグデータから人々のムードを捉える #yjtc
ビッグデータから人々のムードを捉える #yjtcビッグデータから人々のムードを捉える #yjtc
ビッグデータから人々のムードを捉える #yjtc
Yahoo!デベロッパーネットワーク
 
サイエンス領域におけるMLOpsの取り組み #yjtc
サイエンス領域におけるMLOpsの取り組み #yjtcサイエンス領域におけるMLOpsの取り組み #yjtc
サイエンス領域におけるMLOpsの取り組み #yjtc
Yahoo!デベロッパーネットワーク
 
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtc
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtcヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtc
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtc
Yahoo!デベロッパーネットワーク
 
Yahoo! JAPAN Tech Conference 2022 Day2 Keynote #yjtc
Yahoo! JAPAN Tech Conference 2022 Day2 Keynote #yjtcYahoo! JAPAN Tech Conference 2022 Day2 Keynote #yjtc
Yahoo! JAPAN Tech Conference 2022 Day2 Keynote #yjtc
Yahoo!デベロッパーネットワーク
 
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc
Yahoo!デベロッパーネットワーク
 
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtc
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtcPC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtc
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtc
Yahoo!デベロッパーネットワーク
 
モブデザインによる多職種チームのコミュニケーション改善 #yjtc
モブデザインによる多職種チームのコミュニケーション改善 #yjtcモブデザインによる多職種チームのコミュニケーション改善 #yjtc
モブデザインによる多職種チームのコミュニケーション改善 #yjtc
Yahoo!デベロッパーネットワーク
 
「新しいおうち探し」のためのAIアシスト検索 #yjtc
「新しいおうち探し」のためのAIアシスト検索 #yjtc「新しいおうち探し」のためのAIアシスト検索 #yjtc
「新しいおうち探し」のためのAIアシスト検索 #yjtc
Yahoo!デベロッパーネットワーク
 
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtc
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtcユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtc
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtc
Yahoo!デベロッパーネットワーク
 
ヤフーでは開発迅速性と品質のバランスをどう取ってるか
ヤフーでは開発迅速性と品質のバランスをどう取ってるかヤフーでは開発迅速性と品質のバランスをどう取ってるか
ヤフーでは開発迅速性と品質のバランスをどう取ってるか
Yahoo!デベロッパーネットワーク
 
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
Yahoo!デベロッパーネットワーク
 
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtc
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtcヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtc
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtc
Yahoo!デベロッパーネットワーク
 
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtcYahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
Yahoo!デベロッパーネットワーク
 
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtc
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtcヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtc
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtc
Yahoo!デベロッパーネットワーク
 
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc
Yahoo!デベロッパーネットワーク
 
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtc
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtcPC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtc
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtc
Yahoo!デベロッパーネットワーク
 
モブデザインによる多職種チームのコミュニケーション改善 #yjtc
モブデザインによる多職種チームのコミュニケーション改善 #yjtcモブデザインによる多職種チームのコミュニケーション改善 #yjtc
モブデザインによる多職種チームのコミュニケーション改善 #yjtc
Yahoo!デベロッパーネットワーク
 
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtc
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtcユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtc
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtc
Yahoo!デベロッパーネットワーク
 
Ad

Kubernetes Cluster Adminやってました #con_rider

  • 1. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. 2018年11月5日 ヤフー株式会社 アスクル 内田 聡史 Kubernetes Cluster Admin やってました
  • 2. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. ターゲット 2 これからコンテナをProductionで 動かそうという方 どっちかっていうとk8sの話…。 k8s用語が出るのはご了承ください。
  • 3. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. 自己紹介 内田 聡史 2008 – ヤフー株式会社  ヤフオク  システム統括本部PF開発本部  2018年10月より アスクル株式会社に出向 LOHACO 担当 3 #水曜どうでしょう #WWE #バンド活動 #vivabeers #4弦 #bass #二郎 #golang #k8s #docker
  • 4. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. 私のミッション
  • 5. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. 私のミッション 5 Kubernetes Cluster Admin としてホスティング環境を提供する
  • 6. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. Why 6 エンジニアがアプリケーションの 開発に注力できる環境を作るため
  • 7. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. Kubernetes導入前 7 チームA チームB End Users VM or BareMetal(IaaS) Dev/Ops Dev/Ops Use Use アプリケーションの開発・運用 デプロイ・ロールバック ランタイム管理 VIPなどのネットワーク設定 Kernelなどのバージョン管理・脆弱性対応
  • 8. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. Kubernetes導入後 8 チームA チームB End Users Kubernetes Cluster deploy/publish deploy/publish Use Use Docker Imageの管理 アプリケーションの開発 デプロイ管理 Kubernetes Cluster Admin Kubernetes自体の管理 Kernelのバージョン管理・脆弱性対応 VIPなどネットワーク設定 Docker Image Docker Image
  • 9. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. 戦いの日々
  • 10. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. OS問題 10 CentOS 7.xでIssue踏みまくり。 Container Linux化を目指してます。
  • 11. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. Update時間かかる問題 11 OSSを使おうとした • kubeadm → Production非推奨 • kubespray → Updateに4時間! 独自にIaC化。それでも40分くらい。 Container Linux化でおそらく変わる。
  • 12. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. Updateの安全性問題 12 安全にKubernetes Updateしたい。 • 利用者の使い方にもよってしまう • サービスの瞬断が発生しうる状況 Service Discoveryが必要?
  • 13. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. 権限管理問題 13 マルチテナントで提供 • 他のチームのアプリは操作不可能に • Clusterの権限は利用者に付与しない KubernetesのRBACで権限管理。
  • 14. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. Fat Image問題 14 Docker Imageが大きすぎ • Pullに時間がかかる • デプロイやスケールが遅い ネットワークの調整(10G)で対応。 利用者には小さくしてもらうことを呼びかけ。
  • 15. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. セキュリティ問題 15 役割と責任範囲の分離のため • NodeにSSHさせない。 • ホストOSのdocker.sockは使用禁止。 • マルチテナントなのでPod間通信を抑制。 Pod Security Policy/Pod Network Policy サーバのアカウント設定で対応。
  • 16. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. Kubernetesのリリースサイクル問題 16 バージョンアップが早い • 3ヶ月に1回マイナーバージョンが上がる • 2017/09 v1.8 → 2018/09 v1.12 • キャッチアップが追いつかない ひたすら追いかける
  • 17. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. more and more and more … 17 • Multiple Zone/Federation • Stateless or Stateful(Storage) • キャパシティプランニング • モニタリング(Prometheus) • コンテナのログは消えますよね …
  • 18. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. 得た学び
  • 19. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. 得た学び 19 コンテナをProductionで動かす時は 1. 管理者/利用者を分けましょう 2. マルチテナント or シングルテナント を決めましょう
  • 20. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. 管理者/利用者を分ける 20 Node Orchestration Container アプリを作る人。 Containerの動作環境を 管理する人。
  • 21. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. 管理者/利用者を分ける 21 アプリ開発者が アプリの開発に注力するため。
  • 22. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. マルチテナント or シングルテナント 22 マルチテナント • クラスタ数が少なくて済む • サーバリソース(CPU/Memory) の有効活用
  • 23. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. マルチテナント or シングルテナント 23 シングルテナント • 権限管理が比較的楽 • コンテナ間通信の防止が不要 • Statefulを実現しやすい • スケールを担保しやすい
  • 24. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. マルチテナント or シングルテナント 24 正解はありません。 状況によってどちらが適切かの 判断が必要。
  • 25. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved.Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. 心がけていたこと
  • 26. Copyright (C) 2018 Yahoo Japan Corporation. All Rights Reserved. 心がけていたこと 26 • とにかくTry & Errorをしよう • 早く失敗しよう • ミニマムにシンプルに始めよう