自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(90)
  • 收藏
  • 关注

原创 二手服务器验收脚本设计与踩坑全解

二手服务器验收需系统化检测硬件寿命、配置与环境隐患,手工操作易遗漏且不可复现。本文提供一套结构化脚本(accept.sh + cleanup.sh),覆盖整机识别至网络性能七层测试,明确各指标判读基准。针对fio落点误判、XFS脏盘只读挂载、数据盘误测等5大高频问题,剖析根因并给出df替代findmnt、norecovery挂载、设备校验等解法,实现可复制、可追溯的自动化验收,保障上线稳定性。

2026-11-04 16:28:36 303

原创 MySQL-5.6-Docker部署

本文详述私有化场景下MySQL 5.6 Docker部署全流程:从固定内网IP(nmcli配置)、离线安装Docker、编排部署,到2.6G SQL大文件导入与备份验证。针对5.6与高版本差异,重点解决datadir挂载、索引前缀767限制、GTID不兼容、ROW_FORMAT默认值等9大核心坑点,提供“现象→根因→解法→验证”四步法及可复用命令。适用于无公网环境下的老旧系统迁移与交付。

2026-10-28 17:27:07 134

原创 运维监控平台(Prometheus + Grafana)部署与维护

本文系统梳理企业级Prometheus+Grafana监控平台的部署与维护全流程,涵盖架构设计、组件选型、多环境部署(含Prometheus、Exporter、Grafana)、配置版本化及统一入口管理。提供可直接复用的命令脚本,覆盖从安装、数据源接入到告警与巡检的完整SOP,适用于运维新人快速上手与平台标准化建设。

2026-10-10 17:00:16 170

原创 K8s集群磁盘告警与镜像清理

K8s集群磁盘告警源于自研镜像历史tag堆积。通过排查确认/var/lib/docker/overlay2占空间大,且自研镜像超百个。采用四步安全清理流程:先体检核对节点,备份镜像清单,按仓库:tag精准删除(不加-f避免误删运行中镜像),最后清理悬空层并验证剩余镜像与运行容器一致。全程确保系统组件、业务服务零影响,磁盘释放达标,可回滚。

2026-09-28 16:47:52 353

原创 shell语言 --- sed 命令

sed 是行编辑器,核心在于理解其工作流程:逐行读取、在模式空间处理、默认输出结果。关键铁律:不加 -i 不改原文件,加 -n 才能精准控制输出。语法为“地址+命令”,常用命令包括 s(替换)、d(删除)、p(打印,需配 -n)、a/i/c(增/插/换行)、y(字符转换)、q(提前退出)。地址支持行号、正则、范围等,灵活定位目标行。掌握这些即可应对 80% 的文本处理需求。

2026-09-21 16:20:36 138

原创 从 0 到 1 设计一个产品

本文分享独立开发者如何将混乱的创意转化为可执行的PRD,通过7步流程(想法澄清→需求调研→PRD撰写→原型设计→开发上线→数据迭代)实现从0到1的产品落地。核心方法包括:用“一句话问题定义”聚焦用户痛点,借助一页纸PRD模板明确目标与非目标,优先级划分P0功能打造MVP,结合竞品分析与用户访谈验证需求,并推荐以Web版先行验证、再拓展小程序/APP的低成本路径。附真实案例复盘与避坑指南,助力个人开发者高效产出可用产品。

2026-09-14 11:58:37 275

原创 Harbor 智能体任务验证

环境能构建、任务有解、Agent 能解。国内 Windows 环境的难点全在"环境"这一环——浮动 tag、CRLF、加速器、运行时下载,四个坑一个比一个隐蔽。本文的核心资产就是这四个坑的根因 + 修复,以及一套可以直接复用的 Dockerfile 模板。

2026-08-24 10:04:01 355

原创 QM 私有化部署实战

本文介绍了在国内云服务器上私有化部署YC开源的多智能体协作平台QM的完整流程。文章重点解决了官方部署依赖邮件服务的卡点问题,提出基于BasicAuth的替代方案,并详细拆解了从零到完全可用的部署全流程。 核心内容包括: 架构解析:说明了QM服务的核心组件(core/portal/web-ui)及数据流,强调Nginx反代和BasicAuth鉴权的关键作用。 部署总览:提供环境准备→代码依赖→访问配置→systemd托管→API接入→沙箱构建的完整链路。 关键技术点:给出初始化脚本示例,涵盖Docker配置、

2026-08-17 16:26:36 382

原创 从 0 到上线:单文件网页 App 部署到阿里云 ECS 全流程(Nginx+Node+PM2+PostgreSQL)

