管理员必看:如何迎接Windows Server 2016中的容器技术?

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介:

Windows Server 2016不久之后就要正式发布了。Windows管理员如何为未来的Windows平台上的容器技术做好准备呢?我们在采访微软Hyper-V MVP Thomas Maurer的过程中,Maurer给出了一些很好的建议。

最近几年围绕着容器总有一些争议和议论。能否解释一下容器为何物?容器对于Windows Server为何如此重要?

Maurer:就容器来说,有几个词很关键,能让我理解容器的意义:操作系统级的虚拟化。如果你这样考虑当今我们所应用的技术,包括Hyper-V、VMware或其他管理软件,当我们安装操作系统时,我们会创建虚拟的硬件。而对容器来说,我们创建的不是虚拟硬件,我们创建的基本是上是虚拟的操作系统容器。因此,我们在操作系统中虚拟化应用程序的操作系统或其他任务。因此本质上还是有挺大的区别。

在独立性的问题上,我也尝试着跟大家解释容器基本上是介于处理流程和虚拟机之间的东西。它们并没有虚拟机那般独立,却有着比虚拟机更少的开销。然而它们还是需要运行在自己的环境之中。因此,一个处理流程连接到另一个,它们都有用这一独立的容器,所以我说容器是介于处理流程和虚拟机之间的东西。在某种情况下容器非常“酷”。

你可以想象一下,它们是很轻量的。在同样体量的硬件上,与虚拟机相比,你可以部署更多的容器,因为它们不需要操作系统的开销,并且启动也非常迅速,启动一个新的容器只需要几秒,甚至毫秒的时间。

而对于虚拟机来说,操作系统需要启动。而使用容器,操作系统已经在运行了,因此无需启动。你只需要创建一个应用程序可以运行的新环境,然后再花上几毫秒启动容器就可以了。

有些企业的客户还是回来问我说,部署应用程序很难。那好,现在用容器了,我需要部署点什么呢?好像人们不太容易弄清需要做什么,目前微软还没有给出太多的说法,容器究竟是为谁设计的。它们只是提供了一种工具,具有新的功能和特点,微软的技术人员也很好奇大家会用容器来做些什么。

当然,还是有些使用案例的。例如,办公室中使用容器来测试应用程序。用容器来测试5个不同版本的应用程序,你只需要花费几秒钟时间来部署程序5次,而不需要像以前那样部署5台虚拟机分别测试5个不同的版本。特别适合开发/测试场景或DevOps场景时使用。如果你像部署网页服务器那样部署程序,你必须在短时间内运转多个网页服务器,容器可以帮助解决这一问题,看他们的操作过程会很有趣。

你是否见过像Exchange这样的大型应用程序如何应用容器进行重制的过程吗?

Maurer:不了解。Exchange的团队很可能认为容器很酷,并打算用它来做些事情。然而就当前来说,容器还是更多的考虑用在无状态使用中,或是无状态应用以及其他类似的东西。要合理应用它,你真的要有个需要此类环境的程序来部署才行。你可以在容器内部调用程序,然后把数据存在容器之外的文件或数据库或其他地方,这都是可行的。然而容器却不是万能的。

容器适用于某些情况,虚拟机也适用于另一些情况。我认为它们的应用前景并不冲突,反而应该协同工作。我们能够预见到大型应用程序能够应用容器技术。

微软已公布Windows容器和Hyper-V容器。Nano Server在其中的作用是?

Maurer:有两层意义。一是容器的运行时间,Nano Server是运行容器的引擎,既可以是Windows Server容器或是Hyper-V容器。不同之处在于Hyper-V容器有一些额外添加的独立层,在某些应用场景下安全系数更高,但同时运行速度会比Windows Server要慢一点。

二是关乎容器的镜像,也就是我们常说的模板。如果你要创建一个新的容器,通常都是基于容器的镜像来完成的。

通过Windows Server 2016版本,微软提供两种容器镜像。其一是Nano Server容器镜像,其二是Server Core镜像。通过它们,你可以从Nano Server或Server Core任选其一创建镜像,在镜像中可以安装任何你所需要的应用程序。

举个例子,你打算部署一台IAS(internet authentication service,互联网验证服务)网页服务器,你需要先安装IAS的角色。你需要停止运行容器在其中创建一个新的容器镜像,基本上是新建了一套模板。等到下次你调用一台网页服务器时,你只需要运行那个装有IAS的容器镜像,并进行多次部署就可以了。这台IAS容器已经与操作系统Nano Server或Server Core的镜像相连,我们需要做的仅仅调整这台IAS网页服务器的角色罢了。

你可以把不同内容堆起来并加上一些东西,再把它安装到库里,然后再部署或者再加点料。





====================================分割线================================


本文转自d1net(转载)

相关实践学习
通过workbench远程登录ECS,快速搭建Docker环境
本教程指导用户体验通过workbench远程登录ECS,完成搭建Docker环境的快速搭建,并使用Docker部署一个Nginx服务。
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
20天前
|
Kubernetes 调度 Docker
深入探讨容器编排技术:从Docker到Kubernetes
容器编排在现代IT中日益关键,从Docker到Kubernetes,助力应用的自动化部署和扩展。Docker提供容器技术,打包应用及环境为镜像,通过引擎、镜像、容器、网络和存储组件实现隔离运行。Kubernetes作为高级容器编排平台,管理Pod(多容器集合),其核心包括API服务器、控制器管理器、调度器和Kubelet。Kubernetes集群由Master和Worker节点构成,实现Pod的高效调度和运行。
|
21天前
|
运维 Kubernetes 监控
构建高效自动化运维系统:基于容器技术的策略与实践
【4月更文挑战第19天】随着云计算和微服务架构的兴起,传统的运维模式正逐渐向自动化、智能化转型。本文将探讨如何利用容器技术构建一个高效、可靠的自动化运维系统,涵盖系统设计原则、关键技术选型以及实践经验分享。通过引入容器技术,我们可以实现应用的快速部署、弹性伸缩和故障自愈,从而提高运维效率,降低系统维护成本。
|
13天前
|
Cloud Native Linux 开发者
【Docker】Docker:解析容器化技术的利器与在Linux中的关键作用
【Docker】Docker:解析容器化技术的利器与在Linux中的关键作用
|
1天前
|
开发框架 .NET 数据库
修改windows server 2008 时间和日期格式
修改windows server 2008 时间和日期格式
|
1天前
|
Kubernetes Java 调度
Java容器技术:Docker与Kubernetes
Java容器技术:Docker与Kubernetes
12 0
|
2天前
|
SQL Windows
保姆级:Windows Server 2012上安装.NET Framework 3.5
保姆级:Windows Server 2012上安装.NET Framework 3.5
|
3天前
|
Apache 项目管理 数据安全/隐私保护
Windows如何安装使用TortoiseSVN客户端并实现公网访问本地SVN Server
Windows如何安装使用TortoiseSVN客户端并实现公网访问本地SVN Server
9 0
|
4天前
|
安全 关系型数据库 虚拟化
WIndows Server 远程桌面服务—RDS
WIndows Server 远程桌面服务—RDS
|
4天前
|
开发框架 JavaScript 安全
WIndows Server 2016 部署 Web服务(简单篇)
WIndows Server 2016 部署 Web服务(简单篇)
|
4天前
|
安全 测试技术 网络安全
WIndows Server 2016 部署 PKI + 证书
WIndows Server 2016 部署 PKI + 证书