A redis based cluster cloud system for minecraft.

Overview

img img

RediCloud

A redis based cluster cloud system for minecraft. [Discord | Developer]

Overview


What is RediCloud?

  • RediCloud is a cluster cloud system for minecraft which is based on redis. The best thing is there are no head-nodes and sub-nodes. That means you can easily connect to the cluster. Everything you have to do is to setup the redis connection.

  • Let's imagine you have running your network like the following way:

    Node-1
      ├ Proxy
      ├ Hub
      ├ Practice
      └ FFA
      
    Node-2
      ├ BedWars
      └ SkyWars
    
  • If Node-2 is going down for any reason, what would be with BedWars and SkyWars? This is where our node principle comes into play, because if one node fails, the other node(s) take over the work of the failing node. So in our case the network structure would be the following way:

    Node-1
      ├ Proxy
      ├ Hub
      ├ Practice
      ├ FFA
      ├ BedWars (took over from Node-2)
      └ SkyWars (took over from Node-2)
      
    Node-2 (failed)    
    

Features

( = done | ⚙️ = in progress | = not started | 🚧 = done, but not tested enough)

  • node clustering
  • redis for communication and storage
  • start minecraft services (spigot , bukkit, paper based forks)
  • start proxy services (bungeecord , waterfall, velocity)
  • remote screens (with rate limiter for cpu-overload-protection on exception spam)
  • web interface
  • console + commands
  • dynamic and static services
  • templates (sync via file-nodes)
  • print fatal service errors directly to node console
  • api (sync / async)
  • module system ⚙️
  • default modules: perms, cloudflare
  • redis cluster support 🚧
  • smart clustering ⚙️
  • automatic service start
  • 1.8-1.19 support
  • custom service versions
  • java start command is customizable for each service version
  • modify programm arguments and jvm flags for each group
  • external proxy services (start external proxy services and connect cloud services to them)
  • easy dev plugin test (create external service, that you can start for e.g via your IDE. The services will connect without a node to the cloud cluster) 🚧
  • offline/online player support at the same time
  • player api bridge (actionbar, messages, service connect, kick, title, tablist)
  • toggle maintenance for groups/services
  • multi proxy (with player count sync)
  • limbo fallbacks
  • only proxy join (but please use your firewall: guide) 🚧

Commands

Generel help
Cluster help
Template help
Group help
Service verison help
Service help
Screen help

Requirements

  • Java 8+ Runtime Environment
  • min. 256MB Java Virtual Machine Heap size
  • min. 1GB RAM
  • min. 2 vCores
  • a redis server

Installation

Follow these steps

Build

Last Build: jenkins

Linux / OSX

git clone https://github.com/RediCloud/cloud
cd cloud
./gradlew build

Windows

git clone https://github.com/RediCloud/cloud
cd cloud
gradlew.bat

API

Repository

maven {
    url = "https://repo.redicloud.dev/repository/maven-snapshots/"
}

maven {
    url = "https://repo.redicloud.dev/repository/maven-releases/"
}

Dependencies

