当前位置: 首页 > 科技观察

Ubuntu走的是与RedHat和SUSE不同的道路

时间:2023-03-17 11:59:31 科技观察

随着互联网和超级处理器定义了下一代网络体验,Linux变得越来越重要。大多数在超级处理器上运行的软件(Microsoft除外)都是基于Linux和其他开源技术构建的。这意味着Linux和开源在企业领域开始变得越来越重要,因为云计算和大规模数据分析等趋势推动了企业数据中心对类似技术的需求。如何制作包含适合企业使用的典型Linux构建的开源软件包,导致精心策划的发行版强调可靠性和稳定性,以及付费技术支持服务和维护更新。以RedhatEnterpriseLinux(RHEL)和SUSELinuxEnterpriseServer(SLES)为代表,这些发行版的产品生命周期分别为十年和十三年。第三大企业级Linux,Canonical的UbuntuServer走的是一条不同的路。其新版本的六个月开发和发布周期与OpenStack云框架的发布周期大致重合,OpenStack云框架已包含在Ubuntu的服务器版本中多年。每两年,Ubuntu都会在4月发布长期支持(LTS)版本,提供五年的更新。***的18:04LTS已于4月底交付。这种结合意味着Ubuntu可以比竞争性Linux发行版更快地整合新功能和技术,同时仍然提供企业用户所需的长期稳定性。此外,虽然Ubuntu普遍得到社区的支持,但企业客户可以根据需要从Canonical获得付费的UbuntuAdvantage技术支持服务。因此,如果您愿意,Ubuntu可以完全免费部署和运行,同时如果您需要将它用于生产工作负载,您还可以选择支付技术支持费用。这与其他企业Linux发行版(例如RHEL的Fedora和SLES的OpenSUSE)形成鲜明对比——这些发行版基于社区支持的发行版,可以免费下载,但仅供订阅付费技术支持的客户使用。这种许可模式可能是Ubuntu在云计算和其他大型基础设施运营商中广泛使用的原因之一。Canonical声称来自所有主要云提供商的大多数工作负载都在Ubuntu上运行,无论是AWS、MicrosoftAzure、GoogleCloud、IBMCloud还是OracleCloud。也许正因为如此,Canonical似乎看到了支持作为企业新多云环境基础的云原生方法的未来。大多数企业已经在多个公共云平台上运行应用程序和服务,并且可能在他们自己的数据中心中运行一个或多个私有云,因此任何能够简化在这个混合环境中部署和运行应用程序的组件都会受到企业的热烈欢迎。Kubernetes就是一个例子。它是一个用于管理容器化工作负载和相应集群的编排工具。它已迅速成为此类任务的首选工具,所有主要云提供商现在都提供Kubernetes支持的容器服务,例如GoogleKubernetesEngine(GKE)、AzureContainerServices(AKS)、AmazonElasticContainerServiceforKubernetes(AmazonEKS).随着Kubernetes在公共云上的普及以及许多开发人员使用它来构建和部署分布式应用程序,Kubernetes及其API现在被推入堆栈以提供跨所有这些平台的可移植性。Canonical提供了自己的Kubernetes发行版,这是一个纯粹的“上游”版本,与Google的GKE中的版本保持一致,还包括定期的安全更新。如果客户已经支付了Ubuntu支持费用,公司将不会额外收费。Canonical认为,提供纯Kubernetes版本将为用户提供更大的灵活性,并使他们与公共云提供商保持同步。根据Canonical的说法,这与RedHat将Kubernetes集成到其OpenShiftPaaS中的方法形成鲜明对比——后者隐藏了管理容器的大部分复杂性,同时也剥夺了开发人员的一些选择权。VMware以PivotalContainerService(PKS)的形式提供了类似的产品。该产品将Kubernetes与BOSH相结合,BOSH是一种添加部署和生命周期管理服务的开源工具。BOSH包含一个CloudProviderInterface(CPI),可以配置为使用不同的平台作为PKS的基础设施层,目前支持vSphere或GoogleCloudPlatform。Canonical产品管理总监StephanFabel表示,VMware和RedHat本质上都在玩锁定游戏。如果您有RedHat云,则必须使用RHEL,并且必须运行RedHatOpenStack,否则,您就有麻烦了。那么,你就得用OpenShift了,不然又麻烦了。所以,你一直被推上这个垂直堆栈,在堆栈的层与层之间有很多不同的挂钩,它们会带你走上特定的路径,也许董事会会喜欢这样,但开发人员不会真的不想被推。被迫选择一个特定的范例。另一个因素是成本。Canonical声称,Ubuntu和Kubernetes的组合可以满足组织的需求,而成本仅为RHEL、RedHatOpenStackPlatform和OpenShiftPaaS的三分之一。这种组合并不能提供PaaS的全部功能,但其他开源工具可以弥合这一差距。451Research最近的一份报告显示,与451Research的云价格指数(CPI)比较中包含的25家公共云提供商相比,Canonical的BootStack托管私有云平台每月每台虚拟机的运行成本更低。根据BootStack的说法,Canonical工程师选择在何处为客户部署OpenStack云,然后将其作为完全托管服务运行。对于运行HPC基础设施的组织,Canonical开发了开源工具来实现复杂环境的大规模部署,并在必要时重复这些部署。这些工具(如Juju和MaaS)是为快速构建私有云而开发的,但事实证明在HPC环境中同样有用——你可能有一天会运行复杂的模拟,而下一个工具是在Hadoop框架上使用大数据分析。MaaS(Metal-as-a-Service)旨在为裸机服务器硬件提供类似云的配置便利。它可以使用PXE、TFTP和IPMI等知名工具来发现硬件资源并自动执行升级固件和安装操作系统等任务。Juju的目的是处理其余软件堆栈的部署和配置,包括应用程序以及它所依赖的任何其他应用程序和服务。Juju提供工具来创建这些不同组件之间关系的模型,因此它可以应用必要的配置管理脚本(可能使用Puppet或Chef等工具编写)进行部署。Canonical声称Juju和MaaS是其提供BootStack托管云服务能力的关键因素——这些服务的运行成本低于许多公共云,并且只需要两名工程师和两周时间即可满足客户需求。MaaS和Juju已经面世一段时间了。Canonical最近一直致力于让Ubuntu支持GPU加速器硬件,并通过OpenStack和Kubernetes将其暴露给HPC工作负载,例如机器学习。“在KVM层,我们使用PCI直通。人们正在努力在OpenStack层创建虚拟GPU抽象层,一旦它们被引入,我们也会提供这些。但是一旦你在虚拟机层,你就拥有了暴露的设备,我们的Nvidia驱动程序将以完全自动化的方式提供和推出。因此,当您在包含GPU的基础设施上安装Kubernetes集群时,它们会被自动检测和启用,”Fabel说。在Kubernetes层,Canonical部署了一个来自Nvidia的Docker运行时通过标准API公开GPU。使用Juju,可以以完全自动化的方式推出Kubeflow等复杂的应用程序框架。Kubeflow是Google的TensorFlow计算框架的实现,用于构建机器学习模型并将它们打包以在其中运行容器和Kubernetes。根据Canonical的说法,这很重要,因为单个高端GPU可能要花费数千到数万美元,而任何o组织需要最大限度地缩短构建应用程序及其支持软件框架所需的时间。充分利用GPU。总体而言,Canonical与其他企业Linux公司不同,它们更青睐云、先进技术以及大规模部署应用程序和服务,而RedHat和SUSE一直专注于转向优先考虑运营的更传统的关键任务企业。应用程序公司提供稳定、可靠的平台。