Coder Social home page Coder Social logo

k8s-busybox's Introduction



Github tag Maintenance GoReportCard example

Too many data sources and too many schemas? Looking for a messaging queue to scale your data-driven architecture? Require greater performance for your data streams? Your architecture is based on post-processing data, and you want to switch to real-time in minutes instead of months? Struggle to install, configure and update Kafka/RabbitMQ/and other MQs?

Meet Memphis

Memphis is a dev-first, cloud-native, event processing platform made out of devs' struggles with tools like Kafka, RabbitMQ, NATS, and others, allowing you to achieve all other message brokers' benefits in a fraction of the time.

Memphis delivers:

  • The most simple to use Message Broker (With the same behaivour as NATS and Kafka)
  • State-of-the-art UI and CLI
  • No need for Kafka Connect, Kafka Streams, ksql. All the tools you need are under the same roof
  • An in-line data processing in any programming language
  • Out-of-the-box deep observability of every component

RabbitMQ has Queues, Kafka as Topics, Memphis has Stations.

TL;DR

On Day 1 (For the DevOps heros out there) -
Memphis platform provides the same old and loved behavior (Produce-Consume) of other data lakes and MQs, but removes completly the complexity barriers, messy documentation, ops, manual scale, orchestration and more.

On Day 2 (For the Developers) - Developer lives with developing real-time, event-driven apps that are too complex. Consumers and Producers are filled with logic, data orchestration is needed between the different services, no GUI to understand metrics and flows, lack of monitoring, hard to implement SDKs, etc.

No More.

In the coming versions, Memphis will solve the challenges above,
and recude 90% of dev work arround building a real-time / event-driven / data-driven apps.


Purpose of this repo
Responsible for configuring the components of Memphis after helm deployment

Table of Contents

Memphis Components

Memphis repos

Current SDKs

Installation

Kubernetes

Install

helm repo add memphis https://k8s.memphis.dev/charts/
helm install my-memphis memphis/memphis --create-namespace --namespace memphis

Helm chart options
Example:
helm install my-memphis --set cluster.replicas=1,rootPwd="rootpassword" memphis/memphis --create-namespace --namespace memphis

Option Description Default Value
rootPwd Root password for the dashboard "memphis"
connectionToken Token for connecting an app to the Memphis Message Queue. Auto Generated ""
dashboard.port Dashboard's (GUI) port 80
cluster.replicas Amount of Message Queue workers 3

K8S Diagram


Docker

Install

curl -s https://memphis-os.github.io/memphis-docker/docker-compose.yml -o docker-compose.yml
docker compose -f docker-compose.yml -p memphis up

The following will be deployed as docker containers

memphis-control-plane-1
memphis-ui-1
memphis-cluster-1
memphis-mongo-1

Next Steps

Kubernetes

Localhost Environment

Memphis UI can be accessed via port 80 on the following DNS name from within your cluster: 
memphis-ui.memphis.svc.cluster.local

To access Memphis from localhost, run the below commands:
  1. kubectl port-forward service/memphis-ui 9000:80 --namespace memphis &
  2. kubectl port-forward service/memphis-cluster 7766:7766 --namespace memphis &
  3. kubectl port-forward service/control-plane 6666:6666 6667:80 --namespace memphis &

Dashboard: http://localhost:9000

Production Environments

Please expose the UI, Cluster, and Control-plane via k8s ingress / load balancer / nodeport


Docker

To access Memphis, run the below commands: Dashboard - http://localhost:9000
Broker - localhost:7766
Control-Plane for CLI - localhost:5555
Control-Plane for SDK - localhost:6666 + localhost:5555

Memphis Contributors

Contribution guidelines

soon

Documentation

Contact

  • Slack: Q&A, Help, Feature requests, and more
  • Twitter: Follow us on Twitter!
  • Discord: Join our Discord Server!
  • Medium: Follow our Medium page!
  • Youtube: Subscribe our youtube channel!

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.