implementation('dev.redicloud.api:api:VERSION')
Comments
  • group template add

    group template add

    Console Error

    Put the paste.gg link or text here.
    

    /

    Bug Description

    Wenn ich zu einer Gruppe ein Template hinzufügen möchte, funktioniert es nicht, da das Template nicht existieren würde, obwohl es existiert. Termius_sle4ihbghm

    Steps to Reproduce

    1. template list
    2. group template add Proxy Proxy

    Expected Behavior

    Das Template wird zur Gruppe hinzugefügt.

    Software/Hardware

    Ubuntu 20.04 Java 16

    Cloud-Version

    Version: 1.5.1-RELEASE | Git: 6740dcfc

    bug 
    opened by obfuscaten 3
  • MAX_PLAYERS Property im Group Edit Befehl

    MAX_PLAYERS Property im Group Edit Befehl

    Problem Description

    Wenn man auf schnelle die Spieleranzahl einer Gruppe ändern möchte, funktioniert es nicht, da es keine andere Möglichkeit gibt diese zu ändern, außer durch die API.

    Solution Description

    Man fügt im GROUP EDIT Befehl eine neue Property hinzu, die MAX_PLAYERS heißt.

    enhancement 
    opened by obfuscaten 2
  • startup error

    startup error

    Console Error

    Failed to run node:
    java.io.FileNotFoundException: Proxy plugin jar not found!
            at net.suqatri.redicloud.node.NodeLauncher.createDefaultFiles(NodeLauncher.java:517)
            at net.suqatri.redicloud.node.NodeLauncher.init(NodeLauncher.java:277)
            at net.suqatri.redicloud.node.NodeLauncher.<init>(NodeLauncher.java:94)
            at net.suqatri.redicloud.node.NodeLauncherMain.main(NodeLauncherMain.java:26)
    
    
    

    Bug Description

    If you want to start the cloud, an error occurs

    Steps to Reproduce

    Start the cloud - you'll see the error instantly

    Expected Behavior

    normal cloud start

    Software/Hardware

    OS: Ubuntu 22.04.1

    Cloud-Version

    opened by Mischmaschine 2
  • Error in service factory thread

    Error in service factory thread

    Console Error

    Put the paste.gg link or text here.
    

    https://paste.gg/p/anonymous/9821f41c888a4101876b56b10dad67f3

    Bug Description

    Wenn die Cloud startet, wird der Fehler "Error in service factory thread" gespammt.

    Steps to Reproduce

    1. Cloud System gestartet

    Expected Behavior

    Die Cloud hätte normal gestartet

    Software/Hardware

    Java 16 Ubuntu 20.04

    Cloud-Version

    Version: 1.6.8-RELEASE | Git: eea0daf5

    opened by obfuscaten 1
  • MAX_PLAYERS Variable nicht gefunden

    MAX_PLAYERS Variable nicht gefunden

    Console Error

    Put the paste.gg link or text here.
    

    Termius_VsgEYAyy7q

    Bug Description

    Er findet MAX_PLAYERS bei dem group edit Befehl nicht.

    Steps to Reproduce

    1. group edit Proxy MAX_PLAYERS 120

    Expected Behavior

    Die Maximale Spieleranzahl sollte sich zu 120 verändern.

    Software/Hardware

    Java 16 Ubuntu 20.04

    Cloud-Version

    Version: 1.6.7-RELEASE | Git: 6114b6ce

    opened by obfuscaten 1
  • Limbo fallbacks

    Limbo fallbacks

    Console Error

    Limbo fallbacks will start even they are disabled

    Bug Description

    Limbo fallbacks will start even they are disabled

    Steps to Reproduce

    Disable Limbo services

    Expected Behavior

    No limbo fallback should start when Limbo fallbacks are disabled

    Software/Hardware

    Debian 11 Java 17

    Cloud-Version

    1.5.0-RELEASE

    opened by Suqatri 1
  • Verify service

    Verify service

    Console Error


    Bug Description

    Es startet immer ein verify service, auch wenn cracked Support deaktiviert ist

    Steps to Reproduce

    Disable cracked support

    Expected Behavior

    No verify service should start when cracked support is disabled

    Software/Hardware

    Java 17 Debian 11

    Cloud-Version

    1.5.0-RELEASE

    opened by Suqatri 1
  • group edit error

    group edit error

    Console Error

    https://paste.gg/p/anonymous/d321d20f72944d009899b6ac9ab1a052

    Bug Description

    Nachdem ich in der Proxy-Gruppe Wartungsarbeiten auf true & false gestellt habe. Die Gruppe wurde bearbeitet nur kam halt nen Fehler

    Steps to Reproduce

    • group edit Proxy maintenance true
    • group edit Proxy maintenance false

    Expected Behavior

    Es wäre kein Fehler gekommen idk

    Software/Hardware

    Java Version: 16 OS: Ubuntu 20.04

    Cloud-Version

    Version: 1.3.4-RELEASE | Git: 3f6f6a0c

    opened by obfuscaten 1
  • Logs dosn't work

    Logs dosn't work

    Console Error

    Put the paste.gg link or text here.
    

    Bug Description

    Log-Files are empty - no error

    Steps to Reproduce

    Expected Behavior

    Logs should be filled with the messages which are also printed in the console

    Software/Hardware

    Cloud-Version

    Git-Hash: f01a1ba1 Version: 1.3.0-SNAPSHOT

    opened by Mischmaschine 1
  • Dynamic Help Command

    Dynamic Help Command

    Problem Description

    Not all commands are displayed on help command

    Solution Description

    Load the Content for the Help Response dynamic from the Commandmanager, because it is very useful to see all possible commands.

    enhancement 
    opened by InfinityDevFlo 1
  • group create broken

    group create broken

    Console Error

    nothing happen

    Bug Description

    When i try to create a group, nothing happen after you select your environment type

    Steps to Reproduce

    1. Start cloud
    2. run "group create Test"
    3. select a environment
    4. setup close, nothing happen

    Expected Behavior

    start group setup

    Software/Hardware


    Cloud-Version

    Git-Version: 0.6.4-SNAPSHOT Git-Hash: 58f32bf0

    opened by Suqatri 1
  • Cannot start via start-sh

    Cannot start via start-sh

    Console Error

    Error opening zip file or JAR manifest missings /myPath/redis-cloudrunner.jar
    

    Bug Description

    Cannot start the jar file via the predefined start-sh file.

    Steps to Reproduce

    1. Start your server
    2. Get the error

    Expected Behavior

    It should just start

    Software/Hardware

    Java Version: openjdk 11 OS: (Hosted under ProxMox) Linux 5.15.0-55

    Cloud-Version

    Cloud-Version: 1.7.0 Release

    bug need confirm 
    opened by GoldenGamerLP 0
  • Maintenance mode ändert sich nicht direkt

    Maintenance mode ändert sich nicht direkt

    Console Error

    Put the paste.gg link or text here.
    

    /

    Bug Description

    Maintenance mode ändert sich nicht

    Steps to Reproduce

    1. group edit Proxy maintenance false / true

    Expected Behavior

    Hätte sich ändern müssen. Ändert sich aber erst nach Proxy restart

    Software/Hardware

    Java 16 Ubuntu 20.04 <3

    Cloud-Version

    Version: 1.6.7-RELEASE | Git: 6114b6ce

    bug 
    opened by obfuscaten 2
  • Cluster Limbo Fallback Server

    Cluster Limbo Fallback Server

    Problem Description

    Es ist nur ein Fallback Server online und nur auf einem Node nicht auf allen.

    Solution Description

    Das, wenn man mehrere Nodes hat, dass auf jedem Node ein Limbo-Fallback Server immer gestartet ist. Das halt immer ein Limbo Server online ist, wenn eine Node weg ist.

    enhancement 
    opened by Panda260 0
