来自 Amazon 的容器专用 Linux 发行版“瓶装火箭”
容器 AWS
![](/data/attachment/album/202003/21/074953h0a55lq72h0qlpzd.jpg)


Amazon 已经[推出](https://aws.amazon.com/blogs/aws/bottlerocket-open-source-os-for-container-hosting/)了自己的基于 Linux 的开源操作系统 Bottlerocket（“瓶装火箭”）。但在你兴奋地想要尝试安装和运行它之前，我必须告诉你，它不是常规的如 Ubuntu、Fedora 或 Debian 这样的 Linux 发行版。那它是什么？


### Bottlerocket：来自 Amazon 的 Linux 发行版，用于运行容器


![](/data/attachment/album/202003/21/075058r37fllhff4lcuzeh.png)


如果你不了解 Linux 容器，建议你阅读 Red Hat 的[这篇文章](https://www.redhat.com/en/topics/containers/whats-a-linux-container)。


自从首次提出云计算一词以来，IT 行业发生了许多变化。得益于 Amazon AWS、Google、Linode、Digital Ocean 等云服务器提供商，部署 Linux 服务器（通常在虚拟机中运行）只需几秒钟。最重要的是，你可以借助 Docker 和 Kubernetes 之类的工具在这些服务器上以容器形式部署应用和服务。


问题是，当你唯一目的是在 Linux 系统上运行容器时，并不总是需要完整的 Linux 发行版。这就是为什么容器专用 Linux 仅提供必要软件包的原因。这将大大减少操作系统的大小，从而进一步减少部署时间。


[Bottlerocket](https://aws.amazon.com/bottlerocket/) Linux 由 Amazon Web Services（AWS）专门构建，用于在虚拟机或裸机上运行容器。它支持 docker 镜像和其他遵循 [OCI 镜像](https://www.opencontainers.org/)格式的镜像。


### Bottlerocket Linux 的特性


![](/data/attachment/album/202003/21/075059m0z840008884q8oz.png)


这是来自 Amazon 的新 Linux 发行版提供的特性：


#### 没有逐包更新


传统的 Linux 发行版更新过程由更新单个软件包组成。Bottlerocket 改用基于镜像的更新。


由于采用了这种方法，可以避免冲突和破坏，并可以进行快速而完整的回滚（如有必要）。


#### 只读文件系统


Bottlerocket 还使用了只读主文件系统。在启动时通过 dm-verity 检查其完整性。在其他安全措施上，也不建议使用 SSH 访问，并且只能通过[管理容器](https://github.com/bottlerocket-os/bottlerocket-admin-container)（附加机制）使用。


AWS 已经统治了云世界。


#### 自动更新


你可以使用 Amazon EKS 之类的编排服务来自动执行 Bottlerocket 更新。


Amazon 还声称，与通用 Linux 发行版相比，仅包含运行容器的基本软件可以减少攻击面。


### 你怎么看？


Amazon 并不是第一个创建“容器专用 Linux” 的公司。我认为 CoreOS 是最早的此类发行版之一。[CoreOS 被 Red Hat 收购](https://itsfoss.com/red-hat-acquires-coreos/)，Red Hat 又被 [IBM 收购](https://itsfoss.com/ibm-red-hat-acquisition/)。Red Hat 公司最近停用了 CoreOS，并用 [Fedora CoreOS](https://getfedora.org/en/coreos/) 代替了它。


云服务器是一个巨大的行业，它将继续发展壮大。像 Amazon 这样的巨头将竭尽所能与它竞争对手保持一致或领先。我认为，Bottlerocket 是对 IBM Fedora CoreOS（目前）的应答。


尽管 [Bottlerocket 仓库可在 GitHub 上找到](https://github.com/bottlerocket-os/bottlerocket)，但我还没发现就绪的镜像（LCTT 译注：源代码已经提供）。在撰写本文时，它仅[可在 AWS 上预览](https://aws.amazon.com/bottlerocket/)。


你对此有何看法？Amazon 会从 Bottlerocket 获得什么？如果你以前使用过 CoreOS 之类的软件，你会切换到 Bottlerocket 么？




---


via: <https://itsfoss.com/bottlerocket-linux/>


作者：[Abhishek Prakash](https://itsfoss.com/author/abhishek/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)


本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


OK
Amazon has [launched](https://aws.amazon.com/blogs/aws/bottlerocket-open-source-os-for-container-hosting/) its own Linux-based open source operating system, Bottlerocket.

Before you get too excited and try to install and run it, I must tell you that it’s not your regular Linux distribution like Ubuntu, Fedora or Debian. What is it then?

## Bottlerocket: Linux distribution from Amazon for running containers

![Botlerocket Logo](https://itsfoss.com/content/images/wordpress/2020/03/botlerocket-logo.png)

If you are not aware of containers in Linux, I recommend reading [this article](https://www.redhat.com/en/topics/containers/whats-a-linux-container) from Red Hat.

A lot has changed in the IT industry since the term cloud computing was first coined. It takes few seconds to deploy a Linux server (usually running in a VM) thanks to cloud server providers like Amazon AWS, Google, [Linode](https://www.linode.com/), Digital Ocean etc. On top of that, you can deploy applications and services on these servers in form of containers thanks to tools like Docker and Kubernetes.

The thing is that when your sole purpose is to run containers on a Linux system, a full-fledged Linux distribution is not always required. This is why there are container specific Linux that provide only the necessary packages. This reduces the size of the operating system drastically which further reduces the deployment time.

** Bottlerocket Linux is purpose-built by Amazon Web Services for running containers on virtual machines or bare metal hosts. **It supports docker images and other images that follow the

[OCI image](https://www.opencontainers.org/)format.

## Features of Bottlerocket Linux

![Bottlerocket](https://itsfoss.com/content/images/wordpress/2020/03/BottleRocket.png)

Here’s what this new Linux distribution from Amazon offers:

### No package-by-package updates

The traditional Linux distribution update procedure is composed of updating individual packages. Bottlerocket uses image-based updates instead.

Thanks to this approach, conflicts and breakage are avoided with the possibility of a rapid and complete rollback (if necessary).

### Read-only file system

Bottlerocket also uses a primarily read-only file system. Its integrity is checked at boot time via dm-verity. For additional security measures, SSH access is also discouraged and is only available through the [admin container](https://github.com/bottlerocket-os/bottlerocket-admin-container) (additional mechanism).

AWS already rules the cloud world and with it

### Automated updates

You can automate updates to Bottlerocket by using an orchestration service like Amazon EKS.

Amazon also claims that including only the essential software to run containers reduces the attack surface compared to general purpose Linux distributions.

## Getting Started with Bottlerocket

You can find [Bottlerocket repositories on GitHub](https://github.com/bottlerocket-os/bottlerocket) and also the [public roadmap](https://github.com/orgs/bottlerocket-os/projects/1). As of now, it’s only available for AWS EKS Kubernetes clusters and Amazon ECS clusters as a host OS. Simply, utilize AWS-provided Bottlerocket AMIs with Amazon EKS or ECS.

You will have to build your own images using the instructions in their GitHub page, if you’re wondering.

In addition to all that, you should also check out the [announcement post for Bottlerocket’s general availability](https://aws.amazon.com/blogs/opensource/announcing-the-general-availability-of-bottlerocket-an-open-source-linux-distribution-purpose-built-to-run-containers/) and their GitHub page for all the necessary instructions.

## What do you think?

Amazon is not the first to create a ‘container specific Linux’. I think CoreOS was among the first such distributions. [CoreOS was acquired by Red Hat](https://itsfoss.com/red-hat-acquires-coreos/) which itself was [sold to IBM](https://itsfoss.com/ibm-red-hat-acquisition/). Red Hat recently discontinued CoreOS and replaced it with [Fedora CoreOS](https://getfedora.org/en/coreos/).

Cloud server is a big industry that will continue to grow bigger. A giant like Amazon will do everything to stay at par or ahead with its competitors. In my opinion, Bottlerocket is an answer to (now) IBM’s Fedora CoreOS.

What are your views on it? What does Amazon gain with Bottlerocket? If you used something like CoreOS before, will you switch to Bottlerocket?