自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 zabbix通知,自愈与批量添加主机

如果zabbix agent是使用zabbix用户启动的,那么要在zabbix 用户授权使用特权命令,负责有些命令zabbix没有权限执行,会导致定义好的自治愈策略因为权限拒绝为执行失败。当zabbix 监控到指定的监控项异常的时候,通过指定的操作使故障自动恢复,通常是重启服务等一些简单的操作,也可以调用脚本执行比较复杂的操作。设置监控项和触发器,新建动作,在触发条件里面添加操作,在远程主机通过zabbix 客户端执行命令。1.zabbix agent需要开启远程命令执行。2.zabbix用户授权。

2024-07-25 15:25:31 182

原创 Zabbix监控应用

而当对方回应ACK报文后,则进入到FIN_WAIT_2状态,当然在实际的正常情况下,无论对方何种情况下,都应该马 上回应ACK报文,所以FIN_WAIT_1状态一般是比较难见到的,而FIN_WAIT_2状态还有时常常可以用netstat看到。SYN_RCVD:三次握手的第二次握手后的端口状态,是收到了客户端发送的SYN_SENT数据包之后的状态,这个状态很短暂,正常在服务器上是很少看到的,除非服务器故意不发送最后一次握手数据包,服务器返回给客户端SYN确认之后就会将在自己的端口置为SYN_RCVD。

2024-07-23 17:53:14 803

原创 Zabbix介绍和架构

然后,Zabbix server 以每分钟一次的频率查询监控项表中的有效项,接着将它存储在 Zabbix server 中的缓存里。所以说监控是运维这个职业的根本。WEB 界面是 Zabbix server 的一部分,用于实现展示和配置的界面通常(但不一定)和 Zabbix server 运行在同一台物理机器上基于 Apache(Nginx)+PHP 实现,早期只支持LAMP架构,从Zabbix5.0开始支持LNMP。Zabbix Proxy 的部署可以很好的分担单个Zabbix server的负载。

2024-07-19 15:34:18 1403

原创 Haproxy服务

HAProxy(High Availability Proxy)是一个开源的负载均衡和代理服务器,它运行在 Linux 和其他类 Unix 系统上。HAProxy 最初是为了解决高可用性和负载均衡问题而开发的,因此它具有非常高的性能、稳定性和丰富的特性。1.主要特点和功能负载均衡: HAProxy 提供了强大的负载均衡能力,能够根据多种算法(如轮询、加权轮询、最少连接数等)将流量分发到多个后端服务器上,实现负载均衡。健康检查。

2024-07-18 19:17:09 818

原创 ELK日志管理与应用

通常在需要采集数据的客户端安装 Filebeat,并指定目录与日志格式,Filebeat 就能快速收集数据,并发送给 logstash 进行解析,或是直接发给 Elasticsearch 存储,性能上相比运行于 JVM 上的 logstash 优势明显,是对它的替代。●缓存/消息队列(redis、kafka、RabbitMQ等):可以对高并发日志数据进行流量削峰和缓冲,这样的缓冲可以一定程度的保护数据不丢失,还可以对整个架构进行应用解耦。4.编辑tomcat日志的logstash配置文件。

2024-07-17 16:41:40 445

原创 ELK日志管理

ELK Stack:Elasticsearch、Kibana、Beats 和 Logstash | Elastic。

2024-07-16 19:10:06 977

原创 GlusterFS 分布式文件系统

GlusterFS 是一个开源的分布式文件系统,最初由Gluster公司开发,后来被Red Hat收购并继续维护和支持。它的设计目标是为大规模的数据存储需求提供高可靠性、高性能和可扩展性的解决方案。

2024-07-15 19:00:47 1013

原创 数据的实时同步

inotify + rsync 方式实现数据同步sersync :前金山公司周洋(花椒直播)在 inotify 软件基础上进行开发的,功能更加强大2.inotify异步的文件系统事件监控机制,利用事件驱动机制,而无须通过诸如cron等的轮询机制来获取事件,linux内核从2.6.13起支持 inotify,通过inotify可以监控文件系统中添加、删除,修改、移动等各种事件工作原理: inotify 是 Linux 内核提供的一种文件系统监控机制,能够监控文件系统事件(如文件或目录的创建、删除、修改等)

2024-07-12 15:28:56 766

原创 Redis 主从复制,哨兵与集群

虽然Redis可以实现单机的数据持久化,但无论是RDB也好或者AOF也好,都解决不了单点宕机问题,即一旦单台 redis服务器本身出现系统故障、硬件故障等问题后,就会直接造成数据的丢失此外,单机的性能也是有极限的,因此需要使用另外的技术来解决单点故障和性能扩展的问题。