作为一个非科班、纯自学的普通打工人,我没想做多牛的产品,就想要个能替我想好「这顿吃啥、还差多少营养」的小工具。这篇聊聊我从「本地能跑」到「公网可访问」的全过程,以及踩过的坑。”——这五个字,是我每天下班回家面对冰箱时的终极难题。做完之后,真正的难题才开始:怎么让它稳定地跑在网上,让别人也能打开?欢迎来用、来挑刺、来提需求——你的每条反馈我都会看,下个版本安排上。如果你也在做个人小工具,希望这篇能少让你踩几个坑。工具已上线,跑在自有服务器,国内直连打开不转圈。,登录就能存自己的饮食记录。

2026-08-13 10:54:17 237

原创 从零到上线:一个人把「今天吃什么」做成公网小工具

这篇文章记录了一个人将本地「今天吃什么」HTML工具开发并部署到公网的全过程。作者从纯前端方案演进到最终采用单台ECS全栈架构(Nginx+Node+PostgreSQL),重点分享了上云过程中踩过的6个关键坑点(如备案失败、账号风控等),以及针对移动端体验和做饭教程的产品优化细节。文章还介绍了带版本回滚的自动化部署方案,并总结云服务部署的核心挑战在于文档未明的隐藏规则。该项目年成本仅数百元,为个人开发者提供了完整的小工具上云实践参考。

2026-08-11 09:58:02 338

原创 ASR语音转文字模型

本文介绍了基于阿里云DashScope ASR服务的语音转文字系统架构与实现方案。系统采用腾讯云服务器部署Python HTTP文件服务(8888端口),通过ASR转录脚本调用阿里云语音识别API实现音频转文字功能。架构包含音频文件存储目录、systemd托管服务、安全组规则配置等模块,支持自动清理过期文件、进程监控重启。文档详细说明了系统设计、脚本调用、安全配置及故障排查方法,并提供了相关文件清单。该系统实现了视频音频到文本的高效转换,满足业务结构化处理需求。

2026-08-08 15:22:09 185

原创 基于 Ollama + Obsidian 构建本地 AI 知识库记录

本文介绍了一套基于Ollama本地大模型和Obsidian知识库的AI知识管理系统构建方案。主要内容包括: Ollama本地部署:详细讲解了模型下载、存储路径修改和推荐模型(如qwen2.5-coder系列),并提供了不同模型的适用场景分工表。 Obsidian知识库搭建:设计了工作区与个人成长双轨架构的目录结构,强调敏感数据的本地存储原则。 核心插件配置:重点介绍了Copilot插件的本地模型接入、Embedding模型配置和安全注意事项,以及5个实用的自定义Prompt命令模板。 自动化模板设计:提供了

2026-08-03 16:37:59 249

原创 SSL 证书更新与部署

本文详细介绍了在多场景下更新和部署SSL证书的全流程指南,重点涵盖以下内容: 证书申请与DNS验证: 在云平台(如阿里云)申请SSL证书(付费/免费) 通过手动DNS验证(添加TXT记录)完成域名所有权验证 解析记录配置要点及验证原理说明 证书部署到服务器: 下载证书文件(Nginx格式:.pem公钥和.key私钥) 针对容器化Nginx环境的部署方案 通过Docker数据卷挂载方式管理证书文件 关键操作步骤: 备份旧证书(重要安全措施) 上传新证书到服务器指定目录 通过容器挂载机制实现证书更新 适用场景:

2026-07-30 14:17:56 526

原创 服务器安装虚拟机(Hyper-V)

在弹出的窗口中,点击“新建虚拟网络交换机”,选择“外部” — Intel® Ethernet Connection X722 for 1GbE,然后点击“创建虚拟交换机”(后续需要在创建好的虚拟机修改为服务器同网段的 IP)8T=8192GB,将第一块硬盘放在了 C 盘(在C盘下创建hyper-v文件夹,存放两个虚拟机的第一块硬盘)选择 IDE控制器0,去添加一块硬盘,放到 D 盘,存放数据,命名为 win10-1-data。在 Hyper-V 管理器中,点击右侧的“操作” -> “虚拟交换机管理器”

2026-03-02 09:38:35 1686

原创 服务器上架流程

