ECI已支持操作系统为Windows的实例。如果您的容器需要运行在Windows环境,您可以在集群中添加Windows虚拟节点,并将Pod调度到该虚拟节点上,即可创建出操作系统为Windows的ECI Pod(即ECI实例)来运行容器。
重要 
Windows实例正在邀测中,如需使用,请提交工单申请。
前提条件
集群中的VK(ACK Virtual Node组件)版本为v2.11.0-rc.0及以上版本。更多信息,请参见管理组件和ACK Virtual Node。
使用限制
- 创建操作系统为Windows的ECI实例时,vCPU和内存必须大于等于2 vCPU,4 GiB内存,并且不支持GPU、本地盘和ARM规格。 
- Windows容器镜像的版本号需要满足10.0.20348.*,即Windows Server 2022。 
添加Windows虚拟节点
您可以通过以下步骤修改eci-profile,在集群中添加Windows虚拟节点。
- 修改eci-profile。 - kubectl edit -n kube-system cm/eci-profile- 在eci-profile的data中将enableWindowsAmd64Node配置为true,示例如下: - data: ...... enableWindowsAmd64Node: "true" #启用Windows节点 ......
- 查看集群中是否已有Windows虚拟节点。 - kubectl get nodes -l kubernetes.io/os=windows- 预期返回如下,可以看到集群已自动生成Windows虚拟节点。  
创建操作系统为Windows的Pod
由于Windows虚拟节点带有"kubernetes.io/os": windows的标签,创建ECI Pod时,可以通过nodeSelector来指定Windows虚拟节点,将Pod调度到Windows虚拟节点上运行,即创建出操作系统为Windows的ECI Pod来运行容器。
nodeSelector:
  kubernetes.io/os: windows YAML示例如下:
apiVersion: apps/v1
kind: Deployment
metadata:
  name: test-windows
  labels:
    app: test
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      name: nginx-test
      labels:
        app: nginx
        alibabacloud.com/eci: "true" 
      annotations:
        k8s.aliyun.com/eci-with-eip: "true"              # 绑定EIP以便拉取公网镜像
        k8s.aliyun.com/eci-use-specs: "ecs.c6.4xlarge"   # 指定规格
    spec:
      containers:
      - name: test
        image: mcr.microsoft.com/windows/nanoserver:ltsc2022   # 使用Windows容器镜像
        command: ["ping","-t","localhost" ]
      nodeSelector:
        kubernetes.io/os: windows  # 调度到Windows虚拟节点该文章对您有帮助吗?