2024-07-10 18:24:00 1126

原创 Redis数据类型

列表是一个双向可读写的管道,其头部是左侧,尾部是右侧,一个列表最多可以包含2^32-1(4294967295)个元素,下标 0 表示列表的第一个元素,以 1 表示列表的第二个元素,以此类推。如果有多个 value 值,那么各个 value 值按从左到右的顺序依次插入到表尾:比如对一个空列表 mylist 执行 RPUSH mylist a b c ,得出的结果列表为 a b c ,等同于执行命令 RPUSH mylist a 、6.批量设置多个key mset。PERSIST 永远不过期。

2024-07-09 18:28:02 692

原创 Redis缓存

Redis从master主进程先fork出一个子进程,使用写时复制机制,子进程将内存的数据保存为一个临时文件,比如:tmp-.rdb,当数据保存完成之后再将上一次保存的RDB文件替换掉,然后关闭子进程,这样可以保证每一次做RDB快照保存的数据都是完整的因为直接替换RDB文件的时候,可能会出现突然断电等问题,而导致RDB文件还没有保存完整就因为突然关机停止保存,而导致数据丢失的情况.后续可以手动将每次生成的RDB文件进行备份,这样可以最大化保存历史数据。否则,内存申请失败,并把错误返回给应用进程。

2024-07-08 18:56:51 827

原创 MySQL中mycat与mha应用

替代Hbase,分析大数据,作为海量数据实时查询的一种简单有效方案,比如100亿条频繁查询的记录需要在3秒内查询出来结果,除了基于主键的查询,还可能存在范围查询或其他属性查询,此时Mycat可能是最简单有效的选择。多租户应用,每个应用一个库,但应用程序只连接Mycat,从而不改造程序本身,实现多租户化报表系统,借助于Mycat的分表能力,处理大规模报表的统计。apply_diff_relay_logs #识别差异的中继日志事件并将其差异的事件应用于其他的slave。

2024-07-05 17:17:32 757

原创 数据库主从复制

MySQL数据库的主从复制(Master-Slave Replication)是一种常见的数据库复制架构,用于提高数据库的可用性、可靠性和性能。

2024-07-04 19:24:19 1115

原创 数据库备份

数据库备份是将数据库中的数据和结构以某种格式保存在一个文件中的过程。备份的目的是为了在数据丢失或者数据库发生故障时能够恢复数据。

2024-07-03 19:24:38 825

原创 MySQL的并发控制、事务、日志

举个例子,事务 T1 获取了一个行 r1 的 S 锁,另外事务 T2 可以立即获得行 r1 的 S 锁,此时 T1 和 T2 共同获得行 r1 的 S 锁,此种情况称为。1.配置为2和配置为0,性能差异并不大,因为将数据从Log Buffer拷贝到OS cache,虽然跨越用户态与内核态,但毕竟只是内存的数据拷贝,速度很快。2.配置为2和配置为0,安全性差异巨大,操作系统崩溃的概率相比MySQL应用程序崩溃的概率,小很多,设置为2,只要操作系统不奔溃,也绝对不会丢数据。0 提交时没有写磁盘的操作;

2024-07-02 18:43:55 851

原创 Mysql 的账户管理,索引,存储引擎

myisam引擎的特点和限制不支持事务:MyISAM不提供事务支持,因此不能确保数据的原子性、一致性、隔离性和持久性(ACID特性)。表级锁定:在写操作时会锁定整个表,这可能会导致高并发时的性能瓶颈。读写相互阻塞:写操作会阻塞读操作,反之亦然,这在高并发环境下可能导致性能问题。只缓存索引:MyISAM只缓存索引而不是整行数据,这在一些场景下可能会导致额外的磁盘IO操作。不支持外键约束:虽然可以定义外键关系,但MySQL会忽略这些定义,MyISAM本身不会实际实施外键约束。不支持聚簇索引。

2024-07-01 19:25:08 1269 2

原创 MySQL数据库基础知识

MySQL是一个开源的关系型数据库管理系统(RDBMS),由瑞典MySQL AB公司开发,后被Sun Microsystems收购,再后被Oracle收购。它是目前最流行的数据库管理系统之一,特别是在Web应用程序开发中被广泛使用。开源和免费MySQL是开源软件,采用GPL(GNU General Public License)许可证,可以免费使用和修改。这使得它在开发者社区中得到广泛的支持和贡献。跨平台。

2024-06-27 16:32:25 692

原创 运维自动化之ANSIBLE

