亚马逊网络服务昨天
宣布全面启动其基于Kubernetes的云服务-EKS(用于Kubernetes的亚马逊弹性容器服务)。 它
于去年11月首次
宣布 (在AWS
加入 Kubernetes的CNCF之后不久),但随后它具有预访问状态。 EX背后隐藏着什么?
Amazon EKS是现成的Kubernetes,已在AWS云环境中部署和管理。 您可以将EKS称为
托管服务 (或托管服务)。 这个市场(对于Kubernetes)是一个相当新的市场,但是它已经比知名的Google Kubernetes Engine(GKE)和Azure Kubernetes Service(AKS)更为广阔。 总计至少有十几个来自大型IT公司(不是Red Hat,IBM,Oracle,Pivotal等)的
正式“文档化”建议。
与上次一样,亚马逊的公告自豪地指出(根据
CNCF官方统计 )“ AWS是Kubernetes的领先环境”,因为使用Kubernetes的公司中有
57%的公司将集群
托管在Amazon云中 。 该数据是对参加KubeCon + CloudNativeCon北美会议(2017年12月)的550位Kubernetes社区代表进行调查的结果。 CNCF在其重大活动中定期收到此类数字,AWS的百分比正在稳定增长。 值得澄清的是,该百分比是多次采样的结果(即,相同的K8s用户在大多数情况下同时与其他平台一起工作)。
如您所料,EKS中的关键功能与与其他AWS云服务/功能的集成有关。 以下是它们的列表:
- 多可用区 -实际托管的 Kubernetes控制平面(更确切地说是kube-apiserver和etcd)的高可用性。 位于AWS设施并自动进行服务:节点本身在发生跌落时会被替换,并且也会自动打补丁/更新。 通过在AWS的三个可用区中分布控制平面来实现可访问性。
- 使用Heptio Authenticator进行身份验证,该功能提供与AWS Identity and Access Management的集成(即,可以使用IAM中的角色)。
- 支持用于流量路由的不同负载均衡方法:AWS网络负载均衡器,AWS应用程序负载均衡器,弹性负载均衡器。
- 使用Amazon Elastic Block Store (EBS)卷将数据存储在Kubernetes(PersistentVolumes)中。
- 能够将Route 53中的DNS记录用于Kubernetes集群中托管的服务。
- Auto Scaling支持-AWS Auto Scaling。
- CNI插件,用于在集群中使用弹性网络接口 。
与AWS的其他EKS集成包括AWS PrivateLink和AWS CloudTrail支持(用于日志)。
该
项目的常见问题解答指出,该服务已启动“ Kubernetes的开源版本的最新版本,因此您可以使用Kubernetes社区中的所有现有插件和工具”。 另一个问题表明,目前仅支持
Kubernetes 1.10版 。
最简单地,作者将EKS架构表示如下:

等等-使用EKS的算法:

但是,您可以从
Amazon EKS公告中看到如何尝试运行EKS,该
公告提供了有关创建Kubernetes集群的分步说明(包括屏幕截图)以及AWS文档,该文档在那里准备了30分钟的教程
``部署Kubernetes应用程序 ''。
目前,Amazon EKS
仅适用于美国地区(美国东部(弗吉尼亚北部)和美国西部(俄勒冈)),并且预计“很快”将其分发给其他
地区 ,尽管
按地区提供的服务表尚不提供此服务。
最后,亚马逊声称他们正在改变Kubernetes本身和相关项目(包括上述的Heptio Authenticator以及Virtual Kubelet)的上游代码库。 但是,在这种情况下,
统计数据显然不在他们一边:在Kubernetes代码库的提交数量上,没有任何一家公司是重要的领导者。 另一方面,仅凭这一事实,您就可以冷静地回应有关这样的Kubernetes未来的预测。