k8s组件kubelet功能和模块详解

kubelet是运行在每个节点上的主要的"节点代理",每个节点都会启动kubelet进程,用来处理Master节点下发到本节点的任务,按照PodSpec描述来管理Pod和其中的容器(PodSpec是用来描述一个pod的YAML或者JSON对象)。kubelet通过各种机制(主要通过apiserver)获取一组PodSpec并保证在这些PodSpec中描述的容器健康运行。kubelet默认监听四个端口,分别为10250、10255、10248、4194。LISTEN 0&...

阅读全文

k8s资源中的resourcequotas

k8s中可以对namespace来做资源限制,主要通过ResourceQuota对象来定义资源配额限制,它可以限制命名空间中某种类型的对象的总数目上限,也可以限制命令空间中的Pod可以使用的计算资源的总上限。首先我们可以检查是否本集群开启了资源配额kubectl api-resources | grep quota#返回resourcequotas             ...

阅读全文

linux下僵尸进程的查找和处理方法

在Linux系统中,一个进程结束了,但是他的父进程没有等待(调用wait/waitpid)他,那么他将变成一个僵尸进程。当用ps命令观察进程的执行状态时,看到这些进程的状态栏为defunct。僵尸进程是一个早已死亡的进程,但在进程表(processstable)中仍占了一个位置(slot)。如果父进程不调用wait/waitpid的话,那么保留的那段信息就不会释放,其进程号就会一直被占用,但是系统的进程表容量是有限的,所能使用的进程号也是有限的,如果大量的产生僵尸进程,将因为没有可用的进程号而导致系统不能产生新的进程。所以,defunct进...

阅读全文

MongoDB日志以及配置说明

MongoDB的日志可以完成的记录mongodb的健康状态和运行情况,有助于我们在出现故障的时候对MongoDB的故障进行有效的分析。在MongoDB4.4以前和以后的版本日志记录的格式是不一样的,4.4以前的格式是<timestamp> <severity> <component> [<context>] <message>例如:2014-11-03T18:28:32.450-0500 I NETWORK [initandl...

阅读全文

linux下vmstat命令介绍

vmstat命令是监控linux内存的常用工具,可以对操作系统的虚拟内存、进程、CPU等的整体情况进行监视,通常对Linux系统来说,虚拟内存就是swap分区。用法参数Usage: vmstat [options] [delay [count]]Options: -a, --active           active/inactive memory ...

阅读全文

k8s设置pod特权privileged的方法

k8s部署es的时候需要初始化很多linux的内核参数。但是文件系统挂载到pod容器中就会变成read-only,难以进行操作实现需求。所以需要给PODprivileged权限,然后在容器的初始化脚本或代码中去修改sysctl参数。创建POD/deployment/daemonset等对象时,给容器的spec指定securityContext.privileged=true即可设置到containers同级即可    securityContext:     ...

阅读全文

harbor仓库接口python操作类

harbor之前的部署配置和介绍可以查看我之前的笔记,这里整理出了一个harbor仓库的操作类,以后可以直接用的上。#!/usr/bin/python3#coding:utf-8import requestsimport jsonclass Hub(object):    def __init__(self, host, port, username, passwd):   &n...

阅读全文

ubuntu20.04添加开机启动

Ubuntu16.04以后的版本不再支持update-rc.d方式添加开机自启脚本,只能使用systemctl命令进行添加。之前开机启动的方式可以查看我之前的笔记:https://sulao.cn/post/565.html接下来我们直接看看ubuntu20.04添加开机启动的方法首先我们需要修改/usr/lib/systemd/system/rc-local.service这个服务文件#  SPDX-License-Identifier: LGPL-2.1+##  This&nbs...

阅读全文

开启GPU持久模式的方法

GPU开启了持久模式以后,即使没有活动的客户端,NVIDIA驱动程序也会保持加载状态,这样可以很大程度减少与运行依赖程序的加载时间,适用于所有的CUDA产品。Persistence-M(PersistenceMode)persistencemode持续模式默认关闭。persistencemode能够让GPU更快响应任务,待机功耗增加。关闭persistencemode同样能够启动任务。具体命令如下nvidia-smi -pm 1Persistence-M从Off变成On,持续模式打开...

阅读全文

frp实现内网穿透

家里台式机搭建了一个K8S集群,我的需求是把家里的台式机映射到公网,使用公网IP就能访问家里的台式机,这样可以随时访问家里部署的K8S集群。我们需要准备两台机器,一台是家里的台式机,另一台则是云服务器,云服务器作为服务端来转发请求到家里的台式机。首先我们进入项目地址:https://github.com/fatedier/frp,然后点击该页面右侧的Releases,这里发布的就是最新的版本,目前是v0.44.0版本我们登录公有云的机器,下载frpwget https://github.com/fatedier/frp/releases/dow...

阅读全文