- 博客(184)
- 收藏
- 关注
原创 传统方式部署(RuoYi-Cloud)微服务
官方下载地址:https://archive.apache.org/dist/skywalking/java-agent/下载地址:https://github.com/alibaba/Sentinel/releases/tag/1.8.8。下载地址:https://nodejs.org/download/release/v22.15.1/下载地址:https://nacos.io/docs/latest/overview/下载地址:https://download.redis.io/releases/
2025-08-18 15:23:13
765
原创 部署(RuoYi-Vue)前后端分离
2、上传mysql-8.0.42-linux-glibc2.17-x86_64-minimal.tar.xz二进制包到/root目录,解压并移动到指定目录。1、上传ruoyi源代码包RuoYi-Vue-v3.8.9.zip到/root目录并解压(192.168.10.47)下载地址:https://nodejs.org/download/release/v22.15.1/(1)拷贝数据库文件到mysql服务器(192.168.10.47)(2)创建数据库用户ruoyi和库(192.168.10.46)
2025-08-15 12:00:00
755
原创 CI/CD流水线搭建流程
(2)上传jdk-17_linux-x64_bin.tar.gz包到/root目录,解压并移动到指定位置。中文在线文档:https://www.jenkins.io/zh/doc/book/pipeline/(2)通过系统的 Java 环境运行打包好的 Spring Boot 可执行 JAR 文件(web)(1)拷贝Spring Boot 可执行JAR 文件到WEB服务器(Jenkins)(2)在源代码中创建Jenkinsfile(流水线)文件(GitLab)(4)提交并推送到GitLab(GitLab)
2025-08-14 12:00:00
549
原创 Jenkins部署与使用
Jenkins 是一个开源的、基于 Java 开发的持续集成和持续交付(CI/CD)工具,广泛应用于自动化构建、测试和部署软件项目。使用浏览器访问192.168.10.41:8080/jenkins/job/myproject1/build?记录URL:192.168.10.41:8080/jenkins/job/myproject1/build?根据构建信息,会将代码存放到/root/.jenkins/workspace/myproject1目录。(3)推送现有的Git仓库到GitLab(GitLab)
2025-08-13 12:00:00
579
原创 GitLab部署与使用
支持 Git 版本控制,提供代码仓库管理、分支保护、合并请求(Merge Request/Pull Request)等功能。内置 GitLab CI/CD,通过 .gitlab-ci.yml 配置文件实现自动化构建、测试、部署。静态代码扫描(SAST)、动态扫描(DAST)、依赖扫描(Dependency Scanning)。提供 Issue 跟踪、看板(Kanban)、里程碑(Milestones)、甘特图等功能。支持多云和本地部署(AWS、Azure、Google Cloud 等)。
2025-08-12 12:00:00
1112
原创 Git安装与使用
可与远程仓库(如 GitHub、GitLab、Gitee)交互(git push/git pull)。官网下载地址:https://www.kernel.org/pub/software/scm/git/暂存区(Staging Area):临时保存待提交的变更(git add 后生效)。objects/:存储所有 Git 对象(提交、文件内容等,Git 的核心数据库)提交(Commit):一次代码变更的快照,包含作者、时间、描述等信息。(6)查看所有 HEAD 的移动历史(包括被删除的提交、重置操作等)
2025-08-11 11:43:52
867
原创 部署ELK8.18对日志进行收集、展示
HTTP/%{NUMBER:http_version}" %{NUMBER:status:int} %{NUMBER:bytes_sent:int} "%{DATA:referrer}" "%{DATA:user_agent}" "%{DATA:x_forwarded_for}也可以用一个"%{COMBINEDAPACHELOG}"来表示,但是每个键的名称是定义好的,生产中也不会使用。插件地址:https://release.infinilabs.com/analysis-ik/stable/
2025-08-08 12:00:00
1763
原创 Linux系统日志
也就是说,日志服务的配置文件中主要定义了服务的名称、日志等级和日志记录位置。--force 使用--setup-keys覆盖FSS密钥对。--output-fields=LIST 在verbose/export/json模式下选择要打印的字段。-o --output=STRING 改变日志输出模式 (short, short-precise,--smart-relinquish-var 类似,但如果日志目录在根挂载上,则无操作。
2025-08-07 12:00:00
713
原创 MySQL使用MHA实现高可用
rpl_semi_sync_master_tx_avg_wait_time:事务因开启 semi_sync,平均需要额外等待的时间。(1)安装chrony软件包(master1、master2、slave1、slave2、mha-manager)1、MHA Node安装(master1、master2、slave1、slave2、mha-manager)3、配置IP解析(master1、master2、slave1、slave2、mha-manager)
2025-08-06 12:00:00
1001
原创 HAProxy+Keepalived和MyCat实现MySQL数据库的高可用、负载均衡和读写分离
四、安装配置Keepalived(haproxy+keepalived1、haproxy+keepalived2)三、安装配置HAProxy(haproxy+keepalived1、haproxy+keepalived2)2、重启MySQL服务(MySQL主1、MySQL从1、MySQL从2)(1)连接haproxy的VIP(虚拟IP)查看数据(客户端)(1)连接haproxy查看数据(客户端)3、创建复制专用用户(MySQL主1)(2)连接mycat查看数据(客户端)(1)安装mysql客户端(客户端)
2025-08-05 12:00:00
802
原创 使用MyCat实现MySQL数据库的读写分离、分库和水平分表
将orders表数据分别分配到dataNode1(MySQL主1、MySQL从1)和dataNode2(MySQL主2、MySQL从2)上。2、表级 DML 权限(SELECT/INSERT/UPDATE/DELETE)设置(mycat)2、重启MySQL服务(MySQL主1、MySQL主2、MySQL从1、MySQL从2)用户对tb1表禁止INSERT、DELETE操作,允许UPDATE、SELECT操作。将users表分配到dataNode2(MySQL主2、MySQL从2)上。
2025-08-04 12:00:00
559
原创 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
862
原创 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
344
原创 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
1220
原创 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
585
原创 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
787
原创 MySQL函数和查询语句
D为正数时是小数点的右侧部分,D为0时则不要小数部分,D为负数时是小数点左边部分,具体使用看例子演示。当对负数进行四舍五入:先把符号丢到一边,对去掉负号后的正数进行四舍五入,完成以后,再把这个负号,补上即可。此函数叫截断函数,顾名思义就是就是截取不要的部分,然后删掉(断掉)它。直接调用CONNECTION_ID()函数--不需任何参数--就可以看到当下连接MySQL服务器的连接次数,不同时间段该函数返回值可能是不一样的。向下取整,返回<=该参数的最大整数,求的是小于等于这个数字的最大整数。
2025-07-25 12:00:00
1415
原创 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
1781
原创 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
758
原创 Nginx优化和模块
缓存,主要针对于图片,css,js 等元素更改机会比较少的情况下使用,特别是图片,占用带宽大,我们完全可以设置图片在浏览器本地缓存 365d,css,js,html 可以缓存个 10 来天,这样用户第一次打开加载慢一点,第二次,就非常快了。一般我们需要压缩的内容有:文本,js,html,css,对于图片,视频,flash 什么的不压缩,同时也要注意,我们使用 gzip 的功能是需要消耗 CPU 的。使用 gzip 压缩功能,可能为我们节约带宽,加快传输速度,有更好的体验,也为我们节约成本。
2025-07-22 12:00:00
878
原创 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
682
原创 Linux top命令
它可以动态显示系统的 CPU、内存、进程负载等信息,是性能分析和故障排查的重要工具。可以⽤’a’和’w’在4个 窗⼝间切换。’a’移到后⼀个窗⼝,’w’移到前⼀个窗⼝。⽤’g’命令你可以输⼊⼀个数字来选择当前窗⼝。当按下’d’或’s’时,你将被提⽰输⼊⼀个值(以秒为单位),它会以设置的值作为刷新间隔。显⽰特定⽤⼾的进程。进程累计使用的 CPU 时间(格式:分:秒.百分秒)top命令的顶部显⽰与uptime命令相似的输出。-S:累计模式(显示进程的 CPU 时间累计值)⽤’*’标记的是已选择的。
2025-07-18 12:00:00
797
原创 Linux Shell脚本
使用 Shell 函数时,只需在脚本中调用函数名,并传递相应的参数(如果需要的话),函数就会执行其内部的命令序列,并返回结果(如果有返回值的话)。具体来说,Shell 函数使用 $n 的形式来接收参数,其中 $1 表示第一个参数,$2 表示第二个参数,以此类推。Shell 函数在定义时不能指定参数,但在调用时可以传递参数。$n:n为数字,$0代表该脚本名称,$1-9 代表第一个至第九个参数,十以上的参数需要用大括号括起来,如{10}。输入一个数字,如果输入的是1、2、3,则输出具体的数字,否则什么也输出。
2025-07-17 12:00:00
1128
原创 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
657
原创 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
627
原创 使用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
523
原创 使用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
425
原创 编译安装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
966
原创 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
1011
原创 使用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
554
原创 使用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
500
原创 使用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
755
原创 使用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
635
原创 使用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
1151
原创 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
661
原创 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
585
原创 使用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
1489
原创 使用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
663
原创 自动部署三台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
676
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人