自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 buildx x86机器构建arm镜像

本文介绍了Docker buildx的安装配置与多平台镜像构建流程。首先从GitHub获取buildx安装包并配置插件,修改Docker配置启用实验性功能。然后详细说明了安装多平台模拟器的步骤,包括下载binfmt镜像、安装新模拟器的方法。接着指导如何配置buildx构建器,设置Harbor镜像仓库地址,并创建多平台构建器。最后以构建ARM64架构的Ubuntu镜像为例,演示了多平台镜像构建命令和验证方法,包括检查镜像架构和跨平台测试的完整流程。

2025-09-03 17:06:31 85

原创 etcd 备份与集群恢复操作指南

本文介绍了etcd备份脚本及三种集群恢复场景。首先提供了etcd自动备份脚本,包含日志记录、数据备份和7天前文件清理功能。随后详细描述三种故障场景的恢复方案:1) 三台etcd数据丢失时通过快照恢复;2) 单台master被reset时重新加入集群;3) 两台master被reset时先单机启动etcd再重建集群。每种情况都包含具体操作步骤,如修改配置文件、执行join命令、检查etcd状态等,并强调备份文件对集群恢复的关键作用。

2025-09-03 17:02:27 317

原创 IP-IP协议未开通导致POD间网络异常

客户在跨机房的4台CPU服务器和1台GPU服务器部署K8s时,发现CPU与GPU节点间的Pod网络异常。排查发现CPU节点间通信正常,但CPU到GPU节点的IP-in-IP协议通信失败,疑似被防火墙拦截。建议客户调整安全组规则,开放IP-in-IP(协议号4)流量,以解决跨VPC环境下Pod间网络通信问题。全文介绍了IP-in-IP协议原理、问题排查过程及解决方案建议。(150字)

2025-08-20 18:34:03 378

原创 RPM包制作过程

本文介绍了将自定义编译的OpenResty软件制作为RPM包的过程。主要内容包括:安装rpm-build工具、创建构建目录结构、将OpenResty目录打包为tar.gz并放入源码目录、编写详细的spec配置文件(定义软件信息、安装路径、依赖关系等),最后使用rpmbuild命令生成RPM包。该方案实现了OpenResty的一键安装部署,特别包含了systemd服务集成和关键路径修复,确保软件能正确安装和运行。生成的RPM包将存储在/root/rpmbuild/RPMS目录中。

2025-08-20 18:27:45 404

原创 kubeadm k8s证书到期更新

K8s证书过期报错处理方案 当出现x509: certificate has expired错误时,需在三台master节点执行以下操作:1) 使用kubeadm certs check-expiration检查证书有效期;2) 备份/etc/kubernetes目录;3) 执行kubeadm certs renew all更新所有证书;4) 通过kubeadm init phase kubeconfig all重建配置文件;5) 重启k8s组件(先移动再还原manifests目录,并重启kubelet);

2025-07-28 18:43:17 316

原创 webpack收集模块

本文介绍了获取Webpack模块加载器中函数内容的方法。通过分析加载器函数结构,找到存储模块的数组或对象(通常为c.m),然后使用JavaScript代码提取所有函数定义。文章提供了两种解决方案:1)针对数组形式的模块,逐项提取函数字符串并拼接成完整数组代码;2)针对对象形式的模块,遍历所有属性并生成键值对形式的对象代码。最后通过Blob对象将代码保存为JS文件下载到本地,便于后续使用。该方法适用于无法直接获取模块内容的场景,帮助开发者提取和分析Webpack打包后的代码。

2025-07-28 18:41:04 150

原创 单节点APIServer切换内网LB过程

本文详细记录了将Kubernetes集群从单APIServer架构改造为高可用架构的过程。主要步骤包括:1)修改kubeadm工具使证书有效期延长至100年;2)更新APIServer证书并同步到所有Master节点;3)修改集群配置将组件连接指向负载均衡器(LB)。具体操作涉及源码编译、证书更新、配置修改及服务重启等关键环节,同时提供了详细的命令行操作指南。该方案实现了Kubernetes集群的真正高可用,确保各组件通过LB访问APIServer,提高了集群的可靠性和容错能力。