hibernate redis 二级缓存使用 spring boot redis 配置

hibernate-redisson-spring-boot-starter 介绍 使用 Redisson 作为 hibernate redis 二级缓存提供器,redisson-hibernate-53(hibernate-version) 无法使用 spring boot 配置文件创建的 org

null 4 Jul 3, 2022
mall4cloud微服务商城,基于Spring Cloud、Nacos、Seata、Mysql、Redis、RocketMQ、canal、ElasticSearch、minio的B2B2C微服务商城系统,采用主流的互联网技术架构、全新的UI设计 B2B2C微服务商城|小程序微服务商城|

README 前言 本商城是基于Spring Cloud、Nacos、Seata、Mysql、Redis、RocketMQ、canal、ElasticSearch、minio的微服务B2B2C电商商城系统,采用主流的互联网技术架构、全新的UI设计、支持集群部署、服务注册和发现以及拥有完整的订单流程等

null 3k Jan 1, 2023
Team 5468's 2022 FRC robot code. This code is written in Java and is based off of WPILib's Java control system and utilizes a command based system

FRC 2022 Team 5468's 2022 FRC robot code. This code is written in Java and is based off of WPILib's Java control system and utilizes a command based s

null 4 Oct 4, 2022
循序渐进,学习Spring Boot、Spring Boot & Shiro、Spring Batch、Spring Cloud、Spring Cloud Alibaba、Spring Security & Spring Security OAuth2,博客Spring系列源码:https://mrbird.cc

Spring 系列教程 该仓库为个人博客https://mrbird.cc中Spring系列源码,包含Spring Boot、Spring Boot & Shiro、Spring Cloud,Spring Boot & Spring Security & Spring Security OAuth2

mrbird 24.8k Jan 6, 2023
一个涵盖六个专栏:Spring Boot 2.X、Spring Cloud、Spring Cloud Alibaba、Dubbo、分布式消息队列、分布式事务的仓库。希望胖友小手一抖,右上角来个 Star,感恩 1024

友情提示:因为提供了 50000+ 行示例代码,所以艿艿默认注释了所有 Maven Module。 胖友可以根据自己的需要,修改 pom.xml 即可。 一个涵盖六个主流技术栈的正经仓库: 《Spring Boot 专栏》 《Spring Cloud Alibaba 专栏》 《Spring Clou

芋道源码 15.7k Dec 31, 2022
一套涵盖大部分核心组件使用的Spring Cloud教程,包括Spring Cloud Alibaba及分布式事务Seata,基于Spring Cloud Greenwich及SpringBoot 2.1.7。22篇文章,篇篇精华,32个Demo,涵盖大部分应用场景。

springcloud-learning 简介 一套涵盖大部分核心组件使用的Spring Cloud教程,包括Spring Cloud Alibaba及分布式事务Seata,基于Spring Cloud Greenwich及SpringBoot 2.1.7。22篇文章,篇篇精华,32个Demo,涵盖

macro 5.6k Dec 30, 2022
Demo microservice architecture with Spring ,Spring Cloud Gateway , Spring Cloud config server , Eureuka , keycloak and Docker.

spring-microservice Demo microservice architecture with Spring ,Spring Cloud Gateway , Spring Cloud config server , Eureuka , keycloak and Docker. Arc

null 4 Sep 13, 2022
A spring cloud infrastructure provides various of commonly used cloud components and auto-configurations for high project consistency

A spring cloud infrastructure provides various of commonly used cloud components and auto-configurations for high project consistency.

