Docker 容器内分析 java程序占用 cpu 高问题排查分析

```bash 作者: 张首富 时间:2021-07-08 wx: y18163201 ``` ## 背景描述 我们目前所有的 java 服务都是封装在 docker 里面的,今天做压力容量测试的时候发现有个服务占用`cpu 300%`,想找到是这个 java 程序的那个线程造成的问题,把问题反馈给开发让他们去修复。 下面所使用的容器镜像都是通过:[Docker容器内执行 jvm 分析工具命令

原创 点赞0 阅读7617 收藏0 评论0 24 天前

Docker容器内执行 jvm 分析工具命令

```bash 作者: 张首富 时间: 2021-02-01 微信: y18163201 ``` ## 前言 目前我们公司使用的基本上都是java开发的后端,本文详细的介绍了公司java程序docker 包构建的演变过程,这里面不对java包本身的构建做过多的赘述。 ## docker 镜像的演变过程 最初的时候我们只想着给java包怎么放到docker 镜像中,我们使用了如下的Docke

原创 点赞0 阅读7681 收藏0 评论0 24 天前

kubernetes之资源限制,请求

# kubernetes之资源限制,请求 ## kubernetes可以使用LimitRange 对资源进行默认限制 先创建一个命令空间,我们在命名空间里面指定资源限制 ```yaml # cat limit-namespaces.yaml apiVersion: v1 kind: Namespace metadata: name: limit-namespace ``` 创建命名空间

原创 点赞0 阅读10000+ 收藏0 评论0 2021-07-01

Docker cp 提示“no space left on device”

Dockercp提示“nospaceleftondevice”作者:张首富时间:2021-05-24wx:y18163201前言此篇文章记录的并不是磁盘空间不足。问题描述今天在测试一个功能,需要频繁的替换一个docker容器内的一个文件,因为还处在测试阶段,所以我就没有频繁的构建docker镜像了;在前几次执行dockercp命令的时候都能正常的操作。突然再次执行dockercp命令时提示如下报错

原创 点赞0 阅读10000+ 收藏0 评论0 2021-05-24

磁盘

磁盘作者:张首富时间:2021-05-24wx:y18163201什么是磁盘?磁盘(disk)是指利用磁记录技术存储数据的存储器.磁盘是计算机主要的存储介质,可以存储大量的二进制数据,并且断电后也能保持数据不丢失。早期计算机使用的磁盘是软磁盘(FloppyDisk,简称软盘),如今常用的磁盘是硬磁盘(Harddisk,简称硬盘)。--摘自百度百科。磁盘的发展历程时间发展内容1956年IBM的IBM

原创 推荐 点赞0 阅读10000+ 收藏0 评论0 2021-05-24

ansible 初始化系统分区格式化

ansible初始化系统分区格式化作者:张首富时间:2021-05-13wx:y18163201创建分区并进行格式化tasks:-name:'未分区磁盘'parted:device=/dev/{{item.key}}number=1state=presentwhen:notitem.value.partitionsregister:statuswith_dict:"{{ansible_device

原创 点赞0 阅读10000+ 收藏0 评论0 2021-05-13

ansible 对文件内容的操作

ansible对文件内容的操作作者:张首富时间:2021-05-13wx:y18163201ansiblelineinfile简介lineinfile该模块是操作文件中的每一行内容,他是按照行为单位的,和下面的replace模块并不冲突。修改匹配行,如果不存在就会添加tasks:-name:EnsureSELinuxissettoenforcingmodelineinfile:path:/etc/

原创 点赞0 阅读10000+ 收藏0 评论0 2021-05-13

异常dockgeddon导致 cpu 100%

异常dockgeddon导致cpu100%问题描述1,收到钉钉告警,提示机器cpu使用率超过90%2,然后登录监控找到对应的机器确实是CPU使用率到达百分之百了。3,查看容器监控确定是哪个容器产生了问题(因为我这个机器上就运行了docker)如果没有容器监控也可以使用dockerstats来检查各个容器的资源消耗情况。4,找到出问题的容器,发现并不是我们业务的容器,于是开始分析分析出问题的dock

原创 点赞0 阅读10000+ 收藏0 评论0 2021-04-26

校验值是否合法 validation