盘:必配,用于安装操作系统,对于容量要求不高通常 480G-960G 就够了,目前以 SATA SSD 为主,可以是标准2.5寸也可以是 M.2 形态的,SAS 系统盘的需求见得的不多了,根据可靠性要求配置1或2块,2块组 raid;盘:选配,用户缓存加速,以 NVMe 或者 SATA SSD 为主,容量常见的有3.84T、7.68T 或者15.36T,通常不需要做 Raid;的网络接口,也称为数据口或业务网口,是服务器或系统对外提供的服务接口,用于处理业务逻辑和数据交互。

2026-02-12 09:54:50 966

原创 数据同步工具 -- syncthing

自建网盘云储存同步服务软件:syncthing基于 P2P(点对点)技术的跨平台文件同步工具隐私安全有保障,数据传输全程加密,连开发者都无法窥探;同步速度完全取决于网络环境,家里的局域网同步几乎能跑满带宽。

2026-01-31 09:31:21 3022

原创 K8s集群组件启动不成功排查

如果手动启动也失败,先清理所有残留资源,彻底清理 Docker/containerd 残留(解决进程 / 锁占用)Docker 守护进程未运行会导致无法查看 kube-apiserver 容器。先确保 Docker 正常运行 - 这是容器运行时的基础。:部署Prometheus+Grafana监控集群组件。:使用EFK/ELK收集组件日志。

2026-01-21 09:53:56 636

原创 Kubernetes 常用命令

含义: Pod 已经绑定到了一个 Node 上,并且所有容器都创建起来了,至少有一个容器是 Running 状态。含义: Pod 已经被 Kubernetes API Server 接受了,但一个或多个容器还没创建起来,或者还没跑起来。这就像你下单了快递,商家已经接单了,但快递还没发货。这可能是程序出错了,也可能是容器启动失败了。含义: 容器启动后立即崩溃,然后 K8s 尝试重启它,但又崩溃,如此循环往复。段,90% 的故障原因都在这里(如镜像拉取失败、资源不足、端口占用、健康检查失败)

2026-01-09 11:13:21 905

原创 Kubernetes 相关基础概念

Pause 容器是一种轻量级的容器,它本身不包含任何业务逻辑,只是为其他容器提供一个稳定、可靠的运行环境。Pause 容器的实现基于 Docker 的 pause 镜像,可以在创建其他容器之前将其加载到 Pod 中,以确保 Pod 中的其他容器在 Pause 容器的基础上运行。作用:是为其他容器提供生命周期的隔离和协调帮助管理员确保 Pod 中各个容器的启动顺序和依赖关系,避免容器之间的相互干扰和冲突为 Pod 中的容器提供一个稳定的网络环境,确保容器的网络连接可靠性。

2025-12-31 14:25:30 776

原创 计算机网络--- TCP/IP协议簇

Telnet:远程登录协议, 23端口,TCP协议,C/S架构,C:client(登录设备 – 客户端),S:server(被登录设备 – 服务器)如果只进行两次握手,可能会导致服务器端开启无用的连接,增加服务器开销,或者接收到已失效的连接请求,从而产生错误。创建一个虚拟接口:通过系统视图底下,user-interface:用户接口,用于用户登录,vty:虚拟接口。创建一个虚拟接口:通过系统视图底下,user-interface:用户接口,用于用户登录,vty:虚拟接口。​ 3位标志:第一位,0,保留位;

2025-12-22 14:35:43 1433

原创 MySQL索引与视图

日常生活中,经常会在电话号码簿中查阅“某人”的电话号码,按姓查询或者按字母排序查询;在字典中查阅“某个词”的读音和含义等等,以快速的找到特定记录。在这里,“姓”和“字母”都可看作是索引, 而按“姓”或者“字母”查询则是按索引查询索引是一种特殊的文件,用来快速查询数据库表中的特定记录,是提高数据库性能的重要方式通俗的说,数据库索引好比是一本书前面的目录,能加快数据库的查询速度示例:新建表,插入大量数据,通过无索引查询及有索引查询来对比性能……

2025-12-14 13:37:55 1079

原创 MySQL备份恢复

其中包含了配置文件、库表结构文件、数据文件、索引文件、日志文件等各类 MySQL 运行时所需的文件,这一层的功能比较简单,也就是。,当向内存中写入数据后, MySQL 突然宕机了,则这条未刷写到磁盘的数据会丢失,也正由于该原因,redo_log 应运而生。,运行过程中会将大量操作汇集在内存中进行,比如写入数据时,先写到内存中,然后由后台线程再刷写到磁盘。向内存写入数据前,会先写日志,当后续数据未被刷写到磁盘、 MySQL 崩溃时,就可以通过日志来。,而不同的数据在磁盘空间中,存储的格式也并不相同。

2025-12-06 11:03:51 791

原创 MySQL之DML与DQL

