Bottlerocket并不是第一个被简化为最高效容器的操作系统。 但是,由于它与行业领先的公共云本机服务紧密集成,因此可以快速采用它并创造大量的合作机会。 以及创新的安全功能和升级。
“我们是运行容器化工作负载的客户的最大目的地之一,”领导AWS开源工作的Peder Ulander告诉CRN。其中包括企业自我管理协调器(如Kubernetes或Docker Swarm),或选择托管的AWS容器服务Amazon Elastic Kubernetes Services(EKS)和Amazon Elastic Container Services(ECS)。
尽管该项目由亚马逊牵头,并专注于亚马逊的云,但Bottlerocket是开源的,可以部署在任何地方:本地,任何竞争性公共云,网络边缘,甚至是非容器化环境(例如AWS EC2实例)乌兰德说。
Bottlerocket已在Beta预览版中发布了大约三个月,并且在那时,AWS的大多数公认容器客户都已在一定程度上部署了它。Ulander说,在内部,Amazon SageMaker背后的团队也一直与Bottlerocket开发人员密切合作,以优化AWS机器学习平台。
Kasten产品负责人Gaurav Rishi说,新的操作系统为亚马逊的技术和渠道合作伙伴创造了巨大的机会。
Rishi表示:“这对渠道商来说是个好消息,因为这不仅强调了供应商正在加倍进行与容器相关的创新,而且这些创新还可以帮助客户简化操作,以实现云原生世界中的业务连续性。” CRN。
减肥的好处
Ulander说:“ Bottlerocket是一种精简版Linux,已针对运行您的容器主机进行了优化。”
AWS及其在GitHub上培育的开发者社区已经淘汰了支持容器部署所需的Linux内核功能;精简的OS可以创建较小的攻击面,从而提高安全性,并减小安装空间,从而降低资源利用率和成本。
Kasten产品负责人Rishi表示,Bottlerocket的效率,安全性和成本优化将鼓励更多企业进行云转型。
Rishi告诉CRN:“随着容器和Kubernetes的普及,云原生技术为渠道生态系统中的合作伙伴和其他合作者带来了重大机遇。”
他说,Bottlerocket“打开了一个全新的世界,更多的公司可以利用云原生功能来推动巨大的销售机会。”
AWS在实现向现代体系结构转变的过程中发挥了基础性作用,并且云领导者一直在与Kasten等合作伙伴合作,以刺激对尖端解决方案的更多投资,这些尖端解决方案可确保部署后的平稳运行(第2天管理和安全性),实现无缝业务连续性。
“火箭是这些创新进步之一,” Rishi说。
轻量级Linux环境
Bottlerocket的开发是受用于构建Amazon Linux的类似逻辑激励的,该逻辑利用了围绕安全性,编排和监视的本机AWS功能。
“这是那种东西的一种还原,”乌兰德说。
但是Bottlerocket并不是第一个为容器构建的Linux。
RedOS于2018年收购的CoreOS是该类别的先驱,其他选项包括Alpine,RancherOS和Talos。
乌兰德说,这些都是好产品。
他说,使Bottlerocket脱颖而出的原因在于,它具有加入本机AWS托管容器服务(EKS和ECS)的能力。
“德克萨斯州奥斯汀的AWS渠道合作伙伴Flux7(NTT DATA)的解决方案架构师布雷迪汤普森(Brady Thompson)说:“类似的容器操作系统和Bottlerocket之间的区别在于,亚马逊已经对其进行了优化,使其可以在AWS上执行并与其他AWS服务集成。公司。
汤普森说,还有其他差异,尤其是在安全性和可升级性方面。
汤普森告诉CRN USA,其他轻量级Linux发行版“都非常少,这意味着它们将仅附带运行容器所需的绝对软件。”
本机AWS集成
Ulander告诉CRN USA:“与AWS服务集成是使它与众不同的原因,并且可能是为什么有人希望这与CoreOS或Alpine无关的原因。”
Bottlerocket是为EKS和ECS提供动力的。但这不是必须的,这两个AWS本地托管容器服务的用户仍然可以选择操作系统。
Ulander期望一些客户希望继续使用其他Linux版本,例如CentOS。
但是他鼓励现在运行带有这些托管容器服务的Amazon Linux的大多数AWS客户迁移到Bottlerocket。
“谁不想要更好的安全性,更好的速度和更低的价格,”乌兰德说。
他说,AWS越能减轻资源负载,那些分布式应用程序的性能就越好。
“最终,它是一个容器主机,没有运行您的应用程序,” Ulander告诉CRN。“这不会破坏您作为开发人员的应用程序,但会破坏您的体验。”
同时,尽管Bottlerocket是由AWS领导并与Amazon的云集成的一项工作,但它可以部署在大多数计算环境中。
“这是Linux发行版。在另一个不同的云中,您仍然需要选择您的容器主机操作系统应该是什么,” Ulander说。
安全性和更新
除了与AWS本地服务集成之外,Bottlerocket还提供了一些独特的好处,尤其是在安全性和易于更新软件方面。
Ulander说,更新不是一个包一个包地介绍,而是介绍了该过程的所有步骤,而是“整头猪”。
他对CRN USA说:“对于容器主机操作系统,您不希望它具有超级灵活性并具有多个软件包。”
Thompson表示,Flux7很高兴看到AWS及其开发人员社区在开发容器OS时遵循安全第一的方法。
汤普森告诉CRN USA:“亚马逊删除了所有外壳和解释程序,消除了被外壳利用或用户意外升级特权的风险。”
默认情况下,启用策略以强制容器和内核之间分离。二进制文件带有强化标志,以防止用户或程序执行它们。汤普森说,如果用户可以闯入文件系统,那么Bottlerocket提供了一种工具来验证和跟踪所做的任何更改。
汤普森说,为了改善安装更新的过程,亚马逊利用了TUF(更新框架),该工具将基于映像的升级下载到备用或“卸载”分区。
他说,另一个工具可以切换分区优先级,甚至可以在出现故障时退回。“这使得操作系统可以一步升级,而无需重新启动,也不会因为存在问题而导致程序包升级而导致程序包升级,并使操作系统处于未知状态。”
汤普森指出,还可以使用Kubernetes运算符自动触发更新,也可以通过API手动触发更新。
为什么要开源?
亚马逊开源的Bottlerocket“因为我们认为这是一个更大的事情,许多客户实际上可以在自己的环境中使用它,”乌兰德说。
开源模型提供了一致性,从在便携式计算机上运行测试工作负载的开发人员到完整的数据中心生产部署,再到在两个托管AWS容器服务ECS和EKS上运行的一致性。
由于Bottlerocket基于最新的Linux内核,因此希望优化OS的合作伙伴和客户可以为该项目做出贡献。Ulander说,这使Bottlerocket“成为一个非常强大的合作伙伴,他们希望在自己的解决方案中包括并分发这些软件包。”
从这个意义上讲,它类似于AWS对Firecracker所做的工作,Firecracker是为虚拟机和无服务器功能开发的云技术。
Flux7的Thompson指出,Bottlerocket是“由AWS开发和提供的少数几个Amazon Machine Image之一,它是开源的”,它使合作伙伴可以灵活地创建自定义变体以满足他们的特定需求。
汤普森说,甚至AWS都提供了各种不同的变体,可以使用Bottlerocket并将其与软件和文件系统的组合打包在一起,以满足特定的用例。