DevOps
未读
为指定用户生成不同权限的 kubeconfig
为指定用户生成不同权限的 kubeconfig 脚本: gen-kubeconfig.sh 背景 K8s 集群跑起来之后,迟早会有人来找你要 kubeconfig:排查问题的、部署应用的、跨环境操作的。直接把 admin 的 kubeconfig 复制一份发出去等于把集群钥匙交出去了,正确做法是给每
DevOps
未读
给 K8s 集群添加审计日志
给 K8s 集群添加审计日志 Kubernetes 审计日志(Audit Log)记录了对 apiserver 的每次 API 请求的元数据,是追溯集群操作、排查问题、满足合规要求的重要手段。默认情况下 kubeadm 部署的集群没有开启审计日志,需要手动配置。 本文记录给 kubeadm 部署的
DevOps
未读
NTP 时间不同步导致 Pod 反复重启排查
NTP 时间不同步导致 Pod 反复重启排查 起因是收到 k8s 集群多个节点上的 node-feature-discovery-worker Pod(DaemonSet)重启告警,但集群当时负载并不高,不应该是负载过高导致的 排查过程 1. 看容器上一次退出的日志 node-feature-dis
DevOps
未读
nvl-rsync:用 NVLink 在 GB200/GB300 Tray 之间传输大模型权重
nvl-rsync:用 NVLink 在 GB200/GB300 Tray 之间传输大模型权重 痛点:大模型权重传输耗时 大模型权重几百G甚至上TB,在多台服务器上传输时非常耗时。 传统网络带宽吃不消:千兆/万兆以太网传一个 200 GB 的权重文件,理论就要几个小时;就算上了 IB/RoCE,跨节
DevOps
未读
hf-sync:HuggingFace 与 ModelScope 上的模型&数据集搬运工
hf-sync:HuggingFace 与 ModelScope 上的模型&数据集搬运工 GitHub: hf-sync 痛点:从 HF 下载模型太痛苦了 从 HuggingFace 下载模型/数据集,网络体验一言难尽。要么得挂代理,要么得用镜像站,也不稳定。 而 ModelScope(魔搭)作为国
DevOps
未读
Promtail 采集宿主机 Nginx 日志重复采集与时间不准问题排查
Promtail 采集宿主机 Nginx 日志重复采集与时间不准问题排查 背景 有 2 台 Nginx 服务器不在 k8s 集群内,并且由于网络原因不方便与 k8s 集群的日志采集服务打通。 现在采取的收集 Nginx 日志的方案是:在 k8s 一个节点上通过 rsync 将 Nginx 服务器的
DevOps
未读
使用 pgloader 将 MySQL 迁移到 PostgreSQL
使用 pgloader 将 MySQL 迁移到 PostgreSQL pgloader 是一款开源的批量数据迁移工具,支持从 MySQL / SQLite / MSSQL / CSV 等多种数据源将表结构和数据导入到 PostgreSQL https://github.com/dimitri/pgl
LLM
未读
Voxtral-Mini-4B-Realtime-2602 语音模型部署与验证
模型地址:https://modelscope.cn/models/mistralai/Voxtral-Mini-4B-Realtime-2602 推理引擎:vLLM v0.24.0 Voxtral-Mini-4B-Realtime-2602 是 Mistral AI 推出的实时多模态语音模型,支持
DevOps
未读
监控告警通路测试规则
在 Prometheus / VictoriaMetrics 监控体系中,告警规则成百上千,但「通路本身是否还活着」常常被忽略——Alertmanager 挂了、Webhook 失效、企业微信 token 过期、邮件服务器异常,都可能让真实告警悄悄丢失。 最朴素的做法是配一个 vector(1) 的
DevOps
未读
SSH 多级跳板机连接与文件传输
在内网环境中,服务器通常不会直接暴露在公网上,有的环境需要通过多层跳板机才能到达目标机器。比如从本地 A 出发,经过 B、C 两个跳板,最终到达目标 D: A (本地) → B (跳板1) → C (跳板2) → D (目标)
SSH 原生支持 -J(Jump)参数来处理这种多级跳转场景,无需手动