feat: k8s volume mounts

This commit is contained in:
jialin
2026-04-10 15:17:58 +08:00
committed by jialin
parent aeabdab781
commit f2a4ab2654
11 changed files with 668 additions and 49 deletions
+25 -1
View File
@@ -134,5 +134,29 @@ export default {
'clusters.addworker.theadNotes-02':
'T-Head PPU uses the Container Device Interface (CDI) for device injection and requires the <span class="bold-text">/var/run/cdi</span> directory to be available for CDI generation.',
'clusters.addworker.nvidiaNotes':
'The built-in inference backends in GPUStack v2.1 require <span class="bold-text">CUDA 12.6+</span>. Please ensure your NVIDIA driver version is <span class="bold-text">560</span> or newer.'
'The built-in inference backends in GPUStack v2.1 require <span class="bold-text">CUDA 12.6+</span>. Please ensure your NVIDIA driver version is <span class="bold-text">560</span> or newer.',
'clusters.volume.title': 'Volume Mounts',
'clusters.volume.name': 'Volume Name',
'clusters.volume.mountPath': 'Container Path',
'clusters.volume.mountPath.format': 'Path must start with /',
'clusters.volume.readOnly': 'Read Only',
'clusters.volume.sourceType': 'Source Type',
'clusters.volume.sourceType.hostPath': 'Host Path',
'clusters.volume.sourceType.pvc': 'Persistent Volume Claim (PVC)',
'clusters.volume.sourceType.configMap': 'ConfigMap',
'clusters.volume.hostPath.path': 'Host Path',
'clusters.volume.hostPath.type': 'Path Type',
'clusters.volume.hostPath.type.directory': 'Directory',
'clusters.volume.hostPath.type.directoryOrCreate':
'Directory (create if not exists)',
'clusters.volume.hostPath.type.file': 'File',
'clusters.volume.hostPath.type.fileOrCreate': 'File (create if not exists)',
'clusters.volume.hostPath.type.socket': 'Socket',
'clusters.volume.hostPath.type.charDevice': 'Character Device',
'clusters.volume.hostPath.type.blockDevice': 'Block Device',
'clusters.volume.pvc.claimName': 'PVC Name',
'clusters.volume.pvc.readOnly': 'Read Only',
'clusters.volume.configMap.name': 'ConfigMap Name',
'clusters.volume.configMap.optional': 'Optional',
'clusters.volume.add': 'Add Volume Mount'
};
+25 -1
View File
@@ -134,7 +134,31 @@ export default {
'clusters.addworker.theadNotes-02':
'T-Head PPU uses the Container Device Interface (CDI) for device injection and requires the <span class="bold-text">/var/run/cdi</span> directory to be available for CDI generation.',
'clusters.addworker.nvidiaNotes':
'The built-in inference backends in GPUStack v2.1 require <span class="bold-text">CUDA 12.6+</span>. Please ensure your NVIDIA driver version is <span class="bold-text">560</span> or newer.'
'The built-in inference backends in GPUStack v2.1 require <span class="bold-text">CUDA 12.6+</span>. Please ensure your NVIDIA driver version is <span class="bold-text">560</span> or newer.',
'clusters.volume.title': 'Volume Mounts',
'clusters.volume.name': 'Volume Name',
'clusters.volume.mountPath': 'Container Path',
'clusters.volume.mountPath.format': 'Path must start with /',
'clusters.volume.readOnly': 'Read Only',
'clusters.volume.sourceType': 'Source Type',
'clusters.volume.sourceType.hostPath': 'Host Path',
'clusters.volume.sourceType.pvc': 'Persistent Volume Claim (PVC)',
'clusters.volume.sourceType.configMap': 'ConfigMap',
'clusters.volume.hostPath.path': 'Host Path',
'clusters.volume.hostPath.type': 'Path Type',
'clusters.volume.hostPath.type.directory': 'Directory',
'clusters.volume.hostPath.type.directoryOrCreate':
'Directory (create if not exists)',
'clusters.volume.hostPath.type.file': 'File',
'clusters.volume.hostPath.type.fileOrCreate': 'File (create if not exists)',
'clusters.volume.hostPath.type.socket': 'Socket',
'clusters.volume.hostPath.type.charDevice': 'Character Device',
'clusters.volume.hostPath.type.blockDevice': 'Block Device',
'clusters.volume.pvc.claimName': 'PVC Name',
'clusters.volume.pvc.readOnly': 'Read Only',
'clusters.volume.configMap.name': 'ConfigMap Name',
'clusters.volume.configMap.optional': 'Optional',
'clusters.volume.add': 'Add Volume Mount'
};
// ========== To-Do: Translate Keys (Remove After Translation) ==========
+25 -1
View File
@@ -135,7 +135,31 @@ export default {
'clusters.addworker.theadNotes-02':
'T-Head PPU uses the Container Device Interface (CDI) for device injection and requires the <span class="bold-text">/var/run/cdi</span> directory to be available for CDI generation.',
'clusters.addworker.nvidiaNotes':
'The built-in inference backends in GPUStack v2.1 require <span class="bold-text">CUDA 12.6+</span>. Please ensure your NVIDIA driver version is <span class="bold-text">560</span> or newer.'
'The built-in inference backends in GPUStack v2.1 require <span class="bold-text">CUDA 12.6+</span>. Please ensure your NVIDIA driver version is <span class="bold-text">560</span> or newer.',
'clusters.volume.title': 'Volume Mounts',
'clusters.volume.name': 'Volume Name',
'clusters.volume.mountPath': 'Container Path',
'clusters.volume.mountPath.format': 'Path must start with /',
'clusters.volume.readOnly': 'Read Only',
'clusters.volume.sourceType': 'Source Type',
'clusters.volume.sourceType.hostPath': 'Host Path',
'clusters.volume.sourceType.pvc': 'Persistent Volume Claim (PVC)',
'clusters.volume.sourceType.configMap': 'ConfigMap',
'clusters.volume.hostPath.path': 'Host Path',
'clusters.volume.hostPath.type': 'Path Type',
'clusters.volume.hostPath.type.directory': 'Directory',
'clusters.volume.hostPath.type.directoryOrCreate':
'Directory (create if not exists)',
'clusters.volume.hostPath.type.file': 'File',
'clusters.volume.hostPath.type.fileOrCreate': 'File (create if not exists)',
'clusters.volume.hostPath.type.socket': 'Socket',
'clusters.volume.hostPath.type.charDevice': 'Character Device',
'clusters.volume.hostPath.type.blockDevice': 'Block Device',
'clusters.volume.pvc.claimName': 'PVC Name',
'clusters.volume.pvc.readOnly': 'Read Only',
'clusters.volume.configMap.name': 'ConfigMap Name',
'clusters.volume.configMap.optional': 'Optional',
'clusters.volume.add': 'Add Volume Mount'
};
// ========== To-Do: Translate Keys (Remove After Translation) ==========
+36 -11
View File
@@ -31,7 +31,7 @@ export default {
'clusters.create.steps.selectProvider': 'Sağlayıcı Seç',
'clusters.create.configBasic': 'Temel Yapılandırma',
'clusters.create.execCommand': 'Komutu Çalıştır',
'clusters.create.supportedGpu': 'Desteklenen GPU\'lar',
'clusters.create.supportedGpu': "Desteklenen GPU'lar",
'clusters.create.skipfornow': 'Şimdilik Atla',
'clusters.create.noImages': 'Kullanılabilir imaj yok',
'clusters.create.noInstanceTypes': 'Kullanılabilir örnek türü yok',
@@ -70,16 +70,16 @@ export default {
'clusters.addworker.checkEnv': 'Ortamı Kontrol Et',
'clusters.addworker.specifyArgs': 'Argümanları Belirle',
'clusters.addworker.runCommand': 'Komutu Çalıştır',
'clusters.addworker.specifyWorkerIP': 'İşçi Düğüm IP\'si',
'clusters.addworker.detectWorkerIP': 'İşçi Düğüm IP\'sini Otomatik Algıla',
'clusters.addworker.specifyWorkerIP': "İşçi Düğüm IP'si",
'clusters.addworker.detectWorkerIP': "İşçi Düğüm IP'sini Otomatik Algıla",
'clusters.addworker.specifyWorkerAddress': 'İşçi Düğüm Harici Adresi',
'clusters.addworker.detectWorkerAddress': 'İşçi Düğüm Harici Adresi',
'clusters.addworker.detectWorkerAddress.tips':
'Belirtilmezse İşçi Düğüm IP\'si varsayılır.',
"Belirtilmezse İşçi Düğüm IP'si varsayılır.",
'clusters.addworker.externalIP.tips':
'VPC veya özel ağda çalıştırılıyorsa, lütfen GPUStack Sunucusuna erişilebilir İşçi Düğüm harici adresini belirtin.',
'clusters.addworker.enterWorkerIP': 'İşçi düğüm IP\'sini girin',
'clusters.addworker.enterWorkerIP.error': 'Lütfen işçi düğüm IP\'sini girin.',
'clusters.addworker.enterWorkerIP': "İşçi düğüm IP'sini girin",
'clusters.addworker.enterWorkerIP.error': "Lütfen işçi düğüm IP'sini girin.",
'clusters.addworker.enterWorkerAddress': 'İşçi düğüm harici adresini girin',
'clusters.addworker.enterWorkerAddress.error':
'Lütfen işçi düğüm harici adresini girin.',
@@ -89,7 +89,7 @@ export default {
'Model önbellek dizinini özelleştirmek istiryorsanız, bağlamak için yolu belirtebilirsiniz.',
'clusters.addworker.configSummary': 'Yapılandırma Özeti',
'clusters.addworker.gpuVendor': 'GPU Üreticisi',
'clusters.addworker.workerIP': 'İşçi Düğüm IP\'si',
'clusters.addworker.workerIP': "İşçi Düğüm IP'si",
'clusters.addworker.workerExternalIP': 'İşçi Düğüm Harici Adresi',
'clusters.addworker.notSpecified': 'Belirtilmedi',
'clusters.addworker.autoDetect': 'Otomatik',
@@ -105,7 +105,7 @@ export default {
'{count} yeni işçi düğüm kümeye eklendi.',
'clusters.addworker.message.success_multiple':
'{count} yeni işçi düğüm kümeye eklendi.',
'clusters.create.serverUrl': 'GPUStack Sunucu URL\'si',
'clusters.create.serverUrl': "GPUStack Sunucu URL'si",
'clusters.create.workerConfig': 'İşçi Düğüm Yapılandırması',
'clusters.addworker.containerName': 'İşçi Düğüm Konteyner Adı',
'clusters.addworker.containerName.tips':
@@ -116,7 +116,7 @@ export default {
'clusters.table.ip.internal': 'Dahili',
'clusters.table.ip.external': 'Harici',
'clusters.form.serverUrl.tips':
'İşçi düğüm GPUStack Sunucusuna doğrudan erişemiyorsa, harici olarak erişilebilir bir GPUStack hizmet URL\'si belirtin.',
"İşçi düğüm GPUStack Sunucusuna doğrudan erişemiyorsa, harici olarak erişilebilir bir GPUStack hizmet URL'si belirtin.",
'clusters.form.setDefault': 'Varsayılan Olarak Ayarla',
'clusters.form.setDefault.tips': 'Dağıtım için varsayılan.',
'clusters.addworker.noClusters': 'Kullanılabilir Docker kümesi bulunamadı',
@@ -126,7 +126,8 @@ export default {
'clusters.create.dockerTips1': 'Sonraki adım, bu kümeye işçi düğüm ekleyin.',
'clusters.create.dockerTips2':
'Bu adımı atlayabilir ve daha sonra küme listesinden ekleyebilirsiniz.',
'clusters.create.k8sTips1': 'Sonraki adım, mevcut Kubernetes kümesini kaydedin.',
'clusters.create.k8sTips1':
'Sonraki adım, mevcut Kubernetes kümesini kaydedin.',
'clusters.create.k8sTips2':
'Bu adımı atlayabilir ve daha sonra küme listesinden kaydedebilirsiniz.',
'clusters.addworker.theadNotes':
@@ -134,5 +135,29 @@ export default {
'clusters.addworker.theadNotes-02':
'T-Head PPU, cihaz enjeksiyonu için Container Device Interface (CDI) kullanır ve CDI oluşturma için <span class="bold-text">/var/run/cdi</span> dizininin kullanılabilir olmasını gerektirir.',
'clusters.addworker.nvidiaNotes':
'GPUStack v2.1\'deki yerleşik çıkarım altyapıları <span class="bold-text">CUDA 12.6+</span> gerektirir. Lütfen NVIDIA sürücü sürümünüzün <span class="bold-text">560</span> veya daha yeni olduğundan emin olun.'
'GPUStack v2.1\'deki yerleşik çıkarım altyapıları <span class="bold-text">CUDA 12.6+</span> gerektirir. Lütfen NVIDIA sürücü sürümünüzün <span class="bold-text">560</span> veya daha yeni olduğundan emin olun.',
'clusters.volume.title': 'Volume Mounts',
'clusters.volume.name': 'Volume Name',
'clusters.volume.mountPath': 'Container Path',
'clusters.volume.mountPath.format': 'Path must start with /',
'clusters.volume.readOnly': 'Read Only',
'clusters.volume.sourceType': 'Source Type',
'clusters.volume.sourceType.hostPath': 'Host Path',
'clusters.volume.sourceType.pvc': 'Persistent Volume Claim (PVC)',
'clusters.volume.sourceType.configMap': 'ConfigMap',
'clusters.volume.hostPath.path': 'Host Path',
'clusters.volume.hostPath.type': 'Path Type',
'clusters.volume.hostPath.type.directory': 'Directory',
'clusters.volume.hostPath.type.directoryOrCreate':
'Directory (create if not exists)',
'clusters.volume.hostPath.type.file': 'File',
'clusters.volume.hostPath.type.fileOrCreate': 'File (create if not exists)',
'clusters.volume.hostPath.type.socket': 'Socket',
'clusters.volume.hostPath.type.charDevice': 'Character Device',
'clusters.volume.hostPath.type.blockDevice': 'Block Device',
'clusters.volume.pvc.claimName': 'PVC Name',
'clusters.volume.pvc.readOnly': 'Read Only',
'clusters.volume.configMap.name': 'ConfigMap Name',
'clusters.volume.configMap.optional': 'Optional',
'clusters.volume.add': 'Add Volume Mount'
};
+24 -1
View File
@@ -128,5 +128,28 @@ export default {
'clusters.addworker.theadNotes-02':
'平头哥(T-Head)PPU 使用容器设备接口(CDI)进行设备注入,因此需要确保 <span class="bold-text">/var/run/cdi</span> 目录可用以生成 CDI。',
'clusters.addworker.nvidiaNotes':
'GPUStack v2.1 内置推理后端依赖 <span class="bold-text">CUDA 12.6</span> 及以上版本,请确保 NVIDIA 驱动版本为 <span class="bold-text">560</span> 或以上。'
'GPUStack v2.1 内置推理后端依赖 <span class="bold-text">CUDA 12.6</span> 及以上版本,请确保 NVIDIA 驱动版本为 <span class="bold-text">560</span> 或以上。',
'clusters.volume.title': '卷挂载',
'clusters.volume.name': '卷名称',
'clusters.volume.mountPath': '容器内路径',
'clusters.volume.mountPath.format': '路径必须以 / 开头',
'clusters.volume.readOnly': '只读',
'clusters.volume.sourceType': '存储来源',
'clusters.volume.sourceType.hostPath': '主机路径',
'clusters.volume.sourceType.pvc': '存储卷声明(PVC',
'clusters.volume.sourceType.configMap': '配置映射(ConfigMap',
'clusters.volume.hostPath.path': '宿主机路径',
'clusters.volume.hostPath.type': '路径类型',
'clusters.volume.hostPath.type.directory': '目录',
'clusters.volume.hostPath.type.directoryOrCreate': '目录(不存在则创建)',
'clusters.volume.hostPath.type.file': '文件',
'clusters.volume.hostPath.type.fileOrCreate': '文件(不存在则创建)',
'clusters.volume.hostPath.type.socket': '套接字',
'clusters.volume.hostPath.type.charDevice': '字符设备',
'clusters.volume.hostPath.type.blockDevice': '块设备',
'clusters.volume.pvc.claimName': 'PVC 名称',
'clusters.volume.pvc.readOnly': '只读',
'clusters.volume.configMap.name': '配置名称',
'clusters.volume.configMap.optional': '可选',
'clusters.volume.add': '添加卷挂载'
};