2025-07-18 11:15:12 603

原创 批量下载harbor中的镜像(脚本)

本文介绍了一个用于批量下载Harbor仓库镜像的Python脚本。该脚本支持两种下载模式:1)下载指定项目中的所有镜像;2)下载所有项目中的所有镜像。通过Harbor API获取项目列表和镜像标签信息,使用subprocess调用docker命令完成镜像的拉取和保存为tar文件。下载完成后可通过企业微信机器人发送通知。主要功能包括Harbor认证、项目/镜像查询、镜像下载打包等,适用于镜像备份和迁移场景。

2025-07-18 11:03:49 230

原创 Ubuntu22.04打deb包

本文详细介绍了在Ubuntu 22.04系统中打包deb文件的步骤:1)准备编译后的安装包文件;2)创建工作目录;3)创建DEBIAN/control控制文件并填写包信息;4)将安装包文件放到对应目录结构;5)使用dpkg-deb命令打包生成deb文件;6)最后用dpkg命令安装测试。整个过程清晰展示了从文件准备到最终打包安装的完整流程。

2025-04-29 13:36:39 168

原创 Postgresql数据库高可用-patroni+etcd+haproxy

可以看到k8s-worker-3节点被选举为Leader,k8s-worker-1的角色由Replica转为Sync Standby。Sync Standby:同步流复制节点(下一次选举就是这台)结论:选举期间(大概5秒左右)会有短暂pg不可用的现象。可以看到haproxy和patroni角色是能对应的。可以看到haproxy和patroni角色是能对应的。结论:数据是同步的,并且只有主库可读写,从库只能读。结论:haproxy是能动态感知pg角色切换的。结论:patroni可以实现pg的主备切换。

2025-01-23 18:30:05 1755

原创 deb包临时修改小版本依赖

背景:在客户内网环境下,拷包比较困难。我们的deb包安装的时候缺依赖,发现这个依赖在本机上是存在的,只不过差了一个小版本,这时候我们就可以通过重新打包的方式,让我们的deb包支持本机的依赖包版本。

2025-01-09 14:56:01 319

原创 iperf3工具网络测试

发送端的平均传输速率是多少兆比特每秒。在服务器A和服务器B装iperf3。: 发送端传输了多少兆字节的数据。: 整个测试持续时间是多少秒。receiver是接收端。sender是发送端。

2025-01-09 14:54:02 193

原创 flask写一个自定义webhook

编写flask代码3. 编写模板cat alert_template.tpl4. 启动程序python webhook.py --templates-file alert_template.tplcat alertmanager.py6. 运行alertmanager模拟测试代码告警有两种状态:恢复:告警测试告警,修改status为firing测试恢复,修改status为resolved

2024-12-13 17:33:22 468

原创 ubuntu22.04制作本地源

将/usr/local/apt/目录打包拷贝到内网环境,重复上述流程。后续将Packages文件和apt的目录一同拷贝到内网。执行apt update测试是否有效。例如我拷贝到/home下。

2024-12-13 17:30:25 3772

原创 公有云Ubuntu22.04自定义镜像制作

使用ubuntu用户登录服务器,sudo -i 输入密码,跳转到root。我们的自定义镜像文件就是vmdk文件,在控制台按照文档操作导入即可。设置用户为ubuntu。将原来的uuid改成/dev/vda2。这时候服务器肯定是起不来,执行命令查看。关闭虚拟机,找到虚拟机磁盘存储目录。勾选openssh server。重启服务器,reboot命令。显示/dev/vda2就可以了。选择存储目录设置虚拟机名字。修改完保存退出重新刷新配置。注:必须reboot一下。修改网卡名为eth0。

2024-11-20 15:31:43 725

原创 rabbitmq源码编译安装(离线部署小白版)

离线部署rabbitmq,安装成功后默认位置/usr/local/lib/erlang。libcrypto.so.10和erlang.tar.gz。留着第一台不需要动,在其他机器上操作加入。github上下载3.7.17版本。可以看到队列进行了复制,一主一从。:正则匹配two.开头的队列。可以给集群设置一个名字。创建完成后浏览器访问。

2024-09-13 16:35:09 1047 2

原创 Celery基本使用

Celery是一个简单、灵活且可靠的,处理大量消息的分布式系统,专注于实时处理的异步任务队列,同时也支持任务调度。Celery的架构由三部分组成,消息中间件(message broker),任务执行单元(worker)和任务执行结果存储(task result store)组成。Celery本身不提供消息服务,但是可以方便的和第三方提供的消息中间件集成。包括,RabbitMQ, Redis等等Worker是Celery提供的任务执行的单元,worker并发的运行在分布式的系统节点中。

2024-07-26 10:42:01 646 1

原创 DRF权限组件校验方式重写

方法如果校验通过,直接return,否则将未校验通过的权限类加入到一个列表中,如果for循环完了还没有return,那就走else,返回校验未通过,从未校验通过的列表中取出第一个返回提示。原来循环权限类列表的时候,if判断加了not,表示只要有一个权限类的。的关系,只要有一个校验不通过,就都不通过。的关系,只要有一个权限类校验通过,就通过。现在循环权限类列表,判断权限类的。校验没通过,就直接返回没权限。drf默认的权限校验流程是。我们可以重写方法,修改为。

2024-07-26 09:42:21 490

原创 Kafka压力测试

官方自带kafka-producer-perf-test.shlinux网络带宽监控工具sar。结论:千兆网卡客户端网络流量达上限,Kafka集群生产吞吐,千兆网卡客户端网络流量达上限,Kafka集群消费吞吐为

2024-07-25 11:32:18 1450

原创 Kafka配置内外网分流

之前服务器一直有两块网卡,一块千兆网卡,一块万兆网卡。由于之前数据量不算大,所以直接使用了千兆网卡,并配置了外网映射。随着数据量增大,kafka集群内部通信时网络带宽一直居高不下,甚至将千兆网跑满,导致数据积压。这时候不得不配置内外网分流,将内网通信流量全部走万兆网卡,千兆网卡对外提供服务。:配置kafka认证协议,我们是用的SASL_PLAINTEXT。:kafka默认使用的监听地址,表示默认使用内网监听地址通信。连接kafka,由于kafka需要公网请求访问,所以。:配置内网和外网监听地址;

2024-07-24 09:41:46 807

原创 arm64环境部署rocketmq

arm环境部署rocketmq。如果arm机器没有办法拉取镜像,那就找一台x86的机器也可以拉取arm镜像。如果arm服务器可以拉取外网镜像,那就直接拉取。进入image-build目录。注:IP改成你自己的服务器IP。修改arm环境支持的基础镜像。有一条测试topic,点击。,随便填写,点击提交,出现。

2024-07-22 16:58:53 2035

原创 x86平台拉取arm64平台镜像

x86平台拉取arm64平台镜像。

2024-07-22 16:39:33 589

原创 Kafka集群部署

修改配置文件server.properties;修改kafka_jaas.conf;下载包https://www.confluent.io/previous-versions/启动后执行命令写入账号密码。

2024-07-16 11:30:18 378

原创 redis哨兵模式部署

redis哨兵模式部署。

2024-07-16 11:26:16 233

原创 内网ntp时间同步

在其他服务器上安装ntpdate。时间服务器下载ntp。

2024-07-16 11:25:02 564

原创 Mysql 离线rpm包部署

mysql 离线部署,mysql内网环境部署;grant all privileges on *.* to root@'%' identified by 'Ictsoft@123' with grant option;

2024-07-16 11:23:13 254

原创 Lsyncd实现目录同步

Lsyncd 是一个简单高效的文件同步工具,通过lua语言封装了 inotify 和 rsync 工具,采用了 Linux 内核(2.6.13 及以后)里的 inotify 触发机制,然后通过rsync去差异同步,达到实时的效果。

2024-07-16 11:20:47 292

原创 kdc-server部署kerberos认证

/etc/krb5.conf,krb5-workstation krb5-devel,创建principal

2024-07-16 11:06:12 867

原创 网络带宽测试脚本

Speedtest 是一个用 Python 编写的轻量级 Linux 命令行工具,可基于 Speedtest.net 的基础架构来测量linux服务器网络的上/下行速率!

2024-07-16 11:03:21 1329

原创 hive数据迁移

将hdfs目录迁移至另一hdfs集群。针对默认数据库default!hdfs上创建备份目录。

2024-07-16 11:01:03 390

原创 freeipa 重置admin密码

ldap.example.com,带有可解析的FreeIPA服务器主机名。example和com与你的domain组件。

2024-07-16 10:59:18 564

原创 windows配置kerberos客户端浏览器访问oozie

链接:https://pan.baidu.com/s/1C8wisL0fMR2dMnyxMeb2Dg。使用oozie的域名访问oozie。: 添加oozie的hosts。输入about:config。

2024-07-16 10:58:11 492

原创 分布式minio集群部署

minio集群部署。前提:生产环境必须有4台机器,每台机器最少一块磁盘。

2024-07-16 10:56:35 528

原创 debian操作系统下载所有依赖包到本地

debian操作系统下载所有依赖包到本地。

2024-07-16 10:54:39 901

原创 nginx平滑升级

若不清楚Nginx.pid的路径,可查看nginx配置文件,里面有对应的路径。查看nginx pid,会出现一个nginx.pid.oldbin。注意: 千万不要make install,会出事故。即在补停掉老进程的情况下启动新进程。

2024-07-09 10:54:18 297

原创 python socket模块实现上传文件到服务器

krb5-libs的rpm包强制删除,导致服务器无法ssh连接,并且不能上传rpm包进行修复。在强制删除依赖后,当前终端没有退出的时候,可以使用上述方法补救。

2024-07-06 21:35:10 436

原创 centos7 部署mongodb4.0

centos7部署mongodb,主要修改数据目录和日志目录,fork修改为true表示后台,认证先改为disabled。退出数据库修改配置文件。

2024-05-12 18:24:52 232

原创 zabbix配置钉钉报警

创建群聊,添加报警机器人,设置关键字(zabbix),保存token。在zabbix页面中添加报警媒介,选脚本,脚本参数为。admin用户,选择钉钉报警,接收人为。将脚本放到zabbix报警目录下。将保存的token添加到脚本中。

2024-05-12 18:23:07 211

原创 zabbix频繁发送历史告警

zabbix频繁发送历史告警,如果是触发器问题的确存在,但是目标主机状态是正常的,还在频繁发生告警,如果是这种情况,那么手动将问题点击关闭和确认,即可解决,如果触发器是在模板中配置的,那么直接修改模板,最后手动关闭问题。触发器的确存在,但是目标监控主机的状态是正常的,只要触发器触发的问题存在,那么就会一直发生告警。如果是消息积压,那么就去数据库中将异常状态的告警删除或者修改状态,即可解决问题。告警消息积压堆积,一直处于重试状态。

2024-05-12 18:22:14 570

原创 docker-compose部署zabbix4.0

下载对应版本的zabbixagent包,安装。编辑docker-compose.yml。

2024-05-12 18:21:23 348

NVD-VGPU-702-525.60.12-1OEM.702.0.0.17630552-20888343.zip

适用于 VMware Esxi7.x 配置GPU

2024-05-13

空空如也

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

TA关注的人

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