Docker清理数据和目录结构介绍

今天上集群查看有POD状态不正常,然后describePOD事件提示docker: Error response from daemon: open /var/lib/docker/overlay2/***: no such file or directory出现这个提示的意思是overlay2下面的这个文件没有了,出现这个问题的原因是dockerrootdir目录已经写满了,rootdir的默认路径就是/var/lib/docker,...

阅读全文

nerdctl的安装和常用命令

nerdctl是一个类似于DockerCLI的命令工具,用于管理和运行容器,它提供与Docker兼容的接口,并支持和containerd集成。nerdctl安装首先下载安装包wget https://github.com/containerd/nerdctl/releases/download/v1.5.0/nerdctl-1.5.0-linux-amd64.tar.gztar -zxvf nerdctl-1.5.0-linux-amd64.tar.gzcp -a nerdctl /u...

阅读全文

通过进程PID查询POD的几种方法

通过进程PID查询POD的几种方法1.通过mountinfo获取容器IDcat /proc/14890/mountinfo | grep "etc-hosts"1332 1310 253:2 /var/lib/kubelet/pods/ad9a35fb-dd31-4551-b267-9e2ff340ac0b/etc-hosts /etc/hosts rw,relatime - xfs /dev/vda2 ...

阅读全文

k8s创建POD的具体流程原理

在用户使用kubectl命令提交yaml时,其实在整个k8s中很多组件都协调运作最终直观的展示生成的POD,那么这中间经历了很多流程,我们来看看这其中流程和原理具体是什么样的。当用户kubectl提交yaml文件以后,kubectl会将yaml文件转成符合resfulAPI规范的json数据提交到apiserver接口,apiserver接口有鉴权认证的功能,如果有做鉴权和认证那么在这一步就会进行认证,认证通过后就会将yaml提交的信息存储到etcd,这里我们可能会想到这就直接提交到etcd中存储,其它组件是如何之前用户新建了一个POD呢?api...

阅读全文

K8s中将DeployMent回滚到某个版本

在K8S1.9版本开始支持Deployment控制器,是基于第二代控制器replicaSet控制器的升级版,拥有更高级的镜像回滚等等高级功能。下面我们来看看使用DeployMent回滚到某一版本的具体操作查看orion命名空间下的rskubectl get rs -n orion查看版本迭代情况kubectl get rs -n orion orion-runtime-7b58f5c657 -o yaml | grep&nb...

阅读全文

prometheus添加WEB页面登录basic auth加密认证

prometheus的web页面访问默认是没有账户密码认证的,这样如果部署暴露在公网上非常的不安全,可以使用httpd-tools工具对其进行basic_auth加密,这样登录的时候就需要输入账号密码了。首先我们安装工具并生成密码yum -y install httpd-toolshtpasswd -nBC 12 '' | tr -d ':\n' #回车然后输入两次密码生成以下加密密码$2y$12$NXc9...

阅读全文

containerd常用基本命令

在2016年12月14日,Docker公司宣布将containerd从Docker中分离,由开源社区独立发展和运营。Containerd完全可以单独运行并管理容器,而Containerd的主要职责是镜像管理和容器执行。同时,Containerd提供了containerd-shim接口封装层,向下继续对接runC项目,使得容器引擎DockerDaemon可以独立升级。Containerd可以在宿主机中管理完整的容器生命周期:容器镜像的传输和存储、容器的执行和管理、存储和网络等。总结一下,它主要负责干以下事情:管理容器的生命周...

阅读全文

python中UUID模块解析

UUID(全称为UniversallyUniqueIDentifier)是128位的全局唯一标识符。UUID是一个128比特的数值,这个数值可以通过一定的算法计算出来。为了提高效率,常用的UUID可缩短至16位。保证在一定的空间和时间上的唯一性,通常定义用来做唯一标识对象。UUID通过MAC地址、时间戳、命名空间、随机数、伪随机数来保证生成ID的唯一性,目前一共有五种算法,分别是uuid1,uuid2,uuid3,uuid4,uuid5,其中python中没有基于DCE的,所以在python中uuid2算法可以忽略。uuid1基于时间戳由MAC地址...

阅读全文

ubuntu安装nvidia-container-runtime

借助NVIDIAContainerRuntime,开发人员只需在创建容器期间注册一个新的运行时,即可将NVIDIAGPU暴露给容器中的应用程序。目前官网上NVIDIAContainerRuntime介绍如下NVIDIAContainerRuntimeisaGPUawarecontainerruntime,compatiblewiththeOpenContainersInitiative(OCI)specificationusedbyDocker,CRI-O,andotherpopula...

阅读全文

k8s部署ingress-nginx

官网安装指南可以查看这里:https://kubernetes.github.io/ingress-nginx/deploy/首先我们下载ingressdeploy文件wget https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.1.3/deploy/static/provider/aws/deploy.yaml注意ingress和k8s需要版本匹配,因为我k8s是1.19版本,所以ingress选择的是v1.1.3,下载到上述deploy.yaml...

阅读全文