校验值是否合法作者:张首富时间:2021-04-13wx:Y18163201前言我们在任何编程语言中,都有传递的参数是否合法的需求,在go中我们可以引用下面的包直接来校验传递的参数是否合法安装goget-ugithub.com/astaxie/beego/validation使用packagemainimport("fmt""github.com/astaxie/beego/validation"

原创 点赞0 阅读10000+ 收藏0 评论0 2021-04-13

k8s 集群部署 flannel 报错 Couldn't fetch network config

Couldn't fetch network config: client: response is invalid json. The endpoint is probably not valid etcd cluster endpoint. timed out

原创 推荐 点赞0 阅读10000+ 收藏0 评论0 2021-03-17

手把手带你进入 docker 网络的世界

手把手带你进入docker网络的世界作者:张首富时间:2021-03-04转载:https://www.infoq.cn/article/MjwIBtwplrOMI5Vv5Joy前言使用容器总感觉像变模式一样。对那些了解其内部原理的人来说,他是一种很好的方式;而对于那些不了解其内部原理的人来说,这是一种可怕的方式。今天我们来尝试解决下容器网络问题。或者,更准确地说是单主机容器网络问题。在本文中,我

转载 点赞0 阅读10000+ 收藏0 评论0 2021-03-04

安装服务启动报错Failed to get D-Bus connection: Operation

安装服务启动报错FailedtogetD-Busconnection:Operationnotpermitted作者:张首富wx:y18163201时间:2021-02-24今天别人给我了一个linux主机的远程登录方式,让我上去帮他安装个docker。这么简单的事情不是手到擒来吗。于是开始搞1,查看下系统版本#cat/etc/redhat-releaseCentOSLinuxrelease7.7

原创 点赞0 阅读10000+ 收藏0 评论0 2021-02-24

网站 HTTPS 优化

网站HTTPS优化Nginx常作为最常见的服务器,常被用作负载均衡(LoadBalancer)、反向代理(ReverseProxy),以及网关(Gateway)等等。一个配置得当的Nginx服务器单机应该可以期望承受住50K到80K左右每秒的请求,同时将CPU负载在可控范围内。但在很多时候,负载并不是需要首要优化的重点。请求延迟有时候往往是重点。这篇文章中,我们先介绍Nginx中的TLS设置有哪些

转载 点赞0 阅读10000+ 收藏0 评论0 2021-01-26

mac 电脑自动登录服务器

mac电脑自动登录服务器Iterm+expect结合方式实现expect是一个自动化交互套件,主要应用于执行命令和程序时,系统以交互形式要求输入指定字符串,实现交互通信。它的自动交互流程如下:spawn启动指定进程--->expect获取指定关键字--->send向指定程序发送指定字符--->执行完成退出接下来我们将利用expect来实现ssh自动登录。首先新建一个文件/usr/

转载 点赞0 阅读10000+ 收藏0 评论0 2021-01-12

微信小程序 nginx https 反向代理后端服务

作者:张首富时间:2020-12-17nginx配置如下server{listen443ssl;server_nametest.zhangshoufu.com;#sslon;ssl_certificate/etc/nginx/cert/4595406__guiji.ai.pem;ssl_certificate_key/etc/nginx/cert/4595406__guiji.ai.key;ssl

原创 点赞0 阅读10000+ 收藏0 评论0 2020-12-17

Redis高可用之哨兵模式

Redis高可用之哨兵模式原文:极客时间redis专栏我们在之前的文章里面已经介绍了redis高可用之数据持久化,我们分别介绍了AOF持久化和RDB持久化两种方式,我们来简单回忆下:AOF持久化是命令在redis实例执行成功后才会记录到AOF日志中,每次操作redis都会记录一个日志,这就会造成AOF日志文件变大,恢复起来不容易,我们可以采用AOF重写机制,来减小AOF文件的大小,AOF的重写机制

原创 点赞0 阅读10000+ 收藏0 评论0 2020-12-17

Redis高可用之数据持久化

Redis数据持久化?-----意外宕机如何避免数据丢失我们在实际应用生产中,大部分公司会把Redis当做缓存使用,用它来把后端数据库中的数据存储在内存中,然后直接从内存中直接读取数据,这样会使这个程序响应速度变得非常快。但是一旦服务器宕机,那么内存中的数据将全部丢失?如何解决上述问题呢?我们第一时间肯定想到从后端数据库中读取数据,但是这样会频繁访问数据库,会给后端数据库带来巨大的压力;还有就是数

转载 点赞0 阅读421 收藏0 评论0 2020-12-14

prometheus 告警指标

记录了prometheus告警指标主机和硬件监控可用内存指标主机中可用内存容量不足10%-alert:HostOutOfMemoryexpr:node_memory_MemAvailable_bytes/node_memory_MemTotal_bytes*100<10for:5mlabels:severity:warningannotations:summary:Hostoutofmemo

转载 点赞1 阅读2360 收藏0 评论0 2020-12-09

prometheus 告警指标

记录了prometheus告警指标主机和硬件监控可用内存指标主机中可用内存容量不足10%-alert:HostOutOfMemoryexpr:node_memory_MemAvailable_bytes/node_memory_MemTotal_bytes*100<10for:5mlabels:severity:warningannotations:summary:Hostoutofmemo

转载 点赞0 阅读1396 收藏0 评论0 2020-12-09

shell 中给命令设置超时时间

shell中给命令设置超时时间在我们写shell脚本的时候,有时候想给一个命令设置一个超时时间,当命令执行了多长时间还没有执行完就强制终止;我们可以采用如下方式timeout3sleep30当sleep执行3秒的时候就会终止。timeout指令介绍运行指定的命令,如果在指定时间后仍在运行,则杀死该进程。用来控制程序运行的时间。使用方法timeout[选项]数字[后缀]命令[参数]...后缀”s”代

原创 点赞0 阅读1048 收藏0 评论0 2020-12-09

linux 主机监控指标

1.Linux运维基础采集项做运维,不怕出问题,怕的是出了问题,抓不到现场,两眼摸黑。所以,依靠强大的监控系统,收集尽可能多的指标,意义重大。但哪些指标才是有意义的呢,本着从实践中来的思想,各位工程师在长期摸爬滚打中总结出来的经验最有价值。在各位运维工程师长期的工作实践中,我们总结了在系统运维过程中,经常会参考的一些指标,主要包括以下几个类别:CPULoad内存磁盘IO网络相关内核参数ss统计输出

转载 点赞0 阅读522 收藏0 评论0 2020-11-12

Redis 高可用架构最佳实践

Redis高可用架构最佳实践转载:https://www.sohu.com/a/150426358_505802前言Redis是一个开源的使用ANSIC语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。如今,互联网业务的数据正以更快的速度在增长,数据类型越来越丰富,这对数据处理的速度和能力提出了更高要求。Redis是一种开源的内存非关系型数据库,给

转载 点赞0 阅读517 收藏0 评论4 2020-10-27

Redis 高可用架构最佳实践

Redis高可用架构最佳实践转载:https://www.sohu.com/a/150426358_505802前言Redis是一个开源的使用ANSIC语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。如今,互联网业务的数据正以更快的速度在增长,数据类型越来越丰富,这对数据处理的速度和能力提出了更高要求。Redis是一种开源的内存非关系型数据库,给

转载 点赞0 阅读345 收藏0 评论0 2020-10-27

nginx 代理 web socket 报错“WebSocket is already in CLO

WebSocket is already in CLOSING or CLOSED state.

原创 点赞0 阅读708 收藏0 评论0 2020-10-15

nginx 代理 web socket 报错“WebSocket is already in CLO

WebSocket is already in CLOSING or CLOSED state.

原创 点赞0 阅读619 收藏0 评论0 2020-10-15

个人博客搭建

个人博客搭建作者:张首富时间:2020-10-09wx:y18163201邮箱:zsf18163201@163.com博客地址:blog.zhangshoufu.com[TOC]blog架构介绍效果展示www.zhangshoufu.comblog.zhangshoufu.com博客、笔记编写介绍安装Typora软件官网地址为:https://typora.io/这个软件目前支持mac和windo

原创 点赞0 阅读712 收藏0 评论0 2020-10-09

配置 prometheus-operator 报警规则

我们安装好prometheus-operator之后,打开prometheus页面Alerts页面能看到好多报警规则,目前有的还处于报警状态但是这些报警信息是哪里来的呢?他们应该用怎样的方式通知我们呢?我们知道可以在Prometheus的配置文件之中指定AlertManager实例和报警的rules文件,现在我们通过Operator部署的呢?我们可以在PrometheusDashboard的Con

原创 点赞0 阅读2444 收藏0 评论0 2020-09-23

prometheus-operator 监控 k8s 外部集群

prometheus-operator监控k8s外部集群其实监控k8s外部集群和监控内部集群没啥区别,大概思路就是把外部资源通过endpoint的方式给他虚拟成k8s集群内部的一个资源,其实下面操作就是有点为了用k8s而用k8s了,有点吃力不讨好的架势,但是我们这里为了学习,可以玩耍prometheus-operator监控etcd无论是Kubernetes集群外的还是使用Kubeadm安装在集群

原创 推荐 点赞1 阅读2461 收藏0 评论2 2020-09-23

生产prometheus-operator 监控二进制kubernetes

生产prometheus-operator监控二进制kubernetes什么是Operator?operator是由CoreOS公司开发的,用来扩展kubernetesAPi,特定的应用程序控制器,它用来创建,配置和管理复杂的有状态应用,例如数据库,缓存和监控系统。Operator基于Kubernetes的资源和控制器概念之上构建,但同时又包含了应用程序特定的一些专业知识,比如创建一个数据库的Op

原创 点赞0 阅读1242 收藏0 评论0 2020-09-23

kubernetes 二进制安装部署手册

kubernetes二进制安装部署手册部署前准备1)系统优化所有机器.关闭防火墙和selinux#setenforce0#sed-i"s#SELINUX=enforcing#SELINUX=disabled#g"/etc/selinux/config#systemctlstopfirewalld&&systemctldisablefirewalld配置阿里云镜像源mkdir-p/e

原创 点赞0 阅读1524 收藏0 评论0 2020-09-15
  • 1
  • 2
  • 3
  • 4
  • 5