自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Linux系统性能分析

可以定期显示所有正在运行和实际运行的cpu使用、内存使用、交换内存、缓存大小、缓冲区大小、过程控制、用户等内容。

2023-09-06 11:23:15 145

原创 shell编程

(1)只须编译一次就可以把源代码编译成机器语言,后面的执行无须重新编译,直接使用之前的编译结果就可以;因此其执行的效率比较高;(2)编译性语言代表:C、C++、Pascal/Object Pascal(Delphi);(3)程序执行效率比较高,但比较依赖编译器,因此跨平台性差一些;(1)源代码不能直接翻译成机器语言,而是先翻译成中间代码,再由解释器对中间代码进行解释运行;(2)程序不需要编译,程序在运行时才翻译成机器语言,每执行一次都要翻译一次;

2023-07-01 12:19:44 343

原创 kafaka在ELK日志集群中的应用

1.kafka对外使用topic(话题)的概念, 生产者往topic里写消息, 消费者从中读消息。2.为了做到水平拓展,一个topic实际上是由多个partition(隔扇)组成,当遇到瓶颈时可以通过增加partition的数量来进行横向扩容,单个partition内是保证消息是有序的。3.每新写入一条消息,kafka就是在对应的文件append(附加)写,所以性能非常高。Kafka是一个分布式、分区、复制的提交日志服务。

2023-06-28 00:09:59 364

原创 shell三剑客

awk -F : '{if ($3<1000) {print $1 "是系统用户"} else {print $1 "是普通用户"}}' /etc/passwd。grep: 使用基本元字符集 ^, $, ., *, [], [^], \< \>,\(\),\{\}, \+, \|\w 所有字母与数字,称为字符[a-zA-Z0-9] 'l[a-zA-Z0-9]*ve' 'l\w*ve', +, { }, |, ( )-q, --quiet, --silent 静默--quiet, --silent。

2023-06-23 17:06:52 121

原创 监控tcp连接

TCP(Transmission Control Protocol)传输控制协议: 提供面向连接的可靠的数据传输、适合传输大数据、速度慢 三次握手:Key的定义:传参形式定义: 获取参数:自定义模板如之前。

2023-06-13 20:29:37 859

原创 初探zabbix

agentd需要安装到被监控的主机上,它负责定期收集各项数据,并发送到zabbix server端,zabbix server将数据存储到数据库中,zabbix web根据数据在前端进行展现和绘图。监控项(item):一个特定监控指标的相关的数据;4、Proxy:可选组件,常用于监控节点很多的分布式环境中,代理server收集部分数据转发到server,可以减轻server的压力;事件(event):触发一个值得关注的事情,比如触发器状态转变,新的agent或重新上线的agent的自动注册等;

2023-06-11 23:21:46 110

原创 shell正则

或 x|y 匹配x或y z|food 匹配z或food [zf]ood 匹配zood 或food(m|f)ood。\{n,\} 前面的字符最少重复n次 大于n次。\{,n\} 前面的字符最多重复n次 小于n次。\{n\} 匹配前面的字符刚好重复n次。\{n,m\} 前面的字符重复n次到m次。\S 匹配一个任何可见字符 相当于[^\f\n\r\t\v]\s 匹配一个不可见字符 相当于[\f\n\r\t\v][A-Z] 大写字母。

2023-06-08 00:55:13 64

原创 ansible(playbook)

playbook由YAML语言编写。YAML参考了其他多种语言,包括:XML、C语言、Python、Perl以及电子邮件格式RFC2822等。YAML格式是类似于JSON的文件格式,便于人理解和阅读,同时便于书写。以下为playbook常用到的YAML格式:1、文件的第一行应该以 "---" (三个连字符)开始,表明YAML文件的开始。2、在同一行中,#之后的内容表示注释,类似于shell,python和ruby。3、YAML中的列表元素以”-”开头然后紧跟着一个空格,后面为元素内容。

2023-06-07 20:47:32 85

原创 iptables(NAT)

被动模式配置:iptables -t nat -A PREROUTING -p tcp -m multiport --dports 21,8001:9000 -j DNAT --to 192.168.10.13。iptabls -t nat -A PREROUTING -s 180.15.10.10 -p tcp --dport 2221 -j DNAT --to 192.168.10.13:22(端口映射)主动连接是服务器通过20号端口主动向客户端建立连接(SNAT)

