在 Amazon EKS 上挂载 S3 文件系统
您可以使用同时支持动态预调配和静态预调配的 Amazon EFS Container Storage Interface(CSI)驱动程序将 S3 文件系统附加到 Amazon EKS 集群。这涉及安装 efs-csi-driver,它是 Amazon EFS 和 S3 Files 的 CSI 驱动程序。
先决条件
在 EKS 集群上挂载 S3 文件系统之前,请确保您已具备以下各项:
您拥有至少包含一个可用挂载目标的 S3 文件系统。
您已经配置了所需的安全组。
EKS 集群必须与挂载目标位于同一 VPC 中。
Amazon EFS CSI 驱动程序需要 AWS Identity and Access Management(IAM)权限,才能连接到 S3 文件系统并与之交互。有关更多信息,请参阅 用于将文件系统附加到 AWS 计算资源的 IAM 角色。
AWS 建议使用 EKS 容器组身份。有关更多信息,请参阅 EKS 容器组身份设置概述。
有关服务账户的 IAM 角色以及为您的集群设置 IAM OpenID Connect(OIDC)提供商的信息,请参阅为集群创建 IAM OIDC 提供商。
您的设备或 AWS CloudShell 上安装了
kubectl命令行工具。该版本可以与集群的 Kubernetes 版本相同,或者最多早于或晚于该版本一个次要版本。例如,如果您的集群版本为 1.29,则可以将kubectl版本 1.28、1.29 或 1.30 与它结合使用。要安装或升级kubectl,请参阅设置 kubectl 和 eksctl。
如何在 EKS 集群上挂载 S3 文件系统
Amazon EFS CSI 驱动程序需要 IAM 权限才能与您的文件系统进行交互。创建 IAM 角色并向其附加 AmazonS3FilesCSIDriverPolicy 托管式策略。将 EFS CSI 驱动程序添加到您的 EKS 集群,并指定 IAM 角色以支持 CSI 驱动程序访问 AWS API 和文件系统。您可以使用 AWS 管理控制台或 AWS API。有关详细信息,请参阅将 S3 文件系统与 Amazon EKS 结合使用。
也可以在 Amazon EKS 上将 S3 文件系统与 AWS Batch 结合使用。要将 S3 文件系统卷附加到 Amazon EKS 作业上的 AWS Batch,您可以使用带有持久卷声明的 Amazon EKS 容器组(pod)。有关更多详细信息,请参阅注册作业定义的 persistentVolumeClaim 部分和《AWS Batch API 参考指南》的 EKS 持久卷声明页面。
您可以使用 Amazon CloudWatch 监控您的文件系统存储、性能、客户端连接和同步错误。