You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

Background

The requirement initial from RESTful API Binary Provisioning Agent which provide interface to operator to upload image objects.

There are 3 key functionality for RESTful API Agent:

  1. Image provisioning (upload)
  2. REST API (POST/PUT/PATCH/DELETE etc)
  3. Support resumable upload

And backend storage is needed, the relationship as following chart.

Backend Storage Solution

Also we have several considerations for the backend storage solution:

  1. Data reliability: some mechanism like replication to make sure the data can be recovered.
  2. Cloud native: Support docker or Kubernetes deployment.
  3. Amazon S3 API compatible: Support S3 API which is factual standard.
  4. Multipart upload is better: which can speed up or resume when upload thread is break.

Solution 1: GrideFS

Solution 2: MinIO

So the better solution is MinIO, which can provide Cloud Storage service for Local Controller.

MinIO Client plugin for RESTful API Agent

MinIO Server and storage service

MinIO server deploy by Kubernetes, which has 2 modes: Standalone and Distribute.

The volume of MinIO export also can be used for HTTP server.

  • No labels