2015年底270多个模块,2016年达到540个,2018年01月12日有1378个模块,2018年07月15日1852个模块,2019年05月25日(ansible 2.7.10)时2080个模块,2020年03月02日有3387个模块虽然模块众多,但最常用的模块也就2,30个而已,针对特定业务只用10几个模块。3. 通过ansible将模块或命令生成对应的临时py文件,并将该文件传输至远程服务器的对应执行用户$HOME/.ansible/tmp/ansible-tmp-数字/XXX.PY文件。

2024-06-24 17:52:50 897

原创 keepalive+nginx高可用架构

3.将192.168.240.11代理服务器上/etc/nginx/nginx.conf文件远程拷贝到192.168.240.12的/etc/nginx/nginx.conf。(2)关闭主服务器nginx使用ip a 查看 192.168.240.188 已经不在主服务器上。在192.168.240.11上 vim /etc/keepalived/keepalived.conf。ip a 查看主服务器,192.168.240.188 在主服务器上被主服务器抢占。2.编辑nginx配置文件。

2024-06-21 16:42:46 507

原创 LVS集群

目标地址哈希,第一次轮询调度至RS,后续将发往同一个目标地址的请求始终转发至第一次挑中的RS,典型使用场景是正向代理缓存场景中的负载均衡,如: Web缓存 缓存。6、LBLCR:LBLC with Replication,带复制功能的LBLC,解决LBLC负载不均衡问题,从负载重的复制到负载轻的RS,,实现Web Cache等。:另一种负载均衡方式,所有流量都通过负载均衡器进行NAT转换,这样可以支持不在同一网段的服务器,但会增加负载均衡器的负担。

2024-06-18 18:06:43 1165

原创 nginx反向代理动静分离和负载均衡

反向代理是一种服务器,在这种设置中,代理服务器接收客户端的请求,并将这些请求转发给一个或多个后端服务器(例如应用服务器、数据库服务器等)。然后,后端服务器处理这些请求并将响应返回给代理服务器,代理服务器再将响应传递给客户端。Nginx 动静分离是一种常见的性能优化技术,它将处理静态资源和动态请求的责任分配给不同的服务器或者服务进程,以提高网站的性能和吞吐量。静态资源和动态请求: 在网站中,通常有两种类型的请求:静态资源请求和动态请求。

2024-06-18 15:23:27 943

原创 Tomcat服务部署

一.tomcat介绍Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,Tomcat具有处理HTML页面的功能,它还是一个Servlet和JSP容器 起始于SUN公司的一个Servlet的参考实现项目Java Web Senver,开发者是James Duncan Davidson,在19年,将项目贡献给了apache软件基金会(ASF),和ASF现有的项目JServ合并,并开源成为顶级项目。

2024-06-17 17:57:18 731

原创 Nginx 搭建 lnmp

数据库服务器:localhost ###本地架设就用localhost,如何不是在在本机上就要填写IP地址和端口号。1.前期准备,安装mysql依赖环境包,准备好安装包mysql-boost-5.7.20.tar.gz。3.切换到nginx-1.22.0.tar.gz下编译安装nginx。2.切换到/opt目录下,将下载好的包拖到/opt目录下,解压包。2.切换到/opt目录下,将安装包拖到/opt目录下,解压安装包。3.切换到编译安装目录,编译安装mysql。3.切换到编译安装目录下,编译安装。

2024-06-14 17:06:12 863

原创 Nginx的https功能和防盗链

nginx 的https 功能基于模块ngx_http_ssl_module实现,因此如果是编译安装的nginx要使用参数ngx_http_ssl_module开启ssl功能,但是作为nginx的核心功能,yum安装的nginx默认就是开启的,编译安装的nginx需要指定编译参数--with-http_ssl_module开启。总的来说,Nginx通过其灵活的配置和强大的性能,在实现HTTPS功能时提供了丰富的选项和功能。在Nginx中,HTTPS是通过SSL/TLS协议来实现加密和安全通信的功能。

2024-06-05 17:25:43 879

原创 Nginx基础配置

所有worker进程能打开的文件数量上限,包括:Nginx的所有连接(例如与代理服务器的连接等),而不仅仅是与客户端的连接,另一个考虑因素是实际的并发连接数不能超过系统级别的最大打开文件数的限制.最好与ulimit -n 或者limits.conf的值保持一致。在Nginx的主配置文件中,events部分用于配置Nginx服务器的事件模块相关参数,控制Nginx服务器在处理连接请求时的行为。:支持FastCGI协议,用于与FastCGI进程通信,适用于运行PHP等脚本的情况。

2024-06-04 18:30:11 1380

