1.什么是Paas
PaaS(Platform as a Service,平台即服务)是一种云计算服务模型,它为开发者提供了一个完整的开发和部署应用程序的环境。PaaS 平台通常包括运行时环境、开发工具、数据库服务、网络功能和其他基础设施服务,使得开发者可以专注于编写和部署应用程序,而无需关心底层基础设施的管理和维护。
PaaS 的主要特点
- 开发环境:PaaS 提供集成的开发环境和工具,使得开发者可以直接在平台上编写、测试和调试应用程序。
- 部署自动化:PaaS 平台通常支持自动化的部署流程,可以简化从开发到生产环境的部署过程。
- 弹性伸缩:PaaS 平台可以根据应用程序的需求自动扩展资源,以应对流量高峰或低谷。
- 运维管理:PaaS 提供监控、日志分析和性能优化等功能,帮助开发者更好地管理应用程序的运行状况。
- 安全性:PaaS 提供安全措施,包括身份验证、授权和数据加密,以保护应用程序和用户数据的安全。
- 多租户支持:PaaS 平台通常支持多租户架构,允许多个应用程序和用户共用相同的基础设施资源。
2.Easy-Paas简介
Easy-Pass致力于提供全面的云环境管理能力,包括但不限于平台网关、自动化部署、运维操作、服务治理和实时监控,以支持高效、灵活的云基础设施管理和应用程序交付。
3.功能模块
- Admin-Web (Web模块): 提供用户友好的Web界面,作为系统的门户入口。
- Admin (管理模块): 系统的控制中心。它整合了网关管理、日志检索、链路追踪、监控告警、节点管理、容器管理等功能,让管理员能够直观地监控和控制整个系统。
- Gateway (网关模块): 作为服务间通信的桥梁。该模块实现了服务路由策略、动态负载均衡、访问控制、限流以及熔断机制。利用Redis进行实时的QPS/QPD统计,同时采用etcd进行服务发现和配置监听,确保高可用性和灵活性。
- Agent (节点代理): 轻量级代理,部署在各个节点上。负责收集该节点上的日志数据,并将其推送到中心系统,为监控分析和故障排查提供实时数据支持。
- Ops (运维模块): 通过对接Docker API,提供强大的容器管理能力。允许管理员进行容器的部署、监控、日志查看及资源调配,极大简化了云环境下的运维工作。
- Deploy (部署模块): 设计用于实现基于容器的一键部署,简化新服务或更新的部署流程,确保快速迭代和高可用部署策略。
- Common (通用模块): 包含所有模块共用的库和工具函数,提升代码复用性和维护性。
4.架构图
5.技术栈
go 1.22.3 (gin gorm viper grpc)
vue 2.6.14
element-ui 2.15.14
mysql8
redis
etcd (nacos,consul)
elasticsearch
kibana
kafka
jaeger
prometheus + grafana
sony/gobreaker (hystrix)
6.部署方式
- docker-compose
- k8s: kubectl helm
- 自研ops
7.使用
地址:http://{IP:PORT}/web
账密:admin/admin
8.代码地址
https://gitee.com/os-lee/easy-paas
开源不易,请一键三连和star
标签:Paas,服务,模块,PaaS,部署,平台,应用程序,Easy From: https://blog.csdn.net/qq_22321199/article/details/140859172