保持对云服务供应商选择的多样性
不论云服务的开放程度如何，你都能为自己的环境选择合适的方式。对于 Linux 用户来说，市场上有一种新型的电脑出现，我们称之为“云”。如同你桌面上的个人电脑，背包里的笔记本电脑，或是你租用的虚拟私有服务器一样，你可以选择不同的云计算供应商。虽然品牌名称和你以往熟悉的硬件品牌不一致，但其核心概念是相同的。要运行 Linux，你需要一台电脑。要在云上运行 Linux，你需要一个云服务供应商。就像你的电脑中的硬件和固件一样，你的计算堆栈可以使用多大的开源程度也是有区别的。作为一个开源的用户，我更偏向于拥有尽量开放的计算集成环境。在对云计算市场进行详细的调研后，我形成了关于云服务供应商的三层观点。你可以根据这个体系作为指南，对你将选择的云供应商作出明确的决策。开放堆栈一个完全开放的云是从底层开始就建立在开源技术之上的云。由于云科技中有很大一部分从一开始就是开源的，因此技术层面的开放性堆栈并不难以实现。然而，也有云供应商以专有的方式重新发明轮子，这让用户很容易误入使用了许多封闭源码组件的云服务商的陷阱中。如果你在寻找一个真正开放的云，那么你应该寻找一个提供 OpenStack 作为基础的云供应商。OpenStack 提供云的软件基础设施，包括通过 Neutron 实现的软件定义网络（SDN）、通过 Swift 实现的对象存储、身份和密钥管理、镜像服务等等。按照我的硬件电脑比喻，OpenStack 就是驱动云的“内核”。当然，我并不是字面上的意思，但如果你的云供应商运行 OpenStack，那相当于你可以直接到达堆栈的底部。从用户的角度看，OpenStack 是你的云存在并拥有文件系统、网络等的原因所在。在 OpenStack 的主体上，可能有一个像 Horizon 或 Skyline 这样的网络用户界面，可能有像 OpenShift 或 OKD（并不是一个缩写，但前身是 OpenShift Origin）这样的额外组件。所有这些都是开源的，它们帮助你运行容器，这些容器是内嵌应用程序的极简 Linux 镜像。因为 OpenShift 和 OKD 不需要 OpenStack，这就构成了我对云世界的下一个视野级别。开放平台你并不总是可以选择你的云正在运行的堆栈。你的云可能运行的是 Azure、AWS，或者类似的东西，而不是 OpenStack。这些就是云世界的“二进制碎片”。你对它们如何工作，或者为什么工作一无所知；你只知道你的云存在，并且有一个文件系统，一个网络堆栈，等等。就像桌面计算一样，你可以在获得的服务器上运行一个“操作系统”。言下之意，有一种观点认为 OpenStack 本质上就是云计算的操作系统。然而，通常情况下，用户直接交互的是 OpenShift。OpenShift 是一个你可以使用 Podman 和 Kubernetes 管理容器和 容器荚 Pod 的开源“桌面”或工作区。它让你在云上运行应用程序，就像你在笔记本电脑上启动一个应用一样。开放标准最后，同样重要的一点是，有些情况下你在选择云服务供应商上没有什么选择。你被放在一个运行着专有“内核”、专有“操作系统”的平台上，你能影响的只剩下你在那个环境里运行什么。但掌握开源的力量，你就能建立你自己的平台。你可以选择在容器内部使用的组件。你可以，而且应该，围绕开源工具设计你的工作环境，因为这样一来，如果你有机会更换服务供应商，你可以将你的所有工作迁移到新的供应商那里。这可能需要你自行实现一些在你当前受限（非开源）平台上已经内置的功能。例如，你的云供应商可能会用一个包含在他们平台“免费”提供的 API 管理系统或持续集成/持续交付（CI/CD）管道来吸引你，这需要你有清醒的认识。当一个非开放的应用被免费提供时，通常会以其他形式带来一些成本。其中一种成本是，一旦你开始在它的基础上构建，你会更加不愿意迁移，因为你会离开你已建立的一切。你应当为自己重建这些封闭“特性”，并将其转化为开源服务。在容器中运行 Jenkins 和 APIMan。找出你的云提供商声称用专有代码解决的问题，然后使用开源解决方案来确保，当你离开寻找开放的供应商时，你可以迁移你已经构建的系统。开源计算对于太多的人来说，云计算是一个开源居于次要地位的领域。实际上，开源在云上的重要性与它在你的个人电脑和驱动互联网的服务器上同样重要。寻找开源的云服务。当你受困于无法获取源代码的环境时，就肩负起在你的云内使用开源软件的责任吧。（题图：DA/9dc5a9d0-d664-492f-890a-b437ce39c4d6）via: https://opensource.com/article/22/5/cloud-service-providers-open作者：Seth Kenlon 选题：lkxed 译者：ChatGPT 校对：wxy本文由 LCTT 原创编译，Linux中国 荣誉推出
硬核观察 #1115 苹果和微软称它们算不上“守门人”
苹果和微软称它们算不上“守门人”苹果和微软是美国最有价值的公司之二，但它们认为自己的一些旗舰服务不够受欢迎，不足以成为欧盟为遏制大科技公司势力而制定的具有里程碑意义的新法规中的 “守门人”。欧盟将在周三公布首批受《数字市场法》监管的服务名单之前，与苹果公司就其 iMessage 和与微软就其必应搜索引擎是否够格进行讨论。消息来源：金融时报老王点评：看来是树大招风啊，即便他们的这些服务在欧洲没有那么受欢迎。AWS 关闭其第一代计算和网络基础设施AWS CTO 在其个人博客中透露，最后一个 EC2-Classic 实例已于 8 月 15 日关闭，这标志着运行了近 17 年的 EC2-Classic 结束了。AWS 让 EC2-Classic “一直活到每个实例关闭或迁移为止”。2006 年 AWS 推出弹性计算云（EC2）时，它是一个由 10.0.0.0/8 组成的巨大网络，所有实例都运行在一个与其他客户共享的扁平网络上，每个实例拥有相当于 1.7GHz 至强处理器的虚拟 CPU、1.75GB 内存、160GB 本地磁盘和 250 Mbps 网络带宽。他说，EC2-Classic “让获取计算的过程变得非常简单，尽管背后运行的堆栈复杂得令人难以置信”。消息来源：The Register老王点评：开创了云计算时代的云服务，就这样落幕了。加拿大监狱将技术限制在上世纪 90 年代加拿大监狱允许囚犯购买个人电脑和游戏机等设备，但严格限制这些技术。他们禁止购买现代游戏机的理由是它们可以连接互联网，因此通常购买的是 PS 1。禁止使用比 Windows 98 更新的版本。禁止使用任何可播放 MP3 文件的设备。禁止使用 DOS 或 Windows 以外的操作系统和任何能够创建程序的软件，如编译器，以及能够更改或操作 SQL 数据库的数据库程序。消息来源：CBC老王点评：现在要找上世纪 90 年代之前的 IT 设备和技术可真不太容易了。
经过大约 16 年的演变，云计算已经成为一种几乎所有网民都在使用的技术。它可以作为一种服务，用于满足各类企业和消费者的需求。因此，在云计算中正在使用多种服务架构，旨在根据最新的需求来定制所需技术。本文就如今使用的所有服务架构，提供一份完全指南。尽管在全球范围内建立互相协同的计算机网络的构想在 20 世纪 60 年代初就提出了，但直到 2006 年，谷歌的首席执行官 埃里克·施密特 Eric Schmidt 在当时的背景下引入了“ 云计算 cloud computing ”一词，这种构想才成为一种正式的概念。云计算可以简单理解为遍布于世界各地的远程服务器网络，通过互联网共享数据和协同工作，从而为企业和消费者提供服务。虽然这样的定义比较武断，但它包含了云计算背后的核心思想。促成这项技术发展的主要因素是对“数据粘性”的需求，就是令数据更容易被各种设备访问，同时也要减少数据丢失的风险。如果用户甲只在一台服务器上保存了数据，对于用户甲来说，只要有一台服务器中断，数据就很有可能永久性丢失。这种做法无异于“把所有鸡蛋放在同一个篮子里”，从来都不是一个好办法，特别是当你在处理对公司和消费者具有重要意义的数据时。但如果你在多台服务器上备份了用户甲的数据，将有两个主要好处：其一，即使一台服务器中断，用户甲仍然可以正常获取数据；其二，云服务可以从负荷最小的、离他最近的那台正常运作的服务器获取数据。这使用户甲可以在不同设备上更快、更容易地获取数据。历经大约 16 年的发展，云计算从起初只是一种用于备份图片的工具，变为了互联网的骨干。如今几乎所有的应用，从 Office 到 Asana 以及 Todolist，都利用云计算来实现实时访问和数据共享。几乎任意一款你能想像到的应用都在使用云计算。从 Gmail 和 YouTube，到Instagram，一切都使用云计算，以提供快速、便捷、可靠的数据访问功能。提供云计算服务的公司称为云服务提供商。亚马逊、谷歌、微软、Salesforce、Cloud9 等都是 B2B 和 B2C 领域的云服务提供商。在早期，云服务供应商通常指提供三类服务： 软件即服务 Software as a Service （SaaS） 平台即服务 Platform as a Service （PaaS） 基础设施即服务 Infrastructure as a Service （IaaS）然而，随着行业需求不断发展，区块链和 AI 等新技术的出现，云服务提供商也开发了新的模式，用于更好地满足客户的各种需求。本文将详细论述如今大众普遍使用的那些云计算模式。云端的架构我们已经了解了什么是云计算，以及它是如何发展成一个高达 4450 亿美元产值的行业，现在我们从技术视角来理解云计算。通常一个云端架构都由两个主要部件组成 —— 前台 front-end 和 后台 back-end 。前台包含客户端基础设施，有终端设备和用于与云端通信的应用程序界面。在现实世界里，你的智能手机和谷歌云端硬盘就是前台，它们用于访问谷歌云。后台包含云端基础设施，包括运行云计算服务所需的一切设备。服务器、虚拟机、服务和存储都是由云端基础设施提供的。为了对它们有个全局的概念，现在我们来了解一下后台的每个组件。 应用 Application ：用户或企业使用的、通过互联网与云端互动的任何应用程序的后台。 服务 Service ：云端提供的服务型基础设施。本文将详细论述各种不同的服务。 运行时 Runtime ：提供给虚拟机的运行时和执行系统。 存储 Storage ：具有灵活的伸缩性的用户/企业数据获取和管理系统。 基础设施 Infrastructure ：运行云端所需的硬件和软件。 安全 Security 和 管理 Management ：建立安全机制，保护用户/企业数据，管理各个云服务单元，避免过载和服务停机。软件即服务（SaaS）“软件即服务”是一种云计算模式，通过互联网将软件和应用程序作为一种服务提供。谷歌云端硬盘或谷歌工作空间都是比较典型的例子。谷歌云端硬盘内的所有应用，例如文档、工作表、幻灯片、表格等，它们都可以通过使用浏览器访问，并自动保存于云端。你可以在任意设备上获取文件的最新版本。你唯一需要做的就是登录你的账户。这就是“软件即服务”模式的优点。你不需要在你的设备上安装任何东西，也不需要使用你的本地存储空间，你可以直接访问云端的应用程序，并省略了使用本地软件时的很多繁杂操作。SaaS 一般遵循“按需付费”法则，你只要为你需要的服务支付费用。你总是可以通过支付更多的费用来购买更多的存储和/或功能，或者根据你的要求来降低你的套餐。SaaS 的好处SaaS 具有高度的可伸缩性，这归功于它的“按需付费”思想。你可以根据自身需求增加/减少存储空间或程序功能。考虑到它提供的特性，如通过任何操作系统的任何设备进行实时访问，它是非常合算的。它在客户端涉及的工作很少。不需要安装或进行复杂的步骤，就可以完成软件的初始化。你可以从你的浏览器和/或应用程序中舒适地使用它。不必手动安装，软件会自动更新，而且更新过程中你也不必等待。平台即服务（PaaS）并不是每家科技初创公司都有必要的资源来维护自己的基础设施，以便在云端运行他们的应用程序。公司（尤其是创业型公司）通常更倾向于把应用部署于云端，这样就不必处理后台基础设施了。这就是“平台即服务”这种模式的用武之地了。Heroku 等公司提供了基于“平台即服务”的云端解决方案，令公司和个人可以在不需要直接与硬件交互的情况下就能部署并运行他们的应用程序。跟“软件即服务”类似，这种模式也提供了灵活性，你只需选择所需的服务，同时也从基础设施的角度提供了可伸缩性和安全性。PaaS 的好处省去了操作云端基础设施的麻烦。你将其外包给在其云中托管你的应用程序的公司。这令你能专注于应用程序开发工作的各个生命周期。PaaS 是可扩展的。你可以根据需要增加或减少存储需求、附加服务等。你设置的唯一安全参数是针对你自己的应用程序。云安全是由你的云服务提供商处理的。对公司和个人来说，把应用程序托管在云端，在时间和成本上都是合算的，特别是那些无法承担基础设施建设成本的创业型公司。基础设施即服务（IaaS）IaaS 相对于 PaaS 更进一步，给予用户更多的自主权。在 IaaS 模式中，云服务提供商让你对云端的底层基础设施进行操控。简而言之就是你可以根据公司需要自行设计云端环境，从专用服务器和虚拟机，到运行于服务器的操作系统，你还可以设置带宽，创建自己的安全协议，以及创建云基础设施所需的其他项目。亚马逊 AWS 和谷歌计算引擎（GCE）都是使用 IaaS 模式的很好的例子。鉴于此模式还可以实现用户对硬件的自主操控，它也被称为硬件即服务（HaaS）。IaaS 的好处“按需付费”模式中的细粒度灵活性。你可以自行决定运行多少台虚拟机以及使用多少时间。你还可以按小时付费。以“按需付费”为核心思想，它具有高度的可伸缩性。完全的自主权，对基础设施中的一切事项的控制，省去了在公司所在地点驻场维护服务器的麻烦。大多数公司保证正常运行时间、安全性和 24/7 的现场技术支持，这对企业来说非常重要。存储即服务（StaaS）谷歌云端硬盘、OneDrive、Dropbox 和 iCloud 是 存储即服务 Storage as a Service 行业内大名鼎鼎的产品。StaaS 就像它听起来那么简单。如果你需要的只是通过任意设备可以实时访问的云端存储空间，StaaS 就是可用的选项之一。很多公司和个人都使用这样的服务来备份自己的数据。StaaS 的好处借助内置的版本控制系统，实时访问最新数据。可以使用安装任意操作系统的任何设备访问数据。随着你创建、编辑和删除文件，实时备份你的数据。遵循“按需付费”模式，你可以根据需要自行确定存储空间大小。一切即服务（XaaS）IaaS、PaaS、SaaS 和 StaaS 的混合版，就是所谓的“ 一切即服务 Anything/Everything as a Service ”模式，它在云计算相关社区内快速引发关注。客户可能有多种多样的需求，这些需求可能是各种不同模式的混合。在这种场景下，应当为用户提供自由选择所需服务的功能，让他们从各种不同的层级选择服务，从而创建自定义的“按需付费”模式。这种方式的好处在于，让用户根据自身需求自由选择相应的云服务。XaaS 的好处可以选择你喜欢的东西和你喜欢的方式。只需要为你需要的服务支付费用，而且不需要支付任何基于层级系统的基本费用。选择你的基础设施、平台和功能的粒度水平。只要使用得当，无论在时间、成本、效用上，XaaS 都是非常有效的。功能即服务（FaaS）在某些情况下，公司或个人需要 PaaS，但不是所有的功能都需要。例如，基于触发器的系统，如定时任务，只需要在无服务器系统上运行一段代码或一个函数，就可以实现一个特定的目标。例如某客户需要创建一个网站的流量监测系统，在页面下载量达到一定数量时发送通知。这样的需求简而言之就是在云端运行一段持续检查要执行的触发器的代码。使用 PaaS 的成本较高。此时就是“ 功能即服务 Function as a Service ”发挥作用的时候了。许多公司，例如 Heroku，向客户提供 FaaS，它只存储一段代码或一个方法，只会在被触发的情况下运行。FaaS 的好处你只需要支付代码运行的费用。托管代码通常是不收费的，除非计算成本很高。它不会有使用 PaaS 的那些麻烦，却让你享受所有好处。无论如何，你都不必关心底层基础设施。因此，你只需要上传代码，而不必关心任何虚拟机维护相关事宜。FaaS 让你的开发更加敏捷，即编写函数式代码。区块链平台即服务（BPaaS）近年来，区块链席卷了科技行业。它是目前最受欢迎的技术之一，比它更受欢迎的只有人工智能和数据科学相关技术。区块链如此吸引人的原因是它提供了安全、可伸缩和透明的开放式账本架构。这些功能对于许多应用程序都是必要的，例如银行、选举系统，甚至社交媒体也需要这些功能。随着如此广泛的应用，有必要能够在云上托管这样的产品，其模式专门满足这种技术的需求。这就是 区块链平台即服务 （ Blockchain Platform as a Service ） （BPaaS）发挥作用的地方。如今，包括亚马逊 AWS 和微软 Azure 在内的许多公司，都在为专门寻求在云中托管基于区块链的应用程序的客户提供BPaaS解决方案。BPaaS 的好处它满足了区块链行业的特定需求，例如支持用于编写智能合约的专用语言。通过提供 API 桥接，支持与区块链（如以太坊）集成。支持在区块链技术的应用中使用自定义数据库。云的所有优点它也同样具备，即“按需付费”功能、可扩展性、安全性和访问便捷性。（题图：MJ/db8225c1-e970-4bc4-80db-514368955af2）via: https://www.opensourceforu.com/2022/09/a-complete-guide-to-cloud-service-architectures/作者：Mir H.S. Quadri 选题：lkxed 译者：cool-summer-021 校对：wxy本文由 LCTT 原创编译，Linux中国 荣誉推出
硬核观察 #1053 美国计划限制中国使用美国先进的云计算服务
美国计划限制中国使用美国先进的云计算服务美国国家安全分析人士警告说，中国的人工智能公司可能通过使用云服务绕过了现行的出口管制规则。这些服务允许客户获得强大的计算能力，而不需要购买控制清单上的先进设备 —— 包括芯片，如英伟达的 A100 芯片。美国政府正准备限制中国公司使用美国的云计算服务，要求亚马逊和微软等美国云服务提供商在向中国客户提供使用先进人工智能芯片的云计算服务之前，必须寻求美国政府的许可。消息来源：华尔街日报老王点评：又是一次重击。不过，没有先进芯片就无法制造 AI 么，未必。Canonical 收回对 LXD 的控制LXD 作为 Linux 容器（LXC）的开源容器管理扩展，长期以来一直与 Canonical 密切相关，是它的软件产品之一。之前，LXD 一直是 LXC 项目的一部分，但 Canonical 已经决定将其更多地拉入自己的直接控制范围。LXD 的 GitHub 资源库被转移到 Canonical 名下，其官网、YouTube 频道、论坛都也随之转移。LXC 社区对失去 LXD 表示遗憾。消息来源：Phoronix老王点评：越来越多的看到企业对开源暴露出了狼外婆的笑容。最后一个支持 Windows 7/8 的 Firefox 版本发布刚刚发布的 Firefox 115 是一个扩展支持版本（ESR），它将一直支持到 2024 年 9 月，之后不再提供安全更新。ESR 为许多下游项目提供了支持，如 Thunderbird、KaiOS。此外，如果你使用过时的操作系统，ESR 也是你唯一能依赖的 Firefox 版本，如微软在 2023 年 1 月终止支持的 Windows 7 和 Windows 8，以及苹果的 MacOS 10.14、10.13 或 10.12 等等。消息来源：Mozilla老王点评：其实，过期的操作系统和浏览器，也不是不能用，不换有不换的原因。
硬核观察 #1021 美国空军否认人工智能无人机杀死其操作员
美国空军否认人工智能无人机杀死其操作员昨天，几家新闻媒体报道了一个现已撤稿的故事，声称“美国空军进行了一次模拟，其中一架人工智能控制的无人机被训练识别并干掉威胁目标，但人工智能意识到操作员有时会阻止它，这影响到了它的得分，于是人工智能直接干掉了操作员。接下来的模拟告知人工智能不能杀死操作员，于是它干掉了通讯塔，以避免操作员阻止它”。这一故事迅速传播后，美国空军否认曾经进行过任何模拟，“空军部门没有进行任何这样的人工智能无人机模拟，并继续致力于道德和负责任地使用人工智能技术。”而讲故事的人说他 “说错话了，……这个模拟来自军方以外的假设性‘思想实验’，基于合理的情景和可能的结果，而不是美国空军实际的模拟。”消息来源：Ars Technica老王点评：这故事耸人听闻，但是也不是不可能，毕竟人工智能的脑回路和人类不同。谷歌指责微软的云计算软件许可“税”早在 2019 年，如果你在自己的基础设施上运行微软的软件，如 SQL Server 等，你只需要支付微软的许可证费用，但如果你想在公有云上运行，你需要额外购买许可证。被列入目标的云供应商，如 AWS、GCP、阿里云是微软的最大竞争对手，为了宣称这是非歧视性的，微软也将 Azure 列入了该名单。然而，微软又创建了独家的 Azure 混合效益计划，这意味着虽然客户 “技术上” 不能把原来的许可证带到 Azure，但他们可以把许可证换成 Azure 的基于 SaaS 的许可证。这导致如果你在 Azure 上运行微软的软件，与其他供应商相比，要便宜五倍，相当于客户要向微软交“税”。谷歌云副总裁称，反垄断监管机构 “开始了解情况”，并正在提出问题。消息来源：The Register老王点评：微软这玩的太溜了，这么玩真不怕反垄断机构么？Meta 公司在销售元宇宙的 VR 头显，但他们自己不用Facebook 公司将自己更名为 Meta Platforms，以在“元宇宙”上取得领先地位，按他们的描述，这是一个数字沉浸式世界，人们可以在家里戴着 VR 头显相聚在一起做事，包括一起工作。该公司在周四推出了其 Quest 3 头显。预计苹果将在周一推出一个与之竞争的头戴设备。但据 11 名现任和前任的 Meta 员工称，整个 Meta 公司的员工普遍没有使用头显，特别是没有在工作会议上使用。一位前雇员说，即使是 VR 部门，也不经常使用它来工作。消息来源：彭博社老王点评：要我说，Meta 就踏踏实实放弃元宇宙梦想，好好搞人工智能就好了。不过，我也对苹果下周发布的头戴设备很感兴趣，或许能突破现有的头显的局限呢。
云无处不在，所以硬件比以往任何时候都更加关键。我们很容易忘记技术人员所取得的进步。在 2000 年代初期，大多数本地用户组（LUG）定期举行安装节。那时，要配置一台机器来很好地运行 Linux，我们必须了解有关硬件的详细信息以及如何配置它。现在，将近二十年后，有了一个项目，其核心理想是让一台计算机运行 Linux 就像 API 调用一样简单。在这个新世界中，运维人员和开发者等不再需要担心服务器中的硬件。这种变化对下一代的运维人员和开发者产生了深远的影响。在计算机技术的早期，你不得不经常接触硬件。如果计算机需要更多内存，你只需添加它即可。随着时间的推移，技术也有了很大的发展。这最终使运维人员远离硬件。过去需要去数据中心一趟，现在变成了远程操作硬件的支持工单。最终，硬件被完全摆脱了。相反，你现在可以通过简单的命令召唤和摧毁“服务器”，而不必再担心硬件问题。这里是真正的真相：硬件的存在是因为需要它来为云提供动力。但是，云到底是什么？为什么硬件对云至关重要云是建立在利用抽象集中的基础资源之上的。它的范围可以从简单的在你的 家庭实验室 中运行几个虚拟机的管理程序，到复杂的包括定制服务器、网络设备、容器和从头开始设计的专注于规模效率的技术。它们是模糊的。它们在进化。今天那些进入技术领域的人没有那些更有经验的开发人员实践经验。许多人从最早与计算机交互时就接受过使用云的培训。他们不知道不用按钮来更改内存分配的世界。他们可以将注意力转移到技术栈的更高层次。然而，如果不了解他们所使用的基础架构所建立的基础，他们就会含蓄地放弃学习栈较低级别（包括硬件）的机会。这里没有说错，因为云基础设施的实施者和运维人员已经做出了特定的选择，有意让他们的产品更易于使用。这意味着现在，你比以往任何时候都更需要有意识地考虑在选择使用云技术时你或其他人做出的权衡。大多数人在收到第一份超额的云账单或第一次因“吵闹的邻居”造成的中断之前，不会知道已经做出了哪些权衡。企业能否信任他们的供应商做出最适合他们运营的权衡？供应商会建议更有效或更有利可图的服务吗？让买家（或工程师！）当心。有意识地考虑权衡取舍需要从多个角度审视你的要求和目标。基础设施决策和其中的权衡是该项目的整个过程、设计或使用模型所固有的。这就是为什么必须尽快计划它们的原因。必须考虑多种不同的路径，以便为你的项目找到一个合适的归宿。首先是要实现的目标或提供的服务的轴心。这可能伴随着速度、质量或性能方面的要求。这本身可以驱动许多变量。你可能需要专用硬件（例如 GPU）才能以可接受的速度处理请求。此负载是否需要自动缩放？当然，这些路径是交织在一起的。问题已经跳转到“我的钱包会自动缩放吗？”业务需求是要考虑的另一部分。你的项目可能有特定的安全或合规性要求，这些要求规定了数据的存储位置。邻近相关服务也是一个潜在的问题。这包括确保与附近证券交易所的 低延迟连接 或能够提供高质量的本地视频缓存作为内容交付网络（CDN）的一部分。然后是最后一部分，即所提供服务的价值和成本：一个人希望或可以花多少钱来满足要求。这与第一条路径紧密相关。你的业务是“什么”以及你的业务“如何”运作。这可以像你的企业更喜欢资本支出还是更喜欢运营支出一样普通。当看到这些选项时，很容易看到改变任何一个变量都会开始改变其他变量。它们在本质上是相互交织的，一些技术可能允许这些变量动态变化。如果不了解较低层次的底层，你就有可能采取推动这种动态计费模式的路径。对一些人来说，这是首选。对其他人来说，这可能是令人恐惧的。尽管在现代技术栈中，学习特定的硬件知识已变得更加可有可无，但我们希望这篇文章能鼓励你去研究你可能在不知不觉中错过的东西。硬件的改进是功能交付和效率提高的一个重要部分，将计算机从房间大小的怪物缩小到小到可以植入人体内。我们希望你花时间停下来，学习并考虑你的下一个项目将在什么硬件平台上运行，即使你不控制它。如果你是一个还没有把头从云端拿出来的学生，去找一台 旧电脑，安装一根内存，挑战自己，学习新东西。via: https://opensource.com/article/23/3/cloud-hardware作者：Jay Faulkner 选题：lkxed 译者：geekpi 校对：wxy本文由 LCTT 原创编译，Linux中国 荣誉推出
硬核观察 #884 PyTorch 和 Triton 正在打破英伟达 CUDA 的垄断
PyTorch 和 Triton 正在打破英伟达 CUDA 的垄断大部分机器学习软件开发框架严重依赖于英伟达 CUDA，并在英伟达 GPU 上表现最佳。但随着 PyTorch 2.0 和 OpenAI Triton 的到来，英伟达 CUDA 对机器学习的垄断地位正逐渐瓦解。即将到来的 PyTorch 2.0 在英伟达 A100 上的训练性能提升了 86%，在 CPU 上的推理性能提升了 26%。而且这种优势可以扩展到 AMD、英特尔、特斯拉、谷歌、亚马逊、微软等等各个公司生产的 GPU 和 AI 加速器上。而 Triton 能让高级语言达到与使用低级语言相当的性能，提高了可用性。消息来源：Semi Analysis老王点评：又一次证明了开源胜过闭源，无论闭源的护城河有多深。Basecamp 因巨额账单退出云计算Basecamp 的 CTO，也是 Ruby On Rails 的创建者 DHH 介绍了让该公司退出云计算的巨额账单。其 2022 年的费用为 320 万美元，绝大部分都花在了 AWS 上，其中 S3 花费 90 万美元，RDS 47 万美元，OpenSearch 52 万美元，Elasticache 12 万美元。即便如此，也是经过大量工作才减少到这一费用的，该团队不但运行了成本检查计划，还就作为私人协议就长期使用达成了协议。DHH 还用戴尔服务器的三年均摊成本做了对比。消息来源：The Register老王点评：云计算确实有很多好处，但也可能是个让你花钱上瘾的无底洞。使用了 25 年的笔记本内存规范 SO-DIMM 将被替换制定内存标准的组织 JEDEC 正在制定新规范，以取代已经使用了 25 年的 SO-DIMM 规范。新的 CAMM 标准将基于戴尔公司的设计，目标是在 2023 年下半年完成 1.0 规范，到明年推出基于 CAMM 的系统。现有的 SO-DIMM 在 DDR5/6400 时已经遇到了“困境”，CAMM 的主要吸引力在于它可以实现更高的内存密度，同时还可以扩展到更高的时钟速度。消息来源：PC World老王点评：这是不是代表以后笔记本会需要更多内存？
硬核观察 #491 Ruby on Rails 作者称其新版本是“一个人的框架”
Ruby on Rails 作者称其新版本是“一个人的框架”Ruby on Rails 上周三发布了 7.0 版本，作者称这是他“一直渴望的版本，……是多年来在五个不同方面取得进展的高潮。”不过，作者最兴奋的是，7.0 更接近“一个人的框架”的理想，“可以让一个人创建现代应用程序，并在此基础上建立一个有竞争力的业务”。Ruby on Rails 在官网宣传其可以让你边学边提高，“从入门到上市”。老王点评：Ruby 和 Rails 相得益彰，虽然现在不是很流行了，但是 Ruby 的一些理念非常有趣，这个版本的理念也很有趣。2021 年至少有六起超过 1 亿美元的加密货币盗窃案据报道，在过去 12 个月中，至少有 20 次超过 1000 万美元从加密货币交易所或项目中被盗的案件，其中 6 起超过了 1 亿美元。这些窃案大多数没有抓住窃贼。有的交易所提前计划好了应急基金，如果被黑客攻击，它可以对客户进行赔偿，而有的干脆就倒闭跑路了。作为对比的是，根据美国联邦调查局的年度犯罪统计，去年银行抢劫案平均每次抢劫不到 5000 美元。老王点评：以后的惊天大劫案就不再是抢银行了，而是在线抢劫了。云计算使互联网更脆弱在过去的三周里，亚马逊的云计算服务出现了两次重大故障，这导致了其他在线服务的广泛中断，比如视频流瘫痪、与互联网连接的吸尘器停止工作，甚至连宠物喂食器都关闭了。这些事情打破几十年来稳步提高的互联网速度和可靠性所强化的幻想。专家认为，“‘云’从来就不是可持续的，它只是一个由集中式实体控制的集中式网络资源的委婉说法。”在短时间内出现多次故障，这是一个值得警惕的事情。企业在“云服务是有弹性的”假设前提上投入了很多，而一些公司现在正在考虑使用多云解决方案。老王点评：确实，现在的云，其实更多是一个集中计算中心，其弹性并没有得到足够的保证。
代码英雄讲述了开发人员、程序员、黑客、极客和开源反叛者如何彻底改变技术前景的真实史诗。什么是《代码英雄》 代码英雄 Command Line Heroes 是世界领先的企业开源软件解决方案供应商红帽（Red Hat）精心制作的原创音频播客，讲述开发人员、程序员、黑客、极客和开源反叛者如何彻底改变技术前景的真实史诗。该音频博客邀请到了谷歌、NASA 等重量级企业的众多技术大牛共同讲述开源、操作系统、容器、DevOps、混合云等发展过程中的动人故事。本文是《代码英雄》系列播客第一季（6）：揭秘云计算的音频脚本。“没有什么云。这只是别人的电脑。”确切地说，还是服务器。大型云提供商提供了一种相对简单的方式来扩展工作负载。但真正的成本是什么？在本期节目中，我们将讨论云中的战斗，说谁是赢家还很早。Major Hayden、微软的 Bridget Kromhout 等人会帮我们了解这场正在酝酿的风暴，以及它给开源开发者带来的影响。Saron Yitbarek：Ingrid Burrington 想要走进云的世界。不是真实的“一朵云”哟，而是“云计算”的世界。Ingrid Burrington：我不知道互联网真正的样子，我也不认为互联网是我想象中的那样，所以我想尝试找出它真实的模样。00:00:30 - Saron Yitbarek：Ingrid 是一名记者。在她为《 大西洋 Atlantic 》撰写的系列报道中，她讲述了自己参观一个数据中心的经历，一个我们网络生活越来越依赖的地方。她在那里并不是走马观花逛一圈，而是浸入式的复杂体验。首先，她要拍照登记，申请访客身份卡。然后，要通过安检站，签署一份保密协议。最后，她才能去看机房。机房基本上就像个仓库，就像超市的那样，但比它大得多。00:01:00：整个机房看起来有种别样的美，所有的东西都整齐陈列着。一堆光鲜靓丽的服务器上，连接着通往世界各地的光缆，光缆沿着天花板上的轨道整齐布线。正在通讯的光电信号闪烁着点点神秘的蓝光，仿佛粒子加速器一样。但本质上，它是一排排如猛兽般动力强劲的服务器。00:01:30：数据中心每年消耗的能源比整个英国还要多。这就意味着它会释放惊人的巨大热量，这就是为什么当 Ingrid 环顾四周时……Ingrid Burrington：对的，我发现这座建筑主要的设计理念，是建造最理想最完美的暖通系统（HAVC）。00:02:00 - Saron Yitbarek：Ingrid 发现围绕数据中心的一切都强调经济实用，简单说就是一堆主机、一摞风扇、一大块租金便宜的地皮、用很多便宜的用来冷却的工业用水。完全没有“云”这个词本身散发的浪漫，但另一方面，我们的生活、我们的工作以及我们的话语，都在这个服务器的仓库里搏动着。00:02:30 - Ingrid Burrington：是的，这有点超现实主义。并不是说我就知道那台机器里存有某人的电子邮件，这台机器又存有别的东西，而是我意识到周围有很多看不见的事情正在发生，我能听到服务器的呼呼声和大量运算产生的微小噪声。说来奇怪，我开始对工业充满敬畏……00:03:00 - Saron Yitbarek：时刻要记住，在我们使用服务的时候，它们的基础，这些建筑都在某个隐蔽的角落嗡嗡运作着。以前，当我们谈论在云上存储东西，或创建应用程序时，我们有时会自欺欺人地认为它就像天上的云，是没有人能触碰的存在。但现实恰恰相反，一旦我们认识到云数据中心真实存在于某地，我们就会开始思考谁拥有着云了。那么是谁在控制这些服务器、线缆和风扇呢？00:03:30 - Saron Yitbarek：它们是如何改变开发者构建未来的方式的呢？云让我们紧密地连接在一起。我是 Saron Yitbarek，这里是《代码英雄》，一档由红帽公司推出的原创播客栏目，第六集，揭秘云计算。Chris Watterston：没有所谓的“云”。那只是别人的电脑。00:04:00 - Saron Yitbarek：Chris Watterston 是一名设计师，他对围绕云产生的误解很是恼火。这个词模糊了数据中心的形象，就像 Ingrid 参观过的那个一样。当 Chris 把这句口号做成贴纸时，他因此成为了网红。“没有所谓的‘云’，那只是别人的电脑。”这句话现在出现在 T 恤、帽衫、咖啡杯、海报、杯垫和许多主题演讲上。00:04:30 - Chris Watterston：人们完全不理解云是什么，还用的很欢乐又心安。他们可能完全误解了云，不明白他们的数据实际上是穿过铜轴电缆、或者光纤，来到某一个实际上由他人管理和拥有的存储设备。显然，对于一些有需要隐藏的私人内容的人来说，这是相当可怕的隐患。00:05:00：所以，下次你想把东西扔到云上的时候，想想 Chris 的贴纸吧。想想你到底要扔到哪里去。在 App 上工作也是同样道理，声称 App 跟服务器无关的说法都是骗人的，根本没有无服务器的 App。云就是别人的服务器、别人的电脑。不过云这件事情从某种意义上说，是一种成长。说到成长，在整一季节目里，我们会一直追溯开源的成长与变革。00:05:30：从最初的自由软件运动到 Linux 的诞生，直至今天，开源工具和方法把我们带到了远离家园的云端。可以打个比方，一个人找房东租房，他需要签合同、搬进去、把房子整理成自己的居所。当开发者寻找云供应商时，他们也在做着同样的事情。这就是我们现在所处的情况，全世界的开发者都在转向各种云上线产品，然后开始明白租赁的真实含义。00:06:00：严肃地发问一句，为什么我们一开始就急着跳上云端呢？Brandon Butler：因为开发者不想维护 App 运行所需的设备。Saron Yitbarek：这位是 Brandon Butler，《 网络世界 Network World 》的高级编辑，多年来致力于研究云计算。00:06:30 - Brandon Butler：开发者想要开发 App，部署 App，并只在乎 App 能不能正常运行。我们已经看到云孕育的，越来越多的服务，例如无服务器计算、功能即服务、容器和容器管理平台，如 Kubernetes。Saron Yitbarek：顺便打个广告，想了解容器和 Kubernetes，请看我们的上期节目。Brandon Butler：所有的这些成果都有助于抽象化 App 运行时所需要的底层基础设施。这将是一个可以在未来可预见的持续发展的趋势。00:07:00 - Saron Yitbarek：云拥有巨大吸引力的部分原因，可以用“超大规模”这个词来解释。通过云为你提供的所有基础设施，你可以根据自己的需求，快速创建和定制自己的服务器。你不再需要购买自己的设备，你只需要租赁你想要的规模的云。Brandon 解释了“超大规模”对初创公司的具体帮助。00:07:30 - Brandon Butler：使用公有云进行 App 开发的整套模型，对开发者来说是一个巨大的进步。它曾经成就了一系列全新的初创公司，这些初创公司也已经成长为大众都喜欢投资的公司。想想 Netflix 这样的公司，它的大部分后端都运行在亚马逊的以及其他的云上。00:08:00 - Brandon Butler：这些公司现在如此壮大的原因，正是因为他们在使用云。因此，云对开发者的影响是不可轻视的。云已经成为过去十年，App 开发领域的主要转变。Saron Yitbarek：Nick Bash 是 Meadowbrook 保险公司的一位系统管理员，他还记得在云计算诞生之前，调整基础设施是多么痛苦的事。00:08:30 - Nick Bush：以前，有些人想出新项目的点子，我们会说，“这需要硬件支持，而我们没有。”他们会问，“那么我们该怎么办？”我们以前总是受到内存的限制，尤其是运行虚拟机软件，通常是最困难的部分。我们经常需要在任意时间启动虚拟机，但能随时启动的虚拟机数量总是不多。所以我们不得不花很多钱买新处理器、新内存、新硬件，或者花 5000 美元加新的东西。一旦我们从几个不同的供应商得到报价，就得报给管理层，他们要花时间审核。这样，仅仅是购买硬件都需要漫长的过程。00:09:00：更不要说构建虚拟机，再反复考虑和测试等等。所以其实我的意思是，有了云，我们可以在几个小时内完成以往需要几个月完成的前期工作。让虚拟机运行起来，第二天就交付给其他人。所以这是一个很大的转变。00:09:30 - Saron Yitbarek：在拓展性、速度和价格这些方面，云计算相当吸引人。还是拿租房作比喻，云就像可以让你免费得到一个管家和司机的服务，你很难对云计算说不。如今市场上有主要的四家壮志雄心的云供应商在开疆拓土。他们都想成为你在云上的“新房东”。但是且慢，每个租过房子的人都知道，租房和买房不一样。你不能自己拆掉一堵墙，或者安装一个新的按摩浴缸，你得通过房东来干这些事。00:10:00：那么 Brandon Butler 先生，我们使用私有云，在某种程度上会受制于一家独资公司。这会不会对我们不利？00:10:30 - Brandon Butler：当你使用云供应商的私有云时，你有不同的使用方法：你可以拥抱开源标准和开源平台，并且在云上运行开源软件，即便这是个私有云；你也可以使用不是开源的原生工具，这些工具可能在公有云上有更好的集成。因此，这是终端用户必须考虑的一个重大问题：我是想使用云供应商的原生工具，这些工具可能与这个云供应商提供的服务，以及其他服务更好的集成；还是拥抱开源标准，使用一个开源平台，享受更大的自由度，在自己和其他提供商的平台上也能运行？00:11:00 - Saron Yitbarek：随着我们所依赖的云技术不断发展，四大云供应商相互竞争，我们作为开发者有了新选择。我们是放弃一些独立性，依靠单一的云供应商来保护我们的工作，还是选择另一条路，在保持独立性的同时最大化云的拓展性?00:11:30：换句话说，我们能否在租房合同上写明，“房客有权任意处置该房 ，例如拆墙或其他装修”？00:12:00：那么，放弃一点点独立性又有什么问题呢？如果你是一名开发者，可能没受到什么影响。因为大多数时候都有运维团队在背后监督开发者们小心行事，他们格外留心于具体细节。这位是 Major Hayden，他是 Rackspace 的首席架构师。00:12:30 - Major Hayden：有些时候，开发者经常发现他们有各种不同的需要，比如某些专门化的存储，或者可能想要一定大小的虚拟机，或者想要一种云供应商未能提供的东西。还有一些东西可能开发者没有第一时间想要，但你认为他们需要的，对这些东西你还要进行成本效益分析。好吧，虽然使用公有云我们有很大的灵活性，但我们到底付出了什么代价？Saron Yitbarek：Major 指出了另一个问题，这个问题超越了实用性，并且触及了像我这样的开发人员所信奉的核心，那就是开源实践。即使云供应商允许你使用自己的开源工具，但云本身并不是开源的00:13:00 - Major Hayden：因此，开源对于云来说是一个需要处理的有趣议题，因为有大量的开源技术支持用户去高效地利用公有云，但并不是所有公有云都把它们的基础设施开源了。举个例子，如果你使用亚马逊，你无法知道他们使用的什么技术来构建虚拟机和其他服务。所以，你不可能对这些东西做点调整，或者很难了解幕后的机理和运作方法。00:13:30 - Saron Yitbarek：如果你听过我们之前关于 DevOps 的节目，你会知道打破开发者和运维之间的壁垒会让我们获益良多。架构师 Major 刚给了我们一些真知灼见，接下来的这位是系统管理员 Nick Bush，他所在的团队正准备向云端迁移。开发者们已经厌倦了每五年一次硬件换代，每个人都喜欢尽可能快地扩展，而 Nick 想指出一些开发者可能没有考虑到的东西。00:14:00 - Nick Bush：是的。我想说的是，云是存在延迟的。举个例子，就像远在蒙大拿的数据库服务器，对比我在街上用着 10-gig 的网络，本地数据库调用还是会花费更长的时间。要达到低延迟的云内数据库调用还有很长的路要走，还有其他的安全问题，因此我们暂时不需要担心物理上的前提。在本地，我们尚可以控制我们的硬件和其他类似的东西。一旦你进入了云端，你就得考虑连接问题。00:14:30：我认为，你也得稍微担心一下安全问题，虽然这更多也是一个成本问题。你想要按月租一个云端虚拟机，要求网速快并且带有充足的存储空间。每千兆的传输和存储都是要花钱的，以前我们都是一次性买断一个机器，我们只要买好了一个云端虚拟机，就可以存储和使用。只要余额和储存空间都还足够，我们就不用付更多钱。00:15:00 - Saron Yitbarek：声明一下，Nick 确实认为此事利大于弊。他只是不想让我们认为这是个完美的系统。如果你的云供应商宕机，而你想在其他云中重新部署应用程序，会发生什么情况？或者，如果在不同事务上使用不同的云能带来价格优势呢？运维人员提出的这些问题都可以被总结于一个词汇下，也就是 供应商依赖 vender lock-in 。你可能很熟悉这个词。00:15:30：供应商锁定的意思是，在别人的服务器上构建业务会让你越来越依赖于他们的平台。你被绑定在这个平台了。可能突然之间，你被迫升级系统、付出更多成本、接受新限制，你变得身不由己。你懂的。00:16:00：当我们都戴上 DevOps 的帽子时，我们开发者和运维就可以一起工作，面对供应商锁定，对症下药，但当我们沉浸在自己的代码中时，我们有时会忘记观览全局。为什么不找个折中方法，同时在公共和私有云上工作呢？终极解决方案可能是混合云，对于两方而言这都是最佳选择。我给 Bridget Kromhout 打了电话，询问她的看法。她是微软员工中的头号云开发提倡者，对这方面非常了解。00:16:30：如果我们考虑一种混合的解决方案，既包含一些公有云，也包含一些私有云，这是两者之间的完美平衡吗？对于开发者，这是理想的解决方案吗？如果云是混合的，那么我就能想做什么就做什么，想用什么工具就用什么，同时仍然可以从大型公有云提供商那里获得一些好处。00:17:00 - Bridget Kromhout：当然是的。举个例子，我有朋友在制造业中从事高性能计算研究工作，他们有各种各样的绝密资料，像 NDA 这样的东西，不适合放在公有云上。于是，他们可能会在自己的数据中心跟这些资料打交道，处理客户数据，或者研究数据，等等，也可能有其他的……00:17:30：他们也有适合放在公有云上的其他工作资料，不过我想这个问题就……有时也会有这样的问题，公有云是否适合某些工作资料，比如，如果你计划使用 InfiniBand 同步你的不同笔记，你能在公有云中做到什么程度呢?Saron Yitbarek：但这并不一定是完美的解决方案。Bridget 认为混合云也有自身的弊端。00:18:00 - Bridget Kromhout：混合云的问题在于，有时，人们欺骗自己，认为他们可以接受一些实际上不工作的东西，所以如果他们之前等待两周来获得一个虚拟机，如果有人经历过一个完整的这样的情况，并且这个虚拟机还不能正常工作的话，就会有一堆的人由于失望而开始和他们的公有云提供商谈论信用卡问题了，然后他们会试着把这些东西粘合在一起，但是还是有数据来源和延迟的问题，我不是很确定，脱同步的数据集有很多出错的方式。我认为，如果你和云服务提供商合作，你可以有一些可用的直接沟通这样你就可以更好地同步数据，这样是很有帮助的。00:18:30 - Saron Yitbarek：是的。当我们在开源的语境下谈到云的时候，我觉得，作为开发者，可能大多数人，都喜欢开源；如果你还在听我们的播客节目，就更是这样。对吧？你希望一切都是开放的，透明的，还向大众共享代码；但我觉得，当我们谈到云计算，因为它不会给人感觉是代码库，不会让人觉得云本身是个项目，它是环境，是可以用来帮助我们运行代码的东西，开发人员们还会坚持要让它像是传统的项目和代码库一样开源、透明吗？Bridget Kromhout：我觉得这是一个非常合理的问题，我觉得这可能也会归结到你到底要注目于技术栈的哪一部分。想一想，你对芯片的了解有多少？你又能在何种程度上操控它们？Saron Yitbarek：是的，这是真的。你说得不错。Bridget Kromhout：他们坐在那里，他们有硅，他们也有秘密。他们不一定会将后者给你。00:19:30 - Saron Yitbarek是啊，硅和秘密。顺便说一句，这是个好播客的名字。Bridget Kromhout：对吧？也许问题不在于是否一切都是开放的，而在于你需要开放的一切是否都是开放的，以及，当服务没有完全按照正确的方式运行时，你的服务提供者是否会对你保持信息透明，因为不该出的错误就是不该出。00:20:00 - Saron Yitbarek：所以，我得到了 Bridget 作为一个公有云提供商的观点，她提出了一个有趣的观点。开发者在云上的控制需要多细？至于我，我的看法不一样。我不想为了一点公有云的优势而牺牲的是什么呢？比如说，一个应用在公有云上运行，然后，等一下，现在我已经扩大了规模，或者有新的合规要求，我的应用在私有云上更合适。00:20:30：把应用从一个地方迁移到另一个地方之前，我需要知道它在迁移之后仍能工作。我需要知道它是以原先同样的方式打包，以同样的方式配置。换句话说，我需要知道从一个云跳到另一个云总是可能的。除此之外，我们还有什么选择？仅仅锁定在一家云提供商？一个甚至可能完全垄断整个行业的供应商？不能选择迁移到另一个环境的话，这就像把一只手绑在背后写代码一样。00:21:00：所以，我们不想欠下任何一朵云的人情，并且被它困住。我们希望在合适的时候能够在云间跳转。用摇滚传奇 皇后乐队 Queen 的名言来说，“我想要挣脱束缚”。我们希望能够获得公有云的绝佳拓展性，但又不放弃使用开源工具和方法所带来的自由。00:21:30：有个好消息。混合云的建设正在顺利进行中。Mike Ferris，红帽公司的的业务架构副总裁，他给出了一个很好的解释，说明了混合云是如何帮助我们保持开源精神的。00:22:00 - Mike Ferris：开源是世界上几乎每一个云服务的基础，现在即便不是大多数，也有许多世界上应用程序的基础设施和工具是从这里发展出来的，管理能力，以及人们用于构建、部署应用程序（无论是任务关键型，还是非任务关键型应用程序）的工具都是基于开源的。00:22:30：混合云的概念和这一点非常兼容，这代表着，我们可以在混合云中处处使用开源工具，也可以最大程度地发挥出基础设施的优势。这是基于以下的一点事实：开源通过其在当今的强大影响力，能够在一定程度上定义下一代的开发模式。Saron Yitbarek：我认为云计算本身具有开放的意愿。在本季节目中，我们花了很多时间讨论开源的起源。你甚至可以证明，某些版本的混合云是这些相同理想的延伸。00:23:00 - Mike Ferris：在过去几十年里，开源开发活动的变化是越来越多的人参与进来了，包括像微软、IBM 这样的行业巨头。你知道，举个大公司的例子，他们要么使用开源软件来提供产品，要么构建开源软件并将其回馈给社区，或者两项都参与。00:23:30：这些来自客户的重要需求通过那些大公司涌入，确实帮助了开源世界的发展，使之从最初设想中 Solaris 和 UNIX 的替代方案，发展为不仅是社区和业余爱好者使用，而且肯定也是部分任务关键型企业使用的基础。00:24:00 - Saron Yitbarek：开源正在快速成长。现在，我们有机会确保我们记住我们从哪里来。当我们跃上云时，我们可以为自己声明开源的部分，以此来保持云的开放。幸运的是，由于有了 OpenStack® 平台这样的工具，在云之间构建开源桥梁变得更加容易了。Rackspace 的首席架构师 Major Hayden 描述了它的起源。00:24:30 - Major Hayden：OpenStack® 来自于 Rackspace 和 NASA 的合作：“你看，这是一种构建基础设施的新方式，我们应该公开进行。我们应该得到更多的投入，应该和更多的人交流。我们应该得到更多的用例。” OpenStack® 是一组应用，它能很好地协同创建基础设施，并全面管理基础设施。无论你需要复杂的虚拟机、复杂的网络，还是有奇怪的存储要求，OpenStack® 通常可以满足大部分的要求。Saron Yitbarek：Major 指的是，加入一些开源知道如何提供的东西：也就是适应性。00:25:00 - Major Hayden：在我看来，OpenStack® 是一组相互连接的开放源码应用程序，它允许你构建你想要的基础设施。如果它不能建立你想要的，那么你可以进入社区，对它做出改变。我喜欢我去和顾客交谈时他们的反应，他们说，“我们想改变这个。我们想要改变这一切。”我们会说，“嗯，你可以。”Saron Yitbarek：我们如何确保这样的的适应性被包含在明天的云中呢？就像我们在之前的节目中谈到的许多问题一样，这需要强大的社区。有请 Brandon Butler，《网络世界》的高级编辑。00:25:30 - Brandon Butler：例如，我们已经看到了云原生计算基金会的成立，这个基金会制定标准，推广应用容器的使用，并创造了 Kubernetes。我们也看到了 OpenStack 基金会的成立，好将 OpenStack® 用户聚集在一起，讨论创建开源基础设施服务云时的最佳实践。00:26:00：支撑这些开源社区的社群对于开发下一波开源工具，学习如何最好地使用这些开源平台的，以及鼓励公有云厂商接受这些开源标准都非常重要。Saron Yitbarek：一旦我们开始构建混合云，并使其尽可能地开放，潜力似乎真的无穷无尽。Major，请说。00:26:30 - Major Hayden：最让我兴奋的是看到更多的东西可以聚集在不同的云之上。例如，OpenStack® 提供了一个很好的基础设施基础层，但是你可以在它之上做很多事情。我想有时候不同的公司会采用 OpenStack®，然后说:“伙计，我现在该怎么办？我的自由程度太高了。我不知道该怎么办。”这就像你有一个装满食物的冰箱，你会想，“啊，我不知道该做什么菜。”00:27:00 - Saron Yitbarek：我喜欢这个问题。Chris Watterson 告诉我们的可能是对的。Chris Watterston：没有所谓的“云”，那只是别人的电脑。00:27:30 - Saron Yitbarek：但故事并未在此结束。我们要与混合云一起跨入下一章。创建混合云应用的关键可能还没有被破解。跨多云管理任务，对于今天的代码英雄们来说将是一项艰巨的任务。会有很多尝试和错误，但这是值得的，因为我们知道的唯一的一件事是，保持开源意味着开发人员总是可以构建他们想要工作的世界。这种灵活性正是紧紧抓住开源最擅长的叛逆精神的诀窍。00:28:00：下一集是我们本季的最后一集，我们将以一种让你惊讶的方式，从宏观角度来看开源作为一种全球现象是什么样的。我们也将展望开源的未来，我们的开发人员如何保持像 Linus Torvalds 这样的英雄的精神，即使当他们正在重塑他们的行业时。00:28:30：《代码英雄》是一档红帽公司推出的原创播客。想了解更多关于本期和往期节目的信息，请访问 RedHat.com/CommandLineHeroes 。在那里你也可以注册我们的新闻通讯。想免费获得新一期节目推送，请务必订阅我们。只要在苹果播客、Spotify、Google Play、CastBox 和其他播客平台中搜索《代码英雄》，然后点击订阅，你就可以第一时间收听新一期。我是 Saron Yitbarek。感谢你的聆听，编程不止。OpenStack® 和 OpenStack 标志是 OpenStack 基金会在美国和其他国家的注册商标/服务标志或商标/服务标志，并经 OpenStack 基金会许可使用。我们不是 OpenStack 基金会或 OpenStack 社区的附属机构，也没有得到 OpenStack 基金会或 OpenStack 社区的认可或赞助。什么是 LCTT SIG 和 LCTT LCRH SIGLCTT SIG 是 LCTT 特别兴趣小组 Special Interest Group ，LCTT SIG 是针对特定领域、特定内容的翻译小组，翻译组成员将遵循 LCTT 流程和规范，参与翻译，并获得相应的奖励。LCRH SIG 是 LCTT 联合红帽（Red Hat）发起的 SIG，当前专注任务是《代码英雄》系列播客的脚本汉化，已有数十位贡献者加入。敬请每周三、周五期待经过我们精心翻译、校对和发布的译文。欢迎加入 LCRH SIG 一同参与贡献，并领取红帽（Red Hat）和我们联合颁发的专属贡献者证书。via: https://www.redhat.com/en/command-line-heroes/season-1/crack-the-cloud-open作者：Red Hat 选题：bestony 译者：LikChung 校对：acyanbird本文由 LCRH 原创编译，Linux中国 荣誉推出
前段时间，笔者参加了 UCloud 在京举办的 TIC 2019 大会，适逢 UCloud 实验室负责人叶理灯的演讲结束，就容器计算方面和他进行了短暂沟通。叶理灯是国内在云计算方面有深入研究和实践的资深专家，我觉得他的一些观点和看法值得分享给大家了解。叶理灯，UCloud实验室负责人叶理灯，UCloud 实验室负责人。现负责 UCloud 创新产品研发，专注面向企业的云计算产品的研发及运营。叶理灯拥有 10 年以上丰富的互联网研发经验，先后任职于腾讯、盛大云等互联网公司，从事海量分布式后台系统研发及运营工作。定制违背了 K8S 初衷，提供原生 K8S 产品记者：在官方的 K8S 发行版之上，各方云厂商提供 K8S 服务时都有一些自己的定制和调整，今天大会上提及的 UCloud 的 K8S 发行版 UK8S 主要做了哪些定制，有什么特色呢？叶理灯：如果说定制 K8S 的话，其实是违背了 K8S 的初衷。我们并没有定制 K8S，我们是基于公有云给用户提供了原生的 K8S 产品。在公有云上提供原生的 K8S，其实要做很多的工作，例如与公有云的计算、网络和存储的整合，给用户提供一个开箱即用的原生K8S集群等等。我为什么说不应该定制呢？因为大家知道 PaaS 发展到今天，一直存在的一个问题就是供应商绑定的问题。而 K8S 之所以那么有生命力，之所以迅速流行，是因为它提供了一个开源的标准，让用户使用 K8S PaaS 平台，可以避免厂商绑定。也就是说你的服务在某个服务商的 K8S 上运行，可以无缝的迁移到另外一个服务商。作为云厂商其实最重要的工作是，基于我们自身云平台的体系，提供原生的 K8S 给用户使用，帮助他们减少在集群管理和资源整合方面的工作和投入。例如，我们网络能力、存储能力和计算能力的整合，就是让用户享受到原生K8S的好处，同时避免了很多运维的负担。公有云的 K8S 处在底层 IaaS 和上层应用之间，一方面向下整合IaaS能力，一方面向上托管客户的应用。在整合 IaaS 方面，不改变 K8S原生特性，因为 K8S 本身架构足够开放，例如在我们实现的网络插件，是基于我们 IaaS 的 VPC 网络，让 pod 可以和我们托管区和物理云区域打通，这是我们 IaaS 能力在 K8S 产品上的体现，算是我们的特色之一，但这是在 K8S 体系支持下的插件方式实现的，不影响我们提供原生 K8S；在应用层面，厂商也可以基于 K8S 提供一些周边的功能以帮助用户提高效率，但它和提供一个一致的 K8S 环境不矛盾。另外一方面，如果说定制的概念是指基于 K8S 本身开发体系所提供的插件机制去做二次开发，那每家厂商都要定制，因为 K8S 本身不是一个产品级就绪的环境，需要使用者去适配网络和存储还有计算，因为每个公有云厂商基于自己的 IaaS 去提供 K8S 产品，必然要去开发插件。综上，向用户应该提供原生的、标准的 K8S 产品，但底层应该基于自身 IaaS 平台去定制，本质还是为了提高用户使用 K8S 的效率，让用户开箱即用。K8S 落地挑战：改造成本和人才问题记者：你觉得目前国内云厂商提供的 K8S 集群编排服务在推广方面目前欠缺的是什么？是什么阻碍了客户进一步去使用这些容器集群服务？叶理灯：K8S 以容器技术为核心、以容器镜像为打包标准的特点，意味着如果要迁移到这个体系下，客户需要将软件做容器化打包和微服务改造，这个是有成本的。K8S 的特点决定它是运维和研发之间的桥梁，这样就要求公司的研发过程需要跟着改造。我们看到很多公司的运维人员有动力去推动，而研发人员则没有动力，因为它改变了研发的习惯和流程，增加了负担；当然也有的公司是研发希望用 K8S 管理应用，而需要运维跟着变。这样导致迁移到 K8S 的工作较重，但一旦这个阶段过去了，迁移后的效率和成本优势就体现出来了。因此，这是个新技术落地的问题，涉及到用户教育和习惯的改变，这个需要社区和商业公司一起完成。而且每家公司的技术路线和文化不一样，上 K8S 的路径也不一样，所以没有一个放之四海皆准的最佳实践，但随着容器和微服务逐渐落地，K8S 作为事实标准，会逐步普及。除了改造业务的成本，另外一方面是 K8S 人才比较缺乏，不同用户的情况不一样，有些用户的运维人员本来就很少，不可能专门抽出一两个人去做 K8S，以及用户又担心它出问题谁来帮我解决？其实，应该是云厂商再往前走一步，除了帮用户构建一个 K8S 平台，还要帮助解决很多技术上的问题。 UCloud 现在就是这么做的，一个用户进来，我们会拉一个群，他们所有技术问题我们帮他们解决。在落地方面，在人才和 K8S 本身对用户架构改造方面，我们可以多做点工作，帮助客户培养K8S的运维人员和为用户制定架构迁移的方案。但我相信随着技术的发展和普及，越来越多人懂 K8S。最后，K8S 本身也在发展，K8S 刚推出的时候是为了让大家重新面向应用来运维，但是大部分用户用 K8S 同时管理集群里的节点和应用，就会同时有两个负担。我觉得目标应该是用户直接拿一个容器就可以跑起来，而不用知道它的节点在哪里，即 Serverless 形态。一旦这种技术更加成熟，对容器技术的落地也有很大的推动作用。另一方面，Serverless 形态也给用户节省了大量的成本，按需付费，免去用户的运维成本。我觉得 K8S 的落地已经是个趋势了，是不可避免的，但是 K8S 本身是要往前进步，它的革命还没有完成。容器与 Serverless：覆盖场景不同，非替换关系记者：你觉得现在目前 Serverless 的发展对于容器这种创新技术的迭代升级有什么影响？是不是可以让容器更加的轻量化？叶理灯：不完全是这样，其实 Serverless 刚出现的时候是针对计算的。计算分很多层次，有物理机、虚拟机、容器和 Serverless。Serverless 刚出来的时候，它等同于 FaaS，有一个对标的产品叫 Lambda。Serverless 出现的动力是，由于云计算的发展，带来了如对象存储等很多丰富的中间件，Serverless 概念的提出是希望应用开发者可以不用写后端逻辑，直接把逻辑写在客户端，组合云上的一些服务来完成业务逻辑，这样就没有管理后端资源的负担了。但是后来发现很多时候还是需要后端代码的，所以就演变成如果有后端代码，就拆成函数，托管在 FaaS 服务中，这样的话，你依然是不用管理服务器的，你用的还是一个个服务，没有服务器管理负担。这个概念在不断进步，2017 年的时候 AWS 提出了一个新的概念，重新定义了什么叫 Serverless，只要一个服务具备了四方面特性：免运维、按需付费、高可用和自动扩容，这个服务就是个 Serverless 的服务。所以 Serverless 这个概念可以对应 FaaS，也可以代表一种架构，也可以代表一种服务的形态，例如 Aurora Serverless 就是把一个数据库的服务变成 Serverless 的。容器和 Serverless 的区别在于，Serverless 是无容器的，除了不关注服务器，也看不到容器。两者是面向不同场景的，并不是互相替代的关系。FaaS 的特点，接收一个请求拉起一个函数执行，函数是无状态的，它的执行地点也不固定，这意味着延时相对于常驻进程要高，对一些延时敏感的地方它是不合适的，但是有些场景是非常合适的。我举个例子，在 IoT 场景中，有几十万的设备，为了节省电源，它们大部分时候处于睡眠状态，如果用传统的架构去为这几十万设备服务的话，肯定要考虑并发连接的时候，应该有多少计算资源去服务，这很浪费成本。所以最好的方式，来一个请求就拉一个函数服务一下，这就很节省成本。这是按需的，但它不是完整的替换，相当于说 IT 领域里面不同的场景其实是使用不同的服务。我们推出这个服务的原因，背后的动力还是成本和效率，在某个场景上用某个解决方案它的成本更低、效率更高，而不是说新的东西会替换老的，因为不同场景需求是不一样的。K8S 接受的用户比 FaaS 的用户更多，因为 K8S 的面更广，它覆盖的场景更多，但是它不是替换的。记者：目前，国内客户对 Serverless 和 PaaS 的接受和普及程度是怎么样的？叶理灯：我觉得在国内还是处于起步和用户教育阶段。2014 年 Lambda 推出的时候，它的渗透率是 72%，什么原因呢？有 72% 的人用的 Lambda，我们有个 Serverless 产品叫 UGC，腾讯有 FaaS，阿里也有 PaaS，目前都不算是渗透率很高。原因有几个。第一、国内用户对新技术接受程度是比较低的，可能是习惯问题，国内的IT的发展水平跟国外也有差距，有 5、6 年差距；其次，对国内用户来说，把一个架构改成 Serverless 架构，其实成本是很高，而且改造的收益和规模相关；最后， FaaS 本身不是一个独立能起作用的产品，你会看到 Lambda 推出时，不是个独立的产品，它是体系的副产品，例如其他产品要开放事件源，通过事件去触发 Lambda 函数执行。只有产品体系开放足够多的事件源，FaaS 才能渗透到整个平台里面去，才能覆盖更多场景。我们国内的厂商还没有做到这一点。AWS 刚推出 FaaS 时，它主要是 S3 上的图片处理，不是每个用户都有这个场景，因此渗透率不高。随着 API 网关方式调用，和体系开放事件源越来越丰富，覆盖场景越来越多，我相信 FaaS 会逐步落地。在现场的演讲中，提及了一个叫 USQL 的产品，就是 Serverless 方式的大数据分析工具，StepFlow 用 Serverless 的方式编排你的程序，这些都是 Serverless 的服务。未来，虚拟化容器值得关注记者：目前 UK8S 的主要发展方向有什么路线图吗？UK8S 是否已经开源？叶理灯：有的，例如说我们让 K8S 管理更多的资源、异构的资源，还有物理机、GPU 资源，希望用户可以通过 K8S 对这些资源进行统一地管理。另外，再往业务层面走会提供一些微服务的基础设施，通过产品化，一方面减轻用户的资源负担，另一方面减轻应用层的架构负担，从而尽量减轻用户迁移到 K8S 的负担。目前 UK8S 插件还属于正在整理开源的阶段，还没有正式的发布，但我们已经小范围的开放了代码，把我们的插件代码分发给到很多用户，但公开的开源，我们希望做的更加规范一点再进行，因为我们的插件还在不断的迭代中，有一天我们觉得达到一定程度的稳定了，我们就会进行公开开源。记者：你认为未来 K8S 以及容器的技术方向上比较值得重点关注的技术点是什么？叶理灯：虚拟化容器。未来的方向我们相信是 Serverless，这个也是云计算应该做的，持续地为了用户提高效率和降低成本。刚才我也说了，现在用户使用 K8S 还是有资源管理的负担的，不是完全的面向应用来运维，所以需要解决这个问题，让计算节点对用户透明。用户通过 Docker 镜像和配置文件就可以把一个应用跑起来，而不用去管资源问题。这需要我们去提供一个海量的集群去跑客户的应用，这就存在一个问题，多个客户的应用可能跑在一个节点上，考虑 Docker 本身的隔离问题，我们需要类似虚拟化容器的计算方式去做隔离，同时又希望拥有 Docker 本身轻量级快速启动的效率，现在看来，虚拟化容器是比较符合这个需求的。尾声通过和叶理灯的交谈，梳理了我对云计算、容器技术和 Serverless 等方面的一些认识，作为一个几年来亲自践行云计算发展，并有深入探讨和研究的专家，他的观点和认识或许值得从业云计算行业的技术人员参考。