自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

漠效的博客

避免某些协议,暂时保密了

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

原创 警钟长鸣-合同问题

,大部分互联网公司都成了它的假想敌,但是本着来都来了的想法就签了,于是导致发表任何文件都有可能被弄,自此再也没有更新了。后来由于它被国外机构收购,为了避免政治问题,所有人重新签订了成了第三方,之后试探的问了一下人力,竞业和其他相关问题,才敢出来说几声,等哪天不在它那了再正常更新。在此用这个示例,告诫一下大家签合同的时候小心一点,不要因为”来都来了“和“过渡一下”等想法去签一个明摆着问题很大的合同,并且要注意一下合同的竞业公司和具体条款,当然约定的工资问题更不用专门说了。

2024-02-13 14:48:07 426

原创 你真的知道运维是干嘛的吗?

如果你是一个好奇的读者、或者是互联网相关的工作人员、或者你本身是一个从事于互联网的运维或IT人员本身,但是你自己真的知道运维具体是干嘛的吗?从我潜水各个运维和IT的微信群里多年观察到的现象来看,岗位虽然都是运维,但是技术栈、技能水平和工资待遇都是属于多样化的(水平,能力,工资的关联性也没有很强,其中的关联性既不一定是正向趋势,也不一定是负向趋势)并且日常的聊天和解惑中,能看出其中大多数的人是存在着明显的所谓知识的诅咒的现象,知见障,或者说存在局限性。

2023-05-06 17:02:20 3179 2

原创 传统架构和k8s架构:如何在实际应用中进行选择和搭配?

在如今的互联网时代,传统的架构和部署方式可能已经无法满足不断发展和创新的业务需求。为了更好地提高系统的可靠性、灵活性和可维护性,许多企业开始采用k8s这样的容器编排工具来进行应用程序的部署和管理。但是传统架构真的不可取吗?k8s的优势是哪些?在这篇文章中,我们会深入探讨传统架构和 k8s 架构之间的区别以及如何在实际应用中合理选择,帮助您更好的应对具体的需求。选了几个标题名,都很好,不忍舍弃,按照小说简介的写法,因此该文章别名又叫:探讨传统架构和 k8s 架构的优劣与取舍。

2023-04-17 11:58:23 2082

原创 GeoIP2:检验IP地址位置识别的实用性

GeoIP2是一种被广泛使用的IP地址定位技术,它可以根据用户的IP地址确定其所在的地理位置信息。无论是网络安全还是市场营销等领域,GeoIP2都是一个非常实用的工具。因为它易于使用,所以它经常被外贸等行业广泛应用。由于之前,我也有了相关的需求,也是开始测试各种定位相关的工具。这个工具的测试,是在我写通过API限制城市之前。为了避免忘记,我将记录下测试Geoip2的过程整理后,与大家分享。希望这篇文章可以对需要定位IP地址的读者有所帮助。从上面的演示场景中,应该可以看到Geoip2的基本用法。

2023-04-11 16:19:59 2638

原创 Nginx + Lua + API:实现精准城市级别的访问控制

在实际的 Web 项目中,有时需要根据客户端位置信息进行访问控制。例如,某些网站可能只允许特定省份或城市的用户访问,而其他地区的用户则无法访问。通常如果要限制地区,通常有如下几种限制方式:在代码层面进行处理,即通过代码判断客户端 IP 所在的省份或城市,然后根据判断结果进行访问控制访问控制逻辑需要集成到应用程序中,难以实现全局有效的访问控制每次请求都需要进行 IP 地址查询和解析,会增加服务器负担攻击者可以伪造 IP 地址等信息来规避访问控制。

2023-04-03 18:09:33 1308

原创 让Nginx飞:从调优配置到加速网站访问

实际上nginx优化通用的也就几项,网上的内容基本上也差不多,主要看文档新不新,老版本和新版本是否有差异。关于nginx的优化还是需要根据自己的业务的具体情况和所拥有的资源来进行相应配置的,由于工作人员不同,业务不同,所以基本上每个nginx配置都是独一无二的,即使有的看似相同,但也都存在微小的差异。就好像我们的很多项目虽然一开始都是部署的统一的nginx和相同的优化配置,但是后期都要根据具体业务再进行微调,所以说没有什么是最好的,只有最适合自己的。文中的优化策略,需要根据自己的需求添加。

2023-03-28 19:17:22 2556

原创 用sed、awk和grep处理文本数据:实际需求的有效解决方案

