k8s容器退出码详细信息介绍

由于经常使用k8s,所以在遇到退出码含义的时候经常要去查询,所以记录到博客上方便进行查找对应的含义关系。当一个容器达到Exited状态时,Docker会在日志中报告一个退出码,告诉你容器发生了什么导致它退出。了解容器退出码下面我们将更详细地介绍每个退出码。退出码0:正常退出退出代码0由开发人员在任务完成后故意停止容器时触发。从技术上讲,退出代码0意味着前台进程未附加到特定容器。如果容器以退出码0终止怎么办?检查容器日志,确定哪个库导致容器退出;查看现有库的代码,并确定它触发退出码0的原因,以及它是否正常运行。退出码1:应用错误退...

阅读全文

pod修改共享内存shm大小的方法

默认的Linux发行版中的内核配置都会开启tmpfs,映射到了/dev/下的shm目录,这个就是共享内存目录,可以通过df命令查看,例如在pod中我们查看默认就是64M。/dev/shm/是linux下一个非常有用的目录,因为这个目录不在硬盘上,而是在内存里,直接使用/dev/shm/就可达到很好的优化效果。默认系统就会加载/dev/shm,它就是所谓的tmpfs,像虚拟磁盘一样,tmpfs可以使用您的RAM,但它也可以使用您的交换分区来存储,tmpfs是一个文件系统,而不是块设备,只是安装它,它就可以使用了。动态文件系统的大小,/dev/sh...

阅读全文

centos7使用haproxy部署k8s高可用集群

之前我们部署k8s多master高可用集群中使用的代理均衡器是nginx,这次我们使用haproxy来做负载均衡器,之前的笔记也会用到,可以查看之前的笔记:https://sulao.cn/post/953.html直接从之前笔记中的安装nginx处开始,由于此处是使用haproxy替代原来的nginx,所以我们直接安装haproxy,本次笔记和上述笔记基本一致,只有nginx/haproxy和keepalived处略有不同yum install haproxy -y安装完成以后我们现手工添加VIPip addr&...

阅读全文

k8s多master集群更新证书

我本地环境是三个master的k8s集群192.168.1.72   master1192.168.1.73   master2192.168.1.74   master3首先第一个master节点更新证书,我们首先需要导出资源清单kubectl get cm kubeadm-config -n kube-system -o yaml >/etc/kubernetes/ku...

阅读全文

centos7删除POD一直Terminating无法销毁

目前我的k8s环境容器是使用的containerd,删除POD以后一直terminating,无法销毁,然后查看terminating的POD有以下事件报错  Normal   Killing        8m16s                 &nbs...

阅读全文

centos7部署k8s多master高可用集群(k8s+containerd+nginx+keepalived)

集群部署k8s1.23.0版本,容器使用的是containerd1.7.10版本规划的集群信息如下192.168.1.72   master1192.168.1.73   master2192.168.1.74   master3192.168.1.75   node1192.168.1.78   VIP然后在上述三个master分别部署nginx,keepalive,其中nginx代理后端...

阅读全文

centos下k8s集群docker切换containerd

之前有记录使用containerd部署k8s集群的笔记,这次记录一个已有k8s集群从docker切换到containerd方法的笔记,下面就介绍切换的操作过程首先下载containerd包wget https://github.com/containerd/containerd/releases/download/v1.7.10/cri-containerd-1.7.10-linux-amd64.tar.gz部署containerdtar -zxvf cri-containerd-1.7.10-linux-amd64.tar...

阅读全文

centos7使用containerd部署k8s集群

由于k8s高版本后面不支持docker,所以需要使用containerd替代docker,下面是部署过程,整个部署基本和原来记录的差距不大,但是还是有些注意事项首先关闭防火墙systemctl stop firewalldsystemctl disable firewalld关闭selinux:sed -i 's/enforcing/disabled/' /etc/selinux/configsetenforce 0关闭swap交换分区swapoff&...

阅读全文

k8s修改证书有效期,适用于k8s1.17以上版本

之前我们做过k8s证书续期的笔记,但是1.19以上版本就有些不一样了,所以重新记录一篇,感兴趣的可以查看我之前的笔记:https://sulao.cn/post/846.htmlk8s大体上续订证书基本还是一致的,也是下载k8s对应版本源码,然后编译kubeadm,使用新的kubeadm进行证书续期此方式使用范围是1.17-1.23版本。我们首先下载golang,编译的时候需要使用到wget https://golang.google.cn/dl/go1.21.5.linux-amd64.tar.gztar -zxvf ...

阅读全文

k8s基于role创建指定命名空间下的账户和config管理文件

之前我们学习了创建基于集群级别的账号和管理配置的方法,具体可以查看这个笔记:https://sulao.cn/post/939.html。实际在k8s的使用过程中,我们通常以命名空间来隔离项目或者团队,那么这个时候就有一些需求,就是通过k8sRBAC创建的账户只用于某一个命名空间下,那么这样的账户创建和之前基于集群的创建是稍有区别的,那么我们一起来看看创建过程和创建方法前面的操作也是一样,需要创建一个私钥和证书签名请求openssl genrsa -out sulao.key 2048openssl ...

阅读全文