Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Kubernetes Operators: Managing complex software...
Search
Josh Wood
February 05, 2017
Technology
1
170
Kubernetes Operators: Managing complex software with software
FOSDEM '17, Université Libre du Bruxelles, Brussels, Belgium:
https://fosdem.org/2017/
Josh Wood
February 05, 2017
Tweet
Share
More Decks by Josh Wood
See All by Josh Wood
OpenShift and Kubernetes
joshix
0
140
SRE Principle and Operator Practice
joshix
0
600
Operator Hub and your Kubernetes Cluster
joshix
0
420
Operators are about automation
joshix
0
140
Automating Stateful Applications with Kubernetes Operators
joshix
0
160
Developing Apps on OpenShift
joshix
0
54
Intro to building Kubernetes Operators
joshix
1
110
Kubernetes Operators for App Developers
joshix
0
63
Kubernetes Operators
joshix
0
110
Other Decks in Technology
See All in Technology
新R25、乃木坂46 Mobileなどのファンビジネスを支えるマルチテナンシーなプラットフォームの全体像 / cam-multi-cloud
cyberagentdevelopers
PRO
1
130
APIテスト自動化の勘所
yokawasa
7
4.2k
AWSコンテナ本出版から3年経った今、もし改めて執筆し直すなら / If I revise our container book
iselegant
15
4k
スプリントゴールにチームの状態も設定する背景とその効果 / Team state in sprint goals why and impact
kakehashi
2
100
omakaseしないための.rubocop.yml のつくりかた / How to Build Your .rubocop.yml to Avoid Omakase #kaigionrails
linkers_tech
3
740
AWS CodePipelineでコンテナアプリをデプロイした際に、古いイメージを自動で削除する
smt7174
1
100
Jr. Championsになって、強く連携しながらAWSをもっと使いたい!~AWSに対する期待と行動~
amixedcolor
0
190
コンテンツを支える 若手ゲームクリエイターの アートディレクションの事例紹介 / cagamefi-game
cyberagentdevelopers
PRO
1
130
話題のGraphRAG、その可能性と課題を理解する
hide212131
4
1.5k
生成AIと知識グラフの相互利用に基づく文書解析
koujikozaki
1
140
カメラを用いた店内計測におけるオプトインの仕組みの実現 / ai-optin-camera
cyberagentdevelopers
PRO
1
120
新卒1年目が挑む!生成AI × マルチエージェントで実現する次世代オンボーディング / operation-ai-onboarding
cyberagentdevelopers
PRO
1
160
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
180
21k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
A better future with KSS
kneath
238
17k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
14
1.9k
KATA
mclloyd
29
13k
Music & Morning Musume
bryan
46
6.1k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
3
370
The Cost Of JavaScript in 2023
addyosmani
45
6.6k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
250
21k
A Philosophy of Restraint
colly
203
16k
The Power of CSS Pseudo Elements
geoffreycrofte
72
5.3k
Transcript
Kubernetes Operators: Managing Complex Software with Software Josh Wood DocOps
at CoreOS @joshixisjosh9
Overview Scaling Stateless Apps
$ kubectl scale replicas=3 ... ReplicaSet
ReplicaSet
ReplicaSet
None
Overview What about apps that…store data
$ kubectl run db --image=quay.io/my/db Creating a Database is Easy
• Resize/Upgrade - coordination for availability • Reconfigure - tedious
generation / templating • Backup - requires coordination on instances • Healing - restore backups, rejoin Managing a Distributed Database is Harder
If only k8s knew...: Extend Kubernetes
$ cat my-db-cluster.yaml spec: clusterSize: 3 readReplicas: 2 version: v4.0.1
The Goal
Introducing Operators
None
None
etcd Overview • Distributed key-value store • Primary datastore of
Kubernetes • Auto-leader election for availability
Operator Construction • Operators build on Kubernetes concepts • Resources:
who what where ; desired state • Controllers: Observe, Analyze, Act to reconcile resources
Third Party Resources • TPRs extend the Kubernetes API with
new API object types • Akin to a database table’s schema - the data model • Designed with custom automation mechanisms in mind • https://kubernetes.io/docs/user-guide/thirdpartyresources/
$ kubectl create -f https://coreos.com/operators/etcd/latest/deployment.yaml etcd Operator
$ cat deployment.yaml spec: clusterSize: 3 version: v3.1.0 etcd Operator
Resource
etcd Operator
etcd Operator Open-source github.com/coreos/etcd-operator
Kubernetes self-hosting etcd Easy HA Setups on Kubernetes Automated backup
to object store Chaos Monkey Testing for 1.0 etcd Operator - Future Work
Prometheus Operator • Operates Prometheus on k8s • Handles common
tasks: ◦ Create/Destroy ◦ Monitor Configuration ◦ Services Targets via Labels • Configured by resources
None
None
Prometheus Operator Open-source github.com/coreos/prometheus-operator
• Read more at coreos.com/blog • Test and Extend the
open source Operators • Build and Discuss other Operators (redis, postgres, MySQL) Next Steps
https://coreos.com/blog/introducing-operators.html https://coreos.com/blog/introducing-the-etcd-operator.html https://github.com/coreos/etcd-operator https://coreos.com/blog/the-prometheus-operator.html https://github.com/coreos/prometheus-operator https://github.com/kubernetes/minikube URLs
CoreOS runs the world’s containers We’re hiring:
[email protected]
[email protected]
90+
Projects on GitHub, 1,000+ Contributors coreos.com Support plans, training and more OPEN SOURCE ENTERPRISE
coreos.com/fest @coreosfest May 31 - June 1, 2017 San Francisco
[email protected]
@joshixisjosh9 joshix.com QUESTIONS? Thanks! We’re hiring: coreos.com/careers Let’s talk!
CoreOS-User google group More events: coreos.com/community LONGER CHAT?