2023-06-04 17:50:39 1455

原创 NFS(网络文件系统)

NFS的工作原理是将文件系统挂载到远程计算机上,使得远程计算机可以像本地文件系统一样访问共享的文件和目录。NFS使用客户端-服务器模型,其中客户端计算机通过网络连接到NFS服务器,请求访问共享的文件和目录。NFS服务器将文件和目录的内容传输到客户端计算机上,使得客户端可以像访问本地文件系统一样访问共享的文件和目录。NFS是NAS的一种。root_squash 把客户端使用root操作的文件的uid和gid映射为匿名用户(nfsnobody)secure 小于1024端口连接。

2023-06-02 00:52:25 1687

原创 Ansible(ad-hoc)

Ansible 基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。ansible是基于模块工作的,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架。connection plugins:连接插件,负责和被管理端实现通信,有SSH,ZEROMQ等,默认使用SSH连接。

2023-06-01 19:49:49 143

原创 iptables

netfilter/iptables(简称为iptables)组成Linux平台下的包过滤防火墙。iptables是Linux防火墙的管理工具,位于/sbin/iptables。真正实现防火墙功能的是netfilter,它是Linux内核中实现包过滤的内部结构。

2023-05-30 20:19:37 41

原创 centos7静态路由

静态路由 由系统管理员手动配置的到目标网络的唯一路径,当网络结构发生变化时也必须由系统管理员手动的修改配置。但合理的使用静态路由可以改进网络的性能,为重要的应用保存带宽。# vim /etc/sysconfig/network-scripts/route-interface #interface:网卡名称。路由是指路由器从一个接口上收到数据包,根据数据包的目的地址进行定向并转发到另一个接口的过程。所谓路由表,指的是路由器或者其他互联网网络设备上存储的表,该表中存有到达特定网络终端的路径。

2023-05-29 20:51:09 2660

原创 centos7网络管理

4. arp:用于显示和操作系统 ARP 缓存,可以查看本地网络中的 MAC 地址和 IP 地址的对应关系。1. ifconfig:用于配置和显示网络接口的状态,如 IP 地址、子网掩码、MAC 地址等。2. route:用于配置和显示内核 IP 路由表,可以查看当前系统的路由信息。6. dnsdomainname:用于显示系统的 DNS 域名。7. hostname:用于显示或设置系统的主机名。- show:显示网络接口的IP地址和MAC地址。5. nameif:用于设置网络接口的名称。

2023-05-29 20:35:55 1181

原创 inotify-tools

Inotify 是一种强大的、细粒度的、异步的文件系统事件监控机制,linux内核从2.6.13起,加入了Inotify支持,通过Inotify可以监控文件系统中添加、删除,修改、移动等各种细微事件,利用这个内核接口,第三方软件就可以监控文件系统下文件的各种变化情况,而inotify-tools就是这样的一个第三方软件。--timefmt "%y-%m-%d %T" --format "%T %w%f 当前事件有:%e" -e close_write,delete /var/ |

2023-05-29 19:56:48 58

原创 Rsync基本用法与介绍

rsync可以通过SSH、RSH或直接TCP连接进行传输,支持压缩和加密传输,可以在传输过程中断后恢复,可以排除指定的文件和目录,支持多种操作系统和文件系统。--times:保持mtime属性。rsync -vaz --delete /var/www/html/ 192.168.122.10:/var/www/html 增量。-n --dry-run :仅测试传输,而不实际传输。-D :是"--device --specials"选项的组合,即也拷贝设备文件和特殊文件。

2023-05-23 21:03:23 254

原创 Nginx(14)缓存

语法:proxy_cache_path path [levels=number] keys_zone=zone_name:zone_size [inactive=time] [max_size=size];存在这样的缓存字段,当再次请求相同资源时,就会确认在客户端的资源是否过期浏览器在不强制刷新的情况下可使用有效期内的缓存。指定缓存的路径和一些其他参数,缓存的数据存储在文件中,并且使用代理url的哈希值作为关键字与文件名。设置一个缓存区域的名称,一个相同的区域可以在不同的地方使用。

2023-05-22 00:09:29 298

