Docker查看镜像构造和层次

我们使用docker时也会遇到镜像commit超过最大层数的问题,所以解决这个问题的前提是我们需要了解怎么样查看镜像构造和层级目前docker构建镜像最大是127层,在dockerbuild时基本每行命令都是一层,再构建好使用时我们也会去再次commit镜像,那么这样也算是新的层级。查看docker构造和层级主要有两个命令,一个是inspcect,另一个是history我们使用inspect查看一个镜像的构造docker inspect aedb33724815这里面展示了整个镜像构建的命令结果和层级,具体层级可以使用下面命令进行...

阅读全文

ubuntu20.04安装和卸载英伟达GPU驱动

在ubuntu上安装显卡驱动有几种方式,可以使用图形界面的方式安装,也可以使用命令行来安装,我们这里主要来讲使用命令行的方式安装,安装的方式也有两种,分为在线安装和离线安装。安装的时候推荐关掉图形化界面,进入终端模式进行安装sudo telinit 3 # 使用sudo telinit 5命令可以重新进入图形化界面1.使用命令行在线安装的方式如下更新所有的软件包和加入官方的ppa源sudo add-apt-repository ppa:graphics-drivers/ppa...

阅读全文

使用Pymongo操作MongoDB集群

之前我们记录过使用pymongo模块操作mongodb数据库,但是操作mongodb集群的话连接配置有一些差异。连接mongodb集群需要使用下面的配置方式连接client = MongoClient('mongodb://root:123456@mongodb-0.mongodb-headless.namespace:27017,mongodb-1.mongodb-headless.namespace:27017,mongodb-2.mongodb-headless.namespace:27017')还可以设置读取的...

阅读全文

k8s添加master节点报错提示“etcd cluster is not healthy”

原来集群中一个master节点操作系统坏掉了,所以需要重装操作系统,然后以master身份加入到原有集群。安装好docker和k8s以后,使用kubeadmJoin命令加入集群一直报错,错误信息如下:The reset process does not clean your kubeconfig files and you must remove them manually.Please, check...

阅读全文

k8s集群使用kubeadm添加master节点

之前有记录如何获取token的方法:https://sulao.cn/post/803.html,添加普通节点时,可以直接通过以下命令获取添加节点全部命令kubeadm token create --print-join-commandkubeadm join <ip:port> --token 7gmpm8.yxxahvalc8exemrg  --discovery-token-ca-cert-hash sha256:504ee4ac92...

阅读全文

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...

阅读全文