容器开发机常见问题
1.开发机关机后是否还在计费?
开发机关机后计费停止,无需担心额外的成本。
2.共享存储未挂载是否计费?
云存储按照申请容量计费,申请后只要不删除,都会一直计费,若无使用需求,请及时删除。
3.如何在集群中修改开发机配置?
💡 注意
本地计算机需要已经连接对应集群,详情请参考连接集群。
本地计算机需要已经连接对应集群,详情请参考连接集群。
本案例将H800 4卡调整至8卡。
# 查找并确认需要升降配的开发机。
yangqingwen@yangqingwendeMacBook-Pro .kube % kubectl get containerserver
NAME STATUS AGE ENABLE-DOCKER
a1 Running 7m52s false
ka8-1 Starting 8d false
w2 Running 2d1h true
# 修改需要升降配的开发机,edit进入编辑页。
yangqingwen@yangqingwendeMacBook-Pro .kube % kubectl edit containerserver ka8-1
# 修改如下内容,cpu-->160,gpu-->8,memory-->1600Gi,修改完成后:wq 保存退出完成操作。
resources:
cpu:
count: "80"
gpu:
count: "4"
type: H800_NVLINK_80GB
memory:
count: 800Gi
4.开发机如何使用RDMA?
只需要在您部署容器的yaml文件资源定义中加上RDMA设备标签,目前支持如下配置:
resources:
limits: # 指定资源配额,例如:CPU 上限、内存上限、 本地存储大小、GPU 卡数等。
cpu: "10"
ephemeral-storage: 100Gi
memory: 100Gi
nvidia.com/gpu: "1"
rdma/hca_shared_devices_ib: 1
requests: # 指定资源最小请求值,例如:CPU 、内存、 本地存储大小、GPU 卡数等。
cpu: "10"
ephemeral-storage: 100Gi
memory: 100Gi
nvidia.com/gpu: "1" # 这里指定要申请的GPU卡数
rdma/hca_shared_devices_ib: 1
5.如何使用公网IP?
💡 注意
若已经使用LoadBalancer类型的service,想改成ClusterIP + Ingress方式使用,因LoadBalancer类型无法降级,不要直接改service的类型,需要重新创建新的ClusterIP的service使用。
若已经使用LoadBalancer类型的service,想改成ClusterIP + Ingress方式使用,因LoadBalancer类型无法降级,不要直接改service的类型,需要重新创建新的ClusterIP的service使用。
目前英博云仅支持在命令行中使用公网IP,yaml文件示例:
apiVersion: v1
kind: Service
metadata:
name: example-gpu-service # service的名称
spec:
ports:
- name: ssh # service 端口的名称
port: 22 # service 的端口
protocol: TCP # 暴露端口的协议
targetPort: 22 # 目标容器开放的端口
selector:
app:
type: LoadBalancer # service类型,启用通过LB的方式申请公网IP
若需要将公网IP绑定给开发机使用,需要将开发机的labels设置为公网IP的selector。
- 获取开发机pod名称。
yangqingwen@yangqingwendeMacBook-Pro .kube % kubectl get pods
NAME READY STATUS RESTARTS AGE
demo1-0-server 1/1 Running 0 23m
llamayqw-0-server 1/1 Running 0 41m
- 获取开发机labels。
yangqingwen@yangqingwendeMacBook-Pro .kube % kubectl get pods demo1-0-server -oyaml
apiVersion: v1
kind: Pod
metadata:
creationTimestamp: "2025-04-03T09:18:58Z"
labels:
containerserver.apps.ebcloud.com/name: demo1-0
containerserver.apps.ebcloud.com/namespace: vcluster_default
containerserver.apps.ebcloud.com/uid: eb1d8b42-47e0-4203-a89a-66d244b45317
- 将开发机labels设置为公网IP的selector。
apiVersion: v1
kind: Service
metadata:
name: example-gpu-service # service的名称
spec:
ports:
- name: ssh # service 端口的名称
port: 22 # service 的端口
protocol: TCP # 暴露端口的协议
targetPort: 22 # 目标容器开放的端口
selector:
containerserver.apps.ebcloud.com/name: demo1-0
containerserver.apps.ebcloud.com/namespace: vcluster_default
containerserver.apps.ebcloud.com/uid: eb1d8b42-47e0-4203-a89a-66d244b45317
type: LoadBalancer # service类型,启用通过LB的方式申请公网IP
6.当通过yaml自定义filebrowser、docker registry等服务时,外网ingress和内网ingress host是什么?
💡 注意
tenant-39663739-yqwowner为集群名称,user-defined-name必须2-8个字符。
tenant-39663739-yqwowner为集群名称,user-defined-name必须2-8个字符。
外网:[user-defined-name]-tenant-39663777-yqwowner-ingress-cn-regionxxx.eks.ebcloud.com
内网:[user-defined-name]-tenant-39663777-yqwowner-ingress-cn-regionxxx-internal.eks.ebcloud.com