Skip to content

Instantly share code, notes, and snippets.

@philips

philips/users.md

Last active Sep 28, 2020
Embed
What would you like to do?
Kubernetes Third-Party Resource Users

NOTICE

This list has moved to a GitHub repo for easier tracking: https://github.com/coreos/awesome-kubernetes-extensions

List

Please comment below if you are using Kubernetes Third-Party Resources and I will add you to the list.

Known Users:

TODO:

Resources:

I am interested in documenting all of the users and getting some more feedback on what is and isn't working.

@colemickens

This comment has been minimized.

@klizhentas

This comment has been minimized.

Copy link

@klizhentas klizhentas commented Feb 16, 2017

we use TPR to provide transaction like behavior for resource upgrades in rigging: https://github.com/gravitational/rigging

@olix0r

This comment has been minimized.

Copy link

@olix0r olix0r commented Feb 16, 2017

@davecheney

This comment has been minimized.

Copy link

@davecheney davecheney commented Feb 16, 2017

We're trying to use them at Atlassian but struggling with the client libraries.

@hongchaodeng

This comment has been minimized.

Copy link

@hongchaodeng hongchaodeng commented Feb 16, 2017

@adieu link your archon here?

@davecheney besides tpr, we also need to push upstream to pay attention and fix client library.

@stevesloka

This comment has been minimized.

Copy link

@stevesloka stevesloka commented Feb 16, 2017

@klizhentas

This comment has been minimized.

Copy link

@klizhentas klizhentas commented Feb 16, 2017

@davecheney - my best take on using client library with it after a day of digging around:

https://github.com/gravitational/rigging/blob/master/changeset.go#L941

@fatih

This comment has been minimized.

Copy link

@fatih fatih commented Feb 16, 2017

We're using TPR in DigitalOcean for our internal CA system to issue certificates. The examples in the client were not useful and I had to dive into the code to make sense on how to use the client when doing CRUD methods on a TPR.

@teemow

This comment has been minimized.

Copy link

@teemow teemow commented Feb 16, 2017

We are using TPRs to manage kubernetes clusters with kubernetes.

See http://blog.kubernetes.io/2017/01/how-we-run-kubernetes-in-kubernetes-kubeception.html

@majewsky

This comment has been minimized.

Copy link

@majewsky majewsky commented Feb 16, 2017

At SAP, we're working on an OpenStack operator that creates various types of things in OpenStack (currently, Keystone domains, projects, users, groups and roles; will expand to Swift accounts, Designate zones etc. later): https://github.com/sapcc/kubernetes-operators/tree/master/openstack-operator

@ipedrazas

This comment has been minimized.

Copy link

@ipedrazas ipedrazas commented Feb 16, 2017

There's a difference between TPRs and Operators. At Soho House I've built a few with different degrees of success. Some of the operators use TPRs, some of them they just listen to events and react to them.

  • Postgres Operator (TPR): to create/destroy databases in the cluster or in the cloud.
  • Namespace Operator: to initialise namespaces (secrets, ingress, etc), and destroy ns once they're not needed anymore.
  • EIP Operator (TPR): whitelisting IPs and management of those IPs/labels

Since I was the only one with kubernetes knowledge, I expose the kube events using NATs to allow the other developers to build logic around what's happening in the cluster. For example, we have a couple of jobs that interface with banks and Salesforce and these jobs need to know what has been executed and what's in execution at runtime. I'm using Nats as a way of turning the Kube API into a kind of pub/sub event queue.

I will be talking at KubeCon about our solution and what it worked and what it didn't.

@resouer

This comment has been minimized.

Copy link

@resouer resouer commented Feb 16, 2017

hypernetes is using TPR resource to manage network. https://github.com/hyperhq/hypernetes/

@sebgoa

This comment has been minimized.

Copy link

@sebgoa sebgoa commented Feb 16, 2017

kubeless https://github.com/skippbox/kubeless is using TPR . I would like to see better support for it in the incubating Python client

@pst

This comment has been minimized.

Copy link

@pst pst commented Feb 16, 2017

I'm using TPRs for Kubestack operators.

@tamalsaha

This comment has been minimized.

Copy link

@tamalsaha tamalsaha commented Feb 16, 2017

We, AppsCode, are using TPRs for

Helm project is looking into using TPRs to store release data:

@nebril

This comment has been minimized.

Copy link

@nebril nebril commented Feb 16, 2017

AppController uses TPR to store deployment graphs.

https://github.com/Mirantis/k8s-AppController

@khrisrichardson

This comment has been minimized.

Copy link

@khrisrichardson khrisrichardson commented Feb 17, 2017

WIP for Spark on Kubernetes: kubernetes/kubernetes#34377 (comment)

@mrIncompetent

This comment has been minimized.

Copy link

@mrIncompetent mrIncompetent commented Feb 17, 2017

We, Loodse - https://beta.kubermatic.io, use them but having the following issues:
-They don't get deleted with the namespace
-Having a TPR called node.example.org makes kubectl get nodes return my tpr's instead of the actual cluster nodes

Edit: As reference we used: https://github.com/Mirantis/k8s-externalipcontroller/tree/master/pkg/extensions

@elevran

This comment has been minimized.

Copy link

@elevran elevran commented Feb 19, 2017

WIP using TPR's for Amalgam8 microservice routing rules.

@hjacobs

This comment has been minimized.

Copy link

@hjacobs hjacobs commented Feb 21, 2017

We are using TPRs at Zalando Technology for:

@ledzep2

This comment has been minimized.

Copy link

@ledzep2 ledzep2 commented Feb 27, 2017

We are building Archon which is a set of controllers that runs on k8s and manages the physical resources that k8s currently doesn't, like Instance, InstanceGroup, Network (defined as TPR). So the cluster managed can scale itself.

@adieu

This comment has been minimized.

Copy link

@adieu adieu commented Mar 1, 2017

@hongchaodeng didn't get notification from github. But luckily my colleague found this gist.

@philips is it possible to put the link to archon repo at the end? I think it will make the format better. Thanks a lot.

@krallistic

This comment has been minimized.

Copy link

@krallistic krallistic commented Mar 10, 2017

I use TPR for a Kafka Operator
https://github.com/krallistic/kafka-operator

@superbrothers

This comment has been minimized.

Copy link

@superbrothers superbrothers commented Mar 13, 2017

We're also using TPRs to manage kubernetes clusters with kubernetes, and develop many controllers like KubernetesController, MachineController, MachineSetController, MachineDeploymentController, etc.

Implement Kubernetes as a Serivce using TPR (in Japanease)

@ryanj

This comment has been minimized.

Copy link

@ryanj ryanj commented Mar 30, 2017

CrunchyData PostgreSQL operator: https://github.com/CrunchyData/postgres-operator

@lpabon

This comment has been minimized.

Copy link

@lpabon lpabon commented Apr 28, 2017

@pidah

This comment has been minimized.

@pgburt

This comment has been minimized.

@uoryon

This comment has been minimized.

Copy link

@uoryon uoryon commented Jun 26, 2017

I use TPR for a Mongo Operator
https://github.com/kirk-enterprise/mongo-operator

@orainxiong

This comment has been minimized.

Copy link

@orainxiong orainxiong commented Oct 30, 2017

Using TPR for RDBMS Operator to support mainstream version Oracle, MySQL, MariaDB
https://docs.google.com/document/d/1zPigFS-VqysjIn569TZgd42whyBlspKcudRaLSrB5Aw/edit#

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.