Giter Site home page Giter Site logo

sauterp / discovery-service Goto Github PK

View Code? Open in Web Editor NEW

This project forked from siderolabs/discovery-service

0.0 1.0 0.0 221 KB

Discovery Service provides cluster membership and KubeSpan peer information for Talos clusters

License: Other

Go 85.19% Dockerfile 4.23% Makefile 6.12% Shell 1.62% HTML 2.84%

discovery-service's Introduction

Talos Discovery Service (for KubeSpan)

Discovery Service provides cluster membership and KubeSpan peer information for Talos clusters.

Overview

Discovery Service provides centralized service for Talos nodes to exchange information about nodes of the cluster.

Talos runs "official" instance of the service, and anyone can run their own instance on-prem or in the cloud.

Discovery service doesn't store any data, all data is ephemeral and is kept only in memory. Node information is expired (if not updated) after 30 minutes. Discovery service doesn't see actual node information, it only stores and updates encrypted blobs. Discovery data should be submitted encrypted by the client, and service doesn't have the encryption key.

The project has been split into 3 parts (as they have different source code licenses), namely:

Setup

All of the details to get started are present in the Makefile, start with make help.

Interacting

Once the application is running you can test the grpc functionality on the port 3000 and the http pages in browser on port 3001.

To test the grpc calls, install grpcurl and clone the Discovery Service API repository.

  • Sample code-block to test the grpc Hello call (change path accordingly)

    grpcurl -proto v1alpha1/server/cluster.proto -import-path PATH_TO_REPO/discovery-api/api -plaintext -d '{"clusterId": "abc"}' -H 'X-Real-IP: 1.2.3.4' localhost:3000 sidero.discovery.server.Cluster/Hello

discovery-service's People

Contributors

aleksi avatar smira avatar ulexus avatar unix4ever avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.