自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 运维安全手册:DevOps 工程师必须掌握的生产环境安全实践

本文介绍了DevOps工程师在生产环境中必须掌握的安全实践,强调运维安全是系统稳定运行的第一道防线。文章通过真实案例指出90%的生产安全事故源于运维配置问题,如以root运行服务、开启调试模式等危险操作。核心内容包括:遵循最小权限原则创建专用用户并禁用登录;使用systemd安全托管服务,提供Python应用的systemd配置模板;警惕开发模式带来的安全风险;以及端口管理、依赖隔离等关键安全措施。作者总结了一套运维安全自查清单,指出安全不是可选项而是DevOps的核心能力,旨在帮助工程师构建"坚

2025-12-17 11:30:42 574

原创 【Python全栈进阶】17个核心模块实战指南

本文系统梳理Python开发中17个高频使用的核心模块,涵盖时间处理(time/datetime)、随机数生成(random)、序列化(pickle/json)、加密(hashlib)、文件操作(shutil/zipfile)、日志(logging)、异常处理、正则表达式(re)等核心场景。每个模块提供典型用法示例,如time模块的时间戳转换、strftime格式化输出,strptime字符串解析等实用技巧。通过模块化实战指南,帮助开发者快速掌握Python核心功能,提升开发效率与代码质量。

2025-12-11 15:00:27 1069

原创 从单机到集群:Docker 数据卷在高可用日志平台中的实战指南

摘要 本文详细介绍了Docker数据卷在高可用日志平台中的实战应用。首先阐述了数据卷的必要性,指出容器默认临时文件系统会导致关键数据丢失的风险。接着对比了命名卷和绑定挂载的适用场景,推荐生产环境使用命名卷保障数据安全。重点讲解了Kafka三节点集群的独立数据卷设计原则,避免数据冲突导致集群崩溃。最后介绍了Elasticsearch和Logstash的持久化配置方案,包括数据目录和checkpoint文件的存储策略。全文强调数据卷是容器化日志平台稳定性的基石,而非可选功能。

2025-11-26 13:54:47 1074

原创 从 IaaS 到 Serverless:我的智能日志监控平台架构演进之路

本文记录了作者从单机部署到微服务架构再到探索Serverless的日志监控平台演进过程。最初在IaaS上搭建的单机系统存在单点故障和扩展性问题,随后通过微服务拆分和容器化实现高可用。进一步引入轻量级CI/CD提升开发体验,并利用Serverless处理边缘告警任务。文章对比了IaaS、PaaS、SaaS和Serverless的责任边界,指出技术演进的本质是让开发者更聚焦业务创新。未来计划向多租户SaaS产品方向发展,通过混合部署优化成本。

2025-11-26 02:50:10 568

原创 轻量级 CI/CD 实战(四):本地开发钉钉告警 → 自动部署云服务器 Kafka 消费者容器

摘要:轻量级 CI/CD 实现 Kafka 消费者容器自动化部署与钉钉告警 本文介绍如何在现有轻量级 CI/CD 流程中,为 Kafka 消费者容器新增钉钉告警功能并实现自动化部署。通过改造 Git Hooks 的 post-receive 脚本,实现代码推送后自动构建 Docker 镜像、替换运行中的容器。关键点包括:1) 本地开发时通过环境变量管理钉钉 Token;2) 使用异步线程发送告警避免阻塞主流程;3) 服务器端通过安全文件存储敏感信息;4) 全自动化部署流程覆盖镜像构建、容器替换等环节。整个方

2025-11-24 23:15:52 1079

原创 从 Kafka 消费日志到邮件告警:一次完整的 Docker 化部署与排错实战

Kafka日志消费与邮件告警部署实战 问题与解决方案 SMTP连接问题:改用465端口+SSL加密解决QQ邮箱连接意外关闭问题 容器无日志输出:因Kafka消费者等待新消息的正常行为,触发新请求即可验证 容器重启优化:创建一键重启脚本替代systemctl操作 关键技术点 使用SMTP_SSL(465端口)确保邮件发送稳定性 Kafka消费者从上次offset继续读取的设计特性 Docker容器重启脚本实现"停止→删除→重建→启动"原子操作 应用价值 适用于ELK精简版日志分析系统、自研

2025-11-24 18:08:18 1116

