自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

yaohong

博客园地址:http://www.cnblogs.com/yaohong/

  • 博客(194)
  • 资源 (1)
  • 收藏
  • 关注

原创 binfmt_misc

一:binfmt_misc是什么  binfmt_misc是内核中的一个功能,它能将非本机的二进制文件与特定的解析器自动匹配起来,进行二进制解析。 例如,在x86上解析arm64架构的二进制。 通过binfmt_misc可以注册解析器来处理指定二进制文件格式的请求。这些解析器可以是本地可执行文件,也可以是跨平台(ARM、MIPS)可执行文件。二:怎么使用binfm...

2023-06-14 21:08:00 2133

原创 Loki 日志收集系统

一.系统架构二.组成部分Loki 的日志堆栈由 3 个组件组成:promtail:用于采集日志、并给每条日志流打标签,每个节点部署,k8s部署模式下使用daemonset管理。loki:用于存储采集的日志, 并根据标签查询日志流。单节点部署,一般和监控组件部署在同一节点。Grafana:提供界面,实现日志的可视化查询。安装监控组件会默认部署grafana,与监控组件共用gra...

2023-05-27 16:26:00 2519

原创 systemd --user进程CPU占用高问题分析

原文链接:https://www.cnblogs.com/yaohong/p/16046670.html,转载需经同意。1.问题由来近期发现堡垒机环境有如下问题,systemd占用大量cpu:2.问题定位2.1.什么是systemd咋们可以先从systemd这个进程入手分析这个问题:根据文档《systemd (简体中文)》文档,我们可知如下图信息:作用:systemd 会给每个用户...

2022-03-25 18:33:00 1309

原创 通过TCP Allocate连接数告警了解prometheus-NodeExporter数据采集及相关知识扩散

1.问题由来近日有环境告警如下:TCP Allocate连接数过多很多资料告诉我们使用:netstat –ant |grep^tcp | wc –l命令查询,但查询的值与告警中获取的只相差很大,于是下载NodeExporter的源码进行查看进行一探究竟。源文件:https://www.cnblogs.com/yaohong/p/16046499.html2.NodeExporte...

2022-03-23 20:00:00 1020

原创 k8s pod报错Process failed to launch spawn E2BIG

一.问题描述近期遇到k8s环境中一个pod无法正常启动,启动报错,[PM2][ERROR] Process failed to launch spawn E2BIG。二.问题分析2.1.了解报错相关知识查阅资料发现,上面的问题,是因为环境变量过多引起的。K8S启动时会给容器注入环境变量,K8S集群中的项目数越多,环境变量也就越多。而pm2在启动时会导入系统中的环境变量,当环境变量数量过多...

2022-03-14 09:51:00 499

原创 golang pprof

