gcloud-lab/infrastructure/gpus/base/vllm-servers/rtx6000-vllm.yaml

142 lines
3.5 KiB
YAML
Raw Normal View History

2026-04-28 03:31:52 +00:00
2026-04-22 01:53:02 +00:00
apiVersion: apps/v1
kind: Deployment
metadata:
name: rtx6000-brain-vllm
2026-04-22 01:53:02 +00:00
namespace: customer1
labels:
2026-04-28 23:55:29 -04:00
app: rtx6000-brain
2026-04-22 01:53:02 +00:00
spec:
replicas: 0
2026-04-22 01:53:02 +00:00
selector:
matchLabels:
2026-04-28 23:55:29 -04:00
app: rtx6000-brain
2026-04-22 01:53:02 +00:00
template:
metadata:
labels:
2026-04-28 23:55:29 -04:00
app: rtx6000-brain
2026-04-22 01:53:02 +00:00
spec:
nodeSelector:
2026-04-28 23:16:51 +00:00
cloud.google.com/gke-accelerator: "nvidia-rtx-pro-6000"
2026-04-22 01:53:02 +00:00
tolerations:
2026-04-28 03:31:52 +00:00
- key: "nvidia.com/gpu-nvidia-rtx-pro-6000"
2026-04-22 01:53:02 +00:00
operator: "Equal"
value: "present"
effect: "NoSchedule"
containers:
- name: vllm-brain
2026-04-22 06:24:17 +00:00
image: vllm/vllm-openai:latest
2026-04-22 01:53:02 +00:00
command: ["python3", "-m", "vllm.entrypoints.openai.api_server"]
env:
- name: HF_TOKEN
value: ""
2026-04-22 06:09:45 +00:00
- name: TOKENIZER_MODE
value: "hf"
2026-04-22 01:53:02 +00:00
args:
2026-04-22 23:56:27 -04:00
- --model=Youssofal/Qwen3.6-27B-Abliterated-Heretic-Uncensored-BF16
2026-04-22 01:53:02 +00:00
- --host=0.0.0.0
- --port=8000
- --tensor-parallel-size=1
2026-04-22 06:12:32 +00:00
- --tokenizer-mode=hf
2026-04-22 01:53:02 +00:00
- --gpu-memory-utilization=0.95
2026-04-22 03:00:46 +00:00
- --kv-cache-dtype=fp8
- --max-model-len=131072
2026-04-22 01:53:02 +00:00
- --enable-auto-tool-choice
- --enable-chunked-prefill
- --max-num-batched-tokens=8192
- --max-num-seqs=4
2026-04-22 01:53:02 +00:00
- --trust-remote-code
- --dtype=auto
2026-04-22 01:53:02 +00:00
- --enable-prefix-caching
2026-04-24 22:54:14 -04:00
- --tool-call-parser=qwen3_xml
2026-04-22 03:00:46 +00:00
- --reasoning-parser=qwen3
2026-04-22 02:47:53 +00:00
- --disable-custom-all-reduce
2026-04-22 01:53:02 +00:00
ports:
- containerPort: 8000
resources:
limits:
nvidia.com/gpu: 1
2026-04-22 23:56:27 -04:00
memory: "100Gi"
2026-04-28 23:55:29 -04:00
2026-04-22 01:53:02 +00:00
requests:
nvidia.com/gpu: 1
2026-04-22 23:56:27 -04:00
memory: "80Gi"
2026-04-22 01:53:02 +00:00
cpu: "8"
startupProbe:
httpGet:
path: /health
port: 8000
initialDelaySeconds: 30
periodSeconds: 10
timeoutSeconds: 10
failureThreshold: 60
successThreshold: 1
livenessProbe:
httpGet:
path: /health
port: 8000
initialDelaySeconds: 180
periodSeconds: 15
failureThreshold: 5
successThreshold: 1
timeoutSeconds: 10
readinessProbe:
httpGet:
path: /v1/models
port: 8000
initialDelaySeconds: 120
periodSeconds: 10
timeoutSeconds: 15
failureThreshold: 8
successThreshold: 1
2026-04-22 01:53:02 +00:00
volumeMounts:
- name: model-cache
mountPath: /root/.cache/huggingface
volumes:
- name: model-cache
persistentVolumeClaim:
2026-04-22 23:56:27 -04:00
claimName: vllm-model-qwen3.6-27b-uncensored
2026-04-22 01:53:02 +00:00
---
2026-04-29 02:07:21 +00:00
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: hyperdisk-balanced
provisioner: pd.csi.storage.gke.io
volumeBindingMode: WaitForFirstConsumer
allowVolumeExpansion: true
parameters:
type: hyperdisk-balanced
---
2026-04-22 01:53:02 +00:00
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
2026-04-22 23:56:27 -04:00
name: vllm-model-qwen3.6-27b-uncensored
2026-04-22 01:53:02 +00:00
namespace: customer1
spec:
accessModes:
- ReadWriteOnce
2026-04-28 23:55:29 -04:00
storageClassName: hyperdisk-balanced
2026-04-22 01:53:02 +00:00
resources:
requests:
storage: 100Gi
2026-04-29 00:04:47 +00:00
2026-04-22 01:53:02 +00:00
---
apiVersion: v1
kind: Service
metadata:
2026-04-28 23:55:29 -04:00
name: rtx6000-brain-service
2026-04-22 01:53:02 +00:00
namespace: customer1
spec:
selector:
2026-04-28 23:55:29 -04:00
app: rtx6000-brain
2026-04-22 01:53:02 +00:00
ports:
- protocol: TCP
port: 8000
targetPort: 8000
type: ClusterIP