通用微服务架构图
2021-04-22 10:50:27 161 举报
通用微服务架构图,基于dubbo的弹性容器云微服务架构,采用K8S、docker、jenkins进行运维部署等。整整画了一天的,希望对那些与我们架构相似的有帮助
作者其他创作
大纲/内容
日志
6、K8S API
短信
Docker images
配置
弹性容器云发布系统
Jenkins构建过程
ETCD
3、Jenkinsfile4、Dockerfile
内网
业务逻辑服务层
PD
ElasticSearch
RocketMQ集群
网关服务Soul
邮件
Prometheus
数据访问层
Client
KV
监控报警系统
运维
Kafka
Redis集群
TIDB数据库
GITLAB
文件图片视频音频
8、Pipeline(Jenkinsfile)
10、发布
Kubernetes
浏览器
库存访问
监控
存储层
通用服务
7、创建Jenkins Slave
Kibana
Grafana
业务服务层
服务注册发现
开发
交易服务
日志系统
在Kubernetes中使用CI/CD,一般的步骤为:(1)在GitLab创建对应的项目。(2)开发者将代码提交到GitLab。(3)Jenkins创建对应的任务(Job),集成该项目的Git地址和Kubernetes集群。(4)如有配置钩子,推送(Push)代码会自动触发Jenkins构建,如没有配置钩子,需要手动构建。(5)Jenkins控制Kubernetes(使用的是Kubernetes插件)创建Jenkins Slave。(6)Jenkins Slave根据流水线(Pipeline)定义的步骤执行构建。(7)通过Dockerfile生成镜像。(8)将镜像提送(Push)到私有Harbor。(9)Jenkins再次控制Kubernetes进行最新的镜像部署。上面流水线步骤一般写在Jenkinsfile中,Jenkins会自动读取该文件,同时Jenkinsfile和Dockerfile可一并和代码放置于GitLab中,或者单独配置。
链路追踪
Tidb
分布式锁
业务数据
CDN
pod
12、pullimages
Nginx集群
订单服务
动态配置
消息队列
交易访问
DNS解析
APP
用户服务
测试环境容器云
服务注册
服务注册/发现
2、job5、构建
Logstash
对象存储(FastDFS)
Alertmanager
1、提交代码
网关层
Docker build(dockerfile)
商品服务
8、2生成docker images
H5
外网
Tracker
ES二级索引
harbor镜像仓库
WEB后台
Seata
防火墙
DNS配置域名下挂若干个Nginx,每个Nginx下挂若干个网关服务实例
checkout code
Storage
Dubbo RPC
限流、熔断、降级
master
基于阿里dubbo服务框架的架构设计
微信
CI/CD
监控警告
网关接入服务Gateway Access Service
注册中心(ZooKeeper集群)
商品访问
zabbix
用户访问
skywarking
分布式事务
服务发现
数据库MYSQL与TIDB二选一,前期主从mysql,后期mysql分库,或者直接使用TIDB,不需要分库
9、push images
slave
Apollo实例
zk实例
鉴权认证
微服务通用架构图
Unit Testing
Jenkins Master
生产环境容器云
pod/Jenkins Slave
运维监控
监控中心
其它访问
任务调度XXL-JOB
缓存
filebeat日志收集
11、K8S API
Mysql分库集群
配置中心(Apollo集群)
库存服务
8、1
订单访问
负载均衡
0 条评论
下一页