一:背景当正在运行的golang程序消耗预期之外的内存和时间,我们这个时候就需要去弄明白,到底是是我们的代码哪个地方消耗了这些内存及相应时间。但此时编译好的golang程序对我们而言是黑盒,如果去分析具体的内存及时间使用情况?这个时候我们可以去了解和使用pprof来分析golang进程的内存使用。二:实战2.1.环境搭建下载安装golang,需要进到pod容器中(或者也可以将这些打到基础...

2021-12-15 14:58:00 100

原创 Ubuntu 18.04:磁盘读取性能不佳

如果在ubuntu1804上使用mysql,在做大量数据写入时,建议按照如下文档做优化,性能立即提高 2.5 倍:https://codeistry.wordpress.com/2020/01/16/ubuntu-18-04-poor-disk-read-performance/原因:ubuntu1604:使用的是deedline 磁盘I/O算法这对于运行单个(或几个)I/O 密集型软件...

2021-09-02 13:33:00 209

原创 k8s-nginx二进制报Illegal instruction (core dumped)

未经允许不得转载!!原文链接:https://www.cnblogs.com/yaohong/p/14920425.html1.环境系统:CentOS 7.3内核:x86环境:虚拟机2.问题收到一个现场问题,k8s环境中nginx的pod都启动异常。#kubectl get pod |grep nginxnginx-7945cf468c-z7z9r 0/...

2021-06-23 07:50:00 196

原创 k8s-记一次安全软件导致镜像加载失败

未经允许不得转载!!原文链接:https://www.cnblogs.com/yaohong/p/14904763.html近期在现场项目中遇到了一个镜像加载失败的问题,相关报错如下:Error processing tar file(exit status 1): symlink . /usr/bin/X11: permissiondenied使用的是root用户进行加载的镜像,...

2021-06-19 20:06:00 273

原创 Ubuntu1804下k8s-CoreDNS占CPU高问题排查

未经允许不得转载!原文链接:https://www.cnblogs.com/yaohong/p/14845377.html1.背景:最近在ubuntu804上适配k8s的时候,部署到业务pod的时候,出现了服务器卡死,top查看发现负载很高,进行CPU排序发现如下信息,可知是CoreDNS服务导致。2. 分析排查:1.分析CoreDNS问题根据coredns状态是CrashLoop...

2021-06-03 15:31:00 204

原创 Ubuntu 18.04 永久修改DNS的方法

1.问题背景 发现每次在/etc/resolv.conf 修改DNS之后,重启服务器DNS就会重置为原始127.0.0.53。2.解决过程查看/etc/resolv.conf文件发现如下:于是查找systemd-resolve相关资料《systemd-resolved.service 中文手册》结果如下:systemd-resolved为本地应用程序提供了网络名字解析...

2021-05-27 14:57:00 131

原创 记一次容器内执行ansible命令卡住

1.由来  最近在使用kylin_v10系统,发现当在此系统下运行的容器内执行#ansible localhost -m setup命令会卡住不动,于是和同事一起经过如下排查最终找到解决问题的办法。2.环境2.1.系统信息# cat /etc/*-releaseKylin Linux Advanced Server release V10 (Tercel)NAME="Ky......

2020-11-24 11:12:00 7779 1

原创 kubernetes-pod驱逐机制

1.驱逐策略  kubelet持续监控主机的资源使用情况,并尽量防止计算资源被耗尽。一旦出现资源紧缺的迹象,kubelet就会主动终止部分pod的运行,以回收资源。2.驱逐信号  以下是一些kubelet能用来做决策依据的信号,依据这些信号来做驱逐行为。  memory : 内存;  nodefs: 指node自身的存储,存储daemon的运行日志等,一般指root分区/; ...

2020-07-05 14:02:00 1847

原创 k8s-ephemeral和init容器

  截止到目前k8s1.18版本,k8s已经支持四种类型的container:标准容器,sidecar容器,init容器,ephemeral容器。 一:ephemeral容器1.1.什么是ephemeral容器 临时容器与其他容器的不同之处在于,它们缺少对资源或执行的保证,并且永远不会自动重启,因此不适用于构建应用程序。临时容器使用与常规容器相同的Conta...

2020-06-06 16:24:00 1090

原创 Kubernetes 健康状态检查liveness和readiness

1 .健康检查健康检查(Health Check)是让系统知道您的应用实例是否正常工作的简单方法。 如果您的应用实例不再工作,则其他服务不应访问该应用或向其发送请求。 相反,应该将请求发送到已准备好的应用程序实例,或稍后重试。 系统还应该能够使您的应用程序恢复健康状态。强大的自愈能力是 Kubernetes 这类容器编排引擎的一个重要特性。自愈的默认实现方式是自动重启发生故障的容器。...

2020-06-03 21:59:00 1291

原创 英语单词打卡

2020年5月

2020-05-08 21:04:00 566

原创 Docker内核知识

1.Docker的内核知识Docker容器的本质是宿主机上的进程,通过namespace实现资源隔离,通过cgroups实现资源限制,通过写时复制机制实现高效的文件操作。1.1.namespace资源隔离    Linux提供了6种namespace隔离的系统调用。   Linux内核实现namespace的主要目的就是为了实现轻量级虚拟化(容器)服务。...

2020-03-08 16:57:00 726

原创 harbor仓库镜像的删除

docker镜像仓库中镜像的清理,一直是个比较麻烦的事情。尤其是在测试环境当中,每天都会有大量的构建。由此会产生大量的历史镜像,而这些镜像,大多数都没有用。在harbor中,清理镜像,也得分为两步,第一步是从ui中删除历史镜像。这个时候镜像并不会被真正删除,好在harbor集成了镜像删除的功能。废话不多说,直接给操作。清理UI中的镜像清理ui中的镜像,如果直接通过图形界面...

2019-11-30 21:40:00 3092

原创 python-网络编程

一:socket和套接字1.1.什么是socket   socket 的原意是“插座”,在计算机通信领域,socket 被翻译为“套接字”,它是计算机之间进行通信的一种约定或一种方式。通过 socket 这种约定,一台计算机可以接收其他计算机的数据,也可以向其他计算机发送数据。1.2.套接字分类 这个世界上有很多种套接字(socket),比如 DARPA I...

2019-11-30 12:03:00 187

原创 python正则表达式

一:Python 正则表达式  正则表达式(regex)是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。  Python1.5版本起通过标准库中的re 模块来支持Perl 风格的正则表达式。二:正则表达模式2.1.符号表示法描述正则表达式实例literal匹配文本字符串的字面值literalfoo...

2019-11-25 19:54:00 297

原创 linux系统启动报错:[contains a file system with errors, check forced]的解决方法参考

1、解决参考一Press enter for maintenance(or type Control-D to continue):/dev/sda3 contains a file system with errors, check forced./dev/sda3: Inodes that were part of a corrupted orphan linked list fou...

2019-10-29 20:00:00 804

原创 python访问数据库

一:SQLite1.1.Sqlite数据库简介  SQLite是一个嵌入式的数据库,他的数据库是个文件。  SQLite本身是c语音写的,所以经常被集成到各种应用程序。  python就内置了SQLite,所以python使用SQLite不需要安装任何东西,直接进行使用。  连接到数据库后需要打开游标,称之为Cursor,通过Cursor执行sql预计和执行后的结果。...

2019-10-26 23:02:00 169

原创 SQLite

一:SQLite简介  SQLite是一个嵌入式的数据库,他的数据库是个文件。  SQLite本身是c语音写的,所以经常被集成到各种应用程序。  python就内置了SQLite,所以python使用SQLite不需要安装任何东西,直接进行使用。  连接到数据库后需要打开游标,称之为Cursor,通过Cursor执行sql预计和执行后的结果。二:使用SQLite数据库...

2019-10-26 21:10:00 205

原创 ubuntu 18.04 设置静态ip方法

1. 前言本教程将会演示如何设置Ubuntu16.04 Server版和Ubuntu18.04 Server版系统的静态固定IP地址。2. 确认你要修改的网卡号先确认你要修改的网卡号,假设你的服务器有多张网卡:ubuntu1804:~$ ip addr我的服务器配置如下:1: lo: <LOOPBACK,UP,LOWER_UP> mtu 6...

2019-09-26 19:56:00 3818

原创 ubuntu 1804安装详解

我这边安装的是ubuntu server版本,大家安装时可以参考我这篇文件进行安装。1.选择安装语言:这里选择默认的"English"和“中文(简体)”都可以。2.选择”安装ubuntu服务器版“3.确认所选择语言4.是否进行键盘匹配,选择"是"5.输入中任意一个您键盘中所包含的字符...

2019-09-26 12:23:00 7112

原创 kubernetes ConfigMap和Secret:配置应用程序

7.1.配置容器化应用程序7.2.向容器传递命令行参数7.2.1.待Docker中定义命令与参数1.了解ENTRYPOINT与CMD  ENTRYPOINT定义容器启动时被调用的可以执行程序  CMD指定传递给ENTRYP的参数dockerfile 内容如下FROM daocloud.io/centos:latestADD aaa /usr/loc...

2019-09-13 21:54:00 319

原创 kubernetes Value:将磁盘挂载到容器,PV,PVC

6.1.介绍卷6.1.1.卷的类型emptyDir-用于存储临时数据的简单空目录hostPath-用于将目录从工作节点的文件系统挂载到podnfs-挂载到pod中的NFS共享卷。还有其他的如gitRepo、gcepersistenDisk6.2.通过卷在容器间共享数据6.2.1.使用emptyDir卷卷的生命周期与pod的生命周期项关联,所以当删除p...

2019-09-10 20:02:00 5518 1

原创 kubernetes 磁盘、PV、PVC

6.1.介绍卷6.1.1.卷的类型emptyDir-用于存储临时数据的简单空目录hostPath-用于将目录从工作节点的文件系统挂载到podnfs-挂载到pod中的NFS共享卷。还有其他的如gitRepo、gcepersistenDisk6.2.通过卷在容器间共享数据6.2.1.使用emptyDir卷卷的生命周期与pod的生命周期项关联,所以当删除pod时...

2019-09-10 20:02:00 239

原创 kubernetes Service:让客户端发现pod并与之通信

5.1.Service介绍5.1.1.Serice简介5.1.1.1什么是Service  service是k8s中的一个重要概念,主要是提供负载均衡和服务自动发现。  Service 是由 kube-proxy 组件,加上 iptables 来共同实现的。5.1.1.2.Service的创建  创建Service的方法有两种:  1.通过kubectl e...

2019-09-08 22:24:00 1598

原创 容器的进程与namespace、rootfs

一:容器是什么容器的本质是一种特殊的进程。在linux容器中有三个重要的概念:Namespace、Cgroups、rootfs。Namespace做隔离,让进程只能看到Namespace中的世界;Cgroups 做限制,让这个“世界”围着一个看不见的墙。rootfs 做文件系统,rootfs 只是一个操作系统所包含的文件、配置和目录,并不包括...

2019-09-03 21:40:00 606

原创 Kubernetes-保障集群内节点和网络安全

13.1.在pod中使用宿主节点的Linux命名空间13.1.1.在pod中使用宿主节点的网络命名空间  在pod的yaml文件中就设置spec.hostNetwork: true   这个时候pod使用宿主机的网络,如果设置了端口,则使用宿主机的端口。apiVersion: v1kind: podmetadata: name: pod-hos...

2019-08-18 13:38:00 308

原创 k8s架构及服务详解

9.deployment:声明式的升级应用9.1.使用RC实现滚动升级#kubectl rolling-update kubia-v1 kubia-v2 --image=luksa/kubia:v2  使用kubia-v2版本应用来替换运行着kubia-v1的RC,将新的复制控制器命名为kubia-v2,并使用luksa/kubia:v2最为镜像。  升级完成后使kubectl...

2019-08-16 09:07:00 1827

原创 kubernetes API服务器的安全防护

test

2019-08-11 14:54:00 101

原创 Statefulset:部署有状态的多副本应用

10.1.什么是Statefulset  StatefulSet是Kubernetes提供的管理有状态应用的负载管理控制器API。 特点:  1.具有固定的网络标记(主机名)  2.具有持久化存储  3.需要按顺序部署和扩展  4.需要按顺序终止和删除  5.需要按顺序滚动和更新10.2.statefulset的创建  statefulse...

2019-08-07 09:09:00 269

原创 deployment:声明式的升级应用

9.1.使用RC实现滚动升级#kubectl rolling-update kubia-v1 kubia-v2 --image=luksa/kubia:v2  使用kubia-v2版本应用来替换运行着kubia-v1的RC,将新的复制控制器命名为kubia-v2,并使用luksa/kubia:v2最为镜像。  升级完成后使kubectl describe ...

2019-08-07 09:08:00 147

原创 k8s学习笔记---了解Kubernetes

11.1.了解架构K8s分为两部分:  1.Master节点  2.node节点Master节点组件:  1.etcd分布式持久化存储  2.api服务器  3.scheduler  4.controllerNode节点:  1.kubelet  2.kube-proxy  3.容器运行时(docker、rkt及其它)附加组件:  1.Dn...

2019-08-06 09:00:00 187

原创 Kubernetes架构及相关服务详解

11.1.了解架构K8s分为两部分:  1.Master节点  2.node节点Master节点组件:  1.etcd分布式持久化存储  2.api服务器  3.scheduler  4.controllerNode节点:  1.kubelet  2.kube-proxy  3.容器运行时(docker、rkt及其它)附加组件: ...

2019-08-06 09:00:00 99

原创 k8s学习笔记--deployment:声明式的升级应用

9.1.使用RC实现滚动升级#kubectl rolling-update kubia-v1 kubia-v2 --image=luksa/kubia:v2  使用kubia-v2版本应用来替换运行着kubia-v1的RC,将新的复制控制器命名为kubia-v2,并使用luksa/kubia:v2最为镜像。  升级完成后使kubectl describe rc ku...

2019-08-06 08:52:00 336

原创 k8s学习笔记---Statefulset:部署有状态的多副本应用

10.1.什么是Statefulset  StatefulSet是Kubernetes提供的管理有状态应用的负载管理控制器API。 特点:  1.具有固定的网络标记(主机名)  2.具有持久化存储  3.需要按顺序部署和扩展  4.需要按顺序终止和删除  5.需要按顺序滚动和更新10.2.statefulset的创建  statefulset的创建顺...

2019-08-06 08:44:00 2239 1

原创 k8s学习笔记

九.deployment:声明式的升级应用9.1.使用RC实现滚动升级#kubectl rolling-update kubia-v1 kubia-v2 --image=luksa/kubia:v2  使用kubia-v2版本应用来替换运行着kubia-v1的RC,将新的复制控制器命名为kubia-v2,并使用luksa/kubia:v2最为镜像。  升级完成后...

2019-07-20 21:51:00 1003 1

存储分类-设备类型/网络结构

存储分类, 设备类型网络结构,

2018-09-02

空空如也

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

TA关注的人

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