OpenCue icon indicating copy to clipboard operation
OpenCue copied to clipboard

Kubernetes setup

Open fire opened this issue 6 years ago • 5 comments

Setup Kubernetes for the control nodes and some example render nodes.

fire avatar May 12 '19 17:05 fire

This sounds like a very interesting idea; could you add a bit more detail about what you would like to see in terms of documentation or sample code?

sharifsalah avatar May 13 '19 09:05 sharifsalah

Provide a operator for OpenCue. https://operatorhub.io/

The operator should be able to install OpenCue in Kubernetes and automate upgrades. It should also have a option to scale rendering hosts with an option for gpu rendering hosts.

Networking - Should allow the outside developer network to submit jobs.

Cuebot rendering host - Blender rendering hosts. This is with and without gpus. Installs RQD and Blender.

Cuebot Server - The Java application. This can be in HA mode.

Postgresql Database - Use a standard postgresql https://operatorhub.io/operator/alpha/postgres-operator.v3.5.0 database.

fire avatar May 13 '19 16:05 fire

Provide shared storage for fetching stored and uploaded content.

fire avatar May 13 '19 16:05 fire

Create docker images for Kubernetes support and look into how Operators work. Define Kubernetes stateful sets etc.

For bonus work:

Cuebot rendering host - Support existing proprietary rendering software as docker images. Each developer may have to create and upload these privately. So provide integration and instructions.

Cockroachdb - Support Cockroachdb as a cluster stand in for postgresql.

fire avatar May 13 '19 16:05 fire

Hello! I'd like to bump this request. The video from the 2019 Pipeline Developer's meetup is very helpful, but the part where Brian stood up services for cuebot felt a little like magic to me as I'm not very familiar with Kubernetes. As I understand it, the goal is to have Dockerfiles for each of my DCC's and spin up the Dockers as renders are requested. I have the Dockerfiles, and I can add images to a minikube, but I'm not sure how to handle larger production tasks. Things like:

  • spinning up X number of Maya RQD nodes based on licenses and pending submissions
  • load balancing the Maya Dockers so that they are on different hosts
  • Managing the RQD service per DCC (is that linked to the "services" in cuegui?)

These may all be normal Kubernetes knowledge, but it would be very helpful to have a sort of mid-level quickstart to help me get from a localhost OpenCue setup to a multi-machine system with some orchestration happening. Linking to existing Kubernetes docs would be fine also.

Thanks! This system is pretty cool, and much easier than other free render farm tools I've used before.

wbpa-garrett avatar Mar 28 '24 00:03 wbpa-garrett