介绍
约 687 字大约 2 分钟
2025-04-16
本项目基于阿里云 ECS 与私有化集群,通过 VPN 实现公网与内网隔离互通,构建一套安全、灵活、可扩展的云原生应用环境。主要应用容器化部署于 Kubernetes集群,结合 Istio 实现服务网格治理,具备 CI/CD、金丝雀发布、分布式链路追踪、监控告警、持久化存储等完整能力。
项目架构概览
🛠️ 关键组件说明
阿里云 ECS
- 作为公网入口,返回部分静态资源请求,接入 VPN,转发访问流量至私有化集群。
VPN
- 建立 ECS 与私有集群的内网隧道,保证数据链路安全。
Kubernetes 集群
- 私有化集群,承载所有容器化应用,支持集群化部署、弹性扩展。
Istio 服务网格
- 实现 K8S 内部微服务的流量治理、灰度发布、链路追踪、熔断限流等。
- 配置 VirtualService、Gateway 实现统一流量入口与路由控制。
- 与 Prometheus、Grafana 联动,实现指标采集与可视化。
Harbor
- 私有镜像仓库,安全管理镜像存储与分发。
Jenkins
- 实现 CI/CD 流水线自动化部署,集成 Harbor 与 K8S。
Rancher
- K8S 集群管理平台,集中化管理多集群与命名空间。
Redis
- 提供缓存数据与分布式锁服务。
Prometheus + Grafana + Skywalking
- Prometheus 负责监控指标采集,Grafana 实现可视化展示,Skywalking链路追踪。
- 与 Istio 集成,实时监控服务流量与健康状况。
Longhorn
- K8S 内分布式存储解决方案,提供数据持久化与动态卷调度。
Mysql
- 业务数据库,数据持久化。
RabbitMQ
- 分布式消息队列。
ElasticSearch + Kibana + Logstash
- 数据搜索、日志收集、可视化分析。
📈 部署特点
- 📌 完全私有化部署:公网仅暴露 ECS,所有内部服务隔离。
- 📌 全集群部署:所有组件均以集群模式部署,保障高可用。
- 📌 服务网格化:接入 Istio,统一流量治理与安全控制。
- 📌 持续交付体系:Jenkins + Harbor + K8S,自动化发布。
- 📌 统一监控告警:Prometheus + Grafana + Skywalking + ELK,实时监控、链路分析、日志分析。
- 📌 持久化方案:Longhorn + MySQL,保障数据可靠性。
- 📌 多维度管理:Rancher 实现容器编排与资源调度可视化。
🖥️ 网络与访问流程
- 用户访问公网域名或 IP。
- 流量进入阿里云 ECS,通过 Nginx/Ingress 转发至私有集群。
- ECS 与私有集群 VPN 隧道打通,保障数据安全。
- K8S + Istio 路由流量至目标服务。
- 服务内部依赖统一通过 Istio 管理流量、链路追踪。
- 数据存储、消息队列、日志统一管理。