K8S环境下的容器,是直接运行在物理机上,还是运行在隔离的虚机上比较好?

K8S环境下的容器,是直接运行在物理机上,还是运行在隔离的虚机上比较好。如果运行在物理机上,那么资源会最大程度的得到利用,但是会牺牲一定的隔离性及安全性,特别是在企业没有规范的CI/CD镜像交付流程时,不同租户的容器会相互影响。如果运行在虚拟机上,那么隔离性和安全性都会强...显示全部

K8S环境下的容器,是直接运行在物理机上,还是运行在隔离的虚机上比较好。
如果运行在物理机上,那么资源会最大程度的得到利用,但是会牺牲一定的隔离性及安全性,特别是在企业没有规范的CI/CD镜像交付流程时,不同租户的容器会相互影响。
如果运行在虚拟机上,那么隔离性和安全性都会强于前者,但是会增加管理虚机的成本,以及降低资源利用率。
这一块企业该如何去抉择考量呢

收起
参与22

查看其它 5 个回答gavin_zhang的回答

gavin_zhanggavin_zhang系统架构师某股份制银行

就像问题中提到的,两种方案各有优劣,具体方案需要结合企业的实际需求进行选择,选择时候可以参考:
性能:使用VM+容器方案,中间多了一层Hypervisor,性能大概损耗10%~20%。
成本:对于开源解决方案,没有额外的软件成本;如果是商用解决方案,VM比物理机方案多出宿主机的操作系统和Hypervisor管理软件都是成本。
可维护性:由于VM可以安装Agent进行管理,各种管理软件和配套运维工具齐备,可维护性比物理机高。另外一方面,VM方案由于部署负载,问题特别是网络和存储的性能问题定位比较难。
可靠性:需要从两个方面看,VM多了一层操作系统和Hypervisor,多了故障点,但是VM有可以提供故障迁移的能力,所以可靠性上,各有千秋。
其他:VM方案可以让容器和虚拟机应用共享同一个物理机集群,最大化资源使用率。
综上所述:
如果企业已经有了一个比较稳定的虚拟机平台,而且运维经验也有了的话,建议还是虚拟机部署。
如果容器平台独占物理集群,对性能要求比较高(特别是网络),建议物理集群。
如果成本敏感,而且又计划将所有应用和服务部署在容器上,建议物理集群。

银行 · 2020-03-12
浏览5338

回答者

gavin_zhang
系统架构师某股份制银行
擅长领域: 云计算容器容器云

gavin_zhang 最近回答过的问题

回答状态

  • 发布时间:2020-03-12
  • 关注会员:7 人
  • 回答浏览:5338
  • X社区推广