Skip to content

Commit

Permalink
docs: add decription and diagram (#4)
Browse files Browse the repository at this point in the history
This patch adds some description and diagrams for
the overview of mangoboost bridge and solution.

Signed-off-by: Dongju Chae <[email protected]>
  • Loading branch information
dongju-chae authored Feb 10, 2025
1 parent 7895d10 commit d45cadf
Show file tree
Hide file tree
Showing 4 changed files with 20 additions and 10 deletions.
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ RUN go mod download

# build an app
COPY cmd/ cmd/
#COPY pkg/ pkg/
COPY pkg/ pkg/
RUN go build -v -o /opi-mangoboost-bridge /app/cmd/...

# second stage to reduce image size
Expand Down
22 changes: 16 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,20 +14,30 @@
[![GitHub stars](https://img.shields.io/github/stars/opiproject/opi-mangoboost-bridge.svg?style=flat-square&label=github%20stars)](https://github.com/opiproject/opi-mangoboost-bridge)
[![GitHub Contributors](https://img.shields.io/github/contributors/opiproject/opi-mangoboost-bridge.svg?style=flat-square)](https://github.com/opiproject/opi-mangoboost-bridge/graphs/contributors)

This repo includes OPI Mangoboost bridge API for DPUs.
This repo includes OPI Mangoboost bridge API for DPUs, particularly OPI storage APIs for NVMe/TCP initiator and target offloads.
For additional information, please refer to the links below.

## I Want To Contribute
- [Mango StorageBoost - NTI](https://www.mangoboost.io/products/hardware/mango-storageboost-tm-nti)
- [Mango StorageBoost - NTT](https://www.mangoboost.io/products/hardware/mango-storageboost-tm-ntt)

This project welcomes contributions and suggestions. We are happy to have the Community involved via submission of **Issues and Pull Requests** (with substantive content or even just fixes). We are hoping for the documents, test framework, etc. to become a community process with active engagement. PRs can be reviewed by by any number of people, and a maintainer may accept.
The diagram below demonstrates an example of OPI-enabled workflows for xPU-based NVMe-oF initiator and target deployments.
Running on an xPU, the bridge translates and forwards OPI API commands to the MangoBoost SDK for service management and configuration.
On both the initiator and target, the NVMe/TCP data path is fully offloaded to the xPU hardware without any involvement of host and SoC CPU cores.

See [CONTRIBUTING](https://github.com/opiproject/opi/blob/main/CONTRIBUTING.md) and [GitHub Basic Process](https://github.com/opiproject/opi/blob/main/doc-github-rules.md) for more details.
![opi-mangoboost-bridge system overview](doc/images/opi-mangoboost-bridge_system-overview.png "opi-mangoboost-bridge system overview")

## Getting started

:exclamation: `docker-compose` is deprecated. For details, see [Migrate to Compose V2](https://docs.docker.com/compose/migrate/).

Run `docker-compose up -d` or `docker compose up -d`

## Diagrams
## Usage

Tbd
TBU

## I Want To Contribute

This project welcomes contributions and suggestions. We are happy to have the Community involved via submission of **Issues and Pull Requests** (with substantive content or even just fixes). We are hoping for the documents, test framework, etc. to become a community process with active engagement. PRs can be reviewed by by any number of people, and a maintainer may accept.

See [CONTRIBUTING](https://github.com/opiproject/opi/blob/main/CONTRIBUTING.md) and [GitHub Basic Process](https://github.com/opiproject/opi/blob/main/doc-github-rules.md) for more details.
6 changes: 3 additions & 3 deletions cmd/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ import (
"time"

"github.com/opiproject/gospdk/spdk"
// fe "github.com/opiproject/opi-mangoboost-bridge/pkg/frontend"
fe "github.com/opiproject/opi-mangoboost-bridge/pkg/frontend"
"github.com/opiproject/opi-smbios-bridge/pkg/inventory"
"github.com/opiproject/opi-spdk-bridge/pkg/backend"
"github.com/opiproject/opi-spdk-bridge/pkg/middleend"
Expand Down Expand Up @@ -120,13 +120,13 @@ func runGrpcServer(grpcPort int, spdkAddress string, tlsFiles string, store gokv

jsonRPC := spdk.NewClient(spdkAddress)
// Mango StorageBoost - NTI
// frontendOpiMangoboostServer := fe.NewServer(jsonRPC, store)
frontendOpiMangoboostServer := fe.NewServer(jsonRPC, store)
backendOpiSpdkServer := backend.NewServer(jsonRPC, store)
middleendOpiMangoboostServer := middleend.NewCustomizedServer(
jsonRPC, store, spdk.TweakModeJoinNegLbaWithLba,
)

// pb.RegisterFrontendNvmeServiceServer(s, frontendOpiMangoboostServer)
pb.RegisterFrontendNvmeServiceServer(s, frontendOpiMangoboostServer)
pb.RegisterNvmeRemoteControllerServiceServer(s, backendOpiSpdkServer)
pb.RegisterNullVolumeServiceServer(s, backendOpiSpdkServer)
pb.RegisterMallocVolumeServiceServer(s, backendOpiSpdkServer)
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit d45cadf

Please sign in to comment.