自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【Ansible】(十八)文件包含与导入

Ansible提供了import和include两种机制来拆分大型剧本。import是静态导入,解析时直接插入文件内容;include是动态包含,运行时才加载文件。import_playbook用于导入完整剧本,import_tasks用于静态导入任务文件,include_tasks则动态包含任务文件。两者在条件语句作用范围上有区别:import的条件会应用到所有导入任务,而include的条件仅决定是否加载文件。通过变量传参可实现任务文件复用。建议优先使用import_tasks,仅在需要动态加载时使用i

2026-07-12 12:00:00 489

原创 【Ansible】(十七)主机模式

本文介绍了Ansible中主机模式(Host Patterns)的使用方法。主要内容包括:基础匹配方式(单主机/IP、主机组)、通配符匹配、列表与逻辑匹配(或、与、非)三种主要模式。文章详细说明了每种匹配方式的语法和注意事项,特别强调了带特殊字符时需加引号、IP必须存在于清单中等要点。最后通过问答形式解答了常见问题,如all与'*'的区别、IP匹配失败原因等。这些技巧能帮助用户精准控制Playbook执行范围,提升自动化运维效率。

2026-07-10 12:00:00 519

原创 【Ansible】(十六)Jinja2 模板

在自动化运维中,批量推送配置文件是核心场景之一。不同主机的配置往往格式统一,但 IP、主机名、端口等参数各不相同,手动修改不仅效率低,还容易出错。Jinja2 模板正是为解决这类问题而生:通过在配置文件中嵌入变量、循环和条件判断,实现 “一份模板,多主机适配”。部署时 Ansible 会自动根据目标主机的信息,渲染出个性化的配置文件,兼顾通用性与灵活性。

2026-07-08 12:00:00 435

原创 【Ansible】(十五)文件管理

在 Ansible 自动化运维中,文件管理是最基础也最核心的场景之一:创建文件、推送配置、修改权限、增删内容、同步目录,这些操作几乎是每一套 Playbook 都会用到的。Ansible 内置了一整套文件管理模块,能覆盖绝大多数日常场景,而且自带幂等性,多次执行不会产生副作用。

2026-07-06 12:00:00 412

原创 【Ansible】(十四)流程控制与异常处理

在 Ansible 自动化运维中,并不是所有任务都能百分百成功执行。日常部署、配置更新、服务变更过程中,经常会出现任务报错、状态误判、流程中断、需要回滚等问题。Ansible 提供了一整套流程控制与异常处理机制,可以人为干预任务执行状态、控制报错逻辑、实现失败回滚,让 Playbook 更加稳定、健壮、适配真实生产环境。Ansible 会自动判断任务是ok还是changed,我们可以手动修改判定规则。有些命令执行返回码正常,但输出内容代表业务失败。通过可以根据输出内容手动判定任务失败,精准控制业务逻辑。

2026-07-04 12:00:00 811

原创 【Ansible】(十三)循环与条件判断

Ansible自动化运维中循环与条件判断的应用摘要:Ansible通过loop循环机制实现批量任务处理,支持列表、字典等多种数据结构遍历,结合register捕获执行结果。条件判断使用when语句,支持布尔开关、变量校验、多条件组合等场景,可与循环联合使用实现精准控制。关键点包括:item变量存储当前元素、新旧循环语法差异、布尔值类型转换技巧、多条件优先级规则等。这些特性共同提升了Ansible脚本的灵活性和适应性,有效应对复杂异构环境的运维需求。

2026-07-02 12:00:00 511

原创 【Ansible】(十二)事实管理

摘要:Ansible事实(Facts)是自动化运维中的核心功能,通过setup模块自动采集主机硬件和软件信息,实现动态配置和智能决策。文章详细介绍了事实的查看方法(两种引用语法)、优化策略(关闭/手动/部分收集)、自定义事实创建(静态/动态)以及跨主机交互的魔法变量使用。针对常见问题提供了解决方案,如性能优化、自定义事实加载等。掌握事实管理能显著提升Playbook的灵活性和智能化水平,是进阶自动化运维的关键技能。