原创 Nginx网络服务

总的来说,Nginx 更适合处理大量并发请求和静态内容,而 Apache 则更适合传统的 Web 服务环境和需要丰富模块支持的场景。向旧的Nginx服务进程发送WINCH信号,使旧的Nginx worker进程平滑停止,并删除Nginx.pid.oldbin文件。:Nginx 可以通过配置多个后端服务器来进行负载均衡,将请求分发到不同的服务器上,从而提高系统的整体性能和可用性。:Nginx 提供了详细的访问日志和错误日志,可以帮助管理员监控服务器的运行状态和诊断问题。

2024-06-01 10:00:00 1416

原创 LAMP架构与搭建论坛

中间连接PHP/Prel/Python:作为三种开发动态网页的编程语言,负责解释动态网页文件,负责沟通Web服务器和数据库系统以协同工作,并提供Web应用程序的开发和运行环境。它是一个开源、可扩展的Web服务器,被广泛应用于互联网上的网站。5、DDEFAULT_COLLATION:指定默认使用的字符集校对规则,utf8_general_ci 是适用于 UTF-8 字符集的通用规则。-DMYSQL_UNIX_ADDR=/tmp/mysql.sock MySQL进程间通信的套接字的位置。

2024-05-31 14:39:53 1370

原创 web基础与http协议

网站判断来访电脑的身份是通过cookies实现的。PV(访问量): 即Page View, 页面浏览量或点击量,用户每次刷新即被计算一次,PV反映的是浏览某网站的页面数,PV与来访者的数量成正比,PV并不是页面的来访者数量,而是网站被访问的页面数量。(3)POST请求同PUT请求类似,都是向服务器端发送数据的,但是该请求会改变数据的种类等资源,几乎目前所有的提交操作都是用POST请求的。(2)与GET不同的是,PUT请求是向服务器端发送数据的,从而改变信息,无论进行多少次PUT操作,其结果并没有不同。

2024-05-30 15:51:41 928

原创 iptables防火墙

INPUT 链用于处理进入本机的数据包,即目的地址为本机的数据包经过此链。OUTPUT 链用于处理由本机发出的数据包,即源地址为本机的数据包经过此链。FORWARD 链用于处理需要进行转发的数据包,即既不是来自本机也不是发往本机的数据包经过此链。PREROUTING 链用于在数据包进入路由之前进行处理,即数据包到达本机之前经过此链。POSTROUTING 链用于在数据包离开路由之后进行处理,即数据包离开本机之后经过此链。

2024-05-22 14:33:16 1113

原创 shell脚本之免交互

执行完成后保持交互状态, 把控制权交给控制台,会停留在目标终端而不是退回到原终端,这时候就可以手工操作了,interact后命令不再起作用,比如interact后添加exit,并不会退出root用户。使用exp_continue时,如果跟踪像passwd这样输入密码后就结束进程的命令,expect {}外不要加上expect eof 因为spawn进程结束后悔默认向expect 发送eof,会导致后面的expect eof执行报错。例如,如果需要输入换行符,就需要在输入内容中显式地包含换行符。

2024-05-21 13:35:11 1087

原创 shell脚本中AWK

通过指定输出格式和使用内置的输出函数,可以将处理后的数据按照指定的格式输出到标准输出或者文件中。如果某行满足指定的模式,则执行相应的动作。BEGIN语句块在awk开始从输入流中读取行之前被执行,这是一个可选的语句块,比如变量初始化、打印输出表格的表头等语句通常可以写在BEGIN语句块中。END语句块在awk从输入流中读取完所有的行之后即被执行,比如打印所有行的分析结果这类信息汇总都是在END语句块中完成,它也是一个可选语句块。(8)打印/etc/passwd文件中以:为分隔符的行的第一字段和最后一个字段。

2024-05-17 14:57:24 1212

原创 shell脚本中sed编辑器

每当处理一行时,把当前处理的行存储在临时缓冲区中,称为模式空间(PatternSpace),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。(10)匹配文件中含有root和bash的行,扩展正则需要加-r, sed -n -r "/root|bash/p"(12)匹配文件中含有 r..t 的行 ".."表任意两个字符 sed -n "/r..t/p"格式:sed '#r 文件2绝对路径' 文件1 //将文件2的内容在文件1的第#行下插入。

2024-05-16 15:38:02 1080

原创 shell脚本之正则表达式

