当前位置:数据网络行业动态 → 正文

权衡应用程序容器的利弊

责任编辑:editor005 作者:Brien Posey |来源:企业网D1Net  2015-10-14 14:30:41 本文摘自:TechTarget中国

使用容器有一些潜在的优势,但不要直接忽略它可能带来的挑战。

进入虚拟化时代的一大趋势就是实现容器化。容器化使应用程序虚拟化成为可能,而非操作系统虚拟化(通过虚拟服务器完成)。

想要用容器负载应用程序的人有许多不同的选择。Docker可能是最知名的容器平台,但其他供应商如Citrix也支持容器。甚至微软在未来Windows Server版本中也将使用容器。

容器变得如此受欢迎是因为它可以提供虚拟服务器无法匹敌的好处。然而,和其他任何技术一样,应用程序容器也有优点和缺点。而使用容器有明确的优势,也有一些必须考虑的消极因素。显然对于这些问题,不同的供应商有不同的解决方案。但大多数容器平台仍有利有弊。

想要了解应用程序容器的优点,你必须全面理解容器是如何工作的。容器为应用程序提供隔离边界。如果一个服务器或虚拟机运行多个应用程序,这些应用程序共享操作系统资源。如果有人破解应用,黑客可能会控制同一服务器上运行的其他应用程序,甚至可能危及服务器操作系统。

这不仅仅是管理者所关心的安全漏洞。如果一个应用程序消耗过量的CPU资源,或者应用程序有内存泄漏,那么应用程序使用的资源可能会影响其他服务器上运行的应用程序。

如今管理员避免此类问题的方法一般是通过使用服务器虚拟化。通过托管每个在自己的虚拟机上运行的应用程序,管理员可以创建一个应用程序之间的隔离边界。这种方法很受用,但也存在缺点。每个应用程序运行在一个单独的虚拟机上可能导致虚拟机蔓延。此外,因为每个虚拟机都有自己的操作系统,虚拟机蔓延可能导致许可成本变高(杀毒应用程序、操作系统备份应用程序等),硬件资源利用率也会降低。

容器在应用程序级别创建隔离边界。这意味着多个应用程序可以存在于单一的操作系统,这些应用程序无法互相干扰。

应用程序容器提供的好处是相对直观的。因为你不再需要为每个应用程序创建一个单独的虚拟机,虚拟机管理也越来越少。此外,还可以更有效地利用硬件资源,因为每个应用程序无需在单独的操作系统上运行,硬件资源能够更效率地利用也可会成为一种性能。

这取决于你使用哪一种容器化解决方案,便携式容器也可能使应用程序。这种可移植性意味着可以单独处理虚拟机和应用的生命周期管理,从而使操作更简便。

当然,应用程序容器也有其缺点。最常提到的缺点似乎是很难建立和管理容器。由于Docker是一个基于Linux的解决方案,Windows管理员在设置Docker容器时感到挫败和困惑的情况屡见不鲜。即使对于那些具有Linux经验的人来说,Docker也有一个重要的过渡。

尽管存在过渡时期,使用容器的最大缺点可能是存在安全隐患。容器用来隔离应用程序,但请记住,运行在服务器上的容器化应用程序共享一个操作系统。因此,操作系统(或容器化引擎)可能成为一个漏洞。会出现哪些问题呢?如果黑客针对服务器的操作系统发起拒绝服务攻击,可能导致多个应用程序停机。同样的,如果由于内核级失败导致操作系统崩溃会怎样呢?

一些旧的应用程序也可能存在问题。之前开发人员构建的应用程序都带有这样一种假设——应用程序具有访问操作系统的root权限。如果将这样一个应用程序容器化,它可能无法工作,或者它可能会将服务器的操作系统置于风险之中。实际结果在很大程度上依赖于所使用的产品。一些容器化产品可以处理这样的应用程序,但其他人不能不考虑安全问题。

如你所知,应用程序容器有优点和缺点。随着时间的推移,容器可能会变得更安全、更易于使用,就像服务器虚拟化也越来越棒。

关键字:应用程序共享操作系统

本文摘自:TechTarget中国

x 权衡应用程序容器的利弊 扫一扫
分享本文到朋友圈
当前位置:数据网络行业动态 → 正文

权衡应用程序容器的利弊