2026-06-30 12:00:00 672

原创 【Ansible】(十一) Vault

Ansible Vault 是保护敏感数据的关键工具,通过合理的目录结构、加密策略和权限管理,可在自动化运维中实现安全与效率的平衡。在企业级项目中,建议结合 CI/CD 密钥管理、环境变量和严格的文件权限控制,构建多层安全防护体系,避免敏感数据泄露风险。

2026-06-29 09:38:28 539

原创 【Ansible】(十)Ansible 变量

在剧本头部声明全局变量,当前剧本所有任务均可调用,适合单业务简易配置。- name: 剧本内置变量调用演示vars:tasks:- name: 安装Nginx服务- name: 启动并开机自启变量体系是 Ansible 自动化运维的核心骨架,从基础命名、层级优先级,到剧本定义、目录规范,再到寄存器、循环传参等高阶用法,层层递进构建灵活配置体系。遵循企业级变量目录规范,合理划分通用与专属参数,搭配实战代码落地,能够有效精简运维脚本,适配大规模集群管理,提升自动化部署的稳定性与可维护性。

2026-06-26 12:00:00 618

原创 【Ansible】(九)Ansible 循环与条件任务

摘要:本文介绍了Ansible中循环语句与条件判断语句的实战应用。循环语句包括基础列表循环、变量形式循环和字典多参数循环,可简化批量运维任务;条件判断语句则通过when实现差异化部署。文章还讲解了循环与注册变量结合使用的方法,并解答了5个常见问题,如推荐使用loop语法、when判断特点等。这些技巧能有效提升Playbook的编写效率与维护性,适用于软件安装、服务配置等批量运维场景。

2026-06-24 12:00:00 410

原创 【Ansible】(八)Ansible 事实

摘要:Ansible事实采集是自动化运维的核心功能,能自动获取远端服务器的系统信息(如主机名、IP、内核版本等),并以变量形式供脚本调用,实现差异化部署。文章介绍了查看全量事实、常用事实调用、关闭采集优化效率等基础操作,以及自定义本地事实配置和魔法变量的实战应用。关键点包括:1)通过gather_facts控制采集;2)自定义事实文件需放在/etc/ansible/facts.d/目录;3)魔法变量hostvars可实现跨主机信息互通。该技术显著提升了脚本的通用性和运维效率。

2026-06-22 00:20:14 259

原创 【Ansible】(七)机密管理

摘要:Ansible Vault是Ansible用于加密敏感数据的工具,采用AES-256算法保护密码、API密钥等信息。基础操作包括创建/查看/编辑加密文件、加密现有文件及修改密码。使用时可通过交互输入或密码文件提供解密密钥。生产环境建议将普通变量与敏感变量分离存储,并支持多密码管理。常见问题解答涵盖加密算法、报错处理、命令区别及密码管理技巧,推荐使用单独加密文件存储敏感变量,既确保安全又便于维护。

2026-06-20 12:00:00 753

原创 【Ansible】(六)变量管理

摘要:本文介绍Ansible自动化运维中变量的核心用法。主要内容包括:变量命名规则(字母开头,含字母数字下划线);优先级顺序(组变量→主机变量→Playbook变量→任务变量→命令行参数);变量定义方式(Playbook内部、外部文件引入);特殊变量类型(字典变量、注册变量);以及命令行临时传参技巧。通过问答形式总结了变量命名要求、优先级规则、外部文件优势、注册变量作用和命令行传参场景。全文以实操为导向,帮助提升Playbook复用性和维护性。

2026-06-18 12:45:50 506

原创 【Ansible】(五)Playbook 进阶

