Développer un opérateur Kubernetes en Java, c’est possible !

A presentation at Bordeaux JUG in in Bordeaux, France by Stéphane Philippart

Il n’est plus, je pense, nécessaire de présenter Kubernetes tellement il fait parti du paysage informatique. Avec sa généralisation, de nouveaux types de développements et de patterns sont apparus. Lors de ce talk j’aborderai l’un d’eux : les opérateurs.

Merveilleux assistants, aptes à faire énormément de choses. Mais voilà, les nombreuses documentations que l’on trouve tournent principalement autour d’un langage : Go. Ce n’est pas que cela ne me plaise pas, mais l’idée est de pouvoir aussi le faire avec un autre langage que je connais et utilisé par de nombreuses équipes de développement : Java.

Lors de ce talk, je vous présenterai, de manière simple, la notion des opérateurs au sein de Kubernetes : à quoi ils servent et comment ils évoluent dans l’éco-système Kubernetes. Nous verrons qu’ils peuvent être de simples aides à l’installation ou à la mise à jour d’une application au sein de Kubernetes mais aussi aller beaucoup plus loin en devenant de vrais Ops pour gérer vos applications pour vous !

Puis, nous développerons un opérateur ensemble et en Java : un bon Hello World nous permettant de prendre en main le SDK Java mais aussi les différents éléments présentés au début du talk.

Enfin, nous essaierons de nous projeter vers un opérateur faisant un peu plus que Hello World afin de voir si vraiment il sait faire de l’Ops !

A la fin de ce talk, vous aurez les différents éléments pour savoir si vous avez besoin développer un opérateur, comment le développer, et choisir entre le faire en Java ou dans un autre langage !

Code

The following code examples from the presentation can be tried out live.