Skip to content

Rodan Project Restructure - Architecture revamp #1297

@notkaramel

Description

@notkaramel

This is going to be very ambitious: I want to restructure Rodan's architecture and revamp how the Dockerfile are being configured currently.

After discussion with @homework36, we think that Rodan could benefit vastly from a restructure:

  • Each job (GPU and non-GPU) can have its own container.
    • Each job has its own list of dependencies, e.g., tensorflow 2.5.1 with keras 2.5.0 only work with python3.7.
    • This could resolve A LOT of "cross dependencies" between jobs; and between the Dockerfile base image to the jobs themselves.
  • Usage of Kubernetes (K8s)
    • Since each job has its own container, there will be a lot of containers. K8s can help with orchestrating the system.
  • Limited GPU resources on staging and production servers
    • As of writing this, I'm unsure if K8s (or docker compose) has the ability to orchestrate GPU resources. Quick research gave me Scheduling GPUs - K8s docs
  • Update folder structure
    • This would make development less daunting and confusing. Some folders are nested and being called from other folders

  • I will follow up on this thread on how to restructure (with graphics, maybe)
  • I will also create sub-issues since this is a relative big project to be done for a summer

List of Rodan issues that could benefit from this change:

Sub-issues

Metadata

Metadata

Labels

Rodan-coreIssues pertaining to the Rodan workflow management system itselfsummer

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions