什么是容器linux?您应该使用它吗?

集装箱越来越受欢迎。Container Linux,以前称为CoreOS,是一种为简单的容器化部署而设计的Linux操作系统。这个概述和容器Linux的实际操作将告诉您更多信息。...

Linux操作系统有多种风格。虽然像Ubuntu这样的Linux操作系统相当通用,但还有一些操作系统则瞄准了一个利基市场。有一个面向安全的Kali Linux。轻量级发行版,如Xubuntu,甚至Hannah Montana Linux(!)。对于桌面使用,一个普通的Linux操作系统运行良好。但是,对于运行服务器之类的特殊任务,最好找到一个定制的版本。

linux-container

集装箱越来越受欢迎。Container Linux,以前称为CoreOS,是一种为简单的容器化部署而设计的Linux操作系统。它是最新的利基Linux操作系统之一。请查看这个概述和容器Linux的实际操作。

容器linux实践:背景知识

在深入研究容器Linux之前,让我们先简要概述一下服务器体系结构。容器Linux是为集群部署而设计的。集群部署听起来相当复杂,但相当简单。从本质上讲,计算机集群是由多个协同工作的服务器组成的。因此,它们作为一个单元或系统而不是多个。此外,群集中的计算机具有执行相同功能的节点或服务器。因此,节点是一台机器,而集群是一组协同工作的服务器。

大多数常见的容器Linux部署都在集群环境中。以前称为CoreOS的发行版甚至包含了从一台机器上启动集群的方法。然而,容器Linux的定义特性是它对容器的依赖。

与传统的桌面操作系统不同,所有应用程序都在容器中运行。虽然虚拟机(VM)和容器都使用虚拟化方法,但容器是不同的。与VMs不同,容器使用与主机相同的操作系统内核。由于容器化应用程序和主机使用相同的内核,因此容器部署可以从提高效率中获益。在虚拟机配置中,每个虚拟机运行一个应用程序和一个来宾操作系统。它运行在主机操作系统和硬件之上。

而容器化部署则在虚拟化软件之上的自己的容器中运行应用程序。Docker仍然是最流行的容器软件,尽管chroot、LXC和LinuxVServer是Docker的替代品。

容器linux实践:为什么要使用容器?

容器是一种虚拟化方法。为什么选择集装箱化环境?通常情况下,容器提供了改进的性能。通过避免使用单独的操作系统,而是使用共享内核,可以最大限度地提高CPU、存储和内存效率。

因为不需要像在VM配置中那样运行多个操作系统实例,所以可以运行更多容器。性能增强源于对单个操作系统的需求。类似地,您可以比在虚拟机环境中更快地创建容器。因此,容器更适合保持敏捷性,并允许持续交付和持续集成。

敏捷开发集中于迭代和考虑不可预测性。您可以阅读敏捷宣言以进一步了解敏捷哲学。然而,尽管容器有很多优点,但它并不是一种完美的虚拟化方法。由于容器共享主机操作系统内核,因此存在安全风险。任何影响容器访问操作系统的漏洞或漏洞。但是,在虚拟机中的操作系统上运行容器化应用程序是一种解决方法。这可确保主机操作系统与单一容器主机操作系统隔离。

集装箱化还要求集装箱使用相同的操作系统。对于虚拟机,每个应用程序都有自己的操作系统。因此,不能在容器化Linux环境中运行为Windows Server设计的应用程序,反之亦然。

什么是容器linux(container linux)?

CoreOS Core Update

CoreOS,或者现在所称的容器Linux,是一个开源Linux操作系统。它是一个轻量级发行版,旨在实现集群部署。更具体地说,CoreOS专注于简单、可靠、可扩展的部署。你找不到包管理器。相反,容器Linux要求所有应用程序都在容器内运行。容器Linux使用Chrome操作系统作为基础。因此,容器Linux仍然相当轻量级。为了进行测试,我在一台老化的HP Envy m6-1205dx AMD A10笔记本电脑上的虚拟机上运行了Linux操作系统(以前称为CoreOS)。系统资源消耗保持较低水平。

因为Container Linux避开了几个传统的桌面Linux操作系统特性,所以它保持了发行版的轻量级。与桌面操作系统不同,您找不到包管理器。相反,所有应用程序都作为Docker容器运行。这有利于可移植性和服务隔离。如果你想要一个桌面环境,那你就走运了。容器Linux缺乏图形用户界面。相反,一切都是基于命令行的。CoreUpdate仪表板确实提供了有关计算机运行状况、正在运行的服务和集群运行状况的信息。但它只能作为高级托管Linux订阅中的一个组件提供。

容器linux体系结构

容器Linux是轻量级的,专为容器化和集群化而设计。由于没有桌面环境,配置功能与CentOS或Ubuntu等Linux操作系统不同。在初始引导时,容器Linux加载一个云配置文件。你需要在云配置中输入信息。这可能有点棘手,特别是对于那些不熟悉云配置的人。但它是一个基本文件,使容器Linux能够加载基本服务、更改参数和管理集群。

此外,还有

etcd

fleet

守护进程仍然是容器Linux不可或缺的一部分。默认情况下,这两个服务都在启动时启动。此外,在启动时,云配置文件让主机知道如何加入现有集群。这个

etcd

守护进程为集群中的主机分发和存储数据。它对于维护配置和服务发现至关重要。这个

fleet

守护进程类似于分布式初始化。此守护程序链接到

systemd

为集群中的主机初始化,并负责服务调度等任务。

一个系统中的每个系统

fleet

群集只运行一个

fleetd

守护进程。这个守护进程承担两个主要职责,即代理和引擎。作为引擎,守护进程执行调度决策。而代理端执行单元。在舰队群里,

etcd

是唯一的数据存储。诸如集群存在、单元状态和单元文件之类的信息都存储在

etcd

守护进程。此外,它还是舰队代理和引擎通信的媒介。

容器linux的实践:谁应该使用它?

containerlinux是免费下载的、轻量级的,而且在虚拟机中安装起来相当简单。任何需要快速、可扩展、容器化部署的人都应该选择容器Linux。大多数系统管理员和数据库管理员将从容器Linux中获益最大。由于Container Linux缺乏桌面环境,因此它最适合集群管理和服务器设置。如果您正在寻找Linux服务器操作系统,ContainerLinux是12个最好的Linux服务器发行版之一。

Air Pair的特点是对CoreOS激励机制进行了出色的总结。本文提到了高可用性、生产环境维护、软件版本控制以及etcd作为使用容器Linux的主要工具。值得注意的是,还有一个非常专注的开源社区。容器Linux是为经验丰富的Linux用户量身定做的。虽然帮助文档很全面,但它确实假定对Linux的熟悉程度适中。新手和初学者在初始安装时可能会遇到一些问题。

更具体地说,云配置可能是一个挑战。在一段CoreOS安装视频的评论部分,YouTube用户setyosonugroho说:“不错的教程!当学习CoreOS中的云配置文件配置时,会感到非常困惑。“虽然配置不是非常困难,但是Container Linux假设对Linux特性有很强的掌握,比如VIM编辑器。

使用容器linux的实践:如何安装

安装容器Linux有很多方法。根据CoreOS网站,官方平台包括amazonec2、DigitalOcean、microsoftazure、bare metal和OpenStack。除了oraclelinux、CentOS和Suse,CoreOS是为数不多的与Azure兼容的Linux操作系统之一。得益于一个充满活力的社区,诸如Packet、Rackspace、Brightbox、VirtualBox和VMware等平台也得到了支持。我发现最简单的方法是使用ISO文件在VirtualBox上安装Container Linux。下面是如何使用VirtualBox的快速指南。

配置virtualbox

打开VirtualBox,系统会提示您输入虚拟机名称、操作系统类型和版本。我把我的名字叫做CoreOS。选择Linux作为“类型”。作为版本,请使用Linux 2.6/3.x/4/x(64位)。单击“下一步”。

CoreOS Start

现在需要分配RAM。CoreOS建议内存至少为1024mb。

CoreOS RAM

选择RAM后,需要添加虚拟硬盘。使用“立即创建虚拟硬盘”选项。

Create VHD CoreOS

在下一个屏幕上,将提示您输入硬盘文件类型。选择VDI或VirtualBox磁盘映像。

CoreOS VDI

之后,配置存储空间。我建议使用动态分配的硬盘文件。

CoreOS Dynamic

然后选择文件位置和大小。我保留了默认的CoreOS作为名称,并选择了8gb的文件数据大小。

CoreOS File Size Allocation

正确配置CoreOS VirtualBox虚拟机后,继续并单击绿色的开始按钮。

CoreOS Start

单击“开始”后,需要选择一个启动盘。导航到您获得CoreOS ISO的文件夹并继续。

配置容器linux

在启动CoreOS ISO之后,容器Linux开始加载。您最终会看到一行给出了您的CoreOS版本和一个命令行:

core@localhost

键入:

sudo openssl passwd -1 > cloud-config-file

CoreOS Passwd Config

命令行显示一个警告,如果无法打开配置文件。输入所需密码并继续。下一步输入:

cat cloud-config-file

CoreOS Cat Cloud Config

这将返回一个长字符串并创建一个新的云配置文件。现在在可视化编辑器中打开云配置:

vi cloud-config-file

CoreOS VI

这将加载一个可以编辑的云配置文件。CoreOS包含一个高级云配置示例文件:

CoreOS Cloud Config Example

我的看起来像:

#cloud-configusers: moepasswd: [SSL password]groups:- sudo- docker

CoreOS Cloud Config Ex

您可以通过输入以下内容来检查云配置文件:

cat cloud-config-file

CoreOS Check Cloud Config

这将返回您的配置文件。如果一切正常,请继续安装CoreOS:

sudo coreos-install -d /dev/sda -C stable -c cloud-config-file

CoreOS Install Final

您将看到一条消息,说明正在下载、编写和验证CoreOS。一旦完成,您将看到一条消息,上面写着“成功!CoreOS[版本]安装在/dev/sda上。”

CoreOS Success

关闭CoreOS虚拟机,然后重新启动。启动备份时,请确保卸载CoreOS ISO,否则live CD将再次运行。

CoreOS将加载,您将在命令行中看到一个登录提示:

localhost login:

CoreOS Final Login

输入用户名和密码。这将加载一条消息“Container Linux by CoreOS[version]”和一个新的命令行。

Final Login CoreOS

使用容器linux的实践:下一步

现在已经正确安装了Container Linux by CoreOS,您可以开始设置容器和集群了。CoreOS文档提供了一个优秀的快速入门指南。这里有关于使用etcd进行服务发现的信息,也有关于Docker容器管理的部分。我做了一些快速测试,比如“helloworld”Docker拉。另外,我安装了一个Plex Docker映像,因为我是一个大媒体服务器爱好者。最后,我建立了集群管理的舰队。

首先要配置容器Linux的主要组件:

  • etcd公司
  • 码头工人
  • 舰队

通过配置这三个主要基础,您就可以进行服务发现、集群管理和设置容器。然后你就可以开始在一个安全的Docker容器中对应用程序进行容器化并安全地测试桌面应用程序了。

容器linux的实践:最后的想法

我不经常使用容器,但是容器Linux简化了部署。使用示例配置文件的文档非常好。注意,对于初学者来说,一些非官方的视频安装教程使CoreOS的安装更容易。虽然CoreOS声称Container Linux是轻量级的,但我最初对此持怀疑态度。然而,我在虚拟机中以相当低的资源消耗构建了容器Linux。因为我想测试Container Linux是否真的是轻量级的,所以我使用了我的老化的HP笔记本电脑,没有遇到任何问题。

然而,初始安装中的一些步骤并不是非常“初学者友好”,安装和设置容器Linux需要对Linux非常熟悉。值得注意的是,我没有尝试CoreUpdate仪表盘,CoreOS提供了一个付费的高级功能。虽然我在使用命令行时没有问题,但是一个用于监视的图形环境将是一个很好的补充。