原创 轻量级 CI/CD 实战(三):Kafka消费者Docker容器化部署

本文介绍了Kafka消费者程序的容器化部署方案,主要内容包括: 项目背景:通过Docker容器化部署Kafka消费者程序,实现日志数据的持久化和缓存处理 部署架构:使用Dockerfile定义Python运行环境,配置Kafka集群连接 关键步骤: 清理旧容器避免冲突 语法检查确保程序正确性 构建镜像并启动容器 常见问题排查: 容器不断重启 Kafka连接失败 Python语法错误 提供了一键重启脚本简化部署流程 该方案实现了环境隔离、快速部署和高可用性,适合生产环境使用。

2025-11-24 17:05:07 929

原创 轻量级日志监控与告警系统(二,上):为 Kafka 消费者注入 CI/CD 能力,实现秒级部署闭环

摘要: 本文基于轻量级日志监控系统的初版架构,通过Git Hooks实现Kafka消费者程序的轻量级CI/CD能力,解决手动部署效率低下的痛点。采用裸仓库+post-receive钩子的方案,实现git push触发自动代码同步与服务重启,避免了Jenkins等工具的复杂部署。该改进使系统具备秒级迭代能力,为后续引入Celery、Prometheus等组件奠定自动化基础,体现"代码即配置"的DevOps理念。全文包含架构对比、实现细节及演进规划,展示如何用最小成本构建可自维护的日志处理系

2025-11-23 23:09:58 805

原创 轻量级日志监控与告警系统(二,下):CI/CD 具体部署实战,一行推送实现秒级更新

本文介绍了如何为已有日志监控系统快速实现轻量级CI/CD部署方案。通过Git Hooks和Shell脚本,无需修改业务代码即可实现git push自动部署,使系统具备秒级更新能力。 核心要点: 采用Git裸仓库作为代码中转站,通过post-receive钩子触发自动部署 部署过程包含强制检出代码和systemd服务重启,确保Kafka消息不丢失 整个方案零侵入、轻量可靠,仅依赖Git和systemd基础组件 实测从代码修改到生产生效仅需5秒,大幅提升迭代效率 该方案完美契合"用原生能力解决问题&q

2025-11-23 23:08:45 1143

原创 Git Hooks 实现 CI/CD 进阶实践 -- 根据实际需求添加功能

本文介绍了Git Hooks实现CI/CD的四个进阶功能:1)通过分支控制仅部署main分支;2)采用"版本目录+软链接"模式实现一键版本回滚;3)添加部署日志记录用于审计;4)支持多环境隔离,将不同分支部署到不同路径。这些功能可以单独或组合使用,共同构建一个更安全、可追溯、可恢复的轻量级CI/CD系统,无需依赖Jenkins等重型工具。文中提供了详细的代码修改示例和验证方法,帮助读者快速实现这些进阶功能。

2025-11-23 17:45:22 741

原创 轻量级 CI/CD:Git Hooks 自动部署 Node.js 应用(CICD-demo)

本文介绍了一个轻量级CI/CD系统的实现方案,仅使用Shell脚本和Git Hooks完成Node.js应用的生产级部署。系统通过Git的post-receive钩子触发自动构建和部署流程,包含Nginx反向代理和systemd服务托管配置。方案展示了CI/CD的核心原理,相比Jenkins等工具更加轻量透明,适合学习实践。文中详细说明了裸仓库创建、钩子脚本编写、Node.js应用示例、systemd服务配置、Nginx代理设置等关键步骤,并提供了项目开源地址。该方案部署耗时短,资源占用低,但缺乏Web界面

2025-11-23 17:42:02 911 1

原创 虚拟机上实现最简 CI/CD

本文介绍了一种在本地CentOS 7虚拟机上实现最简CI/CD流程的方法,无需Docker或云服务。主要内容包括:1) 创建本地bare Git仓库模拟远程仓库;2) 初始化开发者工作目录并提交简单应用;3) 通过配置post-receive钩子脚本实现自动化流程,包含持续集成(检查文件存在性)和持续部署(同步到Web目录);4) 配置Apache支持部署访问;5) 完整测试流程演示。该方法帮助初学者理解CI/CD底层原理,适合学习实验和内网开发环境,后续可扩展为添加测试框架、多环境部署等进阶功能。

2025-11-22 19:38:33 968

原创 轻量级日志监控与告警系统(一)

