Skip to content

A secure multi-tenant, cloud native, micro-service application management platform

License

Notifications You must be signed in to change notification settings

laoshanxi/app-mesh

Repository files navigation

language.badge standard.badge release.badge pypi.badge unittest.badge docker.badge cockpit.badge Documentation Status Join the chat at https://gitter.im/app-mesh/community Coverity Scan Build Status OpenSSF Scorecard

App Mesh: Advanced Application Management Platform

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.

Features

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

Getting started

Refer to the Installation doc to learn how to install App Mesh via Docker Compose or natively and set up an App Mesh cluster.

Documentation

Comparison

Standalone mode

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

Cluster mode

Feature App Mesh Kubernetes
Easy deploy
More features
Non-container app
Service expose
Scheduler
Definition file YAML YAML
GUI
Virtual Network
Monitor tools

Mind diagram

mind-diagram


Success


Library dependency