- 博客(48)
- 收藏
- 关注
原创 LDAP统一认证大集合(10+)
必须安装的插件:ldap Role-based Authorization Strategy。1.LDAP集成是一个很好用的单点登录工具,运维不需要进行二次开发即可使用,节约工资人力成本。1.公司有LDAP做统计认证的需求,方式各个中间件重复来创建账号。2.Frostmourne(部署在k8s中)2.避免运维重复创建账号和权限管控问题。3.网上没有比较全的集成LDAP的文档。2.方便离职后统一管理账号。11.YAPI接口平台。二.LDAP安装部署。
2024-01-27 14:31:23
1221
原创 Java 排查最占cpu的线程
1.背景:某个pod容器一直占用cpu比较高,需要找出哪些线程使用的。2.使用工具:arthas3.过程curl -O https://arthas.aliyun.com/arthas-boot.jarjava -jar arthas-boot.jar 选1thread -n 10 #cpu最繁忙的10个线程4.打印的日志[arthas@1]$ trace com.yinta.service.yintadata.impl.InventoryServiceImpl findInventoryP
2023-12-07 10:47:45
377
翻译 Pod 常见错误及故障排查
pod的几种状态:1)Pending:Pod创建已经提交给k8s,但是因为某种原因不能顺利创建,例如下载镜像慢,调度不成功等。2)Running:Pod已经绑定到一个节点上了,并且已经创建了所有容器。只是有一个容器正在运行,或者在启动中。3)Secceeded:Pod中的所有容器都已经成功终止,不能重新启动。4)Failed: Pod中所有的容器均已经终止,且至少有一个容器已经在故障中终止。5)Unkown:由于某中原因apiserver无法获取到Pod的状态。通常是由于Master与pod所在的
2021-08-19 10:58:13
4115
原创 Ansible 优化执行效率的建议
背景以前在公司工作处理服务器问题,需要用批量操作都是用shell脚本编写的工具,后来发现Ansible这个自动化工具,安装简单,操作起来很方便,支持多个模块,由python开发基于SSH协议通信的工具。这里有个问题就是如果服务器越来越多,Ansibe执行效率会变得比较慢,可以通过优化Ansible提供工作效率,具体优化的方法如下:线上管理机器:操作系统Linux,cpu为4核,内存8G,用这个机器管理上千台Linux服务器都没有太大压力。1.修改ansible的并发数Ansible默认只会创建5个进
2021-07-23 16:34:45
3252
1
原创 python精确统计Gitlab统计代码的贡献量指标【作为开发KPI参考没毛病.....】
一.需求分析与解决思路**1.需求:** 需求是公司大领导想要了解每月研发提交的代码量,虽然本人也认为代码量不代表质量。可是现实总是如此的无奈,用量来衡量质量如此不可取的方法只会导致更加内卷。 **2.解决思路:** 工具: Gitstats :仓库代码统计工具之一,可以按git提交人、提交次数、修改文件数、代码行数、注释量在时间维度上进行统计,亦可按各文件类型进行简单的统计,非常方便,适合小团队代码统计分析。 当然还有其他优秀仓库代码统计工具,个人觉得不太友好的地方是需要c
2021-07-01 15:54:19
5398
14
原创 对Mysql大表进行记录数、数据容量、索引容量进行统计排序
1.需求:需要请示查询数据库的大表情况,以便进行拆分表2.方案:a. 云商的DBA 表空间分析 b.自己写sql查询【这里以自己动手写为案例】3.思路:查询出排名前15的数据库表的行数,数据容量,索引容量4.代码部分# -*- coding: utf-8 -*-# Author: jmmeifrom email.header import Headerfrom email.mime.text import MIMETextfrom email.mime.multipart import
2021-05-18 10:58:03
483
原创 Saltstack 从入门到使用实战
1.saltstack安装配置及测试一.安装部署1.Master端: yum install https://repo.saltstack.com/yum/redhat/salt-repo-latest.el7.noarch.rpm yum clean expire-cache && yum update -y yum -y install salt-master && yum -y install salt-minion systemctl start sa
2021-05-12 21:20:14
1160
原创 Elasticsearch集群索引生命周期管理
一.需求:数据量每天几TB甚至几十TB的增长时,索引的生命周期管理显得尤为重要。Elasticsearch7.0以上已经内置了过期策略,这里不再赘述,这里以Elasticsearch6.x版本为例进行配置和使用。二.方案:1.工具 :Elasticsearch索引管理利器——Curator 1):Github地址:https://github.com/elastic/curator 2):使用版本注意: 6.X ES使用 curator 5; 5.X ES可以使用curator5 或者
2021-04-22 15:05:57
631
原创 实战Apollo开源分布式配置中心部署与升级篇
0.Apollo架构说明本次部署环境为DEV 开发 FAT 测试01 KANGTEST 测试02 UAT 预生产 PROD 生产上图文字版:环境 服务器 服务 端口DEV 192.168.1.169 Apollo-configserviceApollo-adminservice 80808090FAT 192.168.1.169 Apollo-configserviceApollo-adminservice 80818091KANGTEST 192.168.1.169 Apo
2021-02-27 16:43:05
1280
原创 Zabbix 和 Grafana 监控Elasticsearch集群相关指标
1.需求:需要监控elasticsearch集群的需求,以便告警使用。2.说明:zabbix 采用shell脚本监控相关指标,Grafana使用模板监控集群状态看板。3.zabbix监控指标及脚本cluster_namestatustimed_outnumber_nodesdata_nodesactive_primary_shardsactive_shardsrelocating_shardsinitializing_shardsunassigned_shards其他指标请查看官方
2021-01-20 18:25:13
618
原创 将华为云/阿里云 RDS相关监控指标集成到Zabbix/Grafana中
一.需求分析1.监控需求:将云厂商的RDS数据库监控指标集成到自己公司的监控系统中2.集成方法:调用厂商提供的API接口3.华为云/阿里云RDS的监控指标异同##注意:调用接口有如下两种认证方式,您可以选择其中一种进行认证鉴权。Token认证:通过Token认证通用请求。AK/SK认证:通过AK(Access Key ID)/SK(Secret Access Key)加密调用请求。推荐使用AK/SK认证,其安全性比Token认证要高。【文章采用该方式演示】二.华为云RDS监控1.支持的
2021-01-04 15:07:28
2145
原创 Jenkins之 批量添加用户到指定视图下所有job的相关权限
1.需求:添加用户权限要耗费大量时间还没有成效,于是想着利用Jenkins API进行批量添加用户权限。2.局限:仅适用于新添加,不适用于修改更新已有权限。3.代码如下:#!/usr/bin/python3# -*- coding: utf-8 -*-# @Time : 2020/11/16# @Author : jmmei# @Email : meijinmeng@126.com# @File : Jenkins_api.py# @Software: PyCharm#
2020-11-16 15:24:41
1123
原创 prometheus+grafana 监控单节点Mysql
需求:可视化更好点的Mysql监控1.下载 mysql exporter和mysql展示模版 //下载地址:https://github.com/prometheus/mysqld_exporter/releases# ls mysqld_exporter-0.11.0.linux-amd64.tar.gz mysqld_exporter-0.11.0.linux-amd64.tar.gz# tar xvf mysqld_exporter-0.11.0.linux...
2020-08-14 15:39:57
219
原创 zabbix 监控单机版Rabbitmq
一.监控思路与方法 1.使用Rabbitmq管理和监控 2.使用Rabbitmq Management插件来监控和管理 3.自己动手编写shell脚本来监控需要的Rabbitmq 的指标 4.使用Rabbitmq 监控模版,找到自己需要的监控指标即可二.重要指标确认 Queued messages Total=Ready + Unacked 队列消息的状态情况 QueueMQ sockets 使用socket个数,最大...
2020-08-08 18:59:41
611
原创 Jeager+cat+ELK 快速构建分布式调用链跟踪系统
1.组件介绍 因为Jaeger 目前使用大公司较少,文档也比较少所以整理出来以供大家参考,如有更好的方式欢迎交流,这里主要以追踪Java的链路为介绍对象。 CAT 由大众点评开发的,基于 Java 的实时应用监控平台,包括实时应用监控,业务监控。 Jaeger是Uber推出的一款调用链追踪系统,类似于Zipkin和Dapper,为微服务调用追踪而生。 其主要用于多个服务调用过程追踪分析,图形化服务调用轨迹,便于快速准确定位问题。 ELK 成熟的日志系统,这里采用filebaet---->log
2020-07-24 17:30:23
2051
2
原创 CSA模拟考试题目及解答方法
1.重置系统密码和配置网络题目:1.重置系统密码重启系统后进入grub页面按e,出现上图,在linux16末尾utf8后面空一个,然后写入rd.break然后按ctrl+xmount -o remount,rw /sysroot/chroot /sysroot/echo rrhh9708|passwd --stdin roottouch /.autorelabelexite...
2020-07-23 15:05:35
1987
原创 CE模拟练习题及解答
标题1.设置Selinux方法:vi /etc/selinux/config修改为enforcing即可2.配置防火墙方法:查看防火墙帮助的命令【system1 system2】man firewalld.richlanguagefirewall-cmd --permanent --add-rich-rule=‘rule family=“ipv4” source addre...
2020-07-23 15:05:09
1597
原创 Python 统计Zabbix监控告警表报统计
一.需求与分析 1.需要每周分析下系统告警汇总信息,加图表展示。 2.思路:调用zabbix api 获取,查询zabbix数据库的alters表来获取。二.实现方法 1.核心部分是查询数据库提取告警次数,告警级别 坑就是很多网上发的sql是无法准确或者无法提取告警级别,告警次数的。 select from_unixtime(clock,'%Y-%m-%d') as time, count(DISTINCT eventid...
2020-07-22 17:17:33
2044
2
原创 Python 一键巡检服务器资源使用率
一.分析需求与解决方案1.需要:定期的去统计所有主机的cpu mem disk的使用率。2.思路方案:1):安装云商的agent,调用api统计。 2):方案是接入自己的监控,查询数据库或者zabbix api统计。 3):通过ansible批量执行脚本来统计。3.这里使用简单快速的方式,直接查询zabbix数据库的统计趋势值来统计。且windows和Linux的监控指标有个别参数不太一样,所以区分2个脚本,后面...
2020-07-21 11:59:19
1307
原创 Python 监控接口响应时间和返回码
1.需求:监控一些比较重要的接口,如果状态异常或者响应时间过长,告警发邮件或者钉钉。2.使用模块 python3 requets3.代码分享import requestsimport jsonfrom email.mime.text import MIMETextfrom email.mime.multipart import MIMEMultipartimport smtplibimport timeclass SendMail(object): def __init
2020-05-14 22:46:32
1727
原创 Python之操作Jenkins 实现批量复制和批量添加Job到新的视图
1.需求:新增一套环境的时候,几十个Job如何快速复用到另外一个视图中?2.实现思路:批量复制Job,并批量把新建Job加入到新的视图中。3.批量创建job #-*- coding: utf-8 -*-import jenkins#正式使用jenkinsjenkins_server_url='http://myjenkins.com:port'api_token="xxxxxx...
2020-01-10 11:36:26
2025
1
原创 Jekenins之发布后台微服务到自建k8s集群和云容器引擎(1)
1.前提.有独立的Jenkins 服务器。.有独立的k8s集群节点,并且已经部署好镜像私库registry或者Harbor。.代码已经改造为微服务并支持容器。.最好有注册中心eureka/apollo等。.将前端gateway 域名的后端地址改为容器的nodepod开放的地址。#这样就可以不改动原来前端调用的情况下,后台和前端的网关调用地址不变,只需要更改后端就可以实现后...
2020-01-09 16:40:43
641
原创 shell 之统计ES 索引的error日志数量
1.需求:需要大屏展示每个应用的错误日志,以供开发其错误排行榜…2.思路:Linux命令调用es的api 进行查询。3.脚本如下:#!/bin/bashfunction webmanager {count=`curl -sH "Content-Type: application/json" -XGET 'http://192.168.1.155:9200/webmanager*/_s...
2020-01-09 13:15:32
895
原创 Redis Cluster集群部署-故障模拟-监控
一.基础环境1):准备系统:Centos7.x Ansible2):准备主机:192.168.1.115 redis01192.168.1.192 redis02192.168.1.23 redis03192.168.1.47 redis04192.168.1.65 redis05192.168.1.14 redis063):软件存放目录:/applica...
2020-01-08 16:03:40
893
原创 实战 Zabbix 与 Jenkins 语音合成与播报功能
1.准备**讯飞开发者账号。****讯飞语音合成Linux sdk,会一点C语言或者找会C的开发,目前不能超过2048超过需要增加逻辑并做容错机制。**Zabbix 整理告警等级,并定时将ERROR级别的告警信息输出到指定文件。Jenkins整理输出信息到指定文件。2.云上合成语音1):sdk 语音合成基础代码部分注意:SDK中–>samples/tts_sample/...
2020-01-08 15:13:59
477
1
原创 Jenkins之IOS xcode-fastlane打包上传蒲公英或者Appstore
1.基础准备蒲公英账号Apple开发者账号Ruby/brewMAC系统更新到最新Xcode与开发保持一致10.1rvm 来下载Fatalane 2.12.x以上Jenkins 2.150.1蒲公英插件pgyer(可以安装,也可直接用蒲公英Linux命令上传)Brew 来下载 cocoPod Sed要更换为gnu版本,最新的可能命令为gsed修改gem源为国内https://...
2020-01-08 11:05:12
1005
原创 Jenkins之安卓打包-加固-上传蒲公英
1.基础环境Android SDK r24(项目未设置NDK)gradle 4.1-6.4(打包工具)360加固账号蒲公英账号Jenkins已经部署安装好2.配置编译打包步骤注意:这里主要是修改build.gradle 配置和添加local.properties 文件到代码中,具体是根据项目情况来决定脚本: ```bash #修改build.gradle配置和添加local.p...
2020-01-07 21:43:15
1219
原创 ELK使用及elastalert告警设置配置实战
1.系统部署 **1):部署过程略...** #readme ```bash 1.问题:ERROR: bootstrap checks failed max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536] max number...
2020-01-07 17:01:07
2240
1
原创 Sonarqube代码测试与Jenkins集成使用
1.需要软件Sonarqub6.5 Sonar-scannerJenkins( Java8+ , maven, 如果用到安卓还需要集成gradle)2.配置安装**(1).Sonarqub6.5需要mysql的jdbc**所以需要一个本地或者远程的sonarqub的数据库,配置在conf下的sonar.properties如下:sonar.jdbc.username=sonar...
2020-01-07 15:42:08
1389
原创 python 查询数据库并将结果以EXCEL附件 ---批量发送给邮箱
1.需求:产品经常需要我们部门导出数据,以供他查看。2.实际:只是一些重复性的操作,写一个脚本导出批量发送即可。3.记录状态,并监控。1):python:代码# -*- coding: utf-8 -*-# Author: hkeyfrom email.header import Headerfrom email.mime.text import MIMETextfrom emai...
2019-12-13 14:48:07
1162
原创 shell 之批量导出key-value和删除指定key
1.需求:导出redis 指定key-value值和删除指定key.2.思路:使用redis 的get/delete 结合shell的for循环进行。3.脚本如下:#!/bin/bash#1.exportredis-cli -a passwd -h 192.168.1.113 --scan --pattern "GM*">/tmp/redis.logfor line in ...
2019-12-04 21:13:30
678
原创 shell 之Jenkins相关脚本 ---持续更新中
1.统计一周内应用发版次数#!/bin/bashjob_name=$1 #job名称JENKINS_HOME=/var/lib/jenkinsjob_num=$(find ${JENKINS_HOME}/jobs/${job_name}/builds/* -type d -mtime -7|wc -l)echo ${job_num}2.jenkins发版后自动合并所发分支到...
2019-12-04 00:04:34
287
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