一、什么是Tanzu
- 斯瓦希里语中,“tanzu”是指一棵正在生长的树枝
- 日语里,“tanzu”是指由模块组成的老式橱柜
- 对于VMware,Tanzu代表着不断进化的解决方案,用以帮助用户构建、运行和管理现代应用程序
简单来说
Tanzu不是一个产品,它是以 Kubernetes 为平台,包含应用的构建、运行和管理,集合了多款 VMware 产品的解决方案。
下面具体认识Tanzu产品线背后的来龙去脉
- Pivotal
早在2016年3月的时候,市场研究公司Technavio,就在其研究报告中公布了2019年之前全球前5家PaaS市场顶级供应商的名单,其中,只有Pivotal一家完全专注于提供企业级PaaS平台和解决方案,而这是因为Pivotal的出身:Pivotal由EMC、VMware、GE在2013年4月投资成立,后来Dell收购EMC亦成为Pivotal股东。
抛开一系列的眼花缭乱的商业并购,只要知道Pivotal公司出身高贵即可,来自几个都不太差钱的世界 500 强公司联合组建而成,Pivotal 公司的产品非常的高大上,就连我们平时使用的 12306 都使用了他们公司的产品。
公司的开源产品有:
- Spring 以及 Spring 衍生产品
- Web 服务器 Tomcat
- 缓存中间件 Redis
- 消息中间件 RabbitMQ
- 平台即服务的 Cloud Foundry
- Greenplum 数据引擎
- 还有GemFire(12306 系统解决方案组件之一)
- Heptio
与K8S同样渊源久远,非富即贵,位于西雅图的这家Kubernetes初创企业,由Joe Beda和Craig McLuckie共同创办,2014年,他们在谷歌共同开发了Kubernetes(此后已开源),被认为是Kubernetes 核心创始人。诸多产品最为特色的Velero是西班牙语,意思是帆船,非常符合 Kubernetes 社区的命名风格。
Velero的开发公司 Heptio,之前已被 VMware 收购,其创始人2014就职于Google,当时被认为是 Kubernetes 核心成员。Velero是一种云原生的Kubernetes优化方法,支持标准的K8S集群,既可以是私有云平台也可以是公有云。
除了灾备之外它还能做资源移转,支持把容器应用从一个集群迁移到另一个集群。Velero是一个云原生的灾难恢复和迁移工具,它本身也是开源的, 采用Go语言编写,可以安全的备份、恢复和迁移Kubernetes集群资源和持久卷。
- VMWARE
就不赘述。
- Bitnami
Bitnami是美国一家应用程序打包解决方案提供商,主要为用户提供经过验证的应用程序包,使开发人员能够构建云中的各种格式的服务,包括虚拟机、容器和Kubernetes helm图表。
- Wavefront
Wavefront是VMware于2017年收购的技术,被整合成为VMware云服务之一,命名为Wavefront by VMware。Wavefront以SaaS形式提供监控和分析功能,它就是为了监控云端服务而设计的,当然它也可以监控私有云中的传统系统和应用;Wavefront从各个云服务收集详尽的性能数据和日志,供用户在此基础上分析应用的性能瓶颈所在、快速排除应用故障。
场景
1、针对构建环节
VMware提供了bitnami和Pivotal的软件产品组合,为开发者提供应用开发各种所需云原生软件。
2、针对运行环节
VMware提供了PKS和Project Pacific,作为云原生的运行平台。
3、针对管理环节
VMware推出了Tanzu Mission Control,作为单点控制和管理多种Kubernetes集群的控制平台。
Tanzu诞生代表着VMware对于Kubernetes的重视程度,它的核心理念是充分利用开源软件VMware现已成为 Kubernetes开源项目的前三大贡献者。
二、 为何要用Tanzu
请跟随小编重新认识收购后的VMWARE
1、“K8S排名第二的主要贡献者”
2、“在vSphere和vSAN中集成Cloud Native Storage”
3、“Vsphere with Tanzu结合VMWARE NSX提供企业级SDN”
4、南北向:一体化的现代化应用交付方案 NSX ALB/Avi
5、Tanzu视角看工厂制造(生产流水线)VS产品开发(代码流水线)
传统开发:单体应用,瀑布式开发,封闭环境
敏态开发:微服务+云原生+自动化+DevOps实践
正常容器化部署流水线大概是这样子:
采用Tanzu Application Platform带来的体验和效率是这样子
Inner Loop内环:
- 内部循环描述了开发人员迭代代码的开发周期。
- 内部循环活动包括在提交之前编码、测试和调试。
- 在云本地或Kubernetes平台上,内部循环的开发人员经常构建容器映像,并将他们的应用程序连接到所有必要的服务和api,将它们部署到开发环境中。
Outer Loop外环:
- 外环描述运营商如何将应用部署到生产中,并随时间推移对其进行维护。
- 在本地云平台上,外部循环活动包括构建容器映像、添加容器安全性、配置持续集成和持续交付(CI/CD)管道。
- 在基于Kubernetes的开发环境中,外环活动是具有挑战性的,因为应用程序交付平台是由各种第三方和开源组件构建的,带有许多配置选项。
三、Tanzu有哪些安全突破
基于身份认证和用户管理的突破
现在企业大多数都是有用户管理、身份认证系统的,Kubernetes 并没有提供用户管理和身份认证功能,除Service Account外,所有的用户信息都依赖外部的用户管理系统来存储。
按照Kubernetes设计哲学,Kubernetes只是专注于做应用编排,存储、网络等功能则只提供接口集成。用户管理和身份认证功能也是如此,只提供接口集成,由第三方解决方案实现,实现与 Kubernetes 集群解耦。
TKGm作为VMware企业发行版本Kubernetes,同样遵守此哲学
TKGm 的中身份认证、用户管理通过两个包提供:Pinniped 和 Dex
Pinniped提供身份验证服务,该服务使用Dex连接到身份提供者(例如Active Directory),在TKGm管理集群部署期间启用和配置 Identity Manager,TKGm 就会自动部署这些组件。
TKGm通过Pinniped和Dex引入了OIDC 和LDAP用户管理和身份认证管理。
Pinniped允许您将外部OpenID Connect(OIDC)或LDAP身份提供程序 (IDP)集成到Tanzu Kubernetes 集群中,这反过来又允许您控制对这些集群的访问。
Pinniped 使用Dex作为代理入口(portal)来连接到上游 LDAP 服务器,例如 AD LDAP 。