将 Lambda 与 Kubernetes 结合使用
您可以使用
AWS Controllers for Kubernetes(ACK)
AWS Controllers for Kubernetes(ACK)
您可以使用 ACK 部署和管理来自 Kubernetes API 的 AWS 资源。通过ACK,AWS为Lambda、亚马逊弹性容器注册表 (Amazon ECR) Registry、亚马逊简单存储AWS服务 (Amazon S3) Service 和亚马逊等服务提供开源自定义控制器。 SageMaker每个支持的 AWS 服务有自己的自定义控制器。在您的 Kubernetes 集群中,为每个您要使用的 AWS 服务安装控制器。然后,创建
自定义资源定义(CRD)
我们建议您使用
Helm 3.8 或更高版本
创建 ACK 自定义资源后,您可以像使用任何其他内置 Kubernetes 对象一样使用此资源。例如,您可以使用首选的 Kubernetes 工具链(包括
kubectl
以下是通过 ACK 预置 Lambda 函数的示例用例:
您的组织使用
基于角色的访问控制(RBAC)
您的组织有一个使用 Kubernetes 清单将资源部署到亚马逊 Elastic Kubernetes Service(Amazon EKS)集群的 DevOps 流程。借助 ACK,您可以使用清单来配置 Lambda 函数,而无需创建单独的基础架构作为代码模板。
有关使用 ACK 的更多信息,请参阅
ACK 文档中的 Lambda 教程
Crossplane
Crossplane
借助 Crossplane,您可以使用首选的 Kubernetes 工具链(例如
kubectl
您的组织想要通过确保 Lambda 函数具有正确的
标签
来强制实施合规性。平台团队可以使用
Crossplane Compositions
您的项目 GitOps 与 Kubernetes 配合使用。在此模型中,Kubernetes 不断将 git 存储库(所需状态)与集群内运行的资源(当前状态)进行协调。如果存在差异,则该 GitOps 过程会自动对群集进行更改。
您可以使用 GitOps 熟悉的 Kubernetes 工具和概念(例如 CRD 和控制器),通过 Crossplane 部署和管理 Lambda 函数。
要了解将 Crossplane 与 Lambda 结合使用的更多信息,请参阅以下内容: