Skip to content
This repository has been archived by the owner on Oct 26, 2023. It is now read-only.

🤖 Kubernetes operator providing Ray|Spark|Dask|MPI clusters on-demand

License

Notifications You must be signed in to change notification settings

dominodatalab/distributed-compute-operator

Repository files navigation

Logo

GitHub release Go workflow Go report card Codecov PkgGoDev License

IMPORTANT

This repository has now been archived. No further work will be merged here.

Distributed Compute Operator

Kubernetes operator providing Ray|Spark|Dask clusters on-demand via Custom Resource Definitions.

Overview

TODO

Installation

The easiest way to install DCO is to use the provided Helm chart.

Prerequisites

Before you get started using the DCO, you need to have a running Kubernetes cluster.

  • Access to a Kubernetes cluster version 1.16 or above. This version of the CRD API is stable and supports our required features.
  • Install helm client version 3.0.0 or above.
  • Install the cert-manager operator. DCO makes extensive use of webhooks which require TLS.

Install

$ helm install distributed-compute-operator ./deploy/helm/distributed-compute-operator

Development

The following instructions will help you create a local Kubernetes environment that can be used to test every feature supported by this operator.

  1. Install minikube and create a new cluster.

    # tested using minikube v1.17.1 and k8s v1.21.3
    $ minikube start \
        --cpus=6 --memory=16384 --driver=hyperkit \
        --extra-config=apiserver.enable-admission-plugins=PodSecurityPolicy \
        --addons=pod-security-policy
  2. Install cert-manager

  3. Install metrics-server

  4. Launch operator