原创 Nginx(13)负载均衡

Nginx以事件驱动的方式编写,所以有非常好的性能,同时也是一个非常高效的反向代理、负载平衡。它支持内核Poll模型,能经受高负载的考验,有报告表明能支持高达 50,000个并发连接数。Nginx具有很高的稳定性。其它HTTP服务器,当遇到访问的峰值,或者有人恶意发起慢速连接时,也很可能会导致服务器物理内存耗尽频繁交换,失去响应,只能重启服务器。例如当前apache一旦上到200个以上进程,web响应速度就明显非常缓慢了。而Nginx采取了分阶段资源分配技术,使得它的CPU与内存占用率非常低。

2023-05-21 21:55:14 93

原创 Nginx(12)反向代理

代理:代理(Proxy)也称网络代理。它是一种特殊的网络服务,允许一个网络终端(一般为客户端)通过这个服务与另一个网络终端(一般为服务器)进行非直接的连接。一些网关、路由器等网络设备具备网络代理功能。一般认为代理服务有助于保障网络终端的隐私或安全,防止攻击。代理通常分为正向代理、反向代理及透明代理。正向代理:正向代理是客户端向代理服务器发送请求,代理服务器再将请求转发给目标服务器,然后将目标服务器的响应返回给客户端。

2023-05-21 17:22:45 245

原创 Nginx(11)平滑升级

可以在不中断服务的情况下,新的请求也不会丢失,使用新的 nginx 可执行程序替换旧的(当升级新版本或添加/删除服务器模块时).新的主进程退出后,旧的主进程会由移除 .oldbin 前缀,恢复为它的 .pid 文件,这样,一切就都恢复到升级之前了.主进程将重命名它的 .pid 文件为 .oldbin,然后执行新的可执行程序,依次启动新的主进程和新的工作进程.给旧的主进程发WINCH信号,把旧的工作进程从容关闭, 有新的请求发到新进程。2.发送 QUIT 信号给新的主进程,要求其从容关闭其工作进程。

2023-05-21 02:08:29 48

原创 Nginx(10)配置防盗链

但是,由于Referer头域包含了用户的隐私信息,如用户正在访问的页面、用户的搜索关键字等,因此在一些情况下,用户可能会选择禁用或修改Referer头域,以保护自己的隐私。比如在请求一个网页时,首先会回传该网页的文本内容,当客户端浏览器在解析文本的过程中发现有图片存在的时候,会再次向服务器端发起对该图片资源的请求,服务器将存储的图片资源再发送给客户端。在这个过程中,如果该服务器上只包含网页的文本内容,而没有存储相关的图片资源,而是将图片资源链接到了其他站点的服务器上去了,这就形成了盗链问题。

2023-05-21 00:27:56 234

原创 Nginx(9)URI重写 - rewrite

默认情况下,如果该字符串是由"http://" 或"https://" 开头的, 则不会继续对URI 进行处理,而是直接将重写后的URI返回给客户端。URL的重写是非常有用的功能,比如它可以让我们在改变网站结构后,无需要求客户端用户修改原有的浏览器书签。last - 停止执行当前这一轮的ngx_http_rewrite_module指令集,然后查找匹配改变后URI的新location;Rewrite 是Nginx提供的一个重要基本功能,其在Web服务器产品中几乎是必备的功能,用于实现URL的重写。

2023-05-20 20:57:45 1308

原创 Nginx(8)location中使用alias替换路径

的值可以包含变量,但不能使用$document_root和 $realpath_root这两个变量。“/i/top.gif” 将由 /data/w3/images/top.gif文件来响应。alias指令用于定义指定路径的替换路径。

2023-05-20 20:08:07 984

原创 Nginx(7)location详解

例如:http://nginx.org:80/en/docs/http/ngx_http_proxy_module.html#proxy_set_header。若uri为/,表示匹配所有.其他location未匹配到的均能匹配到。无修饰符的情况也表示uri前缀匹配,但优先级低于正则匹配。1). 优先级的高低与location出现的顺序无关。.location匹配的是访问的url中的文件部分。5. location / 可匹配所有的访问请求。^~ 前缀匹配,优先级高于正则匹配。= 精确匹配,优先级最高。

2023-05-20 15:30:07 60

