TAP 系列文章3 | Tanzu Application Platform 部署参考架构介绍

Tanzu Application Platform 安装参考架构

Tanzu Application Platform的使用角色

Tanzu Application Platform作为面向应用(Web应用,Micoservice应用等)的部署与管理平台,在设计之初就充分的考虑到了平台的不同使用角色对平台个性化需求,例如:功能配置,可用性部署等;这种因为角色而产生的平台个性化需求,决定了TAP的安装参考架构与安装部署配置(TAP Profiles)。

参考下图,TAP在设计之初,考虑到了使用平台的三类用户,分别是:
TAP 系列文章3 | Tanzu Application Platform 部署参考架构介绍_第1张图片

  • Dev开发工程师

作为TAP平台的主要受众群体,Dev利用TAP构建的应用部署平台,进行日常的K8S分布式应用开发,编译与构建,测试与集成测试;TAP为Dev群体提供了简单易用的应用开发与K8S云运行环境;

  • Ops工程师

作为部署与运维TAP平台的技术团队,需要满足Dev 使用TAP的日常运维需求之外;还需要特别考虑应用运行期间的资源分配与故障隔离、平台的高可靠架构、TAP平台的访问安全与策略管控等精益相关的架构、优化与配置。

  • Sec安全与合规工程师

对于一个高度自动化的应用部署平台,在规格化、标准化不同形态应用的K8S部署与发布后;应用的的安全授信与合规不得不在规模化、生产就绪的TAP使用的全生命周期进行考虑和配置、部署;


TAP面向角色的参考架构与部署配置 (Profiles)

面向开发团队的TAP Workspace Cluster安装与部署配置

15要素(15-factor)云原生应用最佳实践告诉我们,作为Dev工程师的日常开发环境,需要与Ops部署的应用部署环境进行能力配对(Paring);带来的好处是显而易见的:

  • 便于开发工程师的集成测试;特别是在微服务场景下,工程师的桌面算力,Data服务依赖,导致必须通过远程的Dev环境进行功能验证与集成测试;
  • 为应用最终能够一致的运行在Ops部署的应用运行生产环境提供了支撑与保证;
  • 开发工程师提前熟悉应用PaaS平台的基本功能,为后期故常排除、版本回退做了技术储配;

因此,一个多租户的TAP Dev部署环境就变得非常重要。同时,TAP Dev环境也需要做出适当的简配,不一定与真实的TAP Ops生产环境做到100%的匹配以减少Dev环境的部署、配置的复杂度,从而减少Dev环境对计算资源的需求与日常运维负担;

VMware 推荐的TAP Dev (Workspace Cluster)环境的部署参考架构如图:
TAP 系列文章3 | Tanzu Application Platform 部署参考架构介绍_第2张图片

TAP Dev Workspace Cluster 部署计算需求如下:

  • K8S 集群需要配置有LoadBalancer 作为TAP ingress controller;也可以使用开箱即用的VMware Tanzu Contour;
  • 需要配置有K8S default storage class;TAP部分组件需要云原生的volume持久化状态;
  • TAP的部署K8S集群worker node全部内存配置至少大于16GB;单个worker node的内存配置需要至少大于8GB;
  • Optional:配置有Logging Infra与Monitoring Infra,可以选择安装Tanzu Standard Ops Suite

面向生产的TAP Cluster安装与部署配置

作为TAP的生产环境,推荐的安装与部署参考架构,主要考虑环境故障隔离,功能责任分离,计算调优等因素;将TAP按照逻辑功能与角色,划分成 Build Cluster,Run Cluster与TAP UI 控制台 Cluster;参考下图:
TAP 系列文章3 | Tanzu Application Platform 部署参考架构介绍_第3张图片
TAP 系列文章3 | Tanzu Application Platform 部署参考架构介绍_第4张图片


- TAP Build Cluster

TAP Build Cluster是TAP应用构建计算集群, 作为TAP Supplychain的计算环境,将不同形态的应用利用标准化的Supplychain进行应用的CI构建,OCI镜像打包与推送,安全漏洞扫描与应用依赖物料清单metadata BOM持久化(应用依赖物料清单作为安全漏洞audit的资产,需要持久化保存),应用单实例启动参数配置,应用K8S运行时配置,运行精益配置生成,最后将输出的应用资产Assets(应用OCI image与运行时配置)推送到GitOps仓库以供后续Run Cluster进行部署,同时为Change Management做好了清单与审计BOM的准备;


- TAP Run Cluster

TAP Run Cluster准确的说也可以分成不同的环境,例如:QA、Stage、Production;应用程序根据发布的流程,在QA、Stage环境中进行验证并过渡到真正的Production生产环境中;Run Cluster 的部署assets(应用OCI image与运行时配置)来自于TAP Build Cluster,基于这个验证过的assets,Ops团队可以进一步根据生产环境的部署需求,对应用的部署进行生产环境调参与精益调优,例如:HA的多副本配置,注入应用依赖的持久化中间件,暴露监控endpoint并对接平台监控Infra等;


- TAP GUI Cluster

TAP GUI Cluster为Ops与Dev团队提供了多集群、集中式的应用管理控制台;团队成员可以利用TAP GUI查看运行在不同TAP Run Cluster中的应用运行状态;同时,TAP GUI还为Dev提供了应用API、DOC等控制台能力;详情参考TAP GUI相关文档;


TAP 安装与部署配置Profiles

TAP 系列文章3 | Tanzu Application Platform 部署参考架构介绍_第5张图片
TAP 系列文章3 | Tanzu Application Platform 部署参考架构介绍_第6张图片TAP 系列文章3 | Tanzu Application Platform 部署参考架构介绍_第7张图片


作者简介:

毕建华,VMware大中华区应用现代化部门高级解决方案架构师。多年来一直从事云原生相关领域工作,包括系统设计以及参与多种容器调度平台开发,部署,运维工作;包括,基于Mesos、DCOS平台,开发Dbaas框架;
参与Kubernetes开源项目KUDO的开发与推广;
CNCF认证CKA工程师;
VMware认证Spring Professional工程师
TAP 系列文章3 | Tanzu Application Platform 部署参考架构介绍_第8张图片

来源|公众号:VMwareTanzu云原生

你可能感兴趣的