|
Esta es documentación inédita para SUSE® Virtual Clusters v1.2.0 (Dev). |
Restringiendo los recursos de GPU en clústeres virtuales de SUSE
Esta guía te ayuda a definir restricciones de GPU dentro de tus inquilinos utilizando el concepto de directiva de SUSE Virtual Clusters.
|
Esto se aplica solo al modo |
Crea una VirtualClusterPolicy
Comienza definiendo un VirtualClusterPolicy en un archivo YAML (por ejemplo, gpu-policy.yaml) y aplicándolo a tu clúster.
apiVersion: k3k.io/v1beta1
kind: VirtualClusterPolicy
metadata:
name: quota-policy
spec:
quota:
hard:
requests.nvidia.com/gpu: 4
Aplica la directiva utilizando kubectl:
kubectl apply -f gpu-policy.yaml
Esta directiva permite el consumo de 4 GPUs.
Adjunta la directiva a un inquilino
Aplica la directiva anotando el espacio de nombres deseado:
kubectl label namespace <namespace-name> policy.k3k.io/policy-name="quota-policy"
Se crea automáticamente una cuota de recursos en el espacio de nombres.
Rastrea el consumo de GPU
Una vez que se crea una carga de trabajo de GPU en un clúster virtual (en modo compartido), consume uno de los recursos de GPU asignados.
Puedes rastrear el consumo utilizando el comando quota:
kubectl get quota -n testgpu
NAME REQUEST LIMIT AGE
k3k-quota-policy requests.nvidia.com/gpu: 0/4 4s
Si se alcanza el límite y un usuario intenta desplegar un nuevo pod que consume una GPU, el pod permanece en el estado Pending con el siguiente estado:
Warning ProviderCreateFailed 1s ubuntu/pod-controller pods "cuda-vectoradd-default-sharedclustergpu-637564612d7665637-865e4" is forbidden: exceeded quota: k3k-quota-policy, requested: requests.nvidia.com/gpu=1, used: requests.nvidia.com/gpu=4, limited: requests.nvidia.com/gpu=4