本文介绍了Ansible Playbook的生产级实用技巧,主要内容包括:1)多Play编排实现不同主机组的分组管理;2)特权升级与远程登录用户的优先级配置;3)四大常用模块(软件安装、服务管理、文件复制、配置修改)的实际用法;4)YAML编写规范与常见问题。文章特别强调了避免使用shell/command模块的原因,并解答了5个常见问题,包括执行顺序、配置优先级、模块选择等运维实践中的关键点。通过具体示例代码和简明问答,为日常自动化运维提供了实用参考。

2026-06-16 12:00:00 473

原创 【Ansible】(四)Playbook实操

任务描述(name)尽量详细,比如“确保httpd服务已启动”,后续排查日志时能快速定位任务;尽量用内置模块(ansible.builtin.*),兼容性更好,避免第三方模块依赖问题;复制文件时,确保控制节点的src路径正确,相对路径是相对于Playbook所在目录;如果需要忽略某个任务的错误,可在任务后加(谨慎使用)。A:幂等性就是“重复执行同一任务,系统状态不会重复变更”。比如重复执行“安装httpd”任务,只会在httpd未安装时执行安装,已安装时不会重复操作。

2026-06-14 12:00:00 292

原创 【Ansible】(三)基础配置与连接设置

做Ansible自动化运维,第一步就是搞定配置文件和主机连接——这是所有自动化操作的基础,配置错一步,后续所有任务都无法执行。这篇笔记只讲实操,不堆砌理论,配置文件、命令直接复制能用,帮你快速打通Ansible连接环节。

2026-06-12 16:45:03 383

原创 【Ansible】(二)存储

本文整理了Linux系统磁盘管理的实用操作指南,涵盖磁盘分区、格式化、挂载、LVM管理、磁盘配额等日常运维必备技能。重点内容包括:1)磁盘分区工具fdisk(MBR)和parted(GPT)的使用场景与命令;2)文件系统格式化与挂载配置;3)LVM逻辑卷的创建、扩容与管理流程;4)磁盘配额配置方法;5)常用磁盘空间查看命令(df/du)。文章采用实操导向,提供可直接复用的命令示例,并解答了分区工具选择、fstab作用、LVM优势等常见问题,适合运维人员快速查阅使用。

2026-06-10 12:00:00 556

原创 【Ansible】(一)Ansible 入门

本文介绍了Ansible自动化运维工具的核心优势与应用实践。作为无代理架构的开源工具,Ansible依托SSH协议实现批量管理,具有YAML语法易上手、幂等执行、跨平台兼容等特点。文章详细解析了其四大组件(主机清单、模块、Playbook、插件)和声明式设计思想,并展示了主机分组、Ad-hoc命令和Playbook剧本的实操示例。通过问答环节强调了无代理架构和幂等性的价值,最后以客观题形式巩固知识点。该工具可有效提升服务器初始化、环境部署等重复性工作的效率,是中小企业实现自动化运维的理想选择。

2026-06-08 12:00:00 659

原创 【Linux 1】

本文系统介绍了Linux存储管理的核心技术与实操方法。主要内容包括:1)磁盘分区管理,涵盖MBR/GPT分区工具选择;2)文件系统创建与挂载配置;3)LVM逻辑卷的动态管理;4)磁盘配额设置;5)常用磁盘监控命令。针对不同场景提供了ext4/xfs/btrfs文件系统选型建议,详细讲解了LVM扩容缩容操作,并解答了分区表选择、fstab修复等常见问题。文章通过命令示例与场景分析,帮助运维人员掌握从基础分区到高级存储管理的全套技能,提升系统资源管理能力。

2026-06-06 12:00:00 283

原创 【Kubernetes】(二十九)Argo CD

摘要:ArgoCD是基于GitOps理念的Kubernetes持续交付工具,通过自动化同步Git仓库中的声明式配置(支持Helm/Kustomize等)到集群,确保实际状态与期望状态一致。其核心架构包含APIServer、RepositoryServer、ApplicationController等组件,具备持续同步、自愈修复、多集群管理等功能。典型应用场景包括自动化部署、多环境管理、配置漂移修复等,是生产环境中实现GitOps工作流的成熟解决方案。(149字)