正则表达式由普通字符(如字母、数字和标点符号)以及元字符(具有特殊含义的字符)组成。在扩展正则表达式中,你可以使用一些特殊的元字符来实现更灵活的模式匹配。后向引用:分组括号中的模式匹配到的内容会被正则表达式引擎记录于内部的变量中,这些变量的命名。] 否定字符类,匹配除了方括号中列举的字符之外的任意一个字符。(扩展正则grep需要使用-E):否定字符类,匹配除了方括号中列举的字符之外的任意一个字符。:匹配单词的边界,即单词字符和非单词字符之间的位置。:匹配一个单词字符,包括字母、数字和下划线,相当于。

2024-05-15 16:35:52 1233

原创 shell脚本之函数和数组

在Shell脚本中,函数是一种用于组织和重用代码的机制,它们可以帮助您将脚本分解为更小的、可管理的部分。Shell脚本中的函数与其他编程语言中的函数类似,但在语法和用法上有一些特殊之处。在脚本中通过function关键字或者直接使用函数名来定义函数。函数定义可以在脚本的任何位置,但通常会在脚本的开头或者需要调用的地方定义。# 使用 function 关键字定义函数# 函数体,包含需要执行的命令# 或者直接使用函数名定义函数# 函数体数组是一种数据结构,用于存储相同类型的元素的集合。

2024-05-14 18:19:44 1053

原创 shell脚本中条件语句

逻辑运算中的短路测试是指在进行逻辑运算时,如果能够确定整个表达式的值而无需计算所有部分,则可以提前停止计算,从而提高效率。短路测试的应用可以提高代码的效率,特别是在条件语句中,可以根据短路测试的特性来优化代码。是一个表达式,当它的值为真时,循环中的代码块会被执行。总的来说,小括号和大括号在Shell编程中有着不同的用途,能够提供一些方便的功能和语法结构,使得Shell脚本更加灵活和强大。在上述示例中,如果a为0,则不会进行除法运算,因为在逻辑与和逻辑或中,第一个操作数为假或者真时,不会再计算第二个操作数。

2024-05-13 18:37:57 1026

原创 shell脚本基础

Linux 系统中的 Shell 是一个特殊的应用程序,它介于操作系统内核与用户之间,充当 了一个“命令解释器”的角色,负责接收用户输入的操作指令(命令)并进行解释,将需要执 行的操作传递给内核执行,并输出执行结果。/bin/bash为默认的解释器还有其他类型的解释器,#!默认情况下,新定义的变量只在当前的shell环境中有效,因此称为局部变量,当进入子程序或新的shell环境中,局部变量将无法再起作用。语法错误,会导致后续的命令不继续执行,可以用bash -n 检查错误,提示的出错行数不一定是准确的。

2024-05-09 11:14:36 843

原创 Linux网络服务的存储,FTP服务和NFS共享

FTP(File TransferProtocol,文件传输协议)是典型的C/S架构的应用层协议,需要由服务端软件、客户端软件两个部分共同实现文件传输功能。FTP客户端和服务器之间的连接是可靠的,面向连接的,为数据的传输提供了可靠的保证。tcp协议:20,21端口。20端口:传输真实数据 21端口:传输命令端口NFS(Network File System 网络文件服务) 文件系统(软件)文件的权限 NFS 是一种基于 TCP/IP 传输的网络文件系统协议,最初由 Sun 公司开发。

2024-05-06 19:01:17 1054

原创 PXE高效批量网络装机

PXE 的全称是 preboot execute environment它其实是Intel在很久以前提出来的一项用于通过网络来引导系统的标准。允许客户机通过网络从远程服务器上下载引导镜像,并加载安装文件或者整个操作系统。pxe是通过网卡引导启动单机: 光驱加载 linux 镜像去安装操作系统,光驱里有一个小型的linux操作系统将操作系统 安装进自己的硬盘PXE 操作系统是外来的 设备的上操作系统, 进入到外来的操作系统后,将自己想要安装的操作系统类型,安装进硬盘。

2024-05-06 15:56:26 1155 1

原创 Linux网络服务部署YUM仓库

yum是一个基于RPM包(是Red-Hat Package Manager红帽软件包管理器的缩写)构建的软件更新机制,能够自动解决软件包之间的依赖关系。解决了日常工作中的大量查找安装依赖包的时间。

2024-05-05 16:47:29 1120

原创 Linux中ssh登录协议

SSH(Secure Shell)是一种安全通道协议,主要用来实现字符界面的远程登录,远程复制等功能。SSH协议对通信双方的数据传输进行了加密处理,其中包括用户登录时输入的用户口令,SSH 为建立在应用层和传输层基础上的安全协议。对数据进行压缩,加快传输速度。

2024-04-29 16:43:38 1302

空空如也

空空如也

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

TA关注的人

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