- 博客(138)
- 收藏
- 关注
原创 通过ansible+docker-compose快速安装一主两从redis+三sentinel
通过ansible+docker-compose快速安装一主两从redis+三sentinel
2025-04-02 13:49:48
65
原创 docker-compose部署prometheus+grafana+node_exporter+alertmanager规则+邮件告警
docker-compose部署prometheus+grafana+node_exporter+alertmanager规则+邮件告警
2025-03-30 23:33:01
396
原创 docker日志大小和保存管理
需要compress为true时,需要 确保"max-file"选项存在,且值>=2。以 JSON 格式存储,每个日志条目都是一个 JSON 对象,可读性强。二进制格式存储日志数据,这种存储方式更为紧凑,能更高效地利用磁盘空间。
2025-03-27 12:29:20
428
原创 shell脚本一键安装docker+docker-compose,支持x86_64、arm64双架构
shell脚本一键安装docker+docker-compose,支持x86_64、arm64双架构
2025-03-25 21:22:01
315
原创 PosstgreSQL安装test_decoding-1.0版本插件
此前方向错误,无需使用"CREATE EXTENSION test_decoding;"命令来下载该插件。
2025-03-13 15:16:20
202
原创 no space left on device,内存不足/inode不足
【代码】no space left on device,内存不足/inode不足。
2025-03-07 20:59:25
207
原创 docker批量pull/save/load/tag/push镜像shell脚本
【代码】docker批量pull/save/load/tag/push镜像shell脚本。
2025-02-17 16:59:58
429
原创 shell脚本备份MySQL数据库和库下表
通过网盘分享的文件:mysql-5.7.43-1.el7.x86_64.rpm-bundle.tar链接: https://pan.baidu.com/s/1C1dK_zeS0-p7ePih1ff4tg?pwd=cer9 提取码: cer9。
2025-02-16 22:41:10
545
原创 统信V20 1070e X86系统编译安装PostgreSQL-13.11版本以及主从构建
链接:https://pan.baidu.com/s/1GiaHrvDZbPbbmJ1smoJPAA?pwd=4rki提取码:4rki。该包包含postgresql-13.11源码包、统信编译postgresql-13.11安装包。通过网盘分享的文件:统信postgresql-13.11-x86.zip。
2025-01-18 22:24:35
442
原创 统信V20 1070e X86系统编译安装mysql-5.7.44版本以及主从构建
链接:https://pan.baidu.com/s/15UakIugfVeZq407qUVwjFg?pwd=pb14提取码:pb14。该包包含mysql-5.7.44源码包、boost资源包、统信编译mysql-5.7.44安装包。通过网盘分享的文件:统信mysql-5.7.44-x86.zip。
2025-01-18 22:09:15
607
原创 k8s初始化节点时报错socat not found in system path
5.重启kubelet后,如果再次初始化还是有问题请检查该sock文件位置,或者检查下containerd配置文件/etc/containerd/config.toml文件,尤其是sandbox位置的pause镜像地址,请确认是否能够通过该的地址拉取到。2.不排除不分环境确实是socat的问题,但是本次排查后重点在于第一句报错,kubelet is not running。4.在kubelet文件中指定下这个endporint路径,这个文件路径根据实际存放位置修改。
2024-12-12 22:26:06
253
原创 failed to create shim task: OCI runtime create failed: unable to retrieve...runc did not terminate .
在使用containerd作为容器运行时,以nerdctl为管理工具来启动容器时报错,容器无法启动。5.上传一个新版本的包,尝试使用yum localinstall和rpm -ivh看能不能覆盖安装。覆盖安装失败,于是使用rpm -Uvh 新版本包来更新,解决。旧版本该包和systemd有依赖,强行卸载会破坏系统运行。4.尝试卸载旧版本libseccom安装新版本。3.检查libseccom安装情况。2.检查runc状态。runc也是有问题的。
2024-12-12 16:24:37
675
原创 以达梦为数据库底座时部署的微服务页面报乱码,调整兼容模式
考虑是延用mysql,应该要设置个部分兼容mysql模式。这个配置实际上在安装dm时可以直接选择兼容模式,但是现在只能选择手动更改而不是重新初始化再部署了。部署微服务,文件、代码是延用的mysql类型的,部署前做了部分适配,但是在使用dm数据库进行安装的服务在页面上查询出的数据却都是乱码。2.查询官网,注意到一个参数COMPATIBLE_MODE兼容模式的配置。5.重启dm再次查询确认,刷新页面已解决。4.查询、修改兼容模式。3.连接上dm数据库。
2024-11-28 11:58:39
729
原创 linux系统误操作,设置nofile值超过限制,导致无法登录,permission denied
进入单用户模式--chroot /sysroot--查看nofile值--vi编辑/etc/security/limits.conf以降低nofile值--exit*2--reboot,重新登录即可。个人建议先给cat /proc/sys/fs/file-max最大值的一半,如果是不够再适量往上扩(这个值的配置需要尤其慎重,一旦有差错便会无法登录,需要进入救援模式操作)在k8s集群运行某些服务时,对文件描述符要求比较大,在提高这个值前未查询这个值的限制,最后设置了一个超过限制的值导致登录被拒绝。
2024-11-27 17:05:50
564
原创 k8s运行运行pod报错超出文件描述符表限制
个人建议先给最大值的一半,如果是不够再适量往上扩(这个值的配置需要尤其慎重,一旦有差错便会无法登录,需要进入救援模式操作)是k8s集群的遇到这个问题情况下,master和所有node都需要修改containerd/docker的这部分配置。操作前一定要先查询这个值,2097152这个值即为我们可设置的最大值,超过这个值后将无法登录,即使只超过1。4.容器运行时是containerd,所以还需要改containerd的启动文件(docker同理)3.编辑/etc/security/limits.conf。
2024-11-27 15:42:48
661
原创 elasticsearch报错fully-formed single-node cluster with cluster UUID
k8s集群内部署的es中间件起不来,查看日志发现如下警告,节点发现功能开启,但是目前我是单节点服务,所以尝试编辑sts将节点发现功能去掉或者在部署时将你的sts的yaml文件和chart文件修改重新部署以去掉该功能。2.修改后报错服务和集群uuid绑定,无法加入新集群。此时需要清除数据目录让其重新运行。3.若有重要数据需要备份数据目录。4.等待pod重建后已正常。
2024-11-27 10:12:55
738
原创 Openvpn断开连接并报错no TAP-Windows adapters on this system
链接:https://pan.baidu.com/s/1n0FwDQb_v5akWGAz7UBaxw?设置-网络和internet-高级网络设置-查看是否存在TAP-Windows adapter设备。windows11专业版,openvpn突然断开连接并且view log发现报错,缺少tap设备。或者win+R输入devmgmt.msc-网络适配器-查看是否存在设备。无需更改路径,傻瓜式安装过后,尝试重新连接openvpn,恢复正常。3.检查结果为不存在,考虑安装一个。
2024-11-26 15:11:08
1028
原创 达梦数据库V8报错insert语句内容超长,解决
3.使用数据库客户端工具dbeaver24.1.4版本连接达梦数据库进行insert,同样报错。1.问题描述:服务器上所安装的达梦V8版本,在insert一段较长的数据时,报错语句内容超长。2.命令行手动执行一条语句、使用命令行
2024-11-25 21:32:01
506
原创 服务器开机即占用大量内存,解决
上网搜后,关键在第二行配置,开机预分配矩形页面数量,可以理解为一个连续的内存块,这里被给分配了1200个,并且查看文件最近修改时间为凌晨4点,猜测是被恶意篡改。2.上述未果,查看是否有违规的开机自启项。1.服务器开机两分钟不到,内存使用飙升。3.上述无果,查看开启启动加载项内容。4.将其值调0后,重启服务器。
2024-11-15 22:16:58
750
原创 推送镜像报错unexpected status from PUT request to xxx 400 Bad Request
链接:https://pan.baidu.com/s/1kUmQihjN-Js6CmhMfyegvw。2.在排查仓库联通性、代理可用性、镜像完整性后考虑registry版本问题。5.registry二进制文件,可到github搜索项目下载。1.在将镜像推送到搭建的本地镜像仓库时,报错如下。只有部分镜像会产生此现象,推送其他镜像正常。含arm和amd架构,版本:2.8.3。查看当前registry版本。
2024-11-14 23:42:36
495
原创 Dockerfile制作能够ssh的ubuntu和centos7系统
只是在centos系统内下载好openssh后启动ssh会报错没有主机密钥,所以我们需要在Dockerfile中使用ssh-kengen -A生成主机密钥。要求:制作一个能够远程ssh的ubuntu操作系统镜像,要求通过该镜像运容器后,内部拥有一些自动补全、vim、网络插件等常用的软件包。要求同制作ubuntu系统一样。
2024-06-13 15:55:38
466
原创 一主双从redis+哨兵模式以及通过Ansible+Shell快速部署redis哨兵模式
一.主redis配置1.解压并进行编译安装2.为redis创建软链接和service管理方便启动3.修改redis的配置文件二.配置备redis三.主redis上查看集群状态1.主redis登录上去查看状态并且创建数据用于验证同步性2.备redis查看数据是否同步过来四.模拟测试1.主redis宕机时2.备redis宕机时五.redis哨兵1.配置sentinel.conf文件2.运行sentinel.conf文件3.查看进程是否起来了4.三台设备
2024-04-22 22:43:44
1380
原创 Zabbix5部署并添加主机
一.准备数据库服务1.下载进入mysql2.创建zabbix用户和权限3.引入初始数据库二.部署zabbix-server1.下载软件2.为zabbix配置数据库3.配置前端和php4.修改本设备的Server、ServerActive、Hostname(选做)三.浏览器测试1.填写注册信息2.登录四.手动添加主机1.主机配置2.页面操作五.为主机添加监控项1.本步骤完成后的样式2.查看资源表
2024-04-13 21:39:18
1274
原创 keepalived2.2.8+drbd9+nfs高可用存储部署
关机状态下进行(开机状态下新增后需要重启)如果没有特殊名称要求,直接都点下一步即可,两台设备都做。备keepalived+drbd:192.168.2.133(serverc)主keepalived+drbd:192.168.2.130(main)初始化过程在9版本用watch drbdadm status 资源名称看。刚安装完成两台设备应该都是secondary,主备手动升级身份。先在主备降级并卸载后到备设备升级挂载。
2024-04-11 17:02:44
766
原创 keepalived2.2.8以及keepalived+LVS高可用部署
(3)节点执行lvs-dr脚本服务,来进行绑定VIP和添加通信路由,这步可以手动做,参考前面lvs-dr集群的文章。节点131上httpd服务掉点,具体可以通过watch ipvsadm -Ln来查看节点剔除和恢复过程。如下是两台设备都要做的,所以设备hostname有所不同但不影响。此时VIP备绑定去备设备上了,访问到的内容也变为nihao。(2)主设备服务器断开、keepalived服务失效。(1)VIP分配在主设备时,访问到hell。(4)主设备上查看VIP是否创建成功。百度网盘 请输入提取码。
2024-03-30 15:53:13
1063
原创 Haproxy2.8.1+Lua5.1.4部署,haproxy.cfg配置文件详解和演示
默认的调度算法,基于权重的轮询动态调度算法,支持权重的运行时调整,roundrobin支持慢启动(新加的服务器会逐渐增加转发数),其每个后端backend中最多支持4095个real server,支持对real server权重动态调整。基于随机数作为一致性hash的key,随机负载平衡对于大型服务器场或经常添加或删除服务器非常有用,支持weight的动态调整,weight较大的主机有更大概率获取新请求。,由于设置了用户认证,所以需要先登录才能查看,监控页面的刷新间隔可以自己在配置文件中调整。
2024-03-25 22:00:26
1376
原创 LVS-DR集群构建脚本
这一步操作可以将此脚本保存到主节点上,通过ansible的copy、shell、service模块等传到各个节点上应用即可。
2024-03-25 02:30:00
375
原创 构建Helm chart和chart使用管道与函数简介
上一篇文章说到,我们可以通过helm将众多已经初步配置好的yaml文件下载来整合使用,甚至还可以自己定义好需要的安装参数用于下载完成后直接使用而不需要过多更改,现在仍然可以在这些功能上继续推进。
2024-03-18 21:16:26
740
1
原创 Helm的资源安装和基本使用
Usage:completion 为指定的shell生成自动补全脚本create 创建一个指定了名称的chartdependency 管理chart依赖env Helm客户端环境信息get 下载release,可接all、hooks、manifest、notes、valuesall-获取所有已安装的release的信息。名称、状态、版本等hooks-获取指定 release 的 pre-install、post-install、pre-delete 和 post-delete 钩子的信息。
2024-03-17 15:35:54
2020
原创 k8s安全控制、授权管理介绍
两者最终都是面向kubernetes的单独位于kubernetes外的用户账号kubernetes管理账号,为pod中的服务进程在访问kubernete时提供身份标识我是以kubeadm安装的kubernetes,主要是用到rbac的角色访问控制。
2024-03-09 23:13:45
1524
2
原创 k8s中storageClass存储介绍
Kubernetes根据用户提交的PVC请求,找到一个对应的StorageClass, Kubernetes就会调用该StorageClass声明的存储插件,创建出需要的PV供存储使用。创建出来的PV时以namespace-pvcname-pvname的格式存储于NFS共享目录中,PV被回收时会被标记为archived-namespace-pvcname-pvname。链接:https://pan.baidu.com/s/1u9zxreO-qHniowfkptV4QQ。(2)Pod创建和删除测试。
2024-03-09 15:11:06
3081
原创 k8s中的PV和PVC存储介绍
称为持久化卷,是对底层的共享存储的一种抽象。一般情况下PV由 kubernetes管理员进行创建和配置,关联于底层具体的共享存储技术,并通过插件完成与共享存储的对接。持久卷声明,是用户对于存储需求的一种声明。用户向kubernetes系统发出的一种资源需求申请(可以是访问模式,存储空间,存储类别的需求),kubernetes再进一步去申请PV。
2024-03-07 21:29:44
1864
原创 记一次busybox-mountPath简单但容易忽略的问题open /proc/self/fd: no such file or directory
Error: failed to create containerd task: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error closing exec fds: open /proc/self/fd: no such file or directory: unknown
2024-03-07 20:41:27
560
原创 Ansible+Shell+Containerd部署k8s
Ansible+Shell部署K8s,以下各部分脚本和剧本分开书写(便于理解),如有需要可以自行修改合并执行,代码篇幅较长,需要仔细修改自己的主机参数等。
2024-02-20 13:59:55
987
2
原创 Linux普通权限、特殊权限、扩展权限和Umask值介绍
针对于属主、属组、其他人三个对象定义了三个基本字段的权限(1)属主owner简写为u(2)属组group简写为g(3)其他人other简写为o。
2023-12-27 23:01:14
1543
原创 SElinux工作原理简介并演示chcon、semanage、restorecon的使用方法
通过mac方式管理进程,管理的目标是进程是否具有读取权限的文件(文件、目录、端口等),要使得进程和目标的安全上下文一致才能够顺利访问到资源(还要受文件资源的RWX等权限影响)。#如下是我160主机的httpd的html目录的安全上下文内容,以ls -Z来查看,其中有4个字段,稍后作解释total 0。
2023-12-27 14:35:34
1850
原创 k8s中ConfigMap、Secret创建使用演示、配置文件存储介绍
在Kubernetes中,ConfigMap是一种用于存储配置数据的对象,它提供了一种将配置数据与容器分离的方式,使得容器的配置可以独立于容器镜像进行管理和修改。将配置信息存储在Secret中,可以将容器镜像与配置数据分离,并在部署时注入到容器中,从而使容器的配置更加灵活和安全。这些证书可以被挂载到Pod中,并用于与其他服务进行安全的HTTPS通信。(2)多个容器共享配置数据:将多个容器所需的公共配置数据存储到ConfigMap中,从而避免了重复存储和管理配置数据的问题,同时也方便了对配置的修改和更新。
2023-12-17 14:06:43
1390
1
PG-13.16版本和编译后不存在插件test_decoding
2025-03-11
TA创建的收藏夹 TA关注的收藏夹
TA关注的人