自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

白夜流歌的笔记簿

一个志愿混吃等死的小运维,要努力活下去呀!

  • 博客(36)
  • 收藏
  • 关注

转载 shell中$(( )) 与 $( )和`` 还有${ }的区别

shell中$(( )) 与 $( )和`` 还有${ }的区别

2022-12-08 15:47:16 333 1

原创 centOS6添加开机启动

centOS6添加开机启动

2022-11-29 14:27:13 948

转载 webdav超出文件传输限制的处理办法

webdav超出文件传输限制的处理办法

2022-09-06 17:51:23 5276 2

原创 HDR视频和截图曝光严重,需要如何处理?

造成HDR视频和截图曝光的原因其实还是系统没有能支持HDR的播放软件,默认用过去SDR的方式播放,这就是导致曝光的原因,那么只需要解决播放软件即可。

2022-08-14 03:19:26 5847

原创 Nginx流量限制

Nginx流量限制可以有效防止DDOS攻击,降低服务器负载,缓解硬件和网络压力,功能依赖于limit_req模块,这个模块现版本都是默认集成的,所以不用单独编译安装。转载资料:关于limit_req和limit_conn的区别:https://www.cnblogs.com/zhoulujun/p/12183179.htmlNginx限制访问速率和最大并发连接数模块说明:https://www.cnblogs.com/wjoyxt/p/6128183.htmlNginx下limit_req模块bur

2021-11-03 20:43:21 3179

原创 Nginx日志切割

一、编写日志切割脚本mkdir /scriptsvim /scripts/cut_nginx_log.sh#!/bin/bash#前一天的日期date=`date +%F -d -1day`logpath=/application/nginx/logsmv ${logpath}/access.log $logpath/access-${date}.logmv ${logpath}/error.log $logpath/error-${date}.log#重新生成日志文件/applica

2021-11-03 20:43:12 1212

原创 nginx域名访问的白名单配置梳理

在日常运维工作中,会碰到这样的需求:设置网站访问只对某些ip开放,其他ip的客户端都不能访问。可以通过下面四种方法来达到这种效果:1)针对nginx域名配置所启用的端口(比如80端口)在iptables里做白名单,比如只允许100.110.15.16、100.110.15.17、100.110.15.18访问.但是这样就把nginx的所有80端口的域名访问都做了限制,范围比较大![root@china ~]# vim /etc/sysconfig/iptables......-A INPUT -s

2021-11-03 20:42:59 3078

转载 内核-Nginx-性能优化

前言这篇关于 Nginx 的性能优化,是我查阅资料研究所成,并没有用于实际生产环境,如若你想用于实践,请谨慎测试之后使用。Nginx 性能优化,主要是减少磁盘 io。请求头、请求体、响应体都在缓冲区操作。文件信息的读取减少网络 io。gzip 压缩。前端资源也可以提前进行 gzip 压缩,这样请求的时候就不用再压缩了,减少对 cpu 的损耗。强缓存。减少对后端的静态资源的请求。http 链接的尽快释放,减少请求的堆积。linux 内核优化。这部分主要是查阅资料加上自己的理解。内容来自 《深

2021-07-09 10:56:43 341 1

原创 记一个很奇怪的需求——有关爬虫服务器的IP轮换

最近公司的一台爬虫服务器,因为同一个ip一直爬取数据,触发了目标网站的风控机制导致爬不到数据了。为此出了个对策,就是通过更换ip爬取,减少出发风控机制的概率。分成三个步骤解决一、准备一个或多个额外ip并绑定在ECS实例上二、编写路由变更脚本三、添加定时任务下边说下具体流程一、准备一个或多个额外ip并绑定在ECS实例上做一下讲解,阿里云的ECS可以绑定多个虚拟网卡,用图来说明就是下边这样,每个ECS可以绑定弹性网卡数量不一样,根据所购买的ECS规格可绑定数量为2-8个不等,需提前了解好。根据

2021-06-18 10:16:30 255

原创 VisualSVN备份,还原,以及创建仓库

安装就不说了,除了安装完的授权以外没啥的,授权指的不是建立账号,而是windows的始终以管理员打开VisualSVN的目录,这样VisualSVN的管理软件和之后的操作才能操作。一、备份代码库1)备份建议使用svnadmin dump命令进行备份,这种备份的好处是不会将权限和注册表间的依赖备份出去,之前被backup Repository坑惨了,如下图,这个备份文件有无法正常还原代码库的情况,慎用真正好使的svnadmin dump操作方式如下,进入VisalSVN的安装根目录,找到bin目录,进

