部署准备工作
Kubernetes介绍
shopTNT支持Kubernetes部署,在这里简单对Kubernetes做个介绍, 是Docker 官方的集群部署工具,他的架构示意图如下:
如上图所示每一个node表示一台物理机,可以做为k8s集群中的一个节点加入进来,我们可以随时将新的物理机加入到k8s集群。
每个node中可以运行我们的docker 容器实例,我可以实际情况按我们的预期来分派资源,在部署文档中会有详细的介绍。
在运维过程中,我们可以随时让为k8s对某个容器进行扩容,这一切都是自动的,只需要一条命令或点击一个按钮来完成
shopTNT运行时概览
上图是shopTNT电商系统分布式运行时的总览,
其中mysql和Redis是属于有状态的服务,不适合使用docker
这些个服务看起来很多、很复杂,实际上我们不用太担心,因为基础服务我们都已经制作好镜像,私有的服务也已经准备好了Dockerfile,基于k8s 我们只需要1-2个小时就可以让系统跑起来。
部署描述
一、请求由负载请求进来
负载可以是由kubernetes/nginx或阿里云等厂商提供的负载器
二、在最前端的是UI层
分为:
1、静态页(首页、商品页、帮助页),这些页面存储在redis中,直接由静态页服务输出给浏览器
2、UI:买家端PC、卖家端、管理端口
3、小程序、h5、APP的买家端
三、上述前端发生对各个服务的请求
基础服务由base-api提供
buyer、seller、admin分别请求后台对应的服务
四、基础设施
包括:Mysql、Redis、Rabbitmq、Elaticsearch
硬件规划
最低要求
下列服务器,默认均为4核8G配置
基础设施
内容 | 台数 | 说明 |
---|---|---|
Mysql | & | 建议使用云服务 |
Redis | & | 建议使用云服务 |
elasticsearch | 3主3从 | |
rabbimq | 3主3从 |
总计:2台 节点交叉部署
UI
内容 | 台数 | 说明 |
---|---|---|
buyer-wap + buyer-pc + 静态页 | 1 | 买家端 |
manager-admin + manager-seller | 1 | 管理端和卖家端 |
总计:2台
服务
内容 | 台数 | 说明 |
---|---|---|
base-api + buyer-api | 1 | |
seller-api + admin-api | 1 | |
consumer | 1 |
总计:3 台
K8sMaster node
内容 | 台数 | 说明 |
---|---|---|
K8s 管理节点 | 1 | 不建议其他服务部署在master节点上 |
共计:8台节点
微服务最低配置要求8台 4核8g服务器,具体部署需要根据您的实际情况进行扩展。
软件版本要求
项目 | 版本 |
---|---|
centos7.x | |
mysql | 5.6 |
redis | 5.0.4 |
elasticsearch | 6.x |
rabbimq | 3.x |
注意
- 以上标注需要提前准备的相关信息请客户以为文档方式提供。
- 如果部署完成后,因客户没有提前准备好相关账号信息,部分功能无法正常使用,我们不提供后续的配置服务,举例:
- ssl证书没有准备好,我们部署http站点,后续不提供更换https服务。
- 客户任何涉及到部署相关信息的变更,需要客户提供变更文档并且签字。