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
180
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
190
SRE Principle and Operator Practice
joshix
0
760
Operator Hub and your Kubernetes Cluster
joshix
0
480
Operators are about automation
joshix
0
150
Automating Stateful Applications with Kubernetes Operators
joshix
0
180
Developing Apps on OpenShift
joshix
0
62
Intro to building Kubernetes Operators
joshix
1
120
Kubernetes Operators for App Developers
joshix
0
74
Kubernetes Operators
joshix
0
120
Other Decks in Technology
See All in Technology
Webブラウザ向け動画配信プレイヤーの 大規模リプレイスから得た知見と学び
yud0uhu
0
230
職種の壁を溶かして開発サイクルを高速に回す~情報透明性と職種越境から考えるAIフレンドリーな職種間連携~
daitasu
0
160
「Linux」という言葉が指すもの
sat
PRO
4
130
人工衛星のファームウェアをRustで書く理由
koba789
15
7.9k
Webアプリケーションにオブザーバビリティを実装するRust入門ガイド
nwiizo
7
830
2つのフロントエンドと状態管理
mixi_engineers
PRO
3
110
💡Ruby 川辺で灯すPicoRubyからの光
bash0c7
0
120
サラリーマンの小遣いで作るtoCサービス - Cloudflare Workersでスケールする開発戦略
shinaps
2
450
20250910_障害注入から効率的復旧へ_カオスエンジニアリング_生成AIで考えるAWS障害対応.pdf
sh_fk2
3
260
要件定義・デザインフェーズでもAIを活用して、コミュニケーションの密度を高める
kazukihayase
0
110
未経験者・初心者に贈る!40分でわかるAndroidアプリ開発の今と大事なポイント
operando
5
610
OCI Oracle Database Services新機能アップデート(2025/06-2025/08)
oracle4engineer
PRO
0
150
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
188
55k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
Being A Developer After 40
akosma
90
590k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Optimizing for Happiness
mojombo
379
70k
Writing Fast Ruby
sferik
628
62k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
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?