- 博客(173)
- 收藏
- 关注
原创 MySQL双主复制
Keepalived 是一个基于 VRRP(Virtual Router Redundancy Protocol,虚拟路由冗余协议) 的开源软件,主要用于实现 服务器高可用(HA, High Availability) 和 负载均衡(Load Balancing)。高可用(HA - High Availability)作用:防止单点故障(SPOF, Single Point of Failure),确保服务持续可用。(1)在MySQL1库上创建数据库和表并插入内容(192.168.10.42)
2025-08-01 12:00:00
625
原创 MySQL主从复制
MySQL主从复制是一种数据复制技术,允许从一个MySQL数据库服务器(主服务器)复制数据到一个或多个MySQL数据库服务器(从服务器)。从服务器的SQL线程重放中继日志中的事件,应用到从服务器。(1)在主库上插入数据(192.168.10.42)2、准备主库数据快照(192.168.10.42)(2)在从库查看数据(192.168.10.43)3、从库配置(192.168.10.43)(1)锁定主库(确保数据一致性)(3)导出数据并传输到从库。(1)修改主库配置文件。(1)修改从库配置文件。
2025-07-31 12:00:00
309
原创 MySQL优化
通配符查看当前状态的连接数量。当主要MySQL线程在一个很短时间内得到非常多的连接请求,它就会起作用。如果MySQL的连接数据达到max_connections时,新来的请求将会被存在堆栈中,以等待某一连接释放资源,该堆栈的数量即back_log,如果等待连接的数量超过back_log,将不被授予连接资源。innodb_log_files_in_group 是控制 InnoDB 重做日志(redo log)文件数量的重要参数,与 innodb_log_file_size 共同决定日志系统的总容量。
2025-07-30 12:00:00
1194
原创 MySQL工具
混合读写测试:执行 SELECT、INSERT、UPDATE 等混合操作(--auto-generate-sql-load-type=mixed)。--auto-generate-sql-load-type=mixed:使用混合读写测试模式(读写比例均衡)--auto-generate-sql-add-autoincrement:为自动生成的表添加自增列。-x 20或--number-int-cols=20:测试表中包含20个整数列。
2025-07-29 12:00:00
575
原创 MySQL备份还原
MySQL的二进制日志(binlog)记录了所有修改数据的SQL语句,是实现增量备份和时间点恢复(PITR)的关键。五、Percona XtraBackup备份(物理备份)(192.168.10.42)3、复制users表的users.ibd文件到安全位置(192.168.10.42)四、使用二进制日志(binlog)进行增量备份(192.168.10.42)10、合并第二次增量(最后一次不添加--apply-log-only)1、锁定users表(确保数据一致性)(192.168.10.42)
2025-07-28 12:00:00
780
原创 MySQL函数和查询语句
D为正数时是小数点的右侧部分,D为0时则不要小数部分,D为负数时是小数点左边部分,具体使用看例子演示。当对负数进行四舍五入:先把符号丢到一边,对去掉负号后的正数进行四舍五入,完成以后,再把这个负号,补上即可。此函数叫截断函数,顾名思义就是就是截取不要的部分,然后删掉(断掉)它。直接调用CONNECTION_ID()函数--不需任何参数--就可以看到当下连接MySQL服务器的连接次数,不同时间段该函数返回值可能是不一样的。向下取整,返回<=该参数的最大整数,求的是小于等于这个数字的最大整数。
2025-07-25 12:00:00
1408
原创 SQL基础应用
排序规则:虽然结果中没有显示,但会使用 utf8mb4 的默认排序规则(通常是 utf8mb4_general_ci)utf8mb4 的优势:支持完整的Unicode字符集(包括emoji表情符号),完美兼容中文、日文、韩文等所有语言。排序规则:utf8mb4_general_ci(校对速度快)或utf8mb4_unicode_ci(准确度高)(8)将 wx 列的数据类型保持INT(整数类型),移动到 address 列之后。(8)创建tb6表,将id 字段作为外键,引用 tb1 表的 id 字段。
2025-07-24 12:00:00
1752
原创 Nginx反向代理与缓存配置
实验环境设置主机名一、编译安装nginx1.28(lb、web1、web2)上传nginx-1.28.0.tar.gz源码包到/root目录创建systemctl管理nginx文件启动nginx服务二、准备网页为了更好的测试,这里网站内容不一致,真是生成环境网站内容一样web1:web2:访问网页使用浏览器访问192.168.10.41使用浏览器访问192.168.10.42三、配置负载均衡和反向代理(lb)1、upstreamupstream 是 Nginx 中用
2025-07-23 12:00:00
749
原创 Nginx优化和模块
缓存,主要针对于图片,css,js 等元素更改机会比较少的情况下使用,特别是图片,占用带宽大,我们完全可以设置图片在浏览器本地缓存 365d,css,js,html 可以缓存个 10 来天,这样用户第一次打开加载慢一点,第二次,就非常快了。一般我们需要压缩的内容有:文本,js,html,css,对于图片,视频,flash 什么的不压缩,同时也要注意,我们使用 gzip 的功能是需要消耗 CPU 的。使用 gzip 压缩功能,可能为我们节约带宽,加快传输速度,有更好的体验,也为我们节约成本。
2025-07-22 12:00:00
864
原创 Linux资源监控命令
inet6 fe80::20c:29ff:fef3:9095/64: IPv6 链路本地地址(以 fe80:: 开头),子网前缀为 64 位。,属于 sysstat 工具包的一部分。inet6 fe80::20c:29ff:fef3:9095: IPv6 链路本地地址(以 fe80:: 开头)link/ether 00:0c:29:f3:90:95: 接口的 MAC 地址(硬件地址),通常由厂商分配。brd ff:ff:ff:ff:ff:ff: 广播 MAC 地址(用于发送到所有本地网络设备)
2025-07-21 12:00:00
667
原创 Linux top命令
它可以动态显示系统的 CPU、内存、进程负载等信息,是性能分析和故障排查的重要工具。可以⽤’a’和’w’在4个 窗⼝间切换。’a’移到后⼀个窗⼝,’w’移到前⼀个窗⼝。⽤’g’命令你可以输⼊⼀个数字来选择当前窗⼝。当按下’d’或’s’时,你将被提⽰输⼊⼀个值(以秒为单位),它会以设置的值作为刷新间隔。显⽰特定⽤⼾的进程。进程累计使用的 CPU 时间(格式:分:秒.百分秒)top命令的顶部显⽰与uptime命令相似的输出。-S:累计模式(显示进程的 CPU 时间累计值)⽤’*’标记的是已选择的。
2025-07-18 12:00:00
748
原创 Linux Shell脚本
使用 Shell 函数时,只需在脚本中调用函数名,并传递相应的参数(如果需要的话),函数就会执行其内部的命令序列,并返回结果(如果有返回值的话)。具体来说,Shell 函数使用 $n 的形式来接收参数,其中 $1 表示第一个参数,$2 表示第二个参数,以此类推。Shell 函数在定义时不能指定参数,但在调用时可以传递参数。$n:n为数字,$0代表该脚本名称,$1-9 代表第一个至第九个参数,十以上的参数需要用大括号括起来,如{10}。输入一个数字,如果输入的是1、2、3,则输出具体的数字,否则什么也输出。
2025-07-17 12:00:00
1108
原创 Linux三剑客grep、sed、awk
否则,仅打印用户名(第1列,$1)从 /etc/passwd 文件中筛选出 GID(组ID,第4列)大于10的行,计算 GID / 3 并取整,然后打印结果。从 /etc/passwd 文件中筛选出 GID(组ID,第4列)大于10的行,并计算并打印 GID - 10 的结果。从 /etc/passwd 文件中筛选出 GID(组ID,第4列)大于10的行,并计算并打印 GID / 3 的结果。将 /etc/passwd 文件中每一行的用户名(第1列)转换为小写,并附加当前的时间戳(Unix 时间戳,秒级)
2025-07-16 12:00:00
651
原创 zabbix监控主机、监控MySQL、自动发现、自动注册、自定义监控Nginx
1、上传mysql-8.0.42-linux-glibc2.17-x86_64-minimal.tar.xz二进制包到/root目录。2、将MySQL模板文件根据zabbix配置文件放到指定位置(192.168.10.43)3、修改zabbix-agent配置文件(192.168.10.43)3、修改zabbix-agent配置文件(192.168.10.43)(2)根据zabbix帮助模板进行测试(192.168.10.41)(1)配置zabbix环境变量(192.168.10.41)
2025-07-14 12:00:00
616
原创 使用Ansible Playbook角色(Roles)和Include语句源码编译安装Nginx1.28
使用 include 语句引用 tasks 是将 tasks 从其他文件拉取过来。当我们刚开始学习运用 playbook 时,可能会把 playbook 写成一个很大的文件,到后来可能你会希望这些文件是可以方便去重用的,所以需要重新去组织这些文件。开启一台源码编译安装nginx的主机,拷贝配置文件到/myplaybook/roles/nginx/templates/nginx.j2并改名。创建service文件在/myplaybook/roles/nginx/files/nginx.service目录。
2025-07-11 12:00:00
518
原创 使用ansible的playbook编译安装zabbix7.2
3、上传MySQL二进制包mysql-8.0.42-linux-glibc2.17-x86_64-minimal.tar.xz到/myplaybook目录。2、上传zabbix源码包zabbix-7.2.7.tar.gz到/myplaybook目录。2、上传PHP源码包php-8.1.32.tar.gz到/myplaybook目录。四、编译安装zabbix7.2(192.168.10.40)八、配置Zabbix(192.168.10.40)1、创建systemctl管理zabbix文件。
2025-07-10 12:00:00
420
原创 编译安装zabbix7.2
3、上传MySQL二进制包mysql-8.0.42-linux-glibc2.17-x86_64-minimal.tar.xz到/myplaybook目录。2、上传PHP源码包php-8.1.32.tar.gz到/myplaybook目录。1、上传源码包zabbix-7.2.7.tar.gz到/root目录。四、编译安装zabbix7.2(192.168.10.41)八、配置Zabbix(192.168.10.41)7、创建systemctl管理zabbix文件。1、创建systemctl管理PHP文件。
2025-07-09 12:00:00
956
原创 Ansible 各种变量定义方式和变量引用
作用:用于收集目标主机的系统信息(称为 facts),例如操作系统、IP 地址、内存、CPU 等。4、debug 模块用于调试任务,输出变量、消息或任务执行结果。11、案例:动态修改远程主机上Nginx配置文件中的工作进程数,根据主机的CPU核心数量。ansible_distribution_version 目标主机的操作系统发行版版本。# inventory_hostname_short 是主机名的短名称,去掉域名部分。ansible_memtotal_mb 目标主机的总内存大小(以MB为单位)
2025-07-08 12:00:00
993
原创 使用Ansible的playbook编译安装PHP8.1
1、上传PHP源码包php-8.1.32.tar.gz到/myplaybook目录。一、创建playbook(192.168.10.40)二、验证(192.168.10.42)2、创建playbook文件。3、运行playbook。
2025-07-07 12:00:00
550
原创 使用Ansible的playbook二进制安装mysql8.0
实验环境一、创建playbook(192.168.10.40)1、上传MySQL二进制包mysql-8.0.42-linux-glibc2.17-x86_64-minimal.tar.xz到/myplaybook目录2、编写MySQL配置文件cd /myplaybook/vim my.cnf添加:[mysqld]basedir=/usr/local/mysqldatadir=/usr/local/mysql/datapid-file=/usr/local/mysql/data/mysqld.pidlog-e
2025-07-04 12:00:00
494
原创 使用Ansible的playbook编译安装Nginx1.28
下载方法:wget https://nginx.org/download/nginx-1.28.0.tar.gz。2、下载或上传nginx-1.28.0.tar.gz包到/usr/local/src目录并解压。二、编写源码编译安装nginx服务的playbook(192.168.10.40)3、下载或上传nginx-1.28.0.tar.gz包到/myplaybook目录。2、从192.168.10.41上拉取service文件。1、从192.168.10.41上拉取配置文件。8、启动nginx服务。
2025-07-03 12:00:00
741
原创 使用ansible源码编译安装Nginx1.28和二进制安装MySQL8.0
上传mysql-8.0.42-linux-glibc2.17-x86_64-minimal.tar.xz二进制包到/root目录。上传nginx-1.28.0.tar.gz源码包到/root目录。创建nginx的systemctl管理文件。一、编译安装Nginx1.28。二、二进制安装MySQL8.0。创建MySQL配置文件。
2025-07-02 12:45:00
621
原创 使用Ansible的playbook安装HTTP
列出 Ansible 剧本(playbook)install-httpd.yml 中将会影响的主机(hosts)清单。列出 Ansible playbook(install-httpd.yml)中定义的所有任务(tasks)二、编写安装HTTP服务的playbook(192.168.10.40)3、压缩192.168.10.41的网页文件并拉取到ansible。一、准备测试服务(192.168.10.41)10、重启HTTP访问并访问。5、再次使用浏览器访问。6、使用浏览器访问验证。1、安装HTTP服务。
2025-07-01 12:45:00
1141
原创 Ansible常用模块使用
将目标主机(web 组)上的 /tmp 目录打包成 tar.bz2 格式的压缩文件,并保存到 /root/tmp.tar.bz2。将目标主机(web 组)上的 /tmp 目录打包成 .tar.xz 格式的压缩文件,并保存到 /root/tmp.tar.gz。对主机(ansible)上的 /tmp/tmp.tar.gz 归档文件进行解压,并将内容提取到 /tmp/backup 目录。对 web 主机组(或主机)上的 /tmp 目录进行打包,并将生成的归档文件保存到 /root/tmp.tar.gz。
2025-06-30 13:54:51
654
原创 Ansible安装及使用
(1)通过密码使用 Ansible 对 192.168.10.41 执行 ping 模块测试连通性(192.168.10.40)(2)通过密钥使用 Ansible 对 192.168.10.41 执行 ping 模块测试连通性(192.168.10.40)(4)编写Ansible Playbook 文件用于在远程主机上配置 SSH 免密登录(公钥认证)(192.168.10.40)(5)使用ansible默认主机清单文件执行命令(192.168.10.40)(2)生成密钥(192.168.10.40)
2025-06-27 12:00:00
510
原创 使用cobbler自动安装Ubuntu24.04.1
1、修改/var/1ib/cobbler/distro_signatures,json以支持Ubuntu24.04(在编写时未包含在Cobbler中),方法是在Ubuntu23 lunar签名定义之后立即粘贴以下代码块。2、使用Ubuntu22.04.5创建的原始 cloud-init user-data自动安装模板,通过 PXE导入并自动部署 Ubuntu 24.04LTS服务器。一直等待到出现登录界面,输入用户名ubuntu,密码123456。新建虚拟机:4核心、
2025-06-26 12:00:00
1466
原创 使用cobbler自动安装Ubuntu22.04.5
Cobblerv3.3.7不附带 cloud-init 自动安装文件的示例模板,因此在开始之前需要创建这些模板,以及一些 Cobbler 同步触发器,以修正引导加载程序配置,使其与cloud-init 兼容。3、使用上面创建的原始 cloud-init user-data自动安装模板,通过 PXE导入并自动部署 Ubuntu 22.04LTS服务器。创建新的cobbler模板和片段,通过复制以下3个文本块并将其重命名为每个文本块上注明的名称和路径,生成cloud-init自动安装配置文件。
2025-06-25 12:00:00
637
原创 自动部署三台Rockylinux9服务器,最小化安装,安装基础包,并设定国内源,设静态IP
1、编写自动部署三台Rocky9.5服务器,最小化安装,安装基础包,并设定国内源的应答文件。Vmware:虚拟机设置 → 网络适配器 → 高级→ 生成→ 复制MAC 地址。所以虚拟机一直等待到出现登录界面,输入用户名root,密码123456。虚拟机1的网卡MAC地址:00:50:56:3E:24:7B。虚拟机2的网卡MAC地址:00:50:56:3E:11:15。虚拟机3的网卡MAC地址:00:50:56:2F:39:28。2、获取待安装主机的网卡MAC地址。4、定义一个新的安装配置模板。
2025-06-24 12:00:00
646
原创 在Rocky9.5上使用Cobbler批量安装CentOS7.9操作系统
新建虚拟机,设置与Cobbler服务器在同一个网络,设置好BIOS中的启动顺序为先网络,后硬盘启动,进行无人执守安装测试。上传CentOS7.9系统镜像文件CentOS-7-x86_64-DVD-2207-02.iso到/iso目录。#从Cobbler提供的安装树获取安装包($tree是Cobbler变量)一直等待到出现登录界面,输入用户名root,密码123456。#时区设为上海,使用UTC时间,不配置NTP。新建虚拟机:4核心、4G内存、20G磁盘。4、重启Cobbler,同步配置。
2025-06-23 12:00:00
921
原创 在Rocky9.5上使用Cobbler批量安装Ubuntu20操作系统
新建虚拟机,设置与Cobbler服务器在同一个网络,设置好BIOS中的启动顺序为先网络,后硬盘启动,进行无人执守安装测试。上传Ubuntu20系统镜像文件ubuntu-20.04.1-legacy-server-amd64.iso到/iso目录。4、将 initrd.gz 初始 RAM 磁盘文件复制到tftp 服务器的根目录。密文密码:$1$UC7P6KDm$ZPHERzXSYRLSocbsx7nDT/一直等待到出现登录界面,输入用户名root,密码123456。5、重启Cobbler,同步配置。
2025-06-20 12:00:00
252
原创 在Rocky9.5上使用Cobbler批量安装Rocky9.5操作系统
1、Cobbler是一个Linux服务器安装的服务,可以通过网络启动(PXE)的方式来快速安装、重装物理服务器和虚拟机,同时还可以管理DHCP,DNS等,具备web管理界面。它记录了系统安装时的配置选项,可以用于自动化安装相同的系统。--distro=Rocky-9.5-x86_64:指定该 Profile 关联的 Distribution(分发)名称为 Rocky-9.5-x86_64。--name Rocky-9.5-x86_64:指定新 Profile 的名称为 Rocky-9.5-x86_64。
2025-06-19 12:00:00
1085
原创 使用银河麒麟V10部署kubernetes-1.28.2集群
上传calico_v3.25.1.tar、calico-apiserver.tar、calico-typha.tar包到/root目录并导入镜像(master1、worker1、worker2)三、源码安装cri-dockerd(master1、worker1、worker2)2、安装k8s集群所需组件(master1、worker1、worker2)3、配置kubelet(master1、worker1、worker2)5、准备集群镜像(master1、worker1、worker2)
2025-06-18 12:00:00
666
原创 安装银河麒麟V10
nmcli connection up ens33 ( 简写nmcli c up ens33 )nmcli connection reload ( 简写nmcli c reload )4、使用远程管理软件连接。2、安装银河麒麟V10。7、关闭selinux。
2025-06-17 12:00:00
273
原创 使用Ubuntu22.04部署kubernetes-1.28.2集群
上传calico_v3.25.1.tar、calico-apiserver.tar、calico-typha.tar包到/root目录并导入镜像(master1、worker1、worker2)上传k8s-1.28.2.tar包到/root目录并导入镜像(master1、worker1、worker2)1、创建kubernetes yum源(master1、worker1、worker2)二、准备Containerd(master1、worker1、worker2)
2025-06-16 12:00:00
1201
原创 安装Ubuntu22.04
使用创建的普通用户登录,给root用户配置密码。使用远程连接工具连接(使用root用户连接)替换源后,需要更新软件包列表以同步新的源信息。应用 netplan 配置文件,使更改生效。6、安装ovsdb-server。退出普通用户登录root用户。查看DHCP获取的IP地址。2、安装Ubuntu。
2025-06-13 12:00:00
931
原创 使用Rocky9.5部署kubernetes-1.28.2集群
实验环境一、环境准备1、配置主机名本次使用3台主机完成kubernetes集群部署,其中1台为master节点,名称为master1;其中2台为worker节点,名称分别为:worker1及worker2hostnamectl set-hostname xxx2、配置主机名与IP地址解析(master1)vim /etc/hosts添加:192.168.10.40 master1192.168.10.41 worker1192.168.10.42 worker2scp -rp /etc/hosts root
2025-06-12 12:00:00
778
原创 安装Rocky9.5
nmcli connection up ens160 ( 简写nmcli c up ens160 )nmcli connection reload ( 简写nmcli c reload )大部分和安装CentOS类似。重新加载所有网络接口配置文件。选择需要使用的镜像进行下载。2、安装Rocky9.5。启动ens160网卡接口。4、使用远程管理软件连接。6、关闭selinux。
2025-06-11 12:00:00
555
原创 Docker-containerd-CRI-CRI-O-OCI-runc
在 Windows 上,它略有不同,与 runc 相当于是微软的主机计算服务(HCS),它包括一个叫runhcs的工具,它本身是 runc 的一个分叉,也实现了开放容器倡议的规范。CRI-O 是另一个实现了容器运行时接口(CRI)的高级别容器运行时,可以使用 OCI(开放容器倡议)兼容的运行时,它是 containerd 的一个替代品(同类产品)。runc 是轻量级的通用运行时容器,它遵守 OCI 规范,是实现 OCI 接口的最低级别的组件,它与内核交互创建并运行容器,
2025-06-10 12:00:00
1849
1
原创 通过kube-vip实现K8S集群高可用及Service LB
下载方法:wget https://github.com/Mirantis/cri-dockerd/releases/download/v0.3.8/cri-dockerd-0.3.8-3.el7.x86_64.rpm。下载方法:wget https://github.com/coreos/etcd/releases/download/v3.5.0/etcd-v3.5.0-linux-amd64.tar.gz。下载或上传etcd-v3.5.0-linux-amd64.tar.gz包到/root目录。
2025-06-09 12:00:00
1029
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人