Hkube

Dockerize


 FROM ubuntu
 CMD ["/usr/bin/wc","--help"]
 docker build -t myuser/green-alg .
 docker push <<Repository>>

Create Pipeline

{
  "name": "MyPipeline",
  "nodes": [{
    "nodeName": "green",
    "algorithmName": "green-alg",
    "input": [256, true]
  }]
}

Restful


GET: /api/v1/status
POST: /api/v1/exec
{
  "body": {
    "pipeline": "MyPipeline"
  }
}

HPC over Kubernetes

Hkube is a cloud-native open source framework to run distributed pipeline of algorithms built on Kubernetes. Hkube allows running pipelines of algorithms on Kubernetes cluster optimally utilizing the available resources, based on user priorities and AI heuristics.

Distributed pipeline of algorithms

Hkube receives input DAG graph and automatically parallelizes your algorithms(nodes) over the cluster. you can keep your code simple (even single threaded) and let Hkube worry about the complications of distributed processing.

Language Agnostic

Hkube is a container based framework and designed to facilitate the use of any language for your algorithm

Optimize Hardware utilization

Hkube Automatically places containers based on their resource requirements and other constraints, while not sacrificing availability. Mix critical and best-effort workloads in order to drive up utilization and save even more resources. Hkube has metrics and AI engines that helps learn about your algorithm (like run-time, cpu usage, priority ..) which makes execution and clustering efficiency.

Simple API

Hkube has simple API with a low learning curve:
- CLI for storing algorithms.
- Restful API for describe pipeline schema

Algorithm monitoring

Hkube lets you quickly and easily understand complex problems over the cluster by CNCF technologies (such as Prometheus, Jaeger and more) for monitoring the cluster. Hkube exposes algorithm logs through stdout and integrates them with Hkube logs to get the whole picture.