Skip to content

RIKEN-RCCS/lens3

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Lens3

Lenticularis-S3 is an AWS-S3 multiplexer to service multiple server instances at a single access point.

Overview

Lenticularis-S3 (Lens3) provides an AWS-S3 service at a single access point by running multiple server instances. An S3 service is usually owned by a single user (unix root), but it may not be acceptable by site's security policy. Lens3 starts multiple S3 servers (backend server instances) one for each user, which confines operations by user's permission.

lens3-overview
Fig. Lens3 overview.

Lens3 works as a proxy and a manager of S3 server instances. It launches a server instance on an S3 request, redirects access requests to the instance, and manages the life-time of the instance. This service, called "Lenticularis-Mux", is started as a systemd service. Lens3 also provides a simple Web-UI for managing bucket pools. A "bucket pool" is a management unit in Lens3 which is associated to each server instance. A Web-UI is used to register S3 buckets to a pool. This service, called "Lenticularis-Reg", is integrated as a thread to Lenticularis-Mux.

Lens3 uses S3 Baby-server as a backend S3 server. Baby-server is a small subset server for AWS-S3 designed to share files stored in usual filesystems. It is available in github.com: https://github.com/RIKEN-RCCS/s3-baby-server.

Installation

Usually, installation can be done by an RPM binary package. The RPM package includes the "s3-baby-server" binary in addition to the binaries for Lens3 (i.e., "lenticularis-mux" and "lenticularis-admin"), and the installer installs them in "/usr/local/bin". Package details are described in rpm/README.md.

Uninstalling the package does not stop the serverces. Please manually stop the services "lenticularis-mux" and "lenticularis-valkey".

Building Binaries

When the RPM binary package is not available, build binaries manually.

Running make in "v2" directory builds binaries "lenticularis-mux" and "lenticularis-admin". See installation-procedure.md for more details.

cd v2
make get
make

Lens3 needs a backend S3 server, such as S3 Baby-server. Baby-server is a separate software which is available in github.com, and you should build and install it, too.

Guides

ACKNOWLEDGMENT

Lens3 is copyrighted by RIKEN R-CCS. Part of the results is obtained by using Fugaku at RIKEN R-CCS.

Lens3 is developed by RIKEN R-CCS and by the external authors S. Nishioka and T. Ishibashi. The code was reviewed by zzmatu and remaining bugs are his sole responsibility.

User interface of Lens3 is created with vuejs+vuetify. Please refer to https://vuejs.org and https://vuetifyjs.com.

The lists of third party software Lens3 depends on are: Third party software for v2 and Third party software for v1,

About

An AWS S3 access multiplexer for servicing multiple server instances at a single access point.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors