自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Kafka核心架构与高效消息处理指南

Kafka是一种消息队列,主要用来处理大量数据状态下的消息队列,一般用来做日志的处理。既然是消息队列,那么Kafka也就拥有消息队列的相应的特性了。消息队列的好处解耦合耦合的状态表示当你实现某个功能的时候,是直接接入当前接口,而利用消息队列,可以将相应的消息发送到消息队列,这样的话,如果接口出了问题,将不会影响到当前的功能。异步处理异步处理替代了之前的同步处理,异步处理不需要让流程走完就返回结果,可以将消息发送到消息队列中,然后返回结果,剩下让其他业务处理接口从消息队列中拉取消费处理即可。流量削峰。

2025-09-22 18:42:38 1315

原创 堡垒机:企业运维安全的核心防线

目录堡垒机概述一、什么是堡垒机二、为什么需要堡垒机三、堡垒机的设计理念四、堡垒机的目标五、堡垒机的价值六、堡垒机的原理七、堡垒机的身份认证八、堡垒机的常见运维方式九、堡垒机的其他常见功能十、堡垒机的部署方式1、单机部署2、HA高可靠部署3、异地同步部署4、集群部署(分布式部署)十一、开源堡垒机产品JumpServer堡垒机一、跳板机、堡垒机1.跳板机2.堡垒机(为什么需要堡垒机)2.1堡垒机的作用2.2堡垒机的运维思想2.3堡垒机的核心功能2.4堡垒机应用的场景2.5企业角度看堡垒机。

2025-09-18 20:45:09 1011

原创 揭秘KVM虚拟化:性能与安全的完美结合

KVM 是 Kernelbased Virtual Machine 的缩写,是一种用于虚拟化的开源硬件虚拟化技术。它使用 Linux 内核的虚拟化模块,将物理服务器划分为多个虚拟机。KVM 允许虚拟机直接访问物理硬件资源,从而提供出色的性能和稳定性,同时还支持许多常见的操作系统和应用程序。KVM 使用了 QEMU (Quick Emulator) 作为其默认的虚拟机监控程序。除此之外,KVM 还支持多种嵌入式和云计算场景,并且得到了广泛的应用。

2025-09-18 20:34:06 1226

原创 Prometheus监控部署与告警实战

Prometheus(由go语言开发)是一套开源的监控&报警&时间序列(按照时间排序)数据库的组合。因为kubernetes(俗称k8s)的流行带动了prometheus的发展。它可以监控主机,服务,容器,支持多种exporter采集数据,还支持pushgateway进行数据上报,Prometheus性能足够支撑上万台规模的集群。时间序列数据(TimeSeries Data) : 按照时间顺序记录系统、设备状态变化的数据被称为时序数据。这种时序数据,会应用到很多场景, 如:最常见的就是我们系统中的日志。

2025-09-15 18:47:50 1119

原创 CentOS7下Ceph集群部署实战

通过 CRUSH 算法将其映射到不同的 OSD 节点上,实现数据的存储。我们可以将其理解为 Ceph 存储上划分的逻辑分区,Pool 由多个 PG 组成;2、集群网络(cluster-network,用于集群内部通讯)与公共网络(public-network,用于外部访问Ceph集群)分离。Ceph 客户端向 monitor 请求集群的状态,并向 Pool 中写入数据,数据根据 PGs 的数量,3、mon、mds 与 osd 分离部署在不同主机上(测试环境中可以让一台主机节点运行多个组件)

2025-09-09 18:53:59 1240

原创 打造高效Jenkins CICD环境全解析

开发人员发起代码上线的需求(邮件中包含开发做好的WAR包)-->运维人员连接线上负载调度器(Nginx)--> 隔离一组服务器(Tomcat)--> 连接服务器(Tomcat)--> 备份旧代码(tar打包)--> 删除旧代码目录 --> 上传新的WAR包 --> 外网测试 --> 测试不通过则通过备份回滚代码 --> 测试通过则利用rsync的脚本推送代码到其他服务器--> 统一外网测试 -->连接调度器恢复隔离机制 --> 隔离另一组服务器实施上线步骤 --> 上线完成。然后重启 Tomcat。

2025-09-08 09:31:13 1235

原创 Git常用命令大全:高效开发必备

一般来说,日常使用只要记住下图6个命令,就可以了。但是熟练使用,恐怕要记住60~100个命令。,它可以在用户主目录下(全局配置),也可以在项目目录下(项目配置)。下面是整理的常用 Git 命令清单。几个专用名词的译名如下。Repository:仓库区(或本地仓库)Index / Stage:暂存区。Workspace:工作区。Remote:远程仓库。

2025-09-04 19:25:35 1294

原创 DevOps:敏捷开发与运维的未来革命

Jenkins是一个用Java编写的开源的持续集成工具。在与Oracle发生争执后,项目从Hudson项目独立。Jenkins。Jenkins提供了软件开发的持续集成服务。它运行在Servlet容器中(Tomcat)。它支持软件配置管理(SCM)工具(包括AccuRev SCM、CVS、Subversion、Git、Perforce、Clearcase和RTC),可以执行基于Apache Ant和Apache Maven的项目,以及任意的Shell脚本和Windows批处理命令。

2025-09-04 19:21:39 675

原创 Kubernetes集群升级与etcd备份恢复指南

本文演示kubernetes集群从v1.24.1升级到v1.29.15。每个版本的升级都不一样,所以要根据版本进行适当调整,不作为万能指导。升级过程:升级master组件。升级worker节点组件,调度保护、排空节点、worker节点组件升级、解除保护。Kubernetes集群的升级可以分为以下几个步骤:备份数据。在升级之前,需要备份Kubernetes集群的数据,包括访问控制、配置文件、数据卷等。选择升级方式。Kubernetes集群的升级方式可以分为两种:滚动升级和强制替换。

2025-09-01 18:12:28 1395

原创 K8S网络组件Calico深度解析

Calico 是一套开源的网络和网络安全方案,用于容器、虚拟机、宿主机之前的网络连接,可以用在kubernetes、OpenShift(红帽的容器编排工具)、DockerEE、OpenStack等PaaS或IaaS平台上。BGP(border gateway protocol)是外部路由协议(边界网关路由协议),用来在AS之间传递路由信息是一种增强的距离矢量路由协议(应用场景),基本功能是在自治系统间自动交换无环路。

2025-09-01 09:24:36 1244

原创 K8S架构与组件完全解析

Kubernetes 简称 k8s,是支持云原生部署的一个平台,起源于谷歌。谷歌早在十几年之前就对其应用,通过容器方式进行部署。k8s 本质上就是用来简化微服务的开发和部署的,关注点包括自愈和自动伸缩、调度和发布、调用链监控、配置管理、Metrics 监控、日志监控、弹性和容错、API 管理、服务安全等。

2025-08-28 18:56:28 1782

原创 K8S EFK日志收集全流程实战

Prometheus(普罗米修斯) 是一个开源的监控系统,以多维数据模型(指标名称和键值对的标识)和基于 HTTP 的 Pull 模型,支持多种维度的数据采集和动态查询。它的核心组件Prometheus server会定期从静态配置的监控目标或者基于服务发现自动配置的自标中进行拉取数据,当新拉取到的数据大于配置的内存缓存区时,数据就会持久化到存储设备当中。每个被监控的主机都可以通过专用的exporter。

2025-08-27 18:36:14 780

原创 K8s Pod驱逐机制详解与实战

总的来说,从k8s v1.18开始HPA的机制已经算比较灵活了,在扩缩容识别指标上可以使用Pod的系统cpu、内存指标,也可以Pods自身暴露的自定义metrics指标,还可以支持外部的业务指标;在具体自定义实现上也提供了标准的扩展框架,还有社区其他人贡献的promesheus adapter。在扩缩容速度上也通过相对百分比和绝对 Pods数变化,可以独立控制单位时间内最大的扩容和缩容,此外还通过自定义窗口时间机制保证副本变化的稳定性。

2025-08-25 18:54:39 1589 4

原创 K8S核心组件:Init容器与临时容器详解

Init Container就是用来做初始化工作的容器,可以是一个或者多个,如果有多个的话,这些容器会按定义的顺序依次执行,只有所有的Init Container执行完后,主容器才会被启动。一个Pod里面的所有容器是共享数据卷和网络命名空间的,所以Init Container里面产生的数据可以被主容器使用到的。

2025-08-25 09:29:57 918

原创 K8s安全管理与持久化存储实战指南

k8s对我们整个系统的认证,授权,访问控制做了精密的设置;认证->授权->准入控制(admination controller)1.认证(Authenticating)是对客户端的认证,通俗点就是用户名密码验证2.授权(Authorization)是对资源的授权,k8s中的资源无非是容器,最终其实就是容器的计算,网络,存储资源,当一个请求经过认证后,需要访问某一个资源(比如创建一个pod),授权检查会根据授权规则判定该资源(比如某namespace下的pod)是否是该客户可访问的。

2025-08-21 18:52:11 816

原创 K8s Job与Cronjob实战指南

Job 会创建一个或者多个 Pod,并将继续重试 Pod 的执行,直到指定数量的 Pod 成功终止。随着 Pod 成功结束,Job 跟踪记录成功完成的 Pod 个数。当数量达到指定的成功个数阈值时,任务(即 Job)结束。删除 Job 的操作会清除所创建的全部 Pod。挂起 Job 的操作会删除 Job 的所有活跃 Pod,直到 Job 被再次恢复执行。一种简单的使用场景下,你会创建一个 Job 对象以便以一种可靠的方式运行某 Pod 直到完成。

2025-08-20 18:22:05 810

原创 Kubernetes Ingress实战:从环境搭建到应用案例

Service对集群之外暴露服务的主要方式有两种:NotePort和LoadBalancer,但是这两种方式,都有一定的缺点:NodePort方式的缺点是会占用很多集群机器的端口,那么当集群服务变多的时候,这个缺点就愈发明显。LB方式的缺点是每个service需要一个LB,浪费、麻烦,并且需要kubernetes之外设备的支持。基于这种现状,kubernetes提供了Ingress资源对象,Ingress只需要一个NodePort或者一个LB就可以满足暴露多个Service的需求。

2025-08-19 18:30:19 1039

原创 Kubernetes配置管理全攻略:ConfigMap与Secret详解

Configmap 是 k8s 中的资源对象,用于保存非机密性的配置的,数据可以用 key/value 键值对的形式保存,也可通过文件的形式保存。用于存储和管理一些敏感数据,比如密码,token,密钥等敏感信息。它把 Pod 想要访问的加密数据存放到 Etcd 中。然后用户就可以通过在 Pod 的容器里挂载 Volume 的方式或者环境变量的方式访问到这些 Secret 里保存的信息了。Secret 类似于 ConfigMap,但专门用于保存机密数据。

2025-08-18 19:11:48 1071

原创 深入解析StatefulSet与K8s服务管理

在kubernetes中,pod是应用程序的载体,我们可以通过pod的ip来访问应用程序,但是pod的ip地址不是固定的,这也就意味着不方便直接采用pod的ip对服务进行访问。为了解决这个问题,kubernetes提供了Service资源,Service会对提供同一个服务的多个pod进行聚合,并且提供一个统一的入口地址。通过访问Service的入口地址就能访问到后面的pod服务。Service在很多情况下只是一个概念,真正起作用的其实是kube-proxy服务进程。

2025-08-18 18:48:41 1201

原创 K8S企业级应用与DaemonSet实战解析

Deployment为Pod和ReplicaSet提供了一个声明式定义(declarative)方法,用来替代以前的ReplicationController来方便的管理应用。典型的应用场景包括:定义Deployment来创建Pod和ReplicaSet滚动升级和回滚应用扩容和缩容暂停和继续Deployment更新Deployment表示用户对K8S集群的一次更新操作。

2025-08-14 19:00:26 901 1

原创 Kubernetes Pod创建与资源清单详解

Pod是可以在 Kubernetes 中创建和管理的、最小的可部署的计算单元。Pod(就像在鲸鱼荚或者豌豆荚中)是一组(一个或多个) 容器;这些容器共享存储、网络、以及怎样运行这些容器的声明。Pod 中的容器总是并置(colocated)的并且一同调度,在共享的上下文中运行。Pod 所建模的是特定于应用的 “逻辑主机”,其中包含一个或多个应用容器, 这些容器相对紧密地耦合在一起。在非云环境中,在相同的物理机或虚拟机上运行的应用类似于在同一逻辑主机上运行的云应用。

2025-08-14 11:35:58 1058

原创 K8S kubectl命令全解析

kubectl命令是K8S集群的管理命令行工具,用于与集群进行交互和执行各种操作,如:查看、创建、删除、更新资源等。默认情况下,使用kubectl命令时,从配置文件$HOME/.kube/config文件或环境变量KUBECONFIG中读取与集群的连接信息。若要指定节点能够管理集群,需要将连接文件(/etc/kubernetes/admin.conf)拷贝到配置文件或者设置环境变量KUBECONFIG=“/etc/kubernetes/admin.conf”。Kubernetes 支持多个虚拟集群,它

2025-08-13 10:29:28 948

原创 Kubernetes集群部署全攻略

无固定比例,需结合集群规模、工作负载及监控数据动态规划。小型集群可轻量配置,中大型需HA及独立etcd,超大规模建议托管方案。定期性能调优是关键。

2025-08-12 09:21:07 1046

原创 Dockerfile命令详解:打造高效容器镜像

Dockfile文件是镜像生成的一种方式。Dockerfile 是一个文本格式的配置文件,用户可以使用 Dockerfile 快速创建自定义的镜像。Dockerfile文件中的每一个命令都会创建镜像的一层。

2025-08-07 09:10:24 1145

原创 30个必会Docker命令速查宝典

docker镜像是docker的核心概念之一,它是用来构建和运行docker容器的模板。类似于虚拟机镜像,可以理解为一个面向Docker引擎的只读模板,包含了文件系统。例如:一个镜像可以包含一个完整的Ubuntu操作系统环境,可以把它称为一个Ubuntu镜像。镜像也可以安装了Apache应用程序,可以把它称为一个Apache镜像。镜像是创建Docker容器的基础。

2025-08-06 11:03:10 1125

原创 Ansible Playbook 核心语法全解析

playbook是ansible用于配置,部署和管理托管主机剧本,通过playbook的详细描述,执行其中一系列tasks,可以让远程主机达到预期状态,也可以说,playbook字面意思是剧本,现实中由演员按剧本表演,在ansible中由计算机进行安装,部署应用,提供对外服务,以及组织计算机处理各种各样的事情。ansible使用playbook来管理自动化task,playbook是yaml格式的文件,其基本内容可以认为是多条ansible的ad-hoc的语句组成。

2025-08-06 09:06:28 1010

原创 Docker进化史:从0.1到23.0的技术革命

Docker,翻译过来就是码头工人Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可抑制的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。容器完全使用沙盒机制,相互之间不会存在任何接口。几乎没有性能开销,可以很容易的在机器和数据中心运行。最重要的是,他们不依赖于任何语言、框架或者包装系统。Docker是dotCloud公司开源的一个基于LXC的高级容器引擎,源码托管在Github上,基于go语言并且遵从Apache2.0协议开源。GitHub地址。

2025-08-05 20:20:07 1584

原创 掌握Ansible:高效自动化运维全攻略

