paint-brush
A silly virtual-kubelet by@lizrice
1,072 reads
1,072 reads

A silly virtual-kubelet

by Liz Rice
Liz Rice HackerNoon profile picture

Liz Rice

@lizrice

Technology Evangelist

December 16th, 2017
Read on Terminal Reader
Read this story in a terminal
Print this story
Read this story w/o Javascript
Read this story w/o Javascript
tldt arrow

Too Long; Didn't Read

I just made <a href="https://github.com/lizrice/virtual-kubelet/tree/silly/providers/silly" target="_blank">something pretty pointless</a>!

Company Mentioned

Mention Thumbnail
Microsoft
featured image - A silly virtual-kubelet
Liz Rice HackerNoon profile picture
Liz Rice

Liz Rice

@lizrice

Technology Evangelist

I just made something pretty pointless!

I’m excited about the virtual-kubelet that the amazing Microsoft team announced at KubeCon last week. It lets something appear like it’s a node running a kubelet, when in fact there could be anything behind the virtual-kubelet. Anything, such as a container instance, a VM, or — as I’m demonstrating here — practically nothing.

The virtual-kubelet provider interface is really straightforward. Perhaps the most important thing it does is accept a request to start a pod. The silly provider I’ve just put together accepts those requests and then, well, it does almost nothing with them.

Not quite nothing — it keeps a list of the pods it’s supposed to be responsible for and you can query that list from a local web server.

image

Recording of the silly virtual-kubelet in action

What’s the point?

I thought it would be fun to (a) explore the interface and (b) think about what you could do with Kubernetes other than run containers. It’s distributing all this state and metadata about objects around a cluster — could that be useful in and of itself? The answer might be ‘no’, or it might be a different way of using Kubernetes as a ‘distributed operating system’.

What’s next?

To be honest, I’m not entirely sure where this is going. One idea is that it might be fun to use something like this to drive, say, smart lightbulbs (turn more on if there are more pods! Use the pod definition to set the lighting colour!)

I’d quite like to extend this so you can add multiple virtual-kubelet nodes all running locally (perhaps each lightbulb has its own node?)

What else? Where would you take this next? Let me know in the comments?

L O A D I N G
. . . comments & more!

About Author

Liz Rice HackerNoon profile picture
Liz Rice@lizrice
Technology Evangelist

TOPICS

THIS ARTICLE WAS FEATURED IN...

Permanent on Arweave
Read on Terminal Reader
Read this story in a terminal
 Terminal
Read this story w/o Javascript
Read this story w/o Javascript
 Lite

Mentioned in this story

companies
X REMOVE AD