EMR on VKE 支持对 RayCluster 挂载 PersistentVolumeClaim。
创建 RayCluster 时绑定 PersistentVolumeClaim。
YAML 改动部分示例:
apiVersion: ray.io/v1alpha1 kind: RayCluster metadata: name: example-raycluster spec: headGroupSpec: template: spec: containers: - name: ray-head volumeMounts: - mountPath: /mnt/data name: head-v volumes: - name: head-v persistentVolumeClaim: claimName: head-pvc workerGroupSpecs: - groupName: worker-group template: spec: containers: - volumeMounts: - mountPath: /mnt/data name: worker-v volumes: - name: worker-v persistentVolumeClaim: claimName: worker-pvc
使用 AddComponentInstance,示例:
{ "ApplicationName": "Ray", "ComponentName": "RayCluster", "InstanceName": "rayclusterName", "ClusterId": "emr-xxx", "ApplicationConfigs": [ { "ConfigFileName": "raycluster-values.yaml", "ConfigItemKey": "replicas", "ConfigItemValue": "1", "ComponentName": "RayCluster", "UnitType": "headgroup", "UnitInstanceName": "headgroup" }, { "ConfigFileName": "raycluster-values.yaml", "ConfigItemKey": "head_cpu", "ConfigItemValue": "1", "ComponentName": "RayCluster", "UnitType": "headgroup", "UnitInstanceName": "headgroup" }, { "ConfigFileName": "raycluster-values.yaml", "ConfigItemKey": "head_memory", "ConfigItemValue": "2Gi", "ComponentName": "RayCluster", "UnitType": "headgroup", "UnitInstanceName": "headgroup" }, { "ConfigFileName": "raycluster-values.yaml", "ConfigItemKey": "head_volumes", "ConfigItemValue": "[{\"name\":\"core-site-volume\",\"configMap\":{\"defaultMode\":420,\"name\":\"ray-cluster-core-site\"}},{\"name\":\"head\",\"persistentVolumeClaim\":{\"claimName\":\"testpvc\"}}]", "ComponentName": "RayCluster", "UnitType": "headgroup", "UnitInstanceName": "headgroup" }, { "ConfigFileName": "raycluster-values.yaml", "ConfigItemKey": "head_volumeMounts", "ConfigItemValue": "[{\"mountPath\":\"/opt/hadoop/etc/hadoop\",\"name\":\"core-site-volume\"},{\"name\":\"head\",\"mountPath\":\"/opt/head\",\"readOnly\":false}]", "ComponentName": "RayCluster", "UnitType": "headgroup", "UnitInstanceName": "headgroup" }, { "ConfigFileName": "raycluster-values.yaml", "ConfigItemKey": "replicas", "ConfigItemValue": "1", "ComponentName": "RayCluster", "UnitType": "workergroup", "UnitInstanceName": "workgroup" }, { "ConfigFileName": "raycluster-values.yaml", "ConfigItemKey": "worker_cpu", "ConfigItemValue": "1", "ComponentName": "RayCluster", "UnitType": "workergroup", "UnitInstanceName": "workgroup" }, { "ConfigFileName": "raycluster-values.yaml", "ConfigItemKey": "worker_gpu", "ConfigItemValue": "0", "ComponentName": "RayCluster", "UnitType": "workergroup", "UnitInstanceName": "workgroup" }, { "ConfigFileName": "raycluster-values.yaml", "ConfigItemKey": "worker_memory", "ConfigItemValue": "1Gi", "ComponentName": "RayCluster", "UnitType": "workergroup", "UnitInstanceName": "workgroup" }, { "ConfigFileName": "raycluster-values.yaml", "ConfigItemKey": "worker_volumes", "ConfigItemValue": "[{\"name\":\"core-site-volume\",\"configMap\":{\"defaultMode\":420,\"name\":\"ray-cluster-core-site\"}},{\"name\":\"worker\",\"persistentVolumeClaim\":{\"claimName\":\"testpvc\"}}]", "ComponentName": "RayCluster", "UnitType": "workergroup", "UnitInstanceName": "workgroup" }, { "ConfigFileName": "raycluster-values.yaml", "ConfigItemKey": "worker_volumeMounts", "ConfigItemValue": "[{\"mountPath\":\"/opt/hadoop/etc/hadoop\",\"name\":\"core-site-volume\"},{\"name\":\"worker\",\"mountPath\":\"/opt/worker\",\"readOnly\":false}]", "ComponentName": "RayCluster", "UnitType": "workergroup", "UnitInstanceName": "workgroup" }, { "ComponentName": "RayCluster", "ConfigFileName": "raycluster-values.yaml", "ConfigItemKey": "repository_url", "ConfigItemValue": "xxx" }, { "ComponentName": "RayCluster", "ConfigFileName": "raycluster-values.yaml", "ConfigItemKey": "repository_tag", "ConfigItemValue": "xxx" } ] }
说明