运维
在服务器上使用 Gemini CLI
· ☕ 3 分钟
1. 获取项目 ID 和 API 密钥 访问 https://aistudio.google.com/apikey 获取项目 ID 和 API 密钥,并设置为环境变量 1 2 echo "export GOOGLE_CLOUD_PROJECT=" >> ~/.bashrc echo "export GEMINI_API_KEY=" >> ~/.bashrc 1 source ~/.bashrc 2. 准备 node.js 环境 安装 nvm 1 curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash 1 2 echo 'export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"' >> ~/.bashrc echo '[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"' >> ~/.bashrc 1 source ~/.bashrc 查看 nvm 版本 1 nvm --version 安装 node.js 1 nvm install 20 升级 npm 1 npm install -g npm 3. 安装 gemini 1

FoundationDB 数据备份与恢复
· ☕ 1 分钟
1. 设置环境变量 设置 foundationdb 集群名称和版本 1 2 3 4 5 export CLUSTER_NAME= export NAMESPACE= export DEPLOY_NAME=${CLUSTER_NAME}-deployment export SECRET_NAME=fdb-backup-secret export VERSION=7.1.26 设置 S3 备份存储桶和凭证 1 2 3 4 5 export BUCKET= export HOST=s3.us-west-2.amazonaws.com export AK=x export SK=x export S3_BACKUP_URI="blobstore://${AK}:${SK}@${HOST}/fdb-backup?bucket=${BUCKET}&sc=0" 2. 创建凭证 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 cat <<EOF | kubectl apply -f - apiVersion: v1 kind: Secret metadata: name: ${SECRET_NAME} namespace: ${NAMESPACE} type: Opaque stringData: credentials: | { "accounts": { "${BUCKET}@${HOST}": { "access_key": "${AK}", "secret": "${SK}", "endpoint": "${HOST}" } } } EOF 3. 创

给 Node Exporter 添加抓取凭证
· ☕ 1 分钟
1. 背景 Node Exporter 是 Prometheus 生态系统中用于收集主机指标的常用组件,但默认情况下不提供访问认证。本文介绍如何为 Kubernetes 环境中的 Node Exporter 添加基本认证,提高安全性。 2. Node Exporter 配置凭证 2.1 生成加密密码 使用 htpasswd 工具生成加密密码: 1 htpasswd -nBC 12 "" | tr -d ':\n' 这里需要输入密码,生成的输出将是一个

部署 smokeping-prober 探测网络质量
· ☕ 1 分钟
1. smokeping-prober 是什么 smokeping-prober 是一个用于探测网络质量的工具,它通过向目标节点发送 ICMP 请求来探测网络质量。 2. 部署 smokeping-prober 2.1 生成 smokeping-prober.yaml 配置文件 1 2 3 4 5 6 7 8 9 10 11 cat > smokeping_prober.yaml <<EOF --- targets: - hosts: - 1.2.3.4 interval: 1s # Duration, Default 1s. network: ip # One of ip, ip4, ip6. Default: ip (automatic IPv4/IPv6) protocol: icmp # One of icmp, udp. Default: icmp (Requires privileged operation) size: 56 # Packet data size in bytes. Default 56 (Range: 24 - 65535) tos:

Opscli 支持 MCP 提供 Cline\Cursor 集成
· ☕ 2 分钟
1. Cline 使用 Ops 查询有哪些集群 获取节点的详情 Case 非常简单但数据真实,说明 Cline 已经能够对接 Ops 进行运维操作。至于更复杂的一些 Case 需要更多测试。具体的玩法可能在于: 给定一些特定的 Workspace 作为上下文信息、设置自定义的指令强化某些特征等。 2. Cline 配置 Ops MCP 2.1 前提条件 使用 Cline 需