九章智算云

在 VKS 中使用混闪-OSS

本文介绍如何在 Alaya NeW 弹性容器集群(VKS)中使用混闪-OSS,通过 Kubernetes、Docker 镜像和 Rclone 工具完成数据与应用的协同操作。

前提条件

镜像准备

本教程使用 ubuntu:22.04 基础镜像。镜像仓库相关使用方式参见镜像仓库的使用

# pull
docker pull ubuntu:22.04

# login
docker login {访问地址域名} -u [user] -p [passwd]

# tag
docker tag ubuntu:22.04 {访问地址域名}/{项目名称}/ubuntu:22.04

# push
docker push {访问地址域名}/{项目名称}/ubuntu:22.04

k8s 资源部署

创建 namespace

kubectl create namespace store

创建 secret

kubectl create secret docker-registry harbor-secret \
  --docker-server={镜像仓库访问域名} \
  --docker-username="{镜像仓库用户名}" \
  --docker-password="{镜像仓库密码}" \
  --docker-email="email" \
  --namespace store

创建并部署 Pod

pod.yaml 示例:

apiVersion: v1
kind: Pod
metadata:
  name: store-pod
  namespace: store
  labels:
    app: store
spec:
  restartPolicy: Never
  containers:
    - name: sd-cuda-container
      image: registry.hd-01.alayanew.com:8443/user/ubuntu2204:1.0.2  # 替换你的镜像
      resources:
        requests:
          memory: "4Gi"
          cpu: "500m"
          # nvidia.com/gpu-l40s: 1
        limits:
          memory: "8Gi"
          cpu: "1000m"
          # nvidia.com/gpu-l40s: 1
      ports:
        - containerPort: 80
          name: http-port
          protocol: TCP
      command: ["sh", "-c", "tail -f /dev/null"]
      volumeMounts:
        - name: workspace
          mountPath: "/app/workspace/"
  imagePullSecrets:
    - name: harbor-secret
  volumes:
    - name: workspace
      persistentVolumeClaim:
        claimName: pvc-capacity-userdata
  tolerations:
    - key: nvidia.com/gpu
      operator: Exists
      effect: NoSchedule

PVC 声明详见 VKS 中的声明存储

部署 Pod:

kubectl create -f pod.yaml

在 Pod 中使用混闪-OSS

安装 Rclone

  1. 进入 Pod 并安装:
# 获取 pod 信息
kubectl get pod -n store

# 进入 pod
kubectl exec -it store-pod -n store -- bash

企业注册

2.下载rclone

# 根据镜像类型选择包管理器:Debian/Ubuntu用apt,CentOS/RHEL用yum
# 更新包列表
apt update

# 安装 Rclone
apt install rclone

# 验证
rclone --version

安装 rclone

配置 Rclone

参照使用混闪-OSS (Rclone) 中的配置说明。

Rclone 操作示例

列出某桶下的对象大小与路径

rclone ls store:/models002

ls

从混闪-OSS拷贝文件到本地

rclone copy store:tools002/test/rclone.sh /app/workspace/

copy down

从本地拷贝文件到混闪-OSS

rclone copy /app/workspace/hello.py store:tools002/test

copy up

将文件从本地移动到混闪-OSS

# 新建 demo.py
vi demo.py

# 列出本地文件
ls

# 移动到混闪-OSS
rclone move /app/workspace/demo.py store:tools002/test

# 列出本地文件 — demo.py 已不存在
ls

# 列出远程文件 — demo.py 已迁移
rclone ls store:tools002/test

move up

将文件从本地移动到混闪-OSS:

# 移回本地
rclone move store:tools002/test/demo.py /app/workspace

# 列出远程文件 — demo.py 已不存在
rclone ls store:tools002/test

# 列出本地文件 — demo.py 已存在
ls

move down

最后更新于

这篇文档对你有帮助吗?

目录