ansible是新出现的自动化运维工具,基于python开发,集合了很多的运维工具(puppet、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。ansible是基于paramiko开发的,并且基于模块化工作,它本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架,ansible不需要在远程主机上安装client/agents,因为它们是基于ssh来和远程主机通讯的。

2025-07-28 15:46:14 1153

原创 Zabbix告警设置全攻略

kubernetes.pod.discovery:用于发现Kubernetes集群中的Pods,包括Pod名称、命名空间、状态、IP地址等,可对Pods的资源使用和容器运行状态进行监控。docker.container.discovery:自动发现主机上运行的Docker容器,包括容器名称、ID、状态等信息,可用于监控容器资源使用情况和内部应用性能。aws.ec2.discovery:自动发现亚马逊AWS EC2实例的相关信息,如实例ID、实例类型、状态、IP地址等,可用于监控EC2实例的性能指标。

2025-07-25 10:14:16 1428

原创 Zabbix全方位监控配置指南

在监控mysql端添加自定义项目在zabbix-server测试数据4​在UI界面添加监控项及图形安装GNS3点击左上角preference选择IOS routers点击new选择已有镜像修改以上两个地方,然后点击finish点击左边第五个all devices,将刚添加的路由器拖出右键选择start点击console打开控制台刷新点击idle-PC选择数字最高并带*号的节点然后添加两台host主机,用左六的线进行连接并修改网口,然后开机。

2025-07-24 14:53:43 2921

原创 Zabbix7企业级监控系统全解析

Zabbix是一款开源的企业级分布式监控系统,专为大规模IT基础设施设计。主动故障预警:提前发现潜在问题性能瓶颈分析:识别系统性能瓶颈容量规划支持:基于历史数据预测资源需求统一监控平台:整合服务器/网络/应用/云服务监控Zabbix 7是开源分布式企业级监控系统的里程碑版本,核心解决三大现代化需求:+ 云原生混合架构监控+ 千万级指标秒级采集+ 运维-开发-业务三维告警分析💡核心价值:从基础设施监控演进为可观测性平台,整合 Metrics/Logs/Traces 数据源。

2025-07-23 16:43:01 1460

原创 Elasticsearch与Logstash实战指南

es数据库的英文全称为ElsticSearch,是位于Elastic Stack核心的分布式搜索和分析引擎。是一个由Apache开源的高扩展、全文检索和分析引擎(NoSQL数据库功能)的系统,它可以准实地快速存储、搜索、分析海量的数据。Fluentd 是一个高效的日志聚合器,是用 Ruby 编写的,并且可以很好地扩展。

2025-07-18 11:25:37 1215

原创 HAProxy负载均衡配置全解析

HAProxy 是法国人Willy Tarreau开发的一个开源软件,是一款应对客户端10000以上的同时连接的高性能的TCP和 HTTP负载均衡器。其功能是用来提供基于cookie的持久性, 基于内容的交换,过载保护的高级流量管制,自动故障切换 ,以正则表达式为基础的标题控制运行时间,基于Web的报表,高级日志记录以帮助排除故障的应用或网络及其他功能。HAProxy 提供高可用性、负载均衡以及基于TCP和HTTP的应用代理,支持虚拟主机,它是免费、快速并且可靠的一种负载均衡解决方案。

2025-07-15 18:45:50 1012

原创 Keepalived高可用方案配置详解

Keepalived是一个基于VRRP协议(虚拟冗余路由协议)来实现的LVS服务高可用方案,可以利用其来避免单点故障。一个LVS服务会有2台服务器运行Keepalived,一台为主服务器(MASTER),一台为备份服务器(BACKUP),但是对外表现为一个虚拟IP,主服务器会发送特定的消息(心跳检测,heartbeat)给备份服务器,当备份服务器收不到这个消息的时候,即主服务器宕机的时候, 备份服务器就会接管虚拟IP,继续提供服务,从而保证了高可用性。

2025-07-15 09:25:41 2564

原创 LVS负载均衡技术全解析

集群是一组相互独立的、通过高速计算机网络互联的计算机,它们构成了一个组,并以单一系统的模式加以管理。一个客户与集群相互作用时,集群像是一个独立的服务器。计算机集群简称集群是一种计算机系统, 它通过一组松散集成的计算机软件/硬件连接起来高度紧密地协作完成计算工作。在某种意义上,他们可以被看作是一台计算机。集群系统中的单个计算机通常称为节点,通常通过局域网连接,但也有其它的可能连接方式。集群计算机通常用来改进单个计算机的计算速度和/或可靠性。

2025-07-14 09:46:59 902

原创 Redis:高性能NoSQL数据库的终极指南

NoSQL(内存/缓存型数据库):相比于其他的内存/缓存数据库,redis可以方便的实现持久化的功能(保存至磁盘中)关系型数据库是一个结构化的数据库,创建在关系模型(二维表格模型)基础上,一般面向于记录。SQL 语句(标准数据查询语言)就是一种基于关系型数据库的语言,用于执行对关系型数据库中数据的检索和操作。主流的关系型数据库包括等。关系型数据库实例 -> 数据库 -> 表(table)-> 记录行(row)、数据字段(column)非关系型数据库。

2025-07-11 11:19:18 1579

原创 NFS文件存储原理与实战指南

NFS是Network File System的缩写,默认监听2049端口号。它最大的功能就是可以通过网络,让不同的机器、不同的操作系统可以共享彼此的文件。NFS服务器可以让PC将网络中的NFS服务器共享的目录挂载到本地端的文件系统中,而在本地端的系统中来看,那个远程主机的目录就好像是自己的一个磁盘分区一样,在使用上相当便利;NFS一般用来存储共享视频,图片等静态数据。NFS分为服务端和客户端(C/S架构)。

2025-07-09 19:46:21 1016

原创 MySQL高可用架构方案对比

高可用架构对于互联网服务基本是标配,无论是应用服务还是数据库服务都需要做到高可用。虽然互联网服务号称7天24小时不间断服务,但多多少少有一些时候服务不可用,比如某些时候网页打不开,百度不能搜索或者无法发微博,发微信等。对于一个系统而言,可能包含很多模块,比如前端应用,缓存,数据库,搜索,消息队列等,每个模块都需要做到高可用,才能保证整个系统的高可用。对于数据库服务而言,高可用可能更复杂,对用户的服务可用,不仅仅是能访问,还需要有正确性保证,因此讨论数据库的高可用方案时,一般会同时考虑方案中数据一致性问题。

2025-07-09 09:40:23 806

原创 MySQL主从复制配置详解

MaxScale是maridb开发的一个mysql数据中间件,其配置简单,能够实现读写分离,并且可以根据主从状态实现写库的自动切换。

2025-07-08 20:19:05 1248

原创 MySQL Galera Cluster高可用部署指南

MySQL Galera Cluster 是一个高可用、同步复制的数据库解决方案,基于 Galera Library 和 MySQL 数据库。它设计用于提供高可用性、负载均衡和数据一致性,特别适合需要高写入负载和多主节点支持的场景。

2025-07-08 19:34:52 1117

空空如也

空空如也

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

TA关注的人

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