运维
使用 JuiceFS 存储 Elasticsearch 数据
· ☕ 4 分钟
1. 存储方案 三种存储方案: 基于目录隔离公用一个 JuiceFS Elasticsearch 的节点共用一个 JuiceFS,通过子目录挂载不同的 Elasticsearch 节点。 /0/ 对应节点 Node-0 /1/ 对应节点 Node-1 /2/ 对应节点 Node-2 这种方式的好处主要是,易于扩展、配置方便。 基于 JuiceFS 隔离节点数据 Elasticsearch 每个节点都对接一个独立的 JuiceF

对齐 Ops,使用新思路重写 Ops Copilot 已更新
· ☕ 7 分钟
1. 让 Ops Copilot 成为 Ops Coilot 在 2023 年 09 月,我写过一版 Ops Copilot,也有文章发出 我在给 Ops 工具写 Copilot 。 实现的效果是这样的: 1 2 3 4 5 6 7 8 9 10 Opscli> 打开浏览器 Open a browser and navigate to 'https://www.google.com'. ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ import webbrowser webbrowser.open('https://www.google.com') ↑↑↑↑↑↑↑↑↑↑↑

常用 AI 基础镜像及启动命令
· ☕ 2 分钟
1. 镜像 Tag 标识的含义 base/cuda: 包括 CUDA 运行时 runtime: 在 base 的基础上,新增了 CUDA math 库和 NCCL、cuDNN 运行时 devel: 在 runtime 的基础上,新增了头文件和用于构建 CUDA 镜像的开发工具,对于多阶段构建特别有用 cuddn: 在上面基础上,新增了 cuDNN 神经网络加速库 py3: Python 3 环境 2. CUDA 镜像 镜像 AMD64 镜像大小 ARM64 镜

Conda 安装与使用
· ☕ 2 分钟
1. 安装 conda 1 2 3 wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh bash Miniconda3-latest-Linux-x86_64.sh rm -rf Miniconda3-latest-Linux-x86_64.sh 但 Miniconda 不能免费大规模商用,可以使用 Miniforge 平替。 1 2 wget "https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-$(uname)-$(uname -m).sh" bash Miniforge3-$(uname)-$(uname -m).sh 2. 修改默认配置 2.1 初始化 Shell 如果不进行初始化,激活环境时会报错 CondaError: Run 'conda init' before 'conda activate' 。 1 2 3 4 5 6 7 8 9 conda init --help usage: conda init [-h] [--all] [--user] [--no-user] [--system] [--reverse] [--json] [-v] [-q] [-d] [SHELLS ...] Initialize conda for shell interaction. positional arguments: SHELLS One or more shells to be

Argo Events 事件驱动工作流
· ☕ 5 分钟
1. Argo Events 工作原理 上面是 Argo Events 官方网站上的架构图,对于事件处理系统,有三个重要的组成 事件源的接入,对应于 Event Source 事件的分发,对应于 Event Sensor 事件的消费,对应于 Event Trigger 事件消息存储在 EventBus 中,默认使用的 NATS。 2. 创建 ServiceAccount 给 Sensor 和 Workflow 创建 operate-workflow-sa operate-workflow-sa 用来授权 Sensor 操作 Workflow 。 1 2 3 4 5 6