责任编辑:editor005 作者:Brien Posey |来源:企业网D1Net  2015-10-14 14:30:41 本文摘自:TechTarget中国

使用容器有一些潜在的优势,但不要直接忽略它可能带来的挑战。

进入虚拟化时代的一大趋势就是实现容器化。容器化使应用程序虚拟化成为可能,而非操作系统虚拟化(通过虚拟服务器完成)。

想要用容器负载应用程序的人有许多不同的选择。Docker可能是最知名的容器平台,但其他供应商如Citrix也支持容器。甚至微软在未来Windows Server版本中也将使用容器。

容器变得如此受欢迎是因为它可以提供虚拟服务器无法匹敌的好处。然而,和其他任何技术一样,应用程序容器也有优点和缺点。而使用容器有明确的优势,也有一些必须考虑的消极因素。显然对于这些问题,不同的供应商有不同的解决方案。但大多数容器平台仍有利有弊。

想要了解应用程序容器的优点,你必须全面理解容器是如何工作的。容器为应用程序提供隔离边界。如果一个服务器或虚拟机运行多个应用程序,这些应用程序共享操作系统资源。如果有人破解应用,黑客可能会控制同一服务器上运行的其他应用程序,甚至可能危及服务器操作系统。

这不仅仅是管理者所关心的安全漏洞。如果一个应用程序消耗过量的CPU资源,或者应用程序有内存泄漏,那么应用程序使用的资源可能会影响其他服务器上运行的应用程序。

如今管理员避免此类问题的方法一般是通过使用服务器虚拟化。通过托管每个在自己的虚拟机上运行的应用程序,管理员可以创建一个应用程序之间的隔离边界。这种方法很受用,但也存在缺点。每个应用程序运行在一个单独的虚拟机上可能导致虚拟机蔓延。此外,因为每个虚拟机都有自己的操作系统,虚拟机蔓延可能导致许可成本变高(杀毒应用程序、操作系统备份应用程序等),硬件资源利用率也会降低。

容器在应用程序级别创建隔离边界。这意味着多个应用程序可以存在于单一的操作系统,这些应用程序无法互相干扰。

应用程序容器提供的好处是相对直观的。因为你不再需要为每个应用程序创建一个单独的虚拟机,虚拟机管理也越来越少。此外,还可以更有效地利用硬件资源,因为每个应用程序无需在单独的操作系统上运行,硬件资源能够更效率地利用也可会成为一种性能。

这取决于你使用哪一种容器化解决方案,便携式容器也可能使应用程序。这种可移植性意味着可以单独处理虚拟机和应用的生命周期管理,从而使操作更简便。

当然,应用程序容器也有其缺点。最常提到的缺点似乎是很难建立和管理容器。由于Docker是一个基于Linux的解决方案,Windows管理员在设置Docker容器时感到挫败和困惑的情况屡见不鲜。即使对于那些具有Linux经验的人来说,Docker也有一个重要的过渡。

尽管存在过渡时期,使用容器的最大缺点可能是存在安全隐患。容器用来隔离应用程序,但请记住,运行在服务器上的容器化应用程序共享一个操作系统。因此,操作系统(或容器化引擎)可能成为一个漏洞。会出现哪些问题呢?如果黑客针对服务器的操作系统发起拒绝服务攻击,可能导致多个应用程序停机。同样的,如果由于内核级失败导致操作系统崩溃会怎样呢?

一些旧的应用程序也可能存在问题。之前开发人员构建的应用程序都带有这样一种假设——应用程序具有访问操作系统的root权限。如果将这样一个应用程序容器化,它可能无法工作,或者它可能会将服务器的操作系统置于风险之中。实际结果在很大程度上依赖于所使用的产品。一些容器化产品可以处理这样的应用程序,但其他人不能不考虑安全问题。

如你所知,应用程序容器有优点和缺点。随着时间的推移,容器可能会变得更安全、更易于使用,就像服务器虚拟化也越来越棒。

关键字:应用程序共享操作系统

本文摘自:TechTarget中国

电子周刊
回到顶部

关于我们联系我们版权声明隐私条款广告服务友情链接投稿中心招贤纳士

企业网版权所有 ©2010-2024 京ICP备09108050号-6 京公网安备 11010502049343号

^