2021-06-11 14:42:46 1982 2

原创 Windows安装JDK+myeclipse+maven一条龙

一、安装JDK下载地址https://www.oracle.com/cn/java/technologies/javase/javase-jdk8-downloads.html选择需要Oracle的用户才可以下载,下载完毕后运行,选择安装路径在后边注意安装目录,配置环境变量会用得着,基本无脑下一步即可配置环境变量在系统变量中查看是否有“classpath”变量,如果没有,则新建这个变量,变量名classpath 变量值 .;%JAVA_HOME%\lib; 注意,此变量值以英文句点符号

2021-06-02 11:13:44 102

原创 简单的配置nginx虚拟主机和秘钥脚本

公司业务的一项是给企业制作海外网站,而我的任务是加证书和添加个nginx虚拟主机的配置,虽然很简单但是老重复做这个活儿挺麻烦的,就写了个脚本减轻工作量。功能点:1、将证书放在cert目录下2、将虚拟主机配置文件编辑好放在vhost目录下#!/bin/bash#This shell used to xinrong haiwai project#Bailu 2021/5/14 first realeaseecho -e "\033[33m 请输入域名\033[0m"read -p"->"

2021-05-20 16:56:13 111

原创 跨域问题,以及nginx应对403 ACAO的处理办法

location / { proxy_pass http://127.0.0.1:8010; add_header 'Access-Control-Allow-Origin' '*'; add_header 'Access-Control-Allow-Credentials' 'true'; add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS'; a...

2021-05-08 16:52:50 1671

原创 定期清理日志相关

最近对日志清理做了些肤浅的研究,基本可以归纳为两个方式#第一种写法echo > 日志#第二种写法cat /dev/null > 日志这两种是比较好的,原因是可以立即释放磁盘资源echo “” > 日志 这种写法不推荐,因为会在首行留有一个空白行,虽然没啥影响,但是强迫症患者接受不能再说遇到的两个坑,第一个坑,正在被写入的文件,无论哪种方式都清不了,要么在他不写入的间隙清理,要么停掉服务再清日志,再有就是日志存储用 >> 叠加重定向写入比较容易清比如nohup

2021-04-23 16:36:45 99

原创 永久关闭 Windows 安全中心实时防护

讨厌的windows总是会把注册机之类误杀掉,很碍事,关闭之后下次重启又会自动开启,这里提供永久关闭的方法一、如果您使用的是专业版 Windows 10:按 “Windows 徽标键+R”,输入 “gpedit.msc” ,回车启动组策略编辑器。打开 “计算机配置”>“管理模板”>“Windows组件”>“Windows Defender 防病毒程序”,在右侧双击 “关闭Windows Defender 防病毒程序”,将状态改为“已启用”,重启电脑。二、如果您使用的是家庭版 Wind

2021-04-18 02:35:31 2852

原创 gitlab部署和代码库备份

一、安装gitlab安装依赖软件yum -y install policycoreutils openssh-server openssh-clients如果需要gitlab发信,可以安装postfix下载gitlab安装包,然后安装centos 6系统的下载地址:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6centos 7系统的下载地址:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/

2021-04-07 18:36:28 146

原创 一键发布脚本(含备份、发布、回滚等功能)

前言:最近写了个一键发布脚本,这个脚本改进了很多次,遇到了不少问题,放在这里的是最终版,供大家互相学习和提意见。一、项目架构很常见的双节点负载均衡架构预发布服务器IP:192.168.1.100后端节点服务器1:192.168.1.201后端节点服务器2:192.168.1.202上边部署了若干服务,脚本里是1个前端页面3个微服务二、预发布端脚本脚本是在预发布端执行,并通过ssh远程调用在节点服务器上的具体功能脚本,需提前做好预发布到节点服务器的免密mkdir /usr/local/sc

2021-04-07 14:52:05 459 3

原创 filebeat收集tomcat和nginx日志

一、介绍beats是ELK体系中新增的一个工具,它属于一个轻量的日志采集器,以上我们使用的日志采集工具是logstash,但是logstash占用的资源比较大,没有beats轻量,所以官方也推荐使用beats来作为日志采集工具。而且beats可扩展,支持自定义构建官方介绍:https://www.elastic.co/cn/products/beats二、架构从下往上看,filebeat作为收集日志的client端非常合适,因为他够轻量,然后将日志数据传给redis集群中,logstash再从re

2021-03-30 15:28:24 889

转载 logstash收集nginx日志

因为我的nginx日志是通过filebeat采集的,所以这里就借用大佬的文章,他的这两篇ELK的文章给了我很大帮助,以下是他的链接地址:https://blog.51cto.com/zero01/2082794和收集syslog一样,首先需要编辑配置文件,这一步在logstash服务器上完成:[root@data-node1 ~]# vim /etc/logstash/conf.d/nginx.conf # 增加如下内容input { file { # 指定一个文件作为输入源 pat

2021-03-29 20:38:36 487

原创 安装部署ELK (单ES节点,版本7.3.2)

一、安装es1)我是个懒人,所以选择rpm安装,一口气把ELK用的都下下来mkdir /source && cd /sourcewget https://artifacts.elastic.co/downloads/kibana/kibana-7.3.2-x86_64.rpmwget https://artifacts.elastic.co/downloads/logstash/logstash-7.3.2.rpmwget https://artifacts.elastic.co/