2026-06-04 12:00:00 597

原创 【Kubernetes】(二十八) HPA

Kubernetes的HPA(水平Pod自动扩缩容)组件能根据CPU/内存等指标自动调整Pod副本数,实现负载高时扩容、负载低时缩容。其工作流程为:MetricsServer采集资源指标→HPA控制器比对阈值并计算副本数→调整Deployment配置自动扩缩容。通过部署HPA,可确保业务稳定性的同时优化资源利用率。

2026-06-02 12:00:00 506

原创 【Kubernetes】(二十七)PriorityClass 2

摘要:本文通过Kubernetes实验验证PriorityClass的调度优先级和抢占机制。实验分四个阶段:部署系统基础服务、关键业务应用、触发资源竞争以及模拟紧急抢占场景。结果显示,当资源不足时,调度器会优先终止低优先级Pod(如后台任务),确保高优先级Pod(如系统核心组件)正常运行。实验还观察到,被驱逐的低优先级Pod会被控制器重新创建并等待调度。文章最后通过问答题形式总结了Kubernetes抢占机制的关键要点,包括触发条件、驱逐顺序以及不同工作负载的优先级配置建议。

2026-06-01 09:32:53 134

原创 【Kubernetes】(二十六)PriorityClass 1

摘要: Kubernetes的PriorityClass通过优先级数值(0-10,000,000)定义Pod调度顺序,核心功能包括:资源空闲时高优先级Pod优先调度;资源竞争时触发抢占机制;保障核心组件稳定性。系统组件建议优先级≥1,000,000,业务应用不超过5,000,000。通过DaemonSet、Deployment等配置示例,展示了如何为系统核心、关键业务和后台任务分配差异化的优先级。PriorityClass不替代ResourceQuota,仅作为调度决策依据,需配合资源请求(requests

2026-05-29 12:00:00 528

原创 【Kubernetes】(二十五)Gateway API

【摘要】GatewayAPI是Kubernetes新一代流量管理标准,通过分层设计实现角色分离:GatewayClass定义网关类型(如Istio),Gateway配置入口参数,HTTPRoute管理路由规则。其优势包括支持多协议、标准化扩展和精细流量控制。部署流程为:1)安装CRD;2)配置Istio网关;3)创建测试应用;4)定义Gateway和HTTPRoute;5)验证转发。相比Ingress,GatewayAPI具有更强的路由能力和更规范的协作机制,已成为云原生网关的主流方案。

2026-05-27 12:00:00 756

原创 【Kubernetes】(二十四)CRD2

metadata:spec:versions:- name: v1schema:spec:name: # 访问者姓名message: # 自定义消息names:- vi。

2026-05-25 12:00:00 743

原创 【Kubernetes】(二十三)CRD1

摘要: CRD(CustomResourceDefinition)是Kubernetes扩展API的核心机制,允许用户自定义资源类型,实现原生K8s不支持的功能。其核心价值包括扩展能力、业务逻辑封装及统一管理,典型应用场景涵盖数据库托管(如MySQL Operator)、CI/CD流水线(如Argo Workflows)等。CRD需配合Controller实现自动化运维,形成Operator模式。 实战流程: 定义CRD:通过YAML声明资源结构和校验规则(如myapps.example.com)。 部署C

2026-05-23 12:00:00 919

原创 【Kubernetes】(二十二)Kustomize 管理2

本文介绍了使用Kustomize进行Overlay开发环境配置的完整流程。首先创建Overlay目录结构并编写配置文件,包括定义补丁规则、生成器配置等;然后通过kubectl kustomize验证合并配置,发布到开发环境并验证资源状态。文章还解答了Kustomize中两种补丁方式的区别、Overlay的作用以及配置发布方法。Overlay基于Base配置实现多环境差异化定制,避免直接修改基础配置,提高配置管理效率。