Project-Hephaestus 2 Feb 8, 2022
A personal blog based on Vue+SpringBoot+MySql+Redis+Shiro+JWT

项目:Vue-SpringBoot-PersonalBlog 个人博客网址:http://www.huchao.vip/blogs CSDN:毛_三月 介绍 一个基于SpringBoot + Vue+MybatisPlus+Shiro+JWT+Redis开发的前后端分离博客项目,带有超级详细开发文档

Chao. Hu 26 Dec 20, 2022
The Spring Boot Sample App on K8S has been implemented using GKE K8S Cluster, Spring Boot, Maven, and Docker.

gke-springboot-sampleapp ?? The Spring Boot Sample App on K8S has been implemented using GKE K8S Cluster, Spring Boot, Maven, and Docker. Usage To be

KYEONGMIN CHO 1 Feb 1, 2022
Aye - an open source tool for scanning images on Kubernetes cluster

Aye is an open source tool for scanning images on Kubernetes cluster. It uses Anchore CLI behind the scenes to get information about all images that are currently on the cluster. It also provides Prometheus metrics for each image, so teams are aware of different levels of vulnerabilities found inside them.

null 4 Sep 4, 2022
Automated health check for Zeebe cluster

cluster-healthcheck Automated health check for Camunda Cloud clusters. See HealthCheck for usage. This project is in very very early stages of develop

Peter Ihme 2 Oct 16, 2021
A fast, light and cloud native OAuth 2.0 authorization microservices based on light-4j

A fast, light weight and cloud native OAuth 2.0 Server based on microservices architecture built on top of light-4j and light-rest-4j frameworks. Stac

null 291 Dec 17, 2022
mall学习教程,架构、业务、技术要点全方位解析。mall项目(40k+star)是一套电商系统,使用现阶段主流技术实现。涵盖了SpringBoot 2.3.0、MyBatis 3.4.6、Elasticsearch 7.6.2、RabbitMQ 3.7.15、Redis 5.0、MongoDB 4.2.5、Mysql5.7等技术,采用Docker容器化部署。

mall学习教程 简介 mall学习教程,架构、业务、技术要点全方位解析。mall项目(40k+star)是一套电商系统,使用现阶段主流技术实现。涵盖了SpringBoot 2.3.0、MyBatis 3.4.6、Elasticsearch 7.6.2、RabbitMQ 3.7.15、Redis 5

macro 11.7k Jan 8, 2023
:racehorse:基于SpringBoot + MySQL + Redis + RabbitMQ + Guava开发的高并发商品限时秒杀系统

系统介绍 本系统是使用SpringBoot开发的高并发限时抢购秒杀系统,除了实现基本的登录、查看商品列表、秒杀、下单等功能,项目中还针对高并发情况实现了系统缓存、降级和限流。 开发工具 IntelliJ IDEA + Navicat + Sublime Text3 + Git + Chrome 压测

FINN 2.3k Dec 27, 2022
🦄 开源社区系统:基于 SpringBoot + MyBatis + MySQL + Redis + Kafka + Elasticsearch + Spring Security + ... 并提供详细的开发文档和配套教程。包含帖子、评论、私信、系统通知、点赞、关注、搜索、用户设置、数据统计等模块。

Echo — 开源社区系统 项目上线到服务器之后可能会出现各种各样的 BUG,比如 Elasticsearch 服务启动失败导致搜索模块不可用,但是在本地运行是完全没问题的,所以各位小伙伴可以放心下载部署。 ?? 项目简介 Echo 是一套前后端不分离的开源社区系统,基于目前主流 Java Web

小牛肉 434 Jan 7, 2023
backend for a sharing app using SpringBoot, Redis, MySQL, and AWS S3.

moments_v2_backend (Work In Progress) backend for a sharing app using SpringBoot, Redis, MySQL, and AWS S3. This is the second version of my project S

Haiming Sun 53 Dec 26, 2022
lilishop是采用JAVA开发的B2B2C多用户商城系统/电商系统/电子商务。基于当前流行技术组合的前后端分离商城系统:后端使用 SpringBoot、MybatisPlus、SpringSecurity、redis、ES、mysql、mongodb等主流技术,前端使用vue框架iview、uniapp。支持分布式部署,分布式事务,支持docker、k8s。商城支持 PC、WAP、H5、小程序、APP等各个客户端

Lilishop B2B2C商城系统 官方公众号 & 开源不易,如有帮助请点Star 介绍 官网:https://pickmall.cn Lilishop 是一款Java开发,基于SpringBoot研发的B2B2C多用户商城,前端使用 Vue、uniapp开发 系统全端全部代码开源 产品前后端分离

null 3k Dec 31, 2022
Spring-boot application using redis as a caching database

Java Spring-boot application using Redis as a caching database Running Application Entities involved Two main entities are involved MasterHouse (maste

null 18 Aug 9, 2022