借助 Fargate 和 EKS,AWS 甚至比 Cloud-ier 和 Kuberneties-ier

位置:首页>文章>详情   分类: Java教程 > 编程技术   阅读(187)   2024-05-02 16:20:49

在本周的 re:Invent 上,AWS 宣布了一大堆很酷的东西。您应该查看上面的 他们的页面,以了解他们正在做的所有新事物的概览 - 很多,而且其中很多看起来非常有用。如果您想了解更多信息,我的同事凯利·安德鲁斯 (Kelly Andrews) 在这里写了一篇文章,对完整的公告进行了特别的音乐处理。

在 CI/CD 和运营领域,我们很多人突然想到的两件事是 ECS 上的 Kubernetes 支持(他们称之为 EKS)和一项名为 AWS Fargate 的新服务。

由于 AWS 基础设施堆栈和服务可能已经有点令人困惑,有时还会重叠——而且因为我们使用 AWS,许多团队也在使用 Codeship——我们想花几分钟时间讨论这两个新选项以及您可能希望如何使用它们.

EKS 是 Kubernetes 的 ECS

当 AWS 宣布 Kubernetes 支持 ECS(现在代表弹性容器服务而不是 EC2 容器服务——谁知道呢!)时,他们决定也给它一个单独的名称。因此,Amazon Elastic Container Service for Kubernetes(简称 EKS)相当于在 AWS 云上本地运行托管 Kubernetes 的 ECS。

这非常酷,因为到目前为止托管的 Kubernetes 一直由 Google Cloud 提供,最近由 Microsoft Azure 提供,但在 AWS 世界中还没有,这使得 Kubernetes 的采用对于已经建立并投资于 AWS 生态系统的团队来说更加痛苦。

如果您一直在考虑将 Kubernetes 添加到您的堆栈中并且您使用 AWS,那么现在很可能是一个更容易的选择。如果您已经在 AWS 上运行 Kubernetes,您可能会投入一些工作来让 EKS 正常工作(一旦它广泛可用)以简化您的开销。

Fargate 移除机器(但还不适用于 EKS)

接下来是 AWS Fargate。这项新服务应该可以解决基于 ECS 构建的团队的巨大挫败感。

如果您使用过 ECS,您就会知道它在您的 EC2 基础设施之上管理您的容器集群,其方式极大地简化了可扩展性和操作控制。但是,它不做的是管理您运行该集群的实际 EC2 队列。

到目前为止,您需要手动配置和维护队列以在其上运行 ECS,这可能意味着需要处理大量机器设置和(尤其是 AWS)用户策略问题。

Fargate 消除了所有这些开销,使配置机器的需求完全不可见。他们将提供大约 50 种不同的机器默认配置,并根据您的应用程序每分钟请求的内容向您收费——仅此而已。

构建您自己的 EC2 机群仍将为您提供更多选择和更多控制权,但如果您实际上不需要对机器进行过多定制,那么 Fargate 将让您以本地方式告诉 ECS 要启动哪种类型的机器——按需,根据需要——让你继续你的生活。

不过,需要注意的是,Fargate 将无法与 EKS(上面提到的 Kubernetes 的 ECS)一起使用,至少一开始不会。

Fargate 是 Lambda 吗?

Fargate 可能有点像 Lambda 或无服务器技术,因为它具有与这些服务普及的按使用量付费定价模型。但是,Fargate 不是无状态的功能即服务提供者,而是 ECS(以及未来可能的其他服务)的资源抽象和管理层。

Fargate 的最终目标是简化 ECS 等工具的使用,并提高您仅专注于开发的能力,从而减少一层管理。

!注册一个免费的 Codeship 帐户

那么你应该使用这些服务吗?

虽然 AWS 理解起来常常有点混乱,但幸运的是这里的规则并不太复杂。

如果您想在 AWS 上使用 Kubernetes 或目前正在使用它,您可能应该使用 EKS,因为它将简化和自动化 Kubernetes 最难的部分,同时添加 ECS 的所有强大功能。

如果您使用的是 ECS 并且讨厌管理机器,则应该使用 Fargate。它将使 EC2 队列管理脱离您的生活。

如果你在 AWS 上使用 Kubernetes 或想要使用它,而且你也讨厌机器管理……那么你现在就不走运了。 EKS 将要求您像 ECS 一贯那样管理 EC2 队列,因为 Fargate 目前还不适用于 EKS。

总结

借助 EKS 和 Fargate,AWS 正在扩展它们为您简化的内容。这很高兴看到,因为它们使加载更广泛的容器驱动工作流变得更加简单和更具成本效益,同时进一步降低了运营开销。

标签2: Java教程
地址:https://www.cundage.com/article/jcg-aws-even-cloud-ier-kuberneties-ier-fargate-eks.html

相关阅读

Java HashSet 教程展示了如何使用 Java HashSet 集合。 Java哈希集 HashSet 是一个不包含重复元素的集合。此类为基本操作(添加、删除、包含和大小)提供恒定时间性...
SpringApplicationBuilder 教程展示了如何使用 SpringApplicationBuilder 创建一个简单的 Spring Boot 应用程序。 春天 是用于创建企业应...
通道是继 buffers 之后 java.nio 的第二个主要新增内容,我们在之前的教程中已经详细了解了这一点。通道提供与 I/O 服务的直接连接。 通道是一种在字节缓冲区和通道另一端的实体(通...
课程大纲 Elasticsearch 是一个基于 Lucene 的搜索引擎。它提供了一个分布式的、支持多租户的全文搜索引擎,带有 HTTP Web 界面和无模式的 JSON 文档。 Elasti...
解析器是强大的工具,使用 ANTLR 可以编写可用于多种不同语言的各种解析器。 在这个完整的教程中,我们将: 解释基础:什么是解析器,它可以用来做什么 查看如何设置 ANTLR 以便在 Java...
Java 是用于开发各种桌面应用程序、Web 应用程序和移动应用程序的最流行的编程语言之一。以下文章将帮助您快速熟悉 Java 语言,并迈向 API 和云开发等更复杂的概念。 1. Java语言...
Java中的继承是指子类继承或获取父类的所有非私有属性和行为的能力。继承是面向对象编程的四大支柱之一,用于提高层次结构中类之间的代码可重用性。 在本教程中,我们将了解 Java 支持的继承类型,...
Java Message Service 是一种支持正式通信的 API,称为 网络上计算机之间的消息传递。 JMS 为支持 Java 程序的标准消息协议和消息服务提供了一个通用接口。 JMS 提...
Java 项目中的一项常见任务是将日期格式化或解析为字符串,反之亦然。解析日期意味着你有一个代表日期的字符串,例如“2017-08-3”,你想把它转换成一个代表 Java 中日期的对象,例如Ja...
之前,我介绍了spring 3 + hibernate 集成 示例和struts 2 hello world 示例。在本教程中,我将讨论在将 spring 框架与 struts 与 hibern...