2026-05-21 12:00:00 629

原创 【Kubernetes】(二十一)Kustomize 管理1

Kustomize是Kubernetes原生的无模板配置管理工具,采用"Bases+Overlays"模式实现多环境资源配置。核心包括kustomization.yaml配置文件、Resources资源列表、Generators生成器、Patches补丁机制等。Base目录存放通用资源配置,通过Overlays应用环境差异化补丁。典型流程包括创建Base目录、编写基础资源文件(Secret、Deployment、Service)、配置kustomization.yaml等。Kustomi

2026-05-19 12:00:00 727

原创 【Kubernetes】(二十)ETCD 备份与恢复

本文详细介绍了Kubernetes集群中etcd的备份与恢复操作流程。备份部分包括安装etcd客户端工具和使用snapshotsave命令创建数据快照;恢复部分则涵盖停止集群服务、执行数据恢复、重启服务及验证结果等关键步骤。文中特别强调备份恢复必须使用ETCDCTL_API=3版本,并解释了操作原理和注意事项,包括为何要移动manifests目录、如何验证备份有效性等。通过这套完整的备份恢复方案,可以有效保障Kubernetes集群核心数据的安全性和可用性。

2026-05-18 00:49:14 676

原创 【Kubernetes】(十九)监控与升级

本文介绍了Kubernetes资源监控和集群升级的关键操作。首先说明Metrics Server的核心作用,它通过metrics.k8s.io API提供集群资源使用数据,支持kubectl top命令和HPA控制器。随后详细演示了kubeadm方式升级控制平面的完整流程,包括版本确定、节点维护、组件升级和验证步骤,特别强调要先升级控制平面再处理工作节点。最后通过问答形式总结了K8s常见维护操作,如查看Pod详情/日志、资源监控、节点调度控制等,并指出升级时需注意版本兼容性、备份关键数据等事项。全文提供了从

2026-05-15 12:00:00 585

原创 【Kubernetes】(十八)访问控制2

Kubernetes的NetworkPolicy是实现Pod间网络隔离的关键组件,它通过标签匹配机制精细化管控流量。默认情况下,所有Pod可互通,而NetworkPolicy基于"允许规则叠加"原则,允许通过Pod标签、命名空间标签和IP网段三种方式精准控制访问范围。文章通过一个命名空间隔离的实战案例,演示了如何配置策略仅允许指定命名空间的Pod访问目标Pod(开放TCP 80端口),并验证了策略的有效性。NetworkPolicy不会影响Pod自身访问及与所在节点的通信,这是其永久豁免

2026-05-13 12:00:00 434

原创 【Kubernetes】(十七)访问控制1

摘要:本文介绍了Kubernetes API访问安全机制,重点讲解了ServiceAccount和RBAC权限管理。ServiceAccount为Pod提供专属身份认证,自动挂载token凭证用于API访问。RBAC通过Role、ClusterRole等实现精细化权限管控:Role限定命名空间权限,ClusterRole定义集群全局权限,并通过RoleBinding/ClusterRoleBinding将权限绑定到ServiceAccount。文章还提供了创建ServiceAccount和RBAC资源的实战

2026-05-11 12:00:00 598

原创 【Kubernetes】(十六)资源配额

摘要:本文介绍了Kubernetes中ResourceQuota(资源配额)的配置与应用。ResourceQuota用于在多用户共享集群时限制命名空间的资源使用,确保公平分配。文章详细说明了配额工作机制、Pod基础资源配置方法,并通过实战演示了如何创建命名空间级配额及验证其拦截效果。当资源使用超出配额时,系统会拒绝请求并返回403错误。最后通过问答题形式总结了ResourceQuota的核心作用:限制命名空间内资源对象数量及计算资源总量,防止资源过度占用。(149字)

2026-05-09 12:00:00 698

原创 【Kubernetes】(十五)Secrets

