容器网络是一种新兴的应用沙盒机制,用于家庭桌面和网络规模的企业网络解决方案,其概念类似于虚拟机。与主机和所有其他容器隔离的容器内部是一个功能齐全的Linux环境,具有自己的用户、文件系统、进程和网络堆栈。容器内的所有应用程序只能访问或修改容器内可用的文件或资源。
可以同时运行多个容器,每个容器都有自己的安装和依赖项。这在应用程序的较新版本可能需要升级可能导致与服务器上运行的其他应用程序依赖项发生冲突的依赖项的情况下特别有用。与虚拟机不同,容器共享主机资源,而不是完全模拟计算机上的所有硬件,使容器比虚拟机更小更快,并减少开销。特别是在Web规模应用程序的上下文中,容器被设计为虚拟机的替代品,作为微服务架构的部署平台。
容器还具有可移植性的特点,比如Docker,一个容器引擎,允许开发者将一个容器和它的所有依赖打包在一起。然后可以使该容器包可供下载。下载后,容器可以立即在主机上运行。
容器网络如何工作?
容器网络是一种虚拟化形式,在概念上类似于虚拟机(VM),但有明显区别。容器方法是操作系统虚拟化的一种形式,而虚拟机是硬件虚拟化的一种形式。
在管理程序上运行的每个虚拟机都有自己的操作系统、应用程序和库,并且能够封装持久数据、安装新操作系统、使用与主机不同的文件系统或使用不同的内核版本。
相反,容器是映像的“运行实例”,是短暂的操作系统虚拟化,它会启动以执行某些任务,然后被删除和遗忘。由于容器的短暂性,与需要更大地址空间的虚拟机相比,系统用户运行的容器实例要多得多。
为了创建隔离,容器依赖于两个Linux内核特性:命名空间和cgroup。为了给容器自己的系统视图,将其与其他资源隔离开来,为每个资源创建一个命名空间,并与其余系统不共享。然后使用控制组(Cgroups)来监控和限制系统资源,如CPU、内存、磁盘I/O、网络等。
容器网络的好处
容器正在迅速被采用,取代虚拟机作为微服务平台。

在Web级应用程序部署中使用容器网络
容器被部署为企业环境中微服务架构的一部分,以帮助封装大型Web应用程序常见的单个任务。每个任务可能有自己的容器,面向外部的容器(如API和GUI)对公共互联网开放,其他容器将驻留在专用网络上。
容器网络的类型
目前使用的容器网络有五种类型;它们的特点围绕着IP-per-container与IP-per-pod模型以及网络地址转换(NAT)的要求与不需要转换。
本文来源:国外服务器--什么是容器网络(容器网络原理)
本文地址:https://www.idcbaba.com/guowai/5969.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 1919100645@qq.com 举报,一经查实,本站将立刻删除。




