运维
如何清理僵尸进程
· ☕ 2 分钟
1. 什么是僵尸进程 进程的创建过程: 父进程调用 fork() 创建子进程 子进程执行 exec() 加载新程序 子进程结束执行,调用 exit() 或返回 父进程调用 wait() 或 waitpid() 如果父进程没有调用 wait() 或 waitpid(),子进程结束后仍然保留在系统中,成为僵尸进程。 2. 怎么查看僵尸进程 可以使用 ps 命令查

在 Kubernetes 集群部署 Dragonfly
· ☕ 1 分钟
1. 部署 NFS 存储 1.1 在存储节点配置 NFS 服务 存储节点安装 NFS 服务 1 apt-get install -y nfs-kernel-server 启动并设置 NFS 服务开机自启 1 systemctl start nfs-server.service & systemctl enable nfs-server.service 配置 NFS 共享目录 1 mkdir -p /data/nfs 1 vim /etc/exports /data/nfs *(rw,sync,no_root_squash,no_all_squash) 重启 NFS 服务 1 systemctl restart nfs-server.service 1.2 在全部节点配置 NFS 客户端 1 apt-get install -y nfs-common 2 配置 StorageClass 1 2 helm repo add csi-driver-nfs https://raw.githubusercontent.com/kubernetes-csi/csi-driver-nfs/master/charts helm install csi-driver-nfs csi-driver-nfs/csi-driver-nfs --namespace kube-system --version v4.9.0 1 export NFS_SERVER_IP=x.x.x.x 1 2 3 4 5

history 命令使用
· ☕ 1 分钟
1. history 命令 使用 history 命令可以查看当前会话的命令历史记录,当退出 shell 时,命令历史会被保存到对应的历史文件中。 如果是 bash,则命令历史会保存在 ~/.bash_history 文件中;如果是 zsh,则保存在 ~/.zsh_history 文件中。也可以使用 HISTFILE 环境变量来指定历史记录文件的位置,export HISTFILE=/data/ops/bash_history 。 2. 如

在服务器上使用 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. 创