2021-03-29 20:18:55 522

原创 PHP升级7.3.8以及Openssh和curl的编译安装

前言,这是一个挺糟心的事儿,作者升级这玩意儿也是因为公司搞了个漏洞扫描说版本低,所以要升级解决,结果踩了一堆的坑,我心说你个内网服务器搞这形式主义有什么用?算了牢骚到此为止,下边上干货一、准备工作(各种库)安装依赖yum -y install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freet

2021-03-18 10:42:40 534

原创 NTP服务端和客户端的部署——Chrony

Chrony是一个开源的自由软件,它能保持系统时钟与时钟服务器(NTP)同步,让时间保持精确。它由两个程序组成:chronyd和chronyc:chronyd是一个后台运行的守护进程,用于调整内核中运行的系统时钟和时钟服务器同步。它确定计算机增减时间的比率,并对此进行补偿。chronyc提供了一个用户界面,用于监控性能并进行多样化的配置。它可以在chronyd实例控制的计算机上工作,也可以在一台不同的远程计算机上工作。chrony既可作时间服务器服务端,也可作客户端。根据我们实际情况需求,在内网部

2021-03-16 18:05:13 1214

转载 HTTP返回状态代码

当用户试图通过HTTP或FTP协议访问一台运行主机上的内容时,Web服务器返回一个表示该请求的状态的数字代码。该状态代码记录在服务器日志中,同时也可能在 Web 浏览器或 FTP客户端显示。也就是我们打开页面发生错误时浏览器显示的错误信息代码。状态代码可以指明具体请求是否已成功,还可以揭示请求失败的确切原因。HTTP协议状态码表示的意思主要分为五类 ,大体是 :1××  保留2××  表示请求成功地接收3××  为完成请求客户需进一步细化请求4××  客户错误5××  服务器错误1×× 消息

2021-03-11 22:55:42 78

原创 mysql冷迁移,物理迁移

最野蛮的物理迁移,直接copy磁盘的数据库目录,此方法需停服务1、在mysql中将需要备份的数据库进行加锁(并实现内存数据落盘),避免备份中出现写操作。MariaDB [(none)]> flush tables with read lock;2、进入linux的数据库保存目录,查看数据库文件是否存在,默认安装位置是/var/lib/mysql下。[root@localhost mysql]# cd /var/lib/mysql/test[root@localhost test]# ls

2021-03-11 22:50:29 989

原创 Zabbix监控WindowsServer进程

其实用了个很偷懒的方法,只监控服务是否存在,其是否未响应或者更详尽的健康状态是无法监控到的

2021-03-11 22:43:10 210

原创 Zabbix4.0自动发现配置

2021-03-11 22:26:43 115

原创 Zabbix4.0内存百分比告警

因为模板自带的告警是剩余余量告警,比较精准,但是碰到服务器配置不一的就不好整了,所以需要配置一个百分比告警

2021-03-11 22:23:00 263

原创 通过进程找到问题线程,打印相关输出

像JVM如果出了问题,就要通过java主进程找到问题线程,再把问题线程通过jstack将堆信息输出出来进行排错,通过以下流程来解决1.通过top命令找到CPU消耗(%CPU列)最高的进程, 并记住PID2.通过top -Hp PID 找到CPU消耗(%CPU列)最高的线程, 并记住线程TID通过printf “%xn” 十进制线程TID # 将十进制转成十六进制3.通过jstack PID | grep 十六进制TID -A 30例如:找到java主进程然后top -Hp 11632如果

2021-03-10 11:29:02 160

原创 zabbix监控jar微服务并实现自愈