原创 Nginx(6)安装模块

/configure --原来的编译选项 --add-module=/usr/local/nginx/modules/echo-nginx-module-0.61/1.下载并解压第三方模块(要与nginx版本一致)下载原nginx源码包并解压。再次使用nginx -V查看编译选项,有新添加的选项就说明安装完成。将原来的nginx二进制程序备份,使用刚编译好的新二进制程序替代。2.产看原nginx 编译参数 nginx -V。3.进入到解压的nginx源码包目录里重新编译。make 注意不要安装。

2023-05-20 14:21:16 718

原创 Nginx (5)访问控制

客户端访问服务器是访问服务器下的文件,访问目录是不被允许的。如/后是目录会自动寻找此目录下的index.html文件,如没有会报403错误,不允许被访问。如想要用户访问并下载此目录下的文件可以在server块里设置 autoindex on;if ($black_list) { 判断geo定义的变量的值,为真进入判断。先给你一点先看,再慢慢给你缓存观看,等你欲罢不能的时候,让你冲会员,冲完会员就快了。default 0;# 1.17.0以上的版本支持使用变量作为limit_rate的值。

2023-05-20 13:49:25 122

原创 Nginx(4)虚拟主机

发布目录在/baidu目录 ,可以绝对路径,但是别把发布目录放在用户的家目录里这样会报403错误,没有访问权限。#default 在浏览器中直接键入IP地址会进入这个。也可以把每个虚拟主机分开写在不同的配置文件中,在http块中引用该路径即可。#发布目录在html下的163目录。从服务器角度来看,每台虚拟主机对应只是一个server的配置。从客户端角度来看,每台虚拟主机是一个独立的服务器。* 注意: 客户端在测试时要进行解析。

2023-05-20 13:17:33 31

原创 Nginx(3)自定义日志

可以在不同的server块里定义不同的并调用(日志文件目录及名字不能一样)这样每个虚拟主机都有自己的日志格式及文件。$host “Host”请求头的值,如果没有该请求头,则为与请求对应的虚拟主机的首要主机名。$document_root 当前请求的root指令或alias指令的配置值。注意:可以在http块里定义,调用 (所有的server块全部统一日志格式)$body_bytes_sent 返回给客户端的字节数,不含响应头。$http_x_forwarded_for 客户端ip。$status 状态码。

2023-05-20 11:02:54 279

原创 Nginx(2)配置文件解释

如文件引入,mime-type定义,日志自定义,是否使用sendfile传输文件,连接超时时间,单连接请求数等。一般有运行nginx服务器的用户组,nginx进程pid存放路径,日志存放路径,配置文件引入,允许生成worker process数等。#log_format main '$remote_addr - $remote_user [$time_local] "$request" ' #定义访问日志格式。#最优值取决于许多因素,包括(但不限于)CPU核的数量、存储数据的硬盘 数量及负载模式。

2023-05-20 01:22:41 76

原创 Nginx(1)源码安装

/configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module --with-http_ssl_module (支持参数参考官方文档)nginx的配置文件为nginx.conf,一般在修改任何配置文件时都会进行备份,但nginx默认以及给我们做好备份了,为同目录下nginx.conf.default文件。3. 可扩展性:Nginx支持模块化的架构,可以通过添加模块来扩展其功能。

2023-05-20 00:54:48 109

原创 ss与netstat

SS是一个比较新的网络工具,它可以显示更加详细的网络连接状态信息,包括进程ID、用户、状态、传输速率、定时器等。SS的输出格式比较复杂,但是可以通过参数进行定制,可以显示更加详细的信息。Netstat是一个老牌的网络工具,它可以显示当前系统的网络连接状态、路由表、接口统计信息等。它的输出格式比较简单,但是信息比较全面,可以查看到TCP、UDP、ICMP等协议的连接状态和统计信息。-a:显示所有连接和监听端口。-s:显示每个协议的统计信息。-s:显示每个协议的统计信息。-a:显示所有连接和监听端口。

2023-05-18 21:00:07 218 1

原创 Tcpdump抓包工具

它可以捕获各种协议的数据包,包括TCP、UDP、ICMP、HTTP、FTP等,可以根据不同的过滤条件进行数据包的过滤和分析,还可以对数据包进行解码和重组,以便更好地理解网络流量。tcpdump截取的包默认数据包的头部,默认情况下,直接启动tcpdump将监听的是第一个网络接口上所有流过的数据包。常用的协议有tcp/udp/arp/ip/ether/icmp等,若未给定协议类型,则匹配所有可能的类型。-nn:除了-n的作用外,还把端口显示为数值,否则显示端口服务名。-v:当分析和打印的时候,产生详细的输出。

2023-05-18 20:27:43 289 1

原创 HTTP总结

文件名部分:从域名后的最后一个"/"开始到"?",则是从域名后的最后一个"/"开始到"#"为止;"和"#",那么从域名后的最后一个"/"开始到结束,都是文件名部分。"开始到"#"之间的部分,又称搜索部分、查询部分.多个参数,用"&"分隔.本例中的参数部分为"boardID=5&ID=24618&page=1".协议部分: 该URL的协议部分为"http:",这代表网页使用的是HTTP协议."//"为分隔符.虚拟目录部分: 从域名后的第一个"/"开始到最后一个"/"为止,是虚拟目录部分.本例为/news/

2023-05-17 15:27:55 123 1

原创 URL笔记

www.example.com是主机名部分,表示资源所在的服务器地址;/path/to/resource是路径部分,表示资源的具体位置;param1=value1¶m2=value2是查询参数部分,表示对资源的请求参数。如:https://www.example.com/index.html , 这个根所代表的是网站的发布目录,访问的是发布目录下的index.html文件。如果斜杠后面是一个目录名,那么请求的资源就是该目录下的默认文件(通常是 index.html 或 index.php)。

2023-05-16 20:12:11 48

原创 本地回环地址127.0.0.1

而无法被其他计算机上的进程或者网络上的其他设备访问。2.是本机向自身发送通信的一个地址,用于本机不同进程之间的通信,不同于本机IP是用于与外部计算机通信。5.将服务端口监听在本地回环地址(127.0.0.1)上,意味着该服务只能被本地计算机上的进程访问,4.把服务端与客户端同时安装在同一台机器上时,指定服务端IP地址为回环地址时,也是可以运行的。在开发和测试过程中,也常常使用本地回环地址来模拟网络环境,方便进行本地测试和调试。同时,也可以避免服务被其他计算机上的进程占用端口,导致端口冲突的问题。

2023-05-16 19:58:33 880

原创 http报文笔记

HTTP报文是客户端和服务器之间进行通信的基本单位,由请求报文和响应报文两种类型组成。消息主体包含了请求或响应的具体内容,格式根据具体情况而定。HTTP报文由三部分组成:起始行、首部字段和消息主体。例如:GET /index.html HTTP/1.1。例如:Host:www.example.com。METHOD URL HTTP/版本号。HTTP/版本号 状态码 状态码描述。例如:HTTP/1.1 200 OK。

2023-05-16 19:58:29 41 1

原创 find笔记

-exec` 选项会在找到的每个文件上执行一次指定的命令,因此如果找到的文件数量很大,可能会导致命令执行时间很长。此外,`-exec` 选项还可以使用 `+` 替代 `\;`,这样可以将多个文件一起传递给命令,从而提高效率。-depth 目录深度 -mindepth最小目录深度。-ls 显示详细信息 默认 -print。用法:find 路径 选项及条件 处理动作。-print(默认动作)处理动作:-ok(执行命令前需确认)-perm 权限。选项:-name -iname。

2023-05-16 00:44:25 35

原创 Linux常用命令tar使用方法

5. 7z:7z是一种高压缩率的压缩工具,可以将多个文件或目录打包成一个.7z的文件,并进行压缩,压缩率比zip和bzip2更高,但压缩和解压缩速度较慢。4. zip:zip是一种跨平台的压缩工具,可以将多个文件或目录打包成一个.zip的文件,并进行压缩,可以在Windows和Linux系统中使用。1. tar:tar是Linux下最常用的打包工具,可以将多个文件或目录打包成一个文件,但不会压缩文件,只是将多个文件或目录合并成一个文件。4.将一个或多个文件或目录压缩成一个gzip格式的文件。

2023-05-16 00:17:28 2315

空空如也

空空如也

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

TA关注的人

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