系统管理员和数据库管理员从容器Linux中获益最大。但是对于家庭服务器来说,这是一种创建集群环境的简单而轻量级的方法。此外,使用容器Linux,您可以从一台机器启动集群。但是容器Linux是使用容器的一个很好的入门。如果您想进一步了解Docker和容器,那么Container Linux在虚拟机中运行得非常好,并提供了入门所需的所有资源。

除了经验丰富的DevOps工程师、系统管理员和数据库管理员之外,对于容器新手来说,这是一个非常好的现成解决方案。最终,CoreOS提供的容器Linux是创建可伸缩、高效、容器化环境的一种简单方法。

你在用CoreOS吗?你打算去吗?请在下面的评论部分告诉我们您是如何在Linux上进行容器化的!

  • 发表于 2021-03-15 05:37
  • 阅读 ( 206 )
  • 分类:IT

你可能感兴趣的文章

你能在linux上运行它吗?11个在linux上运行的windows应用程序

...Windows系统相同。事实上,Windows和Linux版本之间几乎没有什么区别。 ...

  • 发布于 2021-03-11 00:39
  • 阅读 ( 299 )

万神殿解释:看看极简基本操作系统桌面

...s和macOS不同,它们只提供一个可供使用的接口。这就是为什么我们大多数人都不知道桌面环境与内核、引导加载程序或这两个操作系统的任何其他部分是分开的。当你不能互换零件时,区别就没那么重要了。 ...

  • 发布于 2021-03-11 21:24
  • 阅读 ( 295 )

linux应该使用哪些文件格式?

...***你喜欢的软件,你想用多久就用多久,对你的行为没有什么限制(如果有的话)。无论你是一个狂热的Linux用户,还是一个正在寻找Windows或Mac替代软件的人,这都是一种解脱。 ...

  • 发布于 2021-03-14 10:09
  • 阅读 ( 210 )

什么是提高办公效率的最佳linux云服务?

...方便的访问,但有些服务更适合于编写和编辑文档。了解什么是提高办公效率的最佳Linux云服务。 ...

  • 发布于 2021-03-15 02:43
  • 阅读 ( 206 )

如何在安全容器中使用docker安全测试桌面应用程序

Docker是一个“容器”平台,它允许应用程序在自己的沙盒世界中运行。这些应用程序共享资源,例如硬盘空间或RAM,但不能干扰主机系统上运行的程序。对于公司服务器,这意味着攻击者可能无法使用受损的web服务器访问包含客...

  • 发布于 2021-03-15 18:37
  • 阅读 ( 243 )

最新的linux操作系统,适用于各个领域

...很好的方式来复活它。当然,你仍然会受限于你能用它做什么(不,它可能不能运行Crysis),但至少它是功能性的。 ...

  • 发布于 2021-03-16 08:05
  • 阅读 ( 245 )

为什么linux是免费的:开源世界是如何赚钱的

... 他们为什么这么做? ...

  • 发布于 2021-03-17 08:01
  • 阅读 ( 409 )

如何在一个小时内安装一台linux媒体服务器

...影收藏设计终极媒体服务器可能是一项挑战。你应该使用什么硬件,你应该安装什么操作系统,你应该运行什么样的软件? ...

  • 发布于 2021-03-21 20:50
  • 阅读 ( 321 )

什么是“暗网扫描”,你应该用它吗?

...人信息,看看罪犯是否在**这些信息。别浪费你的钱。 什么是黑暗的网(the dark web)? “暗网”由隐藏的网站组成,没有特殊的软件你无法访问这些网站。当你使用谷歌或其他搜索引擎时,这些网站不会出现,除非你特意使用合...

  • 发布于 2021-04-04 06:13
  • 阅读 ( 213 )

什么是punkbuster,我可以卸载它吗?

...PunkBuster监视你的系统,寻找在线游戏中作弊的证据。 什么是朋克灌木丛(punkbuster)? PunkBuster由Even Balance,Inc.开发,历史悠久。它创建于2000年,并首次纳入2001年的返回沃尔芬斯坦城堡。它目前可用于Mac和Linux以及Windows,因此...

  • 发布于 2021-04-05 06:08
  • 阅读 ( 288 )
h2338618
h2338618

0 篇文章

相关推荐