Kubernetes Secret是一种专用于存储敏感数据的资源对象,如密码、令牌和密钥。本文介绍了Secret的核心概念、创建方式(通过命令行字面量创建MySQL密码Secret)以及如何将Secret注入Pod(通过环境变量方式)。Secret采用Base64编码存储数据,相比ConfigMap提供更高安全性。文章还对比了Secret与ConfigMap的区别,并解答了相关问题。Secret的主要优势在于实现敏感数据与应用程序的解耦,避免硬编码,从而降低数据泄露风险。

2026-05-07 12:00:00 664

原创 【Kubernetes】(十四)ConfigMap

摘要:ConfigMap是Kubernetes用于解耦配置与镜像的核心资源,支持通过YAML文件或命令行(--from-literal/--from-file)两种方式创建,可将配置以Volume挂载或环境变量形式注入Pod。其核心价值在于实现配置与镜像分离,但存储限制为1MiB,且不适用于敏感信息(需用Secret)。适用场景包括配置文件、环境变量等非敏感配置的注入,通过不同ConfigMap可实现多环境适配。(150字)

2026-05-05 12:00:00 637

原创 【Kubernetes】(十三) Pod 调度

Kubernetes Pod调度机制摘要 Kubernetes提供了多层次的Pod调度控制方案。基础调度包括nodeSelector(标签匹配强制调度)和nodeName(直接指定节点)。进阶调度采用节点亲和性(Affinity),分为强制亲和(requiredDuringScheduling)和优先亲和(preferredDuringScheduling)两种模式,支持复杂表达式和权重配置。污点(Taint)与容忍度(Toleration)机制共同实现反调度控制,节点通过污点排斥Pod,而Pod通过配置容

2026-05-03 12:00:00 980

原创 【Kubernetes】(十二)配置存储卷

Kubernetes存储卷解析:从临时到持久化 本文系统介绍了Kubernetes中的Volume存储机制。首先指出Volume的核心价值在于解决容器数据临时性问题,支持数据持久化和容器间共享。重点分析了三种典型存储卷:emptyDir临时卷(随Pod创建销毁)、hostPath节点本地卷(数据保留但降低迁移性)以及持久化存储方案PV/PVC。详细阐述了PV的四种访问模式(RWO/ROX/RWX/RWOP)和三种回收策略(Retain/Recycle/Delete)。通过问答形式深入解析了各类存储卷的特征与

2026-05-01 12:00:00 618

原创 【Kubernetes】(十一)健康检查2

Kubernetes优雅关闭机制解析(1.22+版本) 核心原理: 默认开启terminationGracePeriodSeconds特性 删除Pod时:停止新流量,保留现有请求处理 支持Pod级别和容器探针级别配置(后者优先) 实战配置: terminationGracePeriodSeconds设置最大等待时间 preStop钩子执行清理命令 完整流程:删除→停流量→preStop→等待→强制删除 FAQ: Q:Pod级优雅关闭如何工作? A:1.22+版本默认启用,停止新流量但不影响运行中容器,支持多

2026-04-29 12:00:00 300

原创 【Kubernetes】(十)健康检查1

在 Kubernetes 中,和是容器健康状态监控的核心探针,三者在容器生命周期的不同阶段各司其职,保障应用高可用。

2026-04-27 12:00:00 754

原创 【Kubernetes】(九)Service 2

本文详解Kubernetes高级服务类型与Ingress控制器。Headless Service不分配ClusterIP,直接返回Pod IP列表,适用于有状态应用;LoadBalancer类型通过MetalLB提供外部负载均衡能力。Ingress作为七层负载均衡网关,实现域名路由、SSL终止等功能,需配合Ingress Controller使用。文章包含各类Service的实战示例及工作原理,并解答了ClusterIP、NodePort、Headless Service及MetalLB实现原理等高频问题。

2026-04-25 12:00:00 587

空空如也

空空如也

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

TA关注的人

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