日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

創建TensorFlow任務

通過ACK One Fleet實例,您可以使用和單集群相同的方式創建TensorFlow任務。由Fleet實例根據TensorFlow任務需要的資源和關聯集群的剩余資源,執行動態調度策略,選擇適合的關聯集群下發TensorFlow任務。本文介紹如何創建TensorFlow任務并查看任務狀態。

前提條件

  • Fleet實例默認已安裝Training Operator的TensorFlow CRD,支持的TensorFlow CRD APIVersion為kubeflow.org/v1。

  • Fleet實例管理員可以通過以下命令查看CRD。

    kubectl get crd tfjobs.kubeflow.org
  • 如有定制需求,Fleet實例管理員可以修改kubeflow.org_tfjobs.yaml,通過以下命令修改CRD。

    kubectl apply -f manifests/base/crds/kubeflow.org_tfjobs.yaml
  • Fleet實例管理員已下載Training Operator,并在所有關聯集群上完成安裝。

  • 已從ACK One控制臺獲取Fleet實例的KubeConfig,并通過kubectl連接至Fleet實例。

  • 已安裝AMC命令行工具。具體操作,請參見AMC命令行幫助

操作步驟

  1. 開發者用戶使用以下YAML文件,在Fleet實例上創建任務。

    示例的命名空間為demo,示例的任務名稱為pi

    apiVersion: "kubeflow.org/v1"
    kind: "TFJob"
    metadata:
      name: "dist-mnist-for-e2e-test"
      namespace: demo
    spec:
      tfReplicaSpecs:
        PS:
          replicas: 2
          restartPolicy: Never
          template:
            spec:
              containers:
                - name: tensorflow
                  image: acr-multiple-clusters-registry.cn-hangzhou.cr.aliyuncs.com/ack-multiple-clusters/tf-dist-mnist-test:v1.0
                  resources:
                    requests:
                      memory: "2Gi"
                      cpu: "2"
                    limits:
                      memory: "2Gi"
                      cpu: "2"
        Worker:
          replicas: 2
          restartPolicy: Never
          template:
            spec:
              containers:
                - name: tensorflow
                  image: acr-multiple-clusters-registry.cn-hangzhou.cr.aliyuncs.com/ack-multiple-clusters/tf-dist-mnist-test:v1.0
                  resources:
                    requests:
                      memory: "2Gi"
                      cpu: "2"
                    limits:
                      memory: "2Gi"
                      cpu: "2"
  2. 執行以下命令,在Fleet實例上獲取任務的調度結果。

    如果調度失敗,則顯示為空。請檢查是否正確配置命名空間與配額。如果命名空間配置配額或者配額用完,任務將暫停調度。

    kubectl get tfjob dist-mnist-for-e2e-test -n demo -o jsonpath='{.metadata.annotations.scheduling\.x-k8s\.io/placement}'
  3. 查看TensorFlow任務的狀態。

    • 執行以下命令,在Fleet實例上獲取任務的運行狀態。

      kubectl get tfjob dist-mnist-for-e2e-test -n demo

      預期輸出:

      NAME                      STATE     AGE
      dist-mnist-for-e2e-test   Running   ***
    • 執行以下命令獲取任務相關Pod的運行狀態。

      kubectl amc get pod -j tfjob/dist-mnist-for-e2e-test -n demo

      預期輸出:

      Run on ManagedCluster managedcluster-c1***e5
      NAME                               READY   STATUS      RESTARTS   AGE
      dist-mnist-for-e2e-test-ps-0       1/1     Running     0          ***
      dist-mnist-for-e2e-test-ps-1       1/1     Running     0          ***
      dist-mnist-for-e2e-test-worker-0   1/1     Running     0          ***
      dist-mnist-for-e2e-test-worker-1   1/1     Running     0          ***
    • 執行以下命令獲取Pod的運行日志。

      kubectl amc logs dist-mnist-for-e2e-test-worker-0 -j tfjob/dist-mnist-for-e2e-test -n demo

      預期輸出:

      Run on ManagedCluster managedcluster-c1***e5
      ...
      Training ends @ ***
      Training elapsed time: *** s
      ...