Skip to content
/ ZETA Public

Zero trust elasticity for edge-cloud microservices

License

Notifications You must be signed in to change notification settings

rdsea/ZETA

Repository files navigation

ZETA Framework

ZETA (ZEro Trust elAsticity) is an open-source framework that supports zero-trust in the elasticity of edge-cloud microservices. ZETA also provides support for elasticity delegation capabilities between these edge-cloud microservices.


Table of contents

  1. Introduction
  2. Dependencies
  3. Installation
  4. About the work
  5. License

Introduction

ZETA is a distributed framework aims to support zero-trust in the elasticity operations edge-cloud microservices. It is a platform-agnostic framework that can evaluate contextual trust levels. ZETA takes into consideration a high-level view of the platform services that are deployed on cloud. For more details, checkout the wiki page.

Dependencies

The baseline ZETA requires

  • Docker and docker-compose

There are a few additional external dependencies if you want to generate plots and stress test ZETA. They include:

  • k6.io
  • Jupyter

Installation

The installation of ZETA is quite straight-forward. Although you may have to be careful about the providing the correct manifest.

Steps:

  • Provide the correct influxDB.confconfigurations and mount it during the runtime.
  • (First Time only) Run the init.db when the observed-knowledge component starts up.
  • Edit the trust-computation/trust_config.yaml values.
  • Put your public/private keypair in the authorization service component
  • (Optional) Supplement the gp_regression.py with your own.
  • Fill the docker-compose.yml config variables
  • create .env file for sensitive environment variables

Environment variables:

Variable Name Description
SERVICE_KNOWLEDGE_USERNAME Username for service knowledge component
SERVICE_KNOWLEDGE_PASSWORD Password for service knowledge component
INFLUXDB_INIT_PASSWORD Password for InfluxDB
INFLUXDB_INIT_USERNAME Username for InfluxDB
INFLUXDB_INIT_BUCKET Bucket Name for InfluxDB (Optional)
INFLUXDB_INIT_ORG Default organization name for InfluxDB (Optional)

Finally, start the docker-compose.yml services

About the work

ZETA framework is a part of Master's thesis titled "Establishing trust for secure elasticity in edge-cloud microservices" written by Rohit Raj and supervised by Prof. Hong-Linh Truong and Prof Aurèlien Francillon. If you use this work, please cite the thesis.

  • Raj, Rohit. 2021. Establishing trust for secure elasticity in edge-cloud microservices. Master's Thesis. (Submitted to) Aalto University, Finland & Eurecom, France

License

ZETA is licensed under the Apache License 2.0