Description
Eru is a stateless, flexible, production-ready cluster scheduler designed to easily integrate into existing workflows. Eru can run any containerized things in long or short time. This project is Eru Core. The Core use for resource allocation and manage containers lifetime.
Eru alternatives and similar packages
Based on the "Server Applications" category.
Alternatively, view Eru alternatives based on common mentions on social networks and blogs.
-
etcd
Distributed reliable key-value store for the most critical data of a distributed system -
Caddy
Fast and extensible multi-platform HTTP/1-2-3 web server with automatic HTTPS -
consul
Consul is a distributed, highly available, and data center aware solution to connect and configure applications across dynamic, distributed infrastructure. -
Vault
A tool for secrets management, encryption as a service, and privileged access management -
apex
Build, deploy, and manage AWS Lambda functions with ease (with Go support!). -
SFTPGo
Fully featured and highly configurable SFTP server with optional HTTP/S, FTP/S and WebDAV support - S3, Google Cloud Storage, Azure Blob -
RoadRunner
🤯 High-performance PHP application server, process manager written in Go and powered with plugins -
Ponzu
Headless CMS with automatic JSON API. Featuring auto-HTTPS from Let's Encrypt, HTTP/2 Server Push, and flexible server framework written in Go. -
Jocko
Kafka implemented in Golang with built-in coordination (No ZK dep, single binary install, Cloud Native) -
flipt
Enterprise-ready, GitOps enabled, CloudNative feature management solution -
algernon
Small self-contained pure-Go web server with Lua, Teal, Markdown, Ollama, HTTP/2, QUIC, Redis and PostgreSQL support -
Flagr
Flagr is a feature flagging, A/B testing and dynamic configuration microservice -
Key Transparency
A transparent and secure way to look up public keys. -
Rendora
dynamic server-side rendering using headless Chrome to effortlessly solve the SEO problem for modern javascript websites -
Trickster
Open Source HTTP Reverse Proxy Cache and Time Series Dashboard Accelerator -
jackal
💬 Instant messaging server for the Extensible Messaging and Presence Protocol (XMPP). -
go-feature-flag
GO Feature Flag is a simple, complete and lightweight self-hosted feature flag solution 100% Open Source. 🎛️ -
Golang API Starter Kit
Go Server/API boilerplate using best practices DDD CQRS ES gRPC -
SDNS
A high-performance, recursive DNS resolver server with DNSSEC support, focused on preserving privacy. -
Euterpe
Self-hosted music streaming server 🎶 with RESTful API and Web interface. Think of it as your very own Spotify! ☁️🎧 -
goproxy
🦁 goproxy is a proxy server which can forward http or https requests to remote servers./ goproxy 是一个反向代理服务器,支持转发 http/https 请求。 -
marathon-consul
Integrates Marathon apps with Consul service discovery. -
cortex-tenant
Prometheus remote write proxy that adds Cortex/Mimir tenant ID based on metric labels -
go-proxy-cache
Simple Reverse Proxy with Caching, written in Go, using Redis. -
lets-proxy2
Reverse proxy with automatically obtains TLS certificates from Let's Encrypt -
Simple CRUD App w/ Gorilla/Mux, MariaDB
Simple CRUD Application with Go, Gorilla/mux, MariaDB, Redis. -
simple-jwt-provider
Simple and lightweight provider which exhibits JWTs, supports login, password-reset (via mail) and user management. -
go-fitbit
Fitbit API for Go to fetch, add, update and delete data on Fitbit using REST API -
Gin Healthcheck
Lightweight, customizable healthcheck endpoint for Gin Framework
InfluxDB - Power Real-Time Data Analytics at Scale
Do you think we are missing an alternative of Eru or a related project?
README
Eru
Eru is a stateless, flexible, production-ready resource scheduler designed to easily integrate into existing systems.
Eru can use multiple engines to run anything for the long or short term.
This project is Eru Core. The Core use for resource allocation and manage resource's lifetime.
Suggest use go 1.18 and above.
Testing
Run make test
Compile
- Run
make build
if you want binary. - Run
./make-rpm
if you want RPM for el7. However we use FPM for packing, so you have to prepare it first.
Developing
Run make deps
for generating vendor dir.
You can use our footstone image for testing and compiling.
GRPC
Generate golang grpc definitions.
go install google.golang.org/protobuf/cmd/protoc-gen-go@latest
go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest
make grpc
Run it
$ eru-core --config /etc/eru/core.yaml.sample
or
$ export ERU_CONFIG_PATH=/path/to/core.yaml
$ eru-core
Dockerized Core manually
Image: projecteru2/core
docker run -d \
--name eru_core_$HOSTNAME \
--net host \
--restart always \
-v <HOST_CONFIG_DIR_PATH>:/etc/eru \
projecteru2/core \
/usr/bin/eru-core
Build and Deploy by Eru itself
After we implemented bootstrap in eru, now you can build and deploy eru with cli tool.
- Test source code and build image
<cli_execute_path> --name <image_name> http://bit.ly/EruCore
Make sure you can clone code. After the fresh image was named and tagged, it will be auto pushed to the remote registry which was defined in config file.
- Deploy core itself
<cli_execute_path> workloads deploy --pod <pod_name> [--node <node_name>] --entry core --network <network_name> --image <projecteru2/core>|<your_own_image> --file <core_config_yaml>:/core.yaml [--count <count_num>] [--cpu 0.3 | --mem 1024000000] http://bit.ly/EruCore
Now you will find core was started in nodes.