Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

✨ Kubernetes integration #318

Open
Meshiest opened this issue Dec 4, 2024 · 0 comments
Open

✨ Kubernetes integration #318

Meshiest opened this issue Dec 4, 2024 · 0 comments
Labels
feature An item containing Multiple Tasks

Comments

@Meshiest
Copy link
Contributor

Meshiest commented Dec 4, 2024

✨ Feature

Extensions to snops-cli to build Kubernetes deployments automatically from environment specs, and run the controlplane within k8s

Motivation

Reduces friction for getting a snops environment setup, allows automated cloud native deployment of isonets.

Use cases

Simple isonet creation with ZERO YAML (no config files)

Deploy containerized agents for a generic size network

  • snops-cli k8s generate network --validators 4 --clients 4 | kubectl apply -f -

(example command, needs more info to determine if these are real mainnet/testnet/canary nodes or isonet nodes)

  1. Generates a spec file with 4 validators and 4 clients
  2. Creates a deployment for running a controlplane and 8 agents connecting to the controlplane
  3. Starts/updates the environment and delegates all the agents

Simple environment setup

Deploy containerized agents for any existing environment

  • snops-cli k8s generate -f my-env.yaml | kubectl apply -f -
  1. Determines the number of agents needed for a spec
  2. Generates a deployment for running a controlplane and that many agents
  3. Starts/updates the environment and delegates all the agents

Example setup with monitoring

Some mechanism to inject Prometheus/Grafana into the k8s cluster

Implementation

  • Using the image from ✅ Docker image for running an agent #277, and a new image for the controlplane, create an example kubernetes yaml for deploying snops
  • Upgrade snops-cli to generate kubernetes yaml definitions
  • Allow the controlplane to deploy/update an environment on startup (from env or a file)
  • Allow the controlplane to wait for agents to come online before preparing, or have some way of delegating agents on the fly
@Meshiest Meshiest added the feature An item containing Multiple Tasks label Dec 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature An item containing Multiple Tasks
Projects
None yet
Development

No branches or pull requests

1 participant