MySQL致力于支持全套ANSI/ISO SQL标准。在MySQL数据库中,SQL 语句分为五大类:给指定字段添加单条数据批量添加多条数据示例1:注意:replace 与 insert 语句区别:格式示例2:1.3 update 语句格式示例3:注意:where条件一般需要写上,否则会对所有行的对应字段进行更新修改在生产环境中的数据库表,一般还有 update_time 字段,用于 记录数据的更新时间 的,所以一般修改某些字段时会同时修改

2025-11-25 17:00:55 459

原创 MySQL 库表与约束

结构化查询语言(Structured Query Language),在关系型数据库上执行数据操作数据检索以及数据维护的标准语言。在数据库系统中,SQL语句不区分大小写(建议用大写) ,但字符串常量区分大小写MySQL致力于支持全套ANSI/ISO SQL标准。DCL(DataControl数据控制语言,定义对数据库、表、字段、用户的访问权限和安全级别,如等DDL(DataDefinition数据定义语言,定义对数据库对象等DML(DataLanguage):数据操作语言,定义对。

2025-11-12 19:31:02 957

原创 计算机网络基础

多模: 电信号 ---- 通过发光二极管 ---- > 光纤(光信号) ---- 通过光电二极管 ---- > 电信号。192.168.1.0/25 192.168.1.0/25 -------- 192.168.1.127/25 主机数:128。单模: 电信号 ---- 通过注入式激光二极管 ---- > 光纤(光信号) ---- 通过光电二极管 ---- > 电信号。– 连接的只有一个路由器 | 下一个设备没有路由器(即没有入接口,则只能写这个路由器的网关)]

2025-11-06 11:30:03 1085

原创 Kubernetes HELM

在没使用 Helm 之前,向 kubernetes 部署应用要依次部署 deployment、svc 等,步骤较繁琐。随着很多项目微服务化,复杂的应用在容器中部署以及管理显得较为复杂,helm 通过打包的方式,支持发布的版本管理和控制,很大程度上简化了 Kubernetes 应用的部署和管理官网地址:helm.sh/zh/Chart、Repository 和 ReleaseChart:代表着 Helm 包。它包含在 Kubernetes 集群内部运行应用程序,工具或服务所需的所有资源定义。可以把它看作是 H

2025-10-29 09:44:48 1134

原创 MySQL 安装部署

(3)清除注册表(win+R-输入regedit进入注册表编辑器-HEKY_LOCAL_MACHINE-SYSTEM…关闭所有安全类软件:360全家桶 杀毒(火绒) 管家(Windows安全中心不用关)找到环境变量设置界面(电脑搜索栏-高级系统设置-高级-环境变量)出名版本:5.7、8.0、8.4(LTS:长期更新)、9.x。(2)删除磁盘中所有mysql命名文件夹(注意隐藏文件)(1)检查是否安装了历史mysql,要求在系统中卸载。找到运行服务界面(win右键-任务管理器-)

2025-10-23 09:33:55 1487

原创 MySQL 数据库基础理论

MySQL是一个小型关系数据库管理系统目前 MySQL 被广泛地应用在 Internet 上的中小型网站中。由于体积小、速度快、总体拥有成本低,尤其是开放源代码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。

2025-10-15 17:04:03 1117

原创 基于 Ollama 的本地大模型管理

MaxKB(Max Knowledge Base):是一款基于大语言模型和 RAG的开源知识库问答系统。

2025-10-09 11:16:46 914

原创 Kubernetes集群安全机制

RoleBinding 可以。

2025-10-05 16:37:03 1137

原创 Linux 软件安装和进程管理

需要有 c 语言编译环境1. 配置本地仓库,需要在 /etc/yum.repos.d 目录下新建一个创建文件,如: base.repo,并在这个文件中配置 BaseOS 和 AppStream 路径2. 挂载光盘3. 安装环境,执行 dnf install -y make gcc*源码安装1. 在解压目录下执行 make 命令来进行编译2. 在解压目录下执行 make install 命令来进行安装。

2025-10-01 09:47:23 1017

原创 Linux 用户和组管理

etc/login.defs 文件用于在 Linux 创建用户时,对用户的一些基本属性做默认设置,例如指定用户 UID 和 GID 的范围,用户的过期时间,密码的最大长度等等。,并且所有用户都可以对此文件执行读操作,passwd 是一个文本文件,用于定义系统的用户账号,由于这个文件是所有用户都需要读取的权限,所以文件中只定义该用户的账号,而不保存用户的密码。时所需要的用户,这类用户不是用来登录的,但也不能删除,因为一旦删除,依赖这些用户运行的服务或程序就不能正常执行,会导致系统问题,它的。

2025-09-24 22:07:16 778

原创 Kubernetes 调度器(Scheduler)

除了 kubernetes 自带的调度器,也可以编写自己的调度器通过 spec:schedulername 参数指定调度器的名字,可以为 pod 选择某个调度器进行调度。

2025-09-16 17:27:29 848

原创 Linux 磁盘管理

在这个过程中,并不是所有的程序都是常用的,将常用的加载到内存在,而将不常用的功能放到 swap (交换空间),而这个交换空间就是硬盘划分出来的一小块区域。接下来我们对 /dev/sda1、/dev/sda2、/dev/sda3 进行格式化,我们把 /dev/sda1 格式化为 ext4,把另外两个格式化为 xfs。在使用磁盘之前,我们需要对磁盘进行分区并格式化后,才可以使用。接下来看为了演示后续的功能,我们添加一个 20G 的 Sata 类型的磁盘一个 30G 的 NVME 类型的磁盘。

2025-09-11 09:46:43 791

原创 Linux 文件管理

列出所有挂载点,找到可能的覆盖目录:mount | grep -v ‘^/dev/loop’ #(Symbolic Link),它和原文件一样也是一种文件,它与Windows中的。,它有自己的 inode,当移除原文件后,硬链接文件还可以使用。软链接文件(Symbolic Link),它也叫符号链接,是。-f:等价于 --file=ARCHIVE 选项,作用是。-v:等价于 --verbose,显示详细操作过程。卸载挂载点后,原目录的文件会显现,此时用。

2025-09-05 15:55:33 980

原创 Kubernetes 存储

ConfigMap API 给我们提供了向容器中注入配置信息的机制,ConfigMap 可以被用来保存单个属性,也可以用来保存整个配置文件或者JSON 二进制等对象但凡跟配置挂钩的信息,都可以保存在 configMap 里,再提供给 pod 去使用。ConfigMap 是一种注入的机制,而不是共享的机制让多个不同服务之间的文件达到一致性的两种思想注入:用一个新的数据将原来的文件内部去替换掉,保证多个 pod 之间的文件是一样的;一次注入后多次读取不再消耗网络 IO。

2025-08-31 14:07:10 945

原创 Linux 命令浏览文件内容

选项说明:-c :显示指定字符-n :显示指定行数-f :显示追加内容#查看密码文件的最后 10 行内容# 显示文件最后 3 行数据,这就需要使用 -n 选项 [ root@bogon ~ ] # tail -n 3 /etc/passwd dnsmasq:x:979:977:Dnsmasq DHCP and DNS server:/var/lib/dnsmasq:/sbin/nologin。

2025-08-27 22:54:11 792

原创 Kubernetes 构建高可用、高性能 Redis 集群

手动配置 3 个 master 和 3 个 slave 的集群,一共创建了 6 个 Redis pod,集群主-> 从配置的规则为 0->3,1->4,2->5。结果: 原有 Slave IP 为 10.224.166.144,删除后自动重建,IP 变更为 10.224.166.182,并自动加入原有的 Master。使用 set 命令,发送100000次请求,每个请求包含一个键值对,其中键是随机生成的,值的大小是100 字节,同时有20个客户端并发执行。建议生产环境使用命令行工具。

2025-08-22 15:35:49 1235

原创 Kubernetes Service

Kubernetes Service 定义了这样一种抽象:一个Pod 的逻辑分组,一种可以访问它们的策略—通常称为微服务。这一组 Pod 能够被 Service 访问到,通常是通过可以通过patch 补丁kubectl patch deployment(类型)/deployment-demo(名称) --patch ‘{}’可以通过set image 去修改镜像可以去修改资源清单文件然后通过 apply 应用。修改资源文件,然后使用 apply 去更新(声明式)通过edit。

2025-08-16 17:03:37 1277

原创 Kubernetes Pod 控制器

在 Kubernetes 中运行了一系列控制器来确保集群的当前状态与期望状态保持一致,它们就是 Kubernetes集群内部的管理控制中心或者说是“中心大脑”。例如,ReplicaSet 控制器负责维护集群中运行的 Pod 数量。Node 控制器负责监控节点的状态,并在节点出现故障时,执行自动化修复流程,确保集群始终处于预期的工作状态RC 副本数量,标签选择器,期望中的模板RS(管理Pod)、Deployment 替代 RCkubectl patch 打补丁。

2025-08-11 16:38:24 795

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除