工作了好几年,也积攒了大量的脚本,有需求了改改旧脚本就可以了。对于以前没写过的脚本,比如想完成一个新需求,而某些参数可以满足的情况,网上搜索后,加上就行了,有什么困难的呢?所以对 “我” 个人来说,只有 “我” 有需要的参数对 “我” 才是有价值的,并且大多数的人实际上并不会用到除了常用的几个参数的其他功能,就是说很多功能它设计出来有,但是实际在大部分的生产环境中人们并不会用到。

2023-03-23 14:10:40 682

原创 nginx配置不缓存html

现在浏览器或者系统访问网页都会有自己的一套缓存机制,这就可能会导致前端代码已经更新了,但是用户还是访问了之前的缓存。这里介绍下用nginx处理这个问题的方法,这里配置html和htm文件不缓存server {listen 80;server_name test.exmaple.cn; location / { if ($request_filename ~* .*\.(?:htm|html)$) ## 配置页面不缓存html和htm结尾的文件

2023-03-17 10:16:19 3181

原创 CDN加速下如何识别和限制访问来源

处理真实IP

2023-03-12 22:45:34 762

原创 掌握shell编程中的细节:轻松应对可能出现的考点(括号篇)

简述各种括号的功能

2023-03-11 17:29:29 164

原创 掌握shell编程中的细节:轻松应对可能出现的考点(重定向篇)

https://blog.csdn.net/GX_1_11_real/article/details/100171155

2023-03-10 10:17:59 110

原创 掌握shell编程中的细节:轻松应对可能出现的考点($篇)

当你面试的时候,可能要说的架构什么都准备好了,也说的七七八八,结果到最后问了一些基础的问题答不上来或者没想起来就很容易造成社会性死亡,一个没答上来,后面就更容易懵逼了通常造成这个问题的原因是写脚本的频率和方法,也许对于一个常年工作的人,写脚本的频率是几月写一次,相似的场景复用旧脚本修改,时间长了不注意有的基础就忘了,但是面试的时候面试人员可能近期有写脚本或者随手一搜shell基础或者随口一提所以预计分几篇对这些不注意但重要的基础知识进行汇总,这篇文章主要总结了$的相关含义以及具体的应用场景。

2023-03-09 19:34:01 484

原创 Chatgpt的有趣问答

??

2023-02-06 21:55:30 4228

原创 CKA考试Tips

今年黑五的双证套餐的折扣比双11时还便宜个200多,不到2000,应该是史低吧,反正比前年低。即使考试前看了各种避坑技巧,虽然通过了但是结果还是因为各种问题导致时间没做完扣分,于是下面总结一下参加CKA/CKS考试时候的技巧。

2022-12-11 13:06:17 2591 5

原创 记一次Metrics-server异常

前几天测试环境k8s集群做etcd的备份恢复。所有的pod都起来了,包括metrics-server的状态也是Running,部署新pod也没有异常,结果kubectl top 请求的时候报错了。

2022-12-09 14:55:54 1733

原创 Iptables封禁IP,记录地址

前段时间开了台国外的vps,以前机房的物理防火墙有十年网工大佬维护,我们对外访问的nginx上就没遇到过这种攻击,毕竟有问题的IP全被防火墙那层直接拦截了,而我这通过安全组把其中2个web端口放开了所有网段,而nginx再限制网段,导致他们可以扫描和攻击,但返回的只能是400 403于是干脆封禁并记录一下异常IP,看看几个月后显示哪个国家的攻击多,有时间再把这些攻击的类型和占比总结一下ps:可能有人问为什么web不加个waf,不配合lua或者其他安全配置,显示攻击类型和来源为什么不搭建一个蜜罐呢?

2022-12-03 17:56:40 746

原创 Nginx配置HTTPS跳转到非443端口的技巧和注意事项

近一段时间由于看到云服务厂商vultr有活动,就注册并开了台国外云服务器,试一下国外云服务器厂商和国内有什么区别。(“充10美元送30天内有效的250美元的免费额度,意思是30天内在 你加起来 不超出250美元的 服务随便开,但是注意的是30天后这就不免费了,记得及时关闭。只支持paypal,而阿里alipay一般是充值没活动的”)于是开始各种尝试,偶尔一次搭建服务往国内下载镜像等文件,由于443端口并发较高,流量大,下载时间长,导致的国内把443端口给封闭了,国外其他地区访问正常。

2022-11-30 16:49:21 9623

原创 深入剖析Nginx日志:常用分析技巧汇总

前言本来只是想写一篇Nginx日志的常用统计分析命令填充一下线上文档,虽然有点用但是觉得光写命令,文档太水了于是就顺便总结一下,在nginx或web服务中,需要有哪些进行分析的内容以及为什么有这些需求ps:统计命令的原因 在于不是每个公司或web所在的服务器上都有配置elk或其他开源日志分析工具的,而且即使有工具有时也不能筛出自己想要的内容日志格式无论进行哪种日志的分析,首先要注意日志输出的格式,不要网上的拿来就直接用以nginx来说,默认情况下没有特殊需求的,日志的配置如下:

2022-05-25 16:55:09 1706 1

原创 高效使用Jenkins:同时上线多个项目的实践

前言如果是初学者或公司上线的项目少节奏慢时,大多数的工作人员都是部署和使用一个jenkins,满足要求即可。但是当你所在的公司有很多的上线服务(例如springboot等微服务架构的服务)或者很多的分站,短时间内要求进行大量上线,如果你要是还简单的使用一个jenkins,就会出现忙不过来的问题.同一台jenkins上进行的服务过多,还会导致服务器负载过高,拖慢上线速度或超时导致上线失败。于是,我们要想办法加大jenkins的并发工作。下面介绍一些很实用的操作,Jenkins怎么加快工作/发布效率?

2022-05-24 13:20:42 3692

原创 Jenkins Pipeline实现持续集成:详解步骤和技巧

前言最近不知道写点,想着补充一下自己的以前的文档,有时间就补充一下jenkins,nginx。。。以前个人总结的jenkins文档:https://blog.csdn.net/gx_1_11_real/category_9186060.htmlJenkins官方文档:https://www.jenkins.io/zh/doc/book/pipeline/下面介绍一下Jenkins Pipeline的基本用法由于内容较多,为了讲解编辑了大量的补充性的内容,建议首次看的可以不看补充内容Pi

2022-04-23 22:01:47 2975 1

原创 使用Python实现目录及文件结构的可视化展示:HTML页面生成

将当前的目录及其下面的文件依据文件位置生成html便于访问

2022-04-16 16:27:13 421

原创 优化文件/软件管理流程:搭建高效的管理服务器实践

前言由于要使运维工作更加的规范,于是要对一些操作进行统一和调整例如一些软件的安装包(tar.gz zip rpm Centos镜像),对这些文件按版本进行整理,可以做一个类似镜像网站首先最低满足以下需求:<1>要对日常或工作中需要的软件的安装包的存放位置,上传下载方式进行统一,使其不在散乱上传通过个人jumpserver账号 下载通过wget<2>在不同的局域网或网络环境下,凡是可以访问公网的,都可以使用这边提供的域名或url进行下载,避免某些环境软件的时候还得

2022-04-14 22:05:40 3832

原创 Mysqld_exporter部署及常见的几种错误

前言由于近期某个同事部署这prometheus的监控mysql的组件的时候,出现了一个没见过的报错,刚好有时间就写一下。mysqld_exporter的部署数据库授权需要一个账号对数据库进行查询,所以必须去监控的数据库中授权用户和密码随意CREATE USER 'exporter'@'localhost' IDENTIFIED BY 'expoter12Ssdc3' WITH MAX_USER_CONNECTIONS 3; GRANT PROCESS, REPLICATION

2022-04-09 16:05:14 12339

原创 等保sudo权限配置

前言由于近期协助等保,研究了一下Centos的权限配置,又有一些新的理解,于是写一篇文档对之前的安全设置进行补充by:之前写一半的老存稿,没什么可修改的,先发再说。。su可进行任何身份的切换,常用的操作如下,其他参数实际并不常用 su - 代表使用 login-shell 的变量文件读取方式来登陆系统 如果没有加用户名,则代表切换为 root 的身份 如果没有加-,直接加用户名,则代表了读取的变量方式为 non-login shell

2022-02-28 19:47:11 1957

原创 CentOS系统中修改root用户名后如何修复sudo命令不能使用问题

前言为了增强的系统的安全性,有时候我们会增加一些安全配置,但是又时候有些配置真的没必要,并且比较危险。登陆过程输入账号密码后,系统会先在/etc/passwd文件内核对输入的账号,如果有就读取账号对应的UID、GID,家目录、shell设置然后查找/etc/shadow中对应账号、UID,并核对输入的密码正确则进入login shell,读取/etc/profile的配置,执行/.bash_profile、/.bashrc、/etc/bashrc由此可知,我们可以通过修改/etc

2022-02-21 16:47:20 2341

原创 MySQL密码正确却无法登录

前言有这么一种情况,你设置了一个账号,一个密码。目的是为了限制用户使用这个账号进行登录,查询指定库 或者 通过这个账号做一个主从。你很确认你的密码是什么,甚至是刚刚设置完,但是你始终无法通过这个密码进行登录。问题原因数据库是否正常启动是否指定ip,端口,socket对登录mysql的安全限制mysql授权问题(常见问题)解决方法<1>如果数据库正常启动,root等账号,是否可本地登录和远程登录本地都登录不进去,查看日志是否报错,可跳过密码进入数据库,

2021-11-15 16:43:28 7199

原创 (Cobbler)分区问题及解决2

前言第一篇https://blog.csdn.net/GX_1_11_real/article/details/103766100接着上一篇,下面介绍的是Cobbler的ks文件 在磁盘16T以上 时 分区及格式化异常的解决方法。【1】分区当我们的服务器的磁盘容量大于16TB时(例如:12个4T的硬盘,组raid5)由于ext4文件系统,默认32位只能支持16T,只有修改配置后启用64位模式,才能支持16T以上。因此在ks使用ext4时,Linux操作系统安装过程中,我们并不能对16T

2021-11-12 15:47:42 876

原创 Openresty新添加模块

前言前几天,前端提出了个需求,线上web服务器开启gzip模块。节约网站出口带宽,加快数据传输效率,提升用户体验。由于使用的Openresty和nginx还有点差别,下面记录一下过程。Openresty同nginx一样,增加模块需要重新编译Openresty添加模块<1>安装依赖包yum install -y gcc gcc-c++ zlib-devel pcre-devel openssl-devel readline-devel如果是在其他环境新部署一个open

2021-11-03 17:09:59 4692 5

原创 LDAP应用:OpenLDAP集成到Open***

有些字段不能出现,就省略了。可尝试访问下列链接https://blog.csdn.net/GX_1_11_real/article/details/120993422

2021-10-27 15:18:55 120

原创 LDAP应用:OpenLDAP集成到Jumpserver

前言由于最近处理了一个jumpserver问题,刚好想起填一下openldap的坑.Jumpserver是国内流行的开源堡垒机,被很多公司在使用.从2018年的0.5.0版,截至到现在已经出到2.14.2了,功能是越来越强大,部署和迁移也越来越便捷,并且它也提供了 LDAP 的用户认证方式.因此我们可以连接LDAP,使LDAP的用户,使用统一的账号和密码,登录Jumpserver Web页面和终端(COCO) 的用户认证,再使用Jumpserver 创建的系统用户,跳到目标主机系统用户是 J

2021-10-27 12:17:29 923

原创 Prometheus打开缓慢问题解决方案:避免Too many open files错误

前言某天当prometheus添加到大致2500个指标(Targets)时,prometheus开始出现了打开缓慢,偶尔会挂掉的现象.于是进行了一些调优.在prometheus中一 单个进程打开文件句柄数过多ulimit中的nofile表示单进程可以打开的最大文件句柄数,可以通过ulimit -a查看,子进程默认继承父进程的限制(注意,是继承,不是共享,子进程和父进程打开的文件句柄数是单独算的)。网上还有一种解读是nofile表示单用户可以打开的文件句柄数,因为他们在limit.conf

2021-10-14 15:38:27 3142

原创 ansible-playbook推送时常见的几种错误以及解决方法(Linux)

前言由于要推送的目标服务器,系统的不统一和初始化环境的不统一,导致使用ansible-playbook推送的时候遇到了一些问题,于是对一些常见报错进行总结.目标服务器目录不存在报错如下:FAILED! => {"changed": false, "msg": "dest '/xxx/xxx/' must be an existing dir"上面的报错告知目标服务器不存在该目录,你需要去目标服务器去创建.通常出现此问题的原因为你要推送的目录不是服务器自带的,而是自行创建的,在

2021-09-27 17:32:36 7946

原创 Linux 启动时,出现give root password for maintenance处理方法

报错某天由于openstack资源不足,导致了宿主机杀死了上面的部分虚拟机.刚好杀死了nginx和监控各微服务存活的一个服务.导致了整个平台大部分对外服务的访问异常. 大部分服务由于配置了开机自启,重启虚拟机后就恢复了.没配置的只能手动起. 在重启某虚拟机的时候,出现了如下问题,提示GIVE root password for maintenance,输入密码并进入后,重启网卡或reboot仍退到此报错问题原因/etc/fstab文件挂载的分区异常或不正确关机及其他原因导致的分区受损常见

2021-09-24 16:45:28 10281 8

原创 K8s关于异常Pod的处理

前言某天开发人员开发环境发布失败,于是找到了这边处理一下.过程<1>发布环境是Centos系统的k8s测试集群,从jenkins上看编译正常,编译后镜像正常,结果在启动和注册时候一直不成功直到超时发布失败.<2>服务器上进行查看,发现pod状态为Pending(该状态通常是调度异常,通常是k8s 的node资源不足)kubectl get pod -n <namespace> |grep 项目名称kubectl get pod -n <nam

2021-09-13 16:55:43 1350

原创 Error from server (BadRequest): a container name must be specified for pod

报错之前查看pod的日志使用 kubectl logs -f <POD-name> -n <nameSpace> 该命令可正常看到日志.某天使用该命令查看状态未runnning的pod,居然产生了报错.Error from server (BadRequest): a container name must be specified for pod xxx ,choose one of:[xxx xxx]报错原因及处理原因:本来一个pod使用了一个容器,当使

2021-09-04 15:40:57 19350

原创 Prometheus监控DELL服务器硬件

前言注意标题说的监控dell服务器硬件,指的是监控服务器硬件的状态(磁盘,内存,电源等的状态),不是指监控硬件性能,磁盘的空间,内存等的使用量.而是类似于zabbix监控idrac的snmp获取硬件状态.现在大部分公司是使用prometheus监控容器和服务,zabbix监控硬件,端口,当然还有其他监控架构.这里就不对比各个监控的优劣了.仅仅是做一篇文档.前提条件<1>各个需要监控的服务器开启idrac的snmp,并设置团体名,类似于密码(默认是public)注意自己设置的

2021-09-03 16:35:50 6965 3

原创 Docker 修改容器默认存储位置

前言通常情况下docker默认的数据存储目录是/var/lib/docker,这是相对危险的。当/空间本来就很小,使用docker使它将根下的空间用尽,然后导致服务问题。因此当使用kubernets或其他基于docker的服务时,需要修改容器默认的存储位置到磁盘空间分配较大的目录中.<1>查看docker当前root目录docker info |grep -i root<2>停止docker服务systemctl stop docker<3&g

2021-08-29 16:41:13 1101 2

原创 Centos7配置Squid代理服务器(用户认证+限制对部分网站的访问)

前言由于要在某台内网服务器上做一个简易的爬虫,添加一些功能。但是该内网服务器使用的dns为专门配置的内网dns,且运行nginx做代理,不适宜调整dns,只能调整脚本,使执行脚本时通过代理的网络。于是查看了一下Squid文档,找一台配置了外网dns的虚拟机,搭建了一个简易的代理,满足了基本的使用需求。下面是记录的是配置Squid的文档。老草稿发出来算了。Squid介绍Squid是一个高性能的代理缓存服务器,Squid支持FTP、gopher和HTTP协议。当用户指定它为代理服务器,且用户的

2021-08-25 16:02:01 4336

原创 前端项目编译失败的原因及解决方案1

前言突然想简单记录一下,前端项目npm编译失败/上线失败的处理方法。某天jenkins上线失败,前端反馈测试环境直接部署前端项目的时候,提示部署失败。Finished: UNSTABLE<1>开发提供了报错 { parser: “babylon” } is deprecated; we now treat it as { parser: "babel“} , 怀疑是此报错导致的编译异常。然而这个不是报错,是需要将babylon 换成babel即可找到modules包里面的:

2021-08-24 12:32:32 1370

原创 mysql的源码安装(5.7.33版)

前言以前记录了5.5.32的源码安装,这个版本虽老但仍有大部分公司使用,稳定并且没需求一般不会升级。实际上5.6 5.7是现在比较常用的版本,如果要配置apollo等服务必须使用5.6及其以上版本。下面记录的是mysql的源码安装,及其排错。示例环境:centos7.6mysql版本:5.7.33【1】依赖包安装yum -y install perl perl-devel autoconf gcc gcc-c++ pcre pcre-devel openssl open

2021-08-19 11:53:25 1219

空空如也

空空如也

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

TA关注的人

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