其实监控jar微服务不需要借助JMX之类的插件,用自定义监控项就能解决了先说下思路,监控jar微服务无非就是通过4个方式1、进程是否存在2、端口是否存在3、url返回值是否是2004、log有没有oom字样废话少说,直接上干货一、zabbix_agentd.conf配置PidFile=/var/run/zabbix/zabbix_agentd.pidLogFile=/var/log/zabbix_agentd.logEnableRemoteCommands=1Server=zabbix

2021-03-04 10:52:15 2139 5

原创 Docker容器内服务如何实现自动启动

最近研究docker部署zabbix邮件告警,因为发邮件乱码问题把我恶心了一溜够,不过借此机会学到了一些docker的操作一、如何实现服务随容器启动时自动启动因为容器中如果没有前台程序在运行,容器会判断为无事可做而自杀,输入docker ps -a可以看到容器安静地躺在坟墓里,用docker start再让他诈尸他也会瞬间再次去世,那么要怎么做才能让容器坚挺的活在前台呢?在此用mysql举例保持流程运行有三种典型方法:1、使用service命令并在此之后附加非结束命令,如tail -FDocke

2021-03-01 18:37:52 1020 1

原创 zabbix4.0发送邮件告警

一、安装mailxmailx是centos下的一种处理邮件的工具。yum -y install mailx然后对mail.rc文件进行配置vim /etc/mail.rc在配置文件末尾添加如下内容,这里阿里云有坑,先说非阿里云服务器都添加哪些内容此处smtp-auth-password项不是邮箱密码,而是打开邮箱的pop3/smtp服务后提供的授权码QQ邮箱的获取方式是登陆QQ邮箱mail.qq.com,设置=>账户往下拉POP3/IMAP/SMTP/Exchange/CardDA

2021-02-22 18:44:27 409

转载 Nginx的Location匹配优先级

Nginx的配置文件中的Location用于匹配特定的URI,如果location后面的规则匹配了URI,并且匹配在此处 停止 向后匹配 ,则应用该location下面的规则,反之继续进行匹配,直到匹配到相应的规则或匹配到默认的规则。这篇文章单就location的定位进行讨论,其它的部分不进行解析。本文解决的问题:location为什么重要?location 相当于选择,选中。当我们处理某件事情,往往必须选中,然后再进行进一步的动作。比如处理word时,对某段文字应用字体,肯定是先选中,然后再应用规

2021-02-20 14:00:57 437

转载 正则表达式(括号)、[中括号]、{大括号}的区别

正则表达式的() [] {}有不同的意思。() 是为了提取匹配的字符串。表达式中有几个()就有几个相应的匹配字符串。(\s*)表示连续空格的字符串。[]是定义匹配的字符范围。比如 [a-zA-Z0-9] 表示相应位置的字符要匹配英文字符和数字。[\s*]表示空格或者*号。{}一般用来表示匹配的长度,比如 \s{3} 表示匹配三个空格,\s{1,3}表示匹配一到三个空格。(0-9) 匹配 '0-9′ 本身。 [0-9]* 匹配数字(注意后面有 *,可以为空)[0-9]+ 匹配数字(注意后面有 +,不

2021-02-20 13:52:04 114

原创 inotify+rsync持久化的脚本引发的插曲

今天从大佬的博客里嫖到一个很赞的脚本,先附上大佬博客:https://www.cnblogs.com/f-ck-need-u/p/7220193.html#!/bin/bashwatch_dir=/sourcepush_to=192.168.1.200# First to do is initial syncrsync -az --delete --exclude="*.swp" --exclude="*.swx" $watch_dir $push_to:/inotifywait -mrq

2021-02-19 18:05:25 62

原创 虚拟化技术KVM

一、KVM组成KVM由3部分构成从底层到表层分别是KVM,QEMU,Libvirt三部分组成二、KVM虚拟化平台部署yum install -y qemu-kvm libvirt-daemon libvirt-client libvirt-daemon-driver-qemusystemctl start libvirtd三、虚拟机的组成四、虚拟机控制常用命令 virsh五、磁盘制作(qemu命令)虚拟化需要手工配置的其实就3个部分,1、磁盘文件 2、后端盘镜像 3、虚拟机配

2021-02-13 01:49:31 1129

原创 KVM虚拟机自动和批量创建脚本

此脚本实现了靠传参数自动和批量创建KVM虚拟机功能#!/bin/bash#kvm-create shell,made by BaiLu,2021/2/7 first releaseread -p '请输入创建虚拟机的数量:' numberread -p '请输入虚拟机硬盘大小:' diskif [ $number -eq 1 ];then read -p '请输入虚拟机名称:' name qemu-img create -f qcow2 -b /var/lib/l

2021-02-07 06:23:36 477 2

空空如也

空空如也

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

TA关注的人

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