- 博客(65)
- 收藏
- 关注
原创 Jenkins 流水线:镜像仓库与自动化部署
构建前记得注意下权限问题#存在pipline这个镜像 [ root@jenkins jenkins_docker ] # docker images | grep pipline pipline v3.0 0aebe3dc364a About a minute ago 543MB。
2025-12-26 16:28:24
744
原创 DevOps 进阶实践:代码审计、镜像仓库与自动化部署全流程
1:告知目标服务器拉取哪个镜像。Jenkins需要把镜像制作并推送到harbor中,就需要具备docker环境。到Windows系统的idea中,删除docker-compose文件。2:判断当前服务器是否正在运行该容器,如果正在运行则需要删除。在本地Jenkins服务器中测试拉取,在拉取前先删除原有镜像。镜像命名规范:仓库IP地址/项目名称/镜像名称:版本号。3:如果目标服务器已经存在当前镜像,则需要删除该镜像。4:目标服务器拉取harbor上的镜像。在Jenkins服务器中,编写脚本。
2025-12-26 15:10:57
975
原创 DevOps 从概念到 CI/CD 落地
Jenkins 是实现持续集成(CI)、持续交付 / 部署(CD)的关键工具,是 DevOps 工具链的核心组成部分。
2025-12-26 14:37:32
853
原创 kubernetes弹性伸缩
VPA(Vertical Pod Autoscaler,Pod 垂直自动伸缩)是 Kubernetes 弹性伸缩组件,核心作用是根据容器实际资源使用率,动态调整 Pod 的 CPU / 内存 requests/limits—— 资源过剩时缩容(降低请求值),资源不足时扩容(提高请求值),实现资源精准匹配,提升节点资源利用率。核心适配场景:无法通过增加 Pod 数量扩容的服务(如数据库、单机版中间件),需通过提升单 Pod 资源规格满足负载需求。
2025-12-24 16:15:23
706
原创 Kubernetes核心组件详解与实践:Service
内访用 ClusterIP,默认稳当不暴露外访测试 NodePort,3 万端口记清楚生产外访 LoadBalancer,云厂商来扛得住;内外互通 ExternalName,域名映射最靠谱。
2025-12-24 13:56:10
695
原创 Kubernetes核心组件详解与实践:controller
当 K8s 内置控制器无法满足自定义业务的资源管理需求时(如管理 MySQL、Redis、Elasticsearch 等中间件的生命周期),可通过CRD(自定义资源定义)+ 自定义控制器基于 K8s 的声明式 API 扩展,定义自定义资源(如结合等工具开发控制器,实现自定义资源的生命周期管理(如部署、扩容、备份、升级);典型场景:Prometheus Operator、MySQL Operator、Elasticsearch Operator,实现中间件的自动化运维。
2025-12-14 19:29:30
648
原创 Kubernetes核心组件详解与实践:Pod
Pod 的 YAML 配置:指定标签用于被控制器匹配 labels:app: nginx # 键值对形式,可自定义键名(如 app、component 等)Pod 作为 Kubernetes(K8s)集群的基础核心单元,其设计逻辑和分类规则是理解 K8s 容器编排的关键。以下从精准定义、核心特性、运行规则、分类详解四个维度,对 Pod 相关知识进行补充完善与结构化梳理,让概念更清晰、细节更完整。本质定位:最小可调度计算单元Pod(类比 “豌豆荚”)是 K8s 中可创建、部署、调度的最小计算单元。
2025-11-23 15:58:14
1116
原创 Kubernetes 核心概念与微服务架构解析
Pod 是 Kubernetes 中可创建、可管理的最小可部署计算单元,并非直接运行容器,而是作为 “容器组” 承载 1 个或多个紧密关联的容器。Controller(控制器)是 K8s 中用于管理 Pod 生命周期、维持集群状态的核心对象,其核心逻辑是 “监控当前状态 → 对比期望状态 → 调整至期望状态”。Label 是附着在 K8s 资源(如 Pod、Node、Service)上的键值对(key=value),本身无业务逻辑,仅用于 “标记资源”,方便后续筛选和管理。
2025-11-23 15:47:48
737
原创 Kubernetes集群管理实践(二):节点标签、YAML 配置与命名空间管理
节点标签 的核心含义是附着在 K8S 集群节点上的键值对(key=value)形式的属性标识,本质是给集群中的每台服务器(节点)打上 “属性标签”,用于对节点进行分类、标识、筛选和调度约束。
2025-11-19 19:36:45
1053
原创 Kubernetes集群管理实践(一):从基础操作到可视化部署
通过文件或标准输入创建资源:将 RC、Service、Deployment、Pod 暴露为新的 Service:在集群中运行指定镜像:为对象设置特定属性:查看资源的文档说明:显示一个或多个资源:使用默认编辑器编辑资源:根据文件、标准输入、资源名或 label 删除资源。
2025-11-14 20:11:05
392
原创 docker安装Kubernetes
iptables 的 “拒绝动作” 实现模块,当 iptables 规则匹配到 “拒绝” 策略时,由该模块返回拒绝响应(如 ICMP 端口不可达),区别于 “丢弃(DROP)” 动作(不返回任何响应)。:iptables 工具的基础框架模块,提供 iptables 规则的加载、解析和执行能力,是 Linux 系统中实现防火墙、流量转发、端口映射等功能的底层支撑。:IPv4 协议的连接跟踪模块,负责记录 IPv4 网络连接的状态(如建立、关闭、数据传输中),是 NAT 转换、防火墙状态检测的核心依赖。
2025-11-13 18:43:29
975
原创 Containerd部署Kubernetes
Kubernetes 集群由 主控节点(Master)和工作节点(Node)组成。#发现自动生成了一个pod,但是id不一样。
2025-11-12 19:34:05
669
原创 Python基础(三)
面向对象核心思想:将问题中的事物抽象为 “对象”,封装对象的特征(属性)和行为(方法),通过对象间的交互解决问题,相比面向过程更灵活、可复用,便于扩展(如更换需求只需调整对象属性 / 方法,无需重构流程)。类与对象:类是具有相同属性和行为的对象的抽象集合,由类名(大驼峰命名)、属性、方法组成,语法为class 类名: 属性 方法。对象是类的实例,通过对象名 = 类名()创建,使用对象本质是访问其属性(对象名.属性名)和方法(对象名.方法名()类的成员:属性。
2025-11-09 17:21:12
810
原创 Python基础(二)
列表创建可直接用[]定义,也可通过list()函数将集合、字典(默认取键)等可迭代对象转换为列表。可迭代对象列表、range 对象、字符串等属于可迭代对象,可通过结合Iterable判断;数值类型(int、float、complex)及布尔值不属于可迭代对象。列表查看与访问支持索引(正索引、负索引)、切片(指定起始、结束、步长)访问元素;可通过len()获取长度,用in判断元素是否存在。列表元素添加与扩展append()用于末尾追加元素;extend()
2025-11-09 17:20:28
1034
原创 Python基础(一)
代码格式:注释分单行(开头)和多行(三对单 / 双引号包裹),需规范空格间距;缩进用 4 个空格(Python3 不允许 Tab 与空格混用),同一代码块缩进量需一致;长语句可利用圆括号、中括号、大括号隐式换行,每行建议不超过 79 字符。标识符与关键字:标识符由字母、数字、下划线组成,数字不能开头,区分大小写且不能使用关键字;命名建议见名知意,常量大写、模块 / 函数名小写(下划线连接)、类名首字母大写。Python3 有 35 个关键字(如iffordef),可通过查看。变量与数据类型:变量用。
2025-11-09 17:19:42
901
原创 Zabbix企业级分布式监控系统(上)
Zabbix 是一款开源的企业级分布式监控系统,专注于对 IT 基础设施(服务器、网络设备、云资源、应用程序等)的全面监控、告警和可视化,广泛应用于企业运维、云平台管理等场景。其核心优势在于功能全面、可扩展性强、支持多平台,且完全开源免费。系统核心,负责接收监控数据、存储(依赖数据库,如 MySQL、PostgreSQL)、分析数据、触发告警、管理配置等。安装在被监控设备上的轻量客户端,负责采集本地数据(如 CPU、内存),通过主动 / 被动模式与 Server/Proxy 通信(默认端口 10050)。
2025-11-05 18:39:04
1116
原创 ELK企业级日志分析系统
分布式搜索引擎,负责日志的索引、存储和快速查询,支持水平扩展和高可用;Logstash:日志采集与处理工具,支持多数据源输入,可对日志过滤、格式化后输出到 Elasticsearch;Kibana:可视化分析平台,提供 Web 界面实现日志的可视化查询、报表生成和实时监控。
2025-11-04 19:28:54
1112
原创 Ceph 分布式存储学习笔记(四):文件系统存储管理
构建于 Ceph 存储之上,兼容 POSIX 的文件系统,与 RBD、RGW 类似,通过 librados 原生接口实现。
2025-10-13 17:03:23
459
原创 Ceph 分布式存储学习笔记(三):块存储和对象存储管理
数据存储形态与访问方式:对象存储将数据以离散的 “对象” 为单位存储,每个对象拥有唯一的对象 ID(或对象密钥)。用户无需知晓对象的物理存储位置,仅通过对象 ID 即可完成数据的存储与检索操作。对象的组成结构:每个对象是文件数据与相关属性信息的集合,包含三部分核心内容:Key(键值):即对象名称,需为 UTF-8 编码的字符序列,长度大于 0 且不超过 1024 字符;同一存储容器(桶)内的对象 Key 必须唯一,作为对象的核心标识。Metadata(元数据)
2025-09-30 19:40:07
915
原创 Ceph 分布式存储学习笔记(二):池管理、认证和授权管理与集群配置(下)
监控器(MON)启动时,会读取monmap(监控器映射文件)和ceph.conf(配置文件),通过这两个文件确定与其他 MON 的通信方式,进而与其他 MON 建立仲裁(确保集群一致性的决策机制),完成集群启动基础准备。
2025-09-29 17:00:02
943
原创 Ceph 分布式存储学习笔记(一):介绍、部署与集群配置(上)
高可用性:通过分布式架构与数据冗余机制,有效避免单点故障,确保存储服务持续稳定,即使部分节点出现问题,也能保障数据可访问与业务不中断。强扩展性:支持在现有集群基础上灵活添加节点,无论是存储容量还是处理性能,都能随着节点增加实现线性扩展,轻松应对数据量增长带来的存储压力。高易用性:提供了简洁的管理工具与友好的操作界面(如 Ceph Dashboard),降低了运维门槛,同时支持多种部署方式,适配不同的 IT 环境。硬件兼容性。
2025-09-28 16:57:06
860
原创 华为云学习笔记(四):运维类服务与企业网站上云实践
本实验通过进行关键操作,查看云审计相关界面;通过云日志服务,查看弹性云服务器的日志;使用命令使 弹性云服务器 CPU 增加,从而查看监控是否报警。创建一台弹性云服务器 ECS(通用计算型 |1 核|2 GB|40 GB|CentOS 7.8)。在服务列表页面搜索“云审计”,进入云审计服务界面配置关键操作通知,可在发生特定操作时,使用预先创建好的 SMN 主题,向用户手机、邮箱发送 消息。点击左侧栏的“关键操作通知”,然后点击“创建关键操作通知”在“主题管理”页面,选择“订阅”,可以看到新增的订
2025-09-26 20:00:26
1036
原创 华为云学习笔记(三):云存储服务实践指南
云硬盘(Elastic Volume Service)是一种为 ECS、BMS 等计算服务提供持久性块存储的服务。它通过数据 冗余和缓存加速等多项技术,提供高可用性和持久性,以及稳定的低时延性能。用户可以对云硬盘做格 式化、创建文件系统等操作,并对数据做持久化存储。本实验介绍 了云硬盘创建,挂载等基本操作。OBS 一种稳定、安全、高效、易用的云存储服务,具备标准 Restful API接口,可存储任意数量和形式的 非结构化数据。本实验介绍了如何通过 OBS Browser+完成基本的对象存储管理操作。
2025-09-25 19:45:40
996
原创 华为云学习笔记(二):网络类云服务实验及实践
虚拟私有云(Virtual Private Cloud,以下简称 VPC),为云服务器、云容器、云数据库等资源构建隔离 的、用户自主配置和管理的虚拟网络环境,提升用户云上资源的安全性,简化用户的网络部署。安全组是一个逻辑上的分组,为具有相同安全保护需求并相互信任的云服务器提供访问策略。安全组创 建后,用户可以在安全组中定义各种访问规则,当云服务器加入该安全组后,即受到这些访问规则的保 护。
2025-09-25 19:12:09
1046
原创 华为云学习笔记(1):ECS 实例操作与密钥登录实践
弹性云服务器(Elastic Cloud Server)是一种可随时自助获取、可弹性伸缩的云服务器,可帮助用户打造可 靠、安全、灵活、高效的应用环境,确保服务持久稳定运行,提升运维效率。镜像是用于创建服务器或 磁盘的模板。镜像服务(lmage Management Service)提供镜像的全生命周期管理能力,帮助用户快速部署业务。弹性伸缩(Auto Scaling)根据用户的业务需求和策略,自动调整资源。
2025-09-23 19:56:38
1178
1
原创 OpenStack 学习笔记(五):网络管理和虚拟网络实践与存储管理实验(下)
Neutron 概述传统的网络管理方式很大程度上依赖于管理员手工配置和维护各种网络硬件设备;而云环境下的网络已经变得非常复杂,特别是在多租户场景里,用户随时都可能需要创建、修改和删除网络,网络的连通性和隔离不已经太可能通过手工配置来保证了。如何快速响应业务的需求对网络管理提出了更高的要求。传统的网络管理方式已经很难胜任这项工作,而“软件定义网络(software-defined networking, SDN)”所具有的灵活性和自动化优势使其成为云时代网络管理的主流。
2025-09-19 23:04:05
1202
原创 OpenStack 学习笔记(四):编排管理与存储管理实践(上)
本实验主要介绍如何通过OpenStack Dashboard和OpenStack CLI两种方式创建并管理卷类型和QOS,最后介绍了卷的创建、挂载及卸载、上传卷到镜像、创建卷快照并基于卷快照创建卷、基于卷发放虚拟机实例、卷扩容、更新卷状态以及删除卷等基本操作。
2025-09-18 19:52:35
1006
原创 OpenStack 学习笔记(三):存储与计算核心组件管理实践
本实验主要介绍如何通过OpenStack Dashboard和OpenStack CLI两种方式管理Hypervisor、主机聚合、规格、密钥对以及虚拟机组,最后介绍了虚拟机实例的发放、生命周期管理以及快照和重建等基本操作。
2025-09-17 19:54:43
1141
原创 OpenStack 学习笔记(二):镜像管理与计算服务实践
何通过 OpenStack Dashboard 和 OpenStack CLI 两种方式进行镜像的下载、创建、注册、 共享以及镜像格式转换等基本操作。
2025-09-16 19:55:34
1356
原创 OpenStack 管理与基础操作学习笔记(一):角色、用户及项目管理实践
通过 OpenStack Dashboard 和 OpenStack CLI 两种方式创建角色、用户、用户组以及项 目等,并验证不同角色的用户的权限区别。
2025-09-15 17:32:36
1437
原创 Docker 学习笔记(八):容器运行时工具实践及 OpenStack 部署基础
nerdctl命令创建容器的时候,可以使用-v选项将本地目录挂载给容器实现数据持久化nerdctl命令创建容器的时候,也可以用-v选项指定volume。
2025-09-12 17:19:35
989
原创 Docker 学习笔记(七):Docker Swarm 服务管理与 Containerd 实践
Containerd 为嵌入 Kubernetes 而设计,是工业级容器运行时,不直接供开发人员和终端用户使用,避免与 Docker 竞争。实际上,它已实现多数容器管理功能,如容器生命周期管理、镜像传输和管理、存储与网络管理等。服务端通过 GRPC 协议提供稳定 API。客户端通过调用服务端 API 进行高级操作。为实现解耦,Containerd 将不同职责分给不同组件,每个组件相当于子系统,连接子系统的组件称为模块。
2025-09-11 19:03:16
1288
原创 Docker 学习笔记(六):多容器管理与集群部署实践
DockerUI是一个易用且轻量化的 Docker 管理工具,通过 Web 界面的操作,更方便对于 Docker 指令不 熟悉的用户更容易操作 Docker。
2025-09-10 23:43:59
1432
原创 Docker 学习笔记(五):网络与存储核心原理及实战应用
用 bind mount 时,每个容器都要显式指定-v <主机路径>:<容器路径>,这会让容器 “依赖” 主机的具体路径(比如如果换一台主机,路径可能不一样,容器就跑不起来。而 volume container 把所有挂载路径都 “封装” 在自己内部(比如在数据卷容器里定义-v /data),其他容器只需通过--volumes-from 数据卷容器名关联,完全不用关心主机上的实际存储路径(由 Docker 管理)。
2025-09-09 19:40:48
1081
原创 Docker学习笔记(四):网络管理与容器操作
的-c 512与的-c 1024形成了典型的 CPU 权重对比场景,直观展示了 Docker 如何通过 cgroup 的cpu.shares机制实现相对公平的资源分配。这种方式适合在多容器共享主机时,根据业务优先级分配 CPU 资源(如核心服务权重高,非核心服务权重低)。Docker 提供三种 user-defined 网络驱动:bridge, overlay 和 macvlan。overlay 和 macvlan 用于创建 跨主机的网络,
2025-09-08 17:26:08
1339
原创 Docker学习笔记(三):镜像与容器管理进阶操作
Dockerfile文件cd myfile# 配置yum源#安装vim编辑器、ifconfig命令查看网络IP、java8及lib库#ADD 是相对路径jar,把jdk-8u461-linux-x64.tar.gz添加到容器中,安装包必须要和Dockerfile文件在同一位置#配置java环境变量EXPOSE 80。
2025-09-05 19:39:13
964
1
原创 Docker学习笔记(二):镜像与容器管理
hello-world 是 Docker 官方提供的一个镜像,通常用来验证 Docker 是否安装成功。先通过 docker pull 从 Docker Hub 下载它。用 docker images 命令查看镜像的信息。通过 docker run 运行。
2025-09-04 19:37:03
1217
1
原创 Docker学习笔记(一):容器基础、生态与安装实践
容器技术以 “轻量、一致、高效” 为核心,通过 “镜像 - 引擎 - 编排” 生态,支撑微服务、DevOps 等场景,是企业通向云原生的关键工具,掌握 Docker 与 K8s 是核心技能。要创建容器,得先定义 “容器里有什么”“怎么配置”—— 这就需要容器定义工具,它能把容器的内容、属性固化下来,方便保存、共享和重复创建。Docker Image(镜像):相当于容器的 “模板”,Runtime 就是根据镜像来创建容器实例的;Dockerfile。
2025-09-03 19:16:46
923
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