胡伟煌

个人博客

k8s证书及秘钥

1. 证书分类 服务器证书:server cert,用于客户端验证服务端的身份。 客户端证书:client cert,用于服务端验证客户端的身份。 对等证书:peer cert(既是server cert又是client cert),用户成员之间的身份验证,例如 etcd。 1.1. k8s集群的证书分类 etcd节点:需要标识自己服务的server cert,也需要cli......

kubeadm管理证书

通过kubeadm搭建的集群默认的证书时间是1年(由于官方期望每年更新一次k8s的版本,在更新的时候会默认更新证书),当你执行命令出现以下报错,说明你的证书已经到期了,则需要手动更新证书。 12345# kubectl get nodeUnable to connect to the server: x509: certificate has expired or is not yet va......

Pod驱逐

问题描述 节点Pod被驱逐 原因 1. 查看节点和该节点pod状态 查看节点状态为Ready,查看该节点的所有pod,发现存在被驱逐的pod和nvidia-device-plugin为pending 123root@host:~$ kgpoallowide |grep 192.168.1.1department-56 173e397c-ea35-4aac-85d8-07106e55d7b......

PVC Terminating

问题描述 1pvc terminating pvc在删除时,卡在terminating中。 解决方法 1kubectl patch pvc {PVC_NAME} -p '{"metadata":{"finalizers":null}}' var isMobile = navigator.userAgent.......

Pod创建流程

Pod创建基本流程图 Pod创建完整流程图 图片来源:https://fuckcloudnative.io/posts/what-happens-when-k8s/ 参考: https://fuckcloudnative.io/posts/what-happens-when-k8s/ var isMobile = navigator.userAgent.......

PVC创建流程

pvc流程 流程如下: 用户创建了一个包含 PVC 的 Pod,该 PVC 要求使用动态存储卷; Scheduler 根据 Pod 配置、节点状态、PV 配置等信息,把 Pod 调度到一个合适的 Worker 节点上; PV 控制器 watch 到该 Pod 使用的 PVC 处于 Pending 状态,于是调用 Volume Plugin(in-tree)创建存储卷,并创建 PV 对象(......

使用kind安装kubernetes

1. 安装kind On mac or linux 123curl -Lo ./kind "https://github.com/kubernetes-sigs/kind/releases/download/v0.7.0/kind-$(uname)-amd64"chmod +x ./kindmv ./kind /some-dir-in-your-PATH/kind 2. 创建k8s集群 12......

kata配置

1. 配置文件路径 默认的配置文件位于/usr/share/defaults/kata-containers/configuration.toml,如果/etc/kata-containers/configuration.toml的配置文件存在,则会替代默认的配置文件。 查看配置文件的路径命令如下: 123# kata-runtime --kata-show-default-config-p......

FlexVolume介绍

1. FlexVolume介绍 Flexvolume提供了一种扩展k8s存储插件的方式,用户可以自定义自己的存储插件。类似的功能的实现还有CSI的方式。Flexvolume在k8s 1.8+以上版本提供GA功能版本。 2. 使用方式 在每个node节点安装存储插件二进制,该二进制实现flexvolume的相关接口,默认存储插件的存放路径为/usr/libexec/kubernetes/kub......
CSI

Dynamic Volume Provisioning 介绍

Dynamic Volume Provisioning Dynamic volume provisioning允许用户按需自动创建存储卷,这种方式可以让用户不需要关心存储的复杂性和差别,又可以选择不同的存储类型。 1. 开启Dynamic Provisioning 需要先提前创建StorageClass对象,StorageClass中定义了使用哪个provisioner,并且在provisi......