通過(guò)ACK Serverless集群運(yùn)行Job任務(wù)
更新時(shí)間:
在ACK Serverless集群中,您可以按需按量創(chuàng)建Pod。當(dāng)Pod結(jié)束后停止收費(fèi),無(wú)需為Job任務(wù)預(yù)留計(jì)算資源,從而擺脫集群計(jì)算力不足和擴(kuò)容的煩擾,同時(shí)結(jié)合搶占式實(shí)例可以降低Job任務(wù)的計(jì)算成本。本文主要為您介紹如何通過(guò)ACK Serverless按需創(chuàng)建Job任務(wù)。
前提條件
操作步驟
通過(guò)kubectl客戶端創(chuàng)建job.yaml文件,并拷貝以下內(nèi)容到該文件。
apiVersion: batch/v1 kind: Job metadata: name: pi spec: template: spec: containers: - name: pi image: perl command: ["perl", "-Mbignum=bpi", "-wle", "print bpi(2000)"] resources: requests: cpu: 16 memory: 32Gi restartPolicy: Never backoffLimit: 4
執(zhí)行以下命令部署一個(gè)Job任務(wù)。
kubectl apply -f job.yaml
執(zhí)行以下命令,查看Pod的運(yùn)行狀態(tài)。
查看Pod的狀態(tài)。
kubectl get pod
預(yù)期輸出:
NAME READY STATUS RESTARTS AGE pi-4f7w5 0/1 Completed 0 80s
查看Pod的具體運(yùn)行狀態(tài)。
kubectl describe pod
預(yù)期輸出:
Name: pi-4f7w5 Namespace: default Priority: 0 PriorityClassName: <none> Node: virtual-kubelet-cn-hongkong-b/10.10.66.169 ... Events: Type Reason Age From Message ---- ------ ---- ---- ------- Normal SuccessfulMountVolume 114s kubelet, eci MountVolume.SetUp succeeded for volume "default-token-8k4jz" Normal Pulling 113s kubelet, eci pulling image "perl" Normal Pulled 64s kubelet, eci Successfully pulled image "perl" Normal Created 64s kubelet, eci Created container Normal Started 64s kubelet, eci Started container
可選:通過(guò)給Pod加上搶占式實(shí)例的Annotation,使用搶占式實(shí)例。
關(guān)于搶占式實(shí)例Annotation的用法,請(qǐng)參見使用搶占式實(shí)例。
apiVersion: batch/v1 kind: Job metadata: name: pi spec: template: metadata: annotations: k8s.aliyun.com/eci-spot-strategy: SpotAsPriceGo spec: containers: - name: pi image: perl command: ["perl", "-Mbignum=bpi", "-wle", "print bpi(2000)"] resources: requests: cpu: 16 memory: 32Gi restartPolicy: Never backoffLimit: 4
文檔內(nèi)容是否對(duì)您有幫助?