本文介绍了一个基于开源技术栈的轻量级实时日志监控告警系统。系统采用微服务架构,通过Nginx收集访问日志,Filebeat采集日志并发送至Kafka消息队列,Python消费者程序实时分析日志数据,检测异常访问(如高频请求或错误状态码)并触发邮件告警。系统已在阿里云部署初级demo版本,具备日志采集、实时分析、异常告警等核心功能。未来计划引入AI查询、容器化等高级特性,打造企业级可观测性平台。项目代码已开源,为后续功能扩展提供了良好基础。

2025-11-21 22:16:00 1123

原创 Nginx高可用集群实战:从零搭建企业级Web架构

本文详细介绍如何从零开始,使用Nginx、Keepalived、Prometheus和Grafana等技术栈,搭建一个具备负载均衡、自动故障转移和全方位监控的企业级高可用Web集群。项目背景:现代Web服务对高可用性的刚性需求技术选型:Nginx+Keepalived+Prometheus+Grafana技术栈优势预期效果:实现负载均衡、故障转移、实时监控成功构建高可用Web集群实现自动故障转移能力建立完整监控体系达到企业级高可用要求。

2025-11-20 14:09:04 649

原创 脚本(mysql、nginx、docker等)

快速部署高可用Nginx服务器…详细内容…

2025-11-19 23:54:33 308

原创 用 Docker Compose 管理留言板多容器应用

描述:本项目是基于 Flask + MySQL 的留言板应用,通过 Docker Compose 实现开发环境与测试环境的隔离部署,支持独立端口、独立数据库、独立日志存储,确保开发与测试过程互不干扰。

2025-11-11 19:15:14 630

原创 用 Docker 部署一个带 MySQL 的 Python 留言板

本文介绍如何使用Docker部署一个基于Flask的Python留言板应用,并实现数据持久化。主要内容包括: 创建MySQL容器并配置数据卷实现持久化存储 开发Flask留言板应用,包含提交和展示功能 构建Python应用镜像 启动应用容器并连接MySQL数据库 验证应用功能和数据持久化效果 通过Docker容器化部署和volume数据卷技术,确保即使删除容器,用户留言数据也不会丢失。系统包含两个容器:MySQL数据库容器和Python应用容器,通过环境变量配置数据库连接,实现容器间通信。最终可在浏览器访问

2025-11-11 08:23:52 355

原创 日志清理小工具(logclean)

小工具的开发

2025-11-06 13:06:35 211

原创 常用基础脚本

模拟最基础的监控告警判断逻辑,用于 CPU、内存、磁盘等监控指标判断。模拟从真实日志中提取关键字段,用于日志分析、监控告警、审计等场景。✅ 题目 1:字符串基础操作(提取日志中的日期和日志级别)✅ 题目 2:数字与简单运算(CPU 使用率告警判断)

2025-11-01 14:06:47 382

原创 yum安装和编译安装区别--nginx编译安装脚本

【代码】yum安装和编译安装区别--nginx编译安装脚本。

2025-10-25 08:30:23 237

原创 对yum安装的nginx的配置文件可能不熟悉的模块进行拆解

用于加载 Nginx 的动态模块配置文件,比如一些第三方模块(如限流、安全模块等)可通过这种方式集成。:每个工作进程允许的最大并发连接数,默认 1024,可根据服务器性能调整。

2025-10-25 05:44:03 296

原创 关于NGINX,你了解多少?

NGINX并不是一个现有的网站,也不是一个静态网页的模板,而是一个高性能的web服务器软件,只是一个软件,核心作用是:接收用户的http请求,并根据配置将这些请求转发、处理或直接返回相应的网页内容当我们在Linux系统里刚安装好nginx,然后去浏览器访问nginx网页,就是一个静态页面,是用户(windows)发出http请求,nginx服务器(Linux)接收到后直接返回相应的静态页面,这个过程并没有转发的过程,nginx在这里是作为web服务器直接返回网页。

2025-10-25 05:16:20 805

原创 关于git的使用(在gitee和gitcode上部署自己的项目流程)

cd /testgit init如果有​:您的本地仓库与远程仓库的没有共同的"祖先提交"Git默认拒绝合并这种"不相关"的历史记录。

2025-10-22 23:13:17 386

空空如也

空空如也

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

TA关注的人

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