
laoshanxi/appmeshApp Mesh 是一个多租户、云原生、微服务应用管理平台,用于管理、调度和监控应用。每个应用可以是用于服务发现的特定微服务,也可以是具有副本的普通应用,App Mesh 确保所有定义的应用按指定行为和资源需求准时运行。该平台支持单机或集群模式,并提供 REST API、命令行和 Web 界面。
App Mesh 类似于 Kubernetes,但更轻量级,同时支持容器应用和原生应用。
| 功能 | 描述 |
|---|---|
| 应用管理 | 1. 管理独立应用并守护进程运行,类似 systemd 但更灵活(长/短运行、周期性长运行、 cron 调度、自定义时间和错误处理控制),并为原生和 Docker 应用提供全面监控(启动次数、返回码、错误信息、健康检查)。 2. 使用 SDK/CLI 以同步/异步模式在远程主机运行应用,并将结果返回客户端。 3. 全面控制应用生命周期(cgroup 资源限制、指定 OS 用户执行)。 4. 交互式应用启动支持通过管道和环境变量指定输入数据。 5. 所有功能通过 CLI、REST、SDK 和 WebGUI 接口提供。 |
| 安全性 | ⚡️ JWT 认证(CLI 和 REST 接口) ⚡️ LDAP 支持 ⚡️ 基于角色的权限控制 ⚡️ 多因素认证 REST HTTP 连接支持 SSL(ECDH 和安全密码套件) 多租户支持 |
| 云原生 | 调度云级应用在多主机上运行,支持资源大小请求。 ⚡️ 内置 Prometheus 导出器 ⚡️ Grafana SimpleJson 数据源 ⚡️ Grafana Loki ⚡️ Dockerfile |
| 微服务应用 | ⚡️ Consul 微服务集群管理 |
| 额外功能 | 收集主机/应用资源使用情况 远程执行 shell 命令 文件下载/上传接口 热更新支持 systemctl reload appmeshBash 自动补全 反向代理 Web GUI |
| 平台支持 | X86_64 ARM32 ARM64 |
| SDK | Python Golang |
适用于需要轻量级应用管理、灵活调度(如 cron 任务、长/短运行应用)及全面监控的场景,相比 Supervisor 和 crontab 提供更丰富的控制选项和多租户支持。
| 功能 | App Mesh | Supervisor | crontab |
|---|---|---|---|
| 精度 | 秒级 | 秒级 | 分钟级 |
| 开发语言 | C++11 | Python | C |
| Web 界面 | √ | √ | |
| 命令行 | √ | √ | √ |
| SDK | √ | ||
| Cron 调度表达式 | √ | √ | |
| 管理守护进程 | √ | ||
| 管理 Docker 应用 | √ | ||
| 启动检查(避免泄漏) | √ | √ | |
| 会话登录 | |||
| 管理标准输出/错误输出 | √ | √ | |
| 健康检查 | √ | ||
| 丰富的控制选项 | √ | ||
| 认证 | √ | √ | |
| 多租户 | √ | √ |
适用于需要跨主机调度应用、管理微服务及混合部署容器与原生应用的场景,相比 Kubernetes 部署更简单,支持非容器应用。
| 功能 | App Mesh | Kubernetes |
|---|---|---|
| 部署简易性 | √ | |
| 功能丰富度 | √ | |
| 非容器应用支持 | √ | |
| 服务暴露 | √ | √ |
| 调度器 | √ | √ |
| 定义文件格式 | JSON | YAML |
| 图形界面 | √ | √ |
| 虚拟网络 | √ | |
| 监控工具 | √ | √ |
安装文档 介绍了如何通过 docker-compose 或原生方式安装 App Mesh 并搭建集群。
!组件架构图
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务