App Mesh is an open-source, multi-tenant application management platform designed for cloud-native environments. It efficiently manages, schedules, and monitors both microservices and traditional applications, offering a lightweight alternative to Kubernetes. App Mesh bridges the gap between simple process managers and complex container orchestration systems, making it ideal for organizations seeking to modernize their infrastructure without adopting full container-native complexity. Supporting both containerized and native applications, it provides a versatile solution for diverse enterprise needs.
Feature | Description |
---|---|
Application management | 1. Manage independent applications with flexible process control (long/short running, periodic, cron schedule, custom timings, error handling) and comprehensive monitoring (start counts, return codes, error messages, health checks) for both native and Docker applications. 2. Run applications on remote hosts using SDK/CLI with sync/async modes and fetch results to the client. 3. Full control over application lifecycle (cgroup resource limitation, specific OS user for execution). 4. Support interactive application start with specific input data via pipe and environment variables. 5. Access all functionalities via CLI, REST, SDK and WebGUI interface. |
Security | ⚡️ JWT authentication for CLI and REST interface ⚡️ LDAP support ⚡️ Role based permission control ⚡️ Multi-factor authentication SSL support (ECDH and secure ciphers) for REST http connection Multi-tenant support |
Cloud native | Schedule cloud-level applications to run on multiple hosts with resource size requests. ⚡️ Prometheus Exporter (build-in) ⚡️ Grafana SimpleJson datasource ⚡️ Grafana Loki ⚡️ Dockerfile |
Micro service application | ⚡️ Consul micro-service cluster management |
Extra Features | Collect host/app resource usage Remote shell command execution File upload/download interface Hot-update support systemctl reload appmesh Bash completion Reverse proxy Web GUI |
Platform support | X86_64 ARM32 ARM64 |
SDK | Python Golang JavaScript Java Swagger OpenAPI Specification |
Refer to the Installation doc to learn how to install App Mesh via Docker Compose or natively and set up an App Mesh cluster.
Feature | App Mesh | Supervisor | crontab |
---|---|---|---|
Accuracy | Seconds | Seconds | Minutes |
Language | C++11 | Python | C |
Web GUI | √ | √ | |
Command lines | √ | √ | √ |
SDK | √ | ||
Cron schedule expression | √ | √ | |
Manage daemon process | √ | ||
Manage docker app | √ | ||
Start check (avoid leak) | √ | √ | |
Session login | |||
Manage stdout/stderr | √ | √ | |
Health check | √ | ||
Rich control options | √ | ||
Authentication | √ | √ | |
Multi-tenant | √ | √ |
Feature | App Mesh | Kubernetes |
---|---|---|
Easy deploy | √ | |
More features | √ | |
Non-container app | √ | |
Service expose | √ | √ |
Scheduler | √ | √ |
Definition file | YAML | YAML |
GUI | √ | √ |
Virtual Network | √ | |
Monitor tools | √ | √ |
- Build a powerful monitor system with Grafana/Prometheus/Loki
- Customize application start behavior
- Manage cluster-level microservice applications
- Open service broker support local PV for Kubernetes
- Promote native application to microservice application
- Secure REST file server
- Standalone JWT server
- Kubernetes run none-container applications
- Remote execute
- Python parallel run
- Secure consul cluster