将Azure AKS可用的Kubernetes YAML适配为AWS可用版本,调整文件共享卷配置
适配AWS EKS环境的Kubernetes配置调整说明
核心修改项说明
- 节点标签修正:原配置中旧版节点选择器标签
beta.kubernetes.io/os已废弃,AWS EKS统一使用标准标签kubernetes.io/os: windows匹配Windows节点组 - 存储配置替换:原Azure专属
azureFile存储段需替换为AWS对应存储方案,因业务使用Windows容器,优先选择FSx for Windows File Server(SMB协议兼容Windows权限体系,与原Azure文件共享使用逻辑一致),需提前完成以下前置操作:- 在与EKS集群同VPC下创建FSx for Windows文件系统,配置安全组放通EKS节点到FSx的445端口访问权限
- 提前在EKS集群中安装AWS FSx CSI驱动
- 创建K8s Secret存储FSx文件系统的访问用户名密码,Secret命名可保留原
fa-secret
- 镜像拉取配置:原
fa-repo-secret需同步替换为AWS ECR的镜像拉取凭证,或给EKS Windows节点绑定ECR只读IAM权限可免密拉取私有镜像
调整后完整可用配置
apiVersion: apps/v1 kind: Deployment metadata: name: frontarena-ads-win-deployment labels: app: frontarena-ads-win-deployment spec: replicas: 1 template: metadata: name: frontarena-ads-win-test labels: app: frontarena-ads-win-test spec: nodeSelector: "kubernetes.io/os": windows restartPolicy: Always containers: - name: frontarena-ads-win-test # 此处将镜像地址替换为你推送到AWS ECR的对应镜像地址 image: <你的AWS账号ID>.dkr.ecr.<区域>.amazonaws.com/frontarena/ads:wintest2 imagePullPolicy: Always ports: - containerPort: 9000 volumeMounts: - name: ads-win-filesharevolume mountPath: /Host volumes: - name: ads-win-filesharevolume csi: driver: fsx.csi.aws.com volumeHandle: <FSx文件系统ID>::<FSx共享名> volumeAttributes: dnsname: <FSx文件系统的DNS名称> subpath: \ nodeStageSecretRef: name: fa-secret namespace: default imagePullSecrets: - name: fa-repo-secret selector: matchLabels: app: frontarena-ads-win-test --- apiVersion: v1 kind: Service metadata: name: frontarena-ads-win-test spec: type: ClusterIP ports: - protocol: TCP port: 9001 targetPort: 9000 selector: app: frontarena-ads-win-test
配置参数替换提示
- 替换所有
<>包裹的占位符为你AWS环境的实际参数 volumeHandle格式固定为FSx文件系统ID::共享名,默认FSx创建后的共享名为share- 存储FSx访问凭证的
fa-secret需包含username和password两个key,对应FSx的Admin用户名和自定义密码
内容的提问来源于stack exchange,提问作者vel
相关产品推荐
相关产品推荐

