![](https://img-blog.csdnimg.cn/20201215123414310.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Kubernetes
文章平均质量分 80
为什么叫k8s?因为k和s之间正好8个字母~~~
月巴左耳东
搞一下不就知道了
展开
-
k8s 部署 metribeat 实现 kibana 可视化 es 多集群监控指标
k8s 部署 metribeat 实现 kibana 可视化 es 多集群监控指标原创 2024-07-09 00:12:01 · 984 阅读 · 0 评论 -
k8s 使用 helm 文件部署 8.12.2 es 分角色集群
节点。原创 2024-07-04 20:00:50 · 470 阅读 · 0 评论 -
机器 reboot 后 kubelet 目录凭空消失的灾难恢复
可能之前有一些 kubeadm config 不同的地方,比如镜像的仓库什么的,可以和其他 worker 节点的对照一下,然后修改一下后,重启 kubelet。因为一些情况,需要 reboot 服务器,结果 reboot 机器后,kubeadm init 节点的 kubelet 目录消失了,整个。这篇文章做了 kubelet 的修复,目前集群是正常了,后期暂时不知道是否会有其他异常,若有异常,后续会继续更新博客。目录没有了,导致 kubelet 启动失败,etcd 和 apiserver 也没法启动。原创 2024-06-16 03:31:34 · 484 阅读 · 0 评论 -
rocky-8.9 使用 kubeadm 部署 1.26 版本 kubernetes 问题汇总
其他 master 节点没有 ca 证书,导致加入节点有以下报错(worker 节点加入不会有异常)把对应的证书分发到其他 master 节点,重新加入节点即可。这个就行了,我的部署文档里面有这一步,可以把。这是从 4.12 内核版本开始移除了。这个问题不影响,只需要执行。rocky-8.9 是。版本的内核,已经没有。这个内核参数了,执行。原创 2024-05-26 15:55:36 · 488 阅读 · 1 评论 -
calico bgp 模式启动失败,报错 BIRD is not ready
(往往是错误的 interface),导致 calico 把 master 也算进 nodes,于是 master BGP 启动失败,而其他 workers 则启动成功。calico-node-xxxxx 替换成失败的 calico pod 名字。返回下面的 ip 说明路由有问题,正常的路由,是本机的 ip 地址。先说原因,calico 官方的 yaml 没有把。重新 apply calico 的 yaml 文件。中,calico 会使用第一个找到的。下面的 ip 我就和谐一下了。确认是否有下面的内容。原创 2024-04-07 11:57:28 · 573 阅读 · 0 评论 -
二进制 containerd 1.7.0 部署 calico 报错
启动 calico 容器异常,查看 kubelet 日志,发现了下面的报错,可以看到,是缺少了。再次使用 runc 命令,就可以查看到 runc 的信息了。版本太低了,centos 7 的最新版是。之后,就可以正常安装 calico 了。尝试了 yum 安装,但是还是报错了。查看 runc 命令能不能用。原创 2024-01-07 16:25:01 · 492 阅读 · 0 评论 -
kubernetes-v1.23.3 部署 MySQL-5.7.31
pod 变成 running 之后,就可以通过 ip 加 nodeport 的方式来访问了,使用 mysql 数据库内的用户名和密码登录,可以自己先提前在 mysql 数据库里面创建好。mysql 的数据目录使用的 hostpath 的方式,通过亲和性来绑定节点,需要提前给对应的节点打上。原创 2023-10-03 14:27:38 · 468 阅读 · 0 评论 -
kubernetes-v1.23.3 部署 kafka_2.12-2.3.0
启动 statefulset 之前,需要先给节点打上标签,因为针对 pod 做了节点和 pod 的亲和性,因为 zookeeper 的数据是通过 hostpath 的方式来持久化的,所以需要固定节点,同时需要 pod 亲和性来控制一个节点只能出现一个 zookeeper 的 pod,避免 hostpath 出现问题。正如开头提到的,我这边使用的是 gfs 来做的持久化,需要通过 endpoints 来暴露给 k8s 集群内部使用,相关的资料可以看我其他的文章。检查 pvc 是否处于 bound 状态。原创 2023-10-02 17:36:41 · 575 阅读 · 0 评论 -
k8s 拉取镜像报错 no basic auth credentials
如果有多个私有仓库,这种方式创建的 Secret 更好用一点。原创 2023-10-02 16:40:00 · 884 阅读 · 0 评论 -
kubernetes 集群利用 efk 收集容器日志
找到导航栏的 logtrail,然后在输入框输入 pod_name: “” 来看指定容器的日志。apply 之后,就可以使用任一节点的 ip 加上 30007 去访问 kibana 的界面。以下只提供 yaml 文件,大家自己按照下面的顺序整理,然后依次 apply 即可。不一定会立刻生成,具体要看实际的环境是否有 pod 产生日志,需要等一会再看看。创建完 pvc 后,需要确认一下 pvc 是否为 Bound 状态。编写 dockerfile。原创 2023-08-03 15:41:50 · 738 阅读 · 2 评论 -
kubernetes 部署 nginx-ingress-controller
在没有 ingress 规则的时候,我们去访问。开放出来的,也可以去其他节点验证。这个时候去访问域名,一样可以返回。下面来配置 ingress 规则。可以看到,暴露出来的端口是。返回状态码 200,表示成功。原创 2023-07-08 18:18:34 · 736 阅读 · 0 评论 -
k8s 学习笔记 - LimitRange 限制范围
LimitRange是限制namespace(命名空间)内可为每个适用的对象类别 (例如Pod或)指定的资源分配量(limits和requests)的策略对象一个LimitRange(限制范围)对象提供的限制能够做到:在一个namespace(命名空间)中实施对每个Pod或Container最小和最大的资源使用量的限制。在一个namespace(命名空间)中实施对每个能申请的最小和最大的存储空间大小的限制。在一个namespace(命名空间)中实施对一种资源的requests(申请值)和。原创 2023-06-03 23:17:43 · 1217 阅读 · 0 评论 -
基于 cri-dockerd 二进制部署 kubernetest-v1.26.3
基于 cir-dockerd 二进制部署 kubernetest-v1.26.3原创 2023-05-01 13:57:26 · 1818 阅读 · 0 评论 -
kubernetes dns 解析超时问题排查
kubernetes dns 解析超时问题排查原创 2023-03-28 19:40:26 · 1605 阅读 · 1 评论 -
二进制 k8s 集群下线 worker 组件流程分析和实践
二进制 k8s 集群下线 worker 组件流程分析和实践原创 2023-02-13 19:28:55 · 890 阅读 · 2 评论 -
二进制 k8s 集群下线 master 组件流程分析和实践
二进制 k8s 集群下线 master 组件流程分析和实践,需要对于 k8s 组件之间的工作有一定的了解原创 2023-02-13 18:15:27 · 655 阅读 · 1 评论 -
Kubernetes 集群使用 GlusterFS 作为数据持久化存储
Kubernetes 集群使用 GlusterFS 作为数据持久化存储原创 2023-02-03 21:13:29 · 212 阅读 · 0 评论 -
metrics-server - unable to fully collect metrics
metrics-server - unable to fully collect metrics原创 2023-02-02 17:07:35 · 697 阅读 · 0 评论 -
kubernetes-dashboard 实现 http 访问以及免 token 登录
kubernetes-dashboard 实现 http 访问以及免 token 登录原创 2023-02-01 20:55:54 · 2447 阅读 · 0 评论 -
kubetpl - kubernetes 模板管理工具
kubetpl - kubernetes 模板管理工具原创 2023-01-22 19:43:06 · 868 阅读 · 1 评论 -
containerd 镜像构建工具 -- nerdctl 和 buildkit
containerd 镜像构建工具 -- nerdctl 和 buildkit原创 2022-11-27 19:22:02 · 3308 阅读 · 0 评论 -
k8s namespace 一直处于 Terminating 状态的解决方法
删除 terminating 状态的 namespace原创 2022-10-24 10:24:48 · 1078 阅读 · 0 评论 -
使用 shell 脚本二进制部署 k8s 环境 [支持 docker 和 containerd]
使用 shell 部署二进制 k8s 集群,支持 docker 和 containerd原创 2022-10-02 21:05:04 · 1550 阅读 · 1 评论 -
kubeadm 部署的 k8s 增加 ip 并重新生成证书
kubeadm 部署的 k8s 增加 ip 并重新生成证书原创 2022-08-20 17:54:57 · 1889 阅读 · 0 评论 -
kubelet 压力驱逐 - The node had condition:[DiskPressure]
文章目录浅言碎语清理 dockerkubelet 节点压力驱逐驱逐信号驱逐条件软驱逐条件硬驱逐条件驱逐监测间隔节点条件最小驱逐回收修改 kubelet 配置文件修改 kubelet 配置文件的方式查看配置文件路径备份配置文件修改 kubelet.service 的方式查看配置文件路径备份配置文件重启 kubelet浅言碎语在查看 pod 运行状态时,发现有的 pod 的状态是 Evicted,通过 describe 去查看发现了 The node had condition: [DiskPressur原创 2022-05-07 14:04:21 · 8968 阅读 · 0 评论 -
kubeadm + containerd 部署 k8s-v1.23.3(含证书升级)
文章目录前言环境准备答应我,所有节点都要关闭防火墙答应我,所有节点都要关闭selinux答应我,所有节点都要关闭swap答应我,所有节点都要开启内核模块答应我,所有节点都要开启模块自动加载服务答应我,所有节点都要做内核优化答应我,所有节点都要清空 iptables 规则安装 containerd配置 kubernetes 源安装 kubeadm 以及 kubelet配置命令参数自动补全功能启动 kubelet 服务kubeadm 部署 master 节点安装 flannel 组件work 节点加入集群mas原创 2022-02-17 15:15:35 · 4529 阅读 · 5 评论 -
基于containerd二进制部署k8s-v1.23.3
文章目录前言k8s 组件环境准备创建目录关闭防火墙关闭selinux关闭swap开启内核模块分发到所有节点启用systemd自动加载模块服务配置系统参数分发到所有节点加载系统参数清空iptables规则配置 PATH 变量下载二进制文件部署 master 节点创建 ca 根证书部署 etcd 组件创建 etcd 证书配置 etcd 为 systemctl 管理分发证书以及创建相关路径启动 etcd 服务部署 apiserver 组件创建 apiserver 证书创建 metrics-server 证书配置原创 2022-02-12 17:09:41 · 3902 阅读 · 25 评论 -
Unable to register node “xxx“ with API server: Unauthorized
k8s二进制部署环境出现kubelet认证不了节点出现这个情况的时候,第一个反应是先看apiserver证书是不是过期了# 查看apiserver的service文件存储路径systemctl status kube-apiserver | grep load# 查找apiserver的启动参数,查看ca证书的存储路径cat /usr/lib/systemd/system/kube-apiserver.service# 查看EnviromentFile,或者直接可以看到启动参数,以实际的为准.原创 2021-12-23 13:18:22 · 9708 阅读 · 3 评论 -
k8s集群节点ping不通其他主机的ip
文章目录排查过程本地宿主机网络检查pod网络检查tcpdump检查网络检查flannel网卡检查宿主机网卡iptables检查解决方法测试环境服务出现问题,服务一直报错认证超时,检查pod,发现如下情况:异常节点的pod可以ping通本地宿主机的ip,但是ping本地宿主机的网关没有回显(通过tcpdump发现的)异常节点的pod可以ping通正常节点的pod异常节点的pod去ping正常节点的宿主机ip,正常节点使用tcpdump抓包,发现返回是正常,但是pod内部还是没有ping通的回显异原创 2021-05-28 14:58:34 · 3745 阅读 · 0 评论 -
Centos 7.6 使用 kubekey 部署 kubesphere v3.1.0
文章目录主要功能硬件要求Kubernetes版本要求配置主机之间的免密安装所需依赖下载KubeKey创建Kubernetes集群以及KubeSpherekk命令使用方式修改配置文件开始部署关于一些会出现的报错,以及解决方法集群验证主要功能安装 Kubernetes 集群支持在任何基础设施上部署 Kubernetes,提供在线与离线安装,支持添加 GPU 节点Kubernetes 资源管理提供 Web 控制台对接 Kubernetes 原生 API 快速创建与管理 Kubernetes 资原创 2021-05-09 22:54:24 · 2628 阅读 · 9 评论 -
node(s) didn‘t match node selector.
k8s集群中,有pod出现了 Pending ,通过 kubectl describe pod 命令,发现了如下报错0/4 nodes are available: 1 node(s) had taint {node.kubernetes.io/disk-pressure: }, that the pod didn't tolerate, 3 node(s) didn't match node selector.这是因为节点被打上了污点(pod的yaml文件中配置了 node selector .原创 2021-03-07 23:05:19 · 8142 阅读 · 0 评论 -
suse 12 二进制部署 Kubernetets 1.19.7 - 第13章 - 部署metrics-server插件
文章目录1.13.0、创建metrics-server证书和私钥1.13.1、生成metrics-server证书和私钥1.13.2、开启kube-apiserver聚合配置1.13.3、分发配置文件和秘钥到其他节点1.13.4、重启所有的kube-apiserver组件1.13.5、下载yaml文件1.13.6、配置yaml文件1.13.7、验证metrics-server功能metrics-server用于监测node,pod等的CPU,内存使用情况(hpa弹性伸缩依赖metrics-server插原创 2021-02-28 21:46:18 · 318 阅读 · 0 评论 -
suse 12 编译部署Keepalived + nginx 为 kube-apiserver 提供高可用
文章目录编译部署nginx下载nginx源码包编译nginx配置nginx.conf配置nginx为systemctl管理分发nginx二进制文件和配置文件启动kube-nginx服务编译部署keepalived下载keepalived源码包编译keepalived配置keepalived.conf创建健康检测脚本配置keepalived为systemctl管理分发keepalived二进制文件和配置文件查看VIP所在的机器以及是否ping通IPSERVICES192.168.72.5原创 2021-02-28 14:47:25 · 538 阅读 · 0 评论 -
suse 12 二进制部署 Kubernetets 1.19.7 - 番外篇 - 增加node节点
文章目录0、前景提要1、准备node节点环境1.0、修改配置脚本参数1.1、配置免密1.2、添加hosts解析1.3、修改主机名1.4、更新PATH变量1.5、安装依赖包1.6、关闭防火墙以及swap分区1.7、开启内核模块1.8、内核优化1.9、创建部署所需目录2、更新 kube-apiserver 证书2.0、创建新的kubernetes证书和私钥2.1、生成新的kubernetes证书和私钥2.2、分发新的kubernetes证书和私钥2.3、重启kube-apiserver3、部署flannel网络原创 2021-02-15 02:04:49 · 851 阅读 · 0 评论 -
suse 12 二进制部署 Kubernetets 1.19.7 - 第00章 - 环境准备
文章目录0、环境准备0.0、修改主机名0.1、添加hosts解析0.2、配置ssh免密0.3、发送hosts解析文件到其他节点,并修改hostname0.4、更新PATH变量0.5、安装依赖包0.6、关闭防火墙以及swap分区0.7、检查内核模块0.8、内核优化0.9、创建安装所需目录0.10、配置脚本参数文件0.11、环境配置脚本IPHOSTNAMEROLE192.168.72.39k8s-01master&node192.168.72.40k8s-02mas原创 2021-02-14 00:02:33 · 1213 阅读 · 0 评论 -
suse 12 二进制部署 Kubernetets 1.19.7 - 第01章 - 创建CA证书和kubectl集群管理命令
文章目录1、kubernetes集群部署1.0、创建CA证书和秘钥1.0.0、安装cfssl工具1.0.1、创建根证书1.0.2、创建证书签名请求文件1.0.3、生成CA证书和秘钥1.0.4、分发CA证书到所有节点1.1、部署kubectl命令1.1.0、分发kubectl命令到所有节点1.1.1、创建admin证书和秘钥1.1.2、生成admin证书和秘钥1.1.3、创建kubeconfig文件1.1.4、分发kubeconfig文件1、kubernetes集群部署注:若没有特别指明操作的节点,默认原创 2021-02-14 00:02:03 · 679 阅读 · 2 评论 -
suse 12 二进制部署 Kubernetets 1.19.7 - 第02章 - 部署etcd集群
文章目录1.2、部署etcd集群1.2.0、下载etcd二进制文件1.2.1、创建etcd证书和私钥1.2.2、生成etcd证书和私钥1.2.3、配置etcd为systemctl管理1.2.4、分发etcd证书和启动文件到其他etcd节点1.2.5、配置并启动etcd服务1.2.6、验证etcd集群状态1.2、部署etcd集群所有master节点需要etcd(复用master节点,也可以独立三节点部署etcd,只要kubernetes集群可以访问即可)1.2.0、下载etcd二进制文件k8s-0原创 2021-02-14 00:01:28 · 537 阅读 · 0 评论 -
suse 12 二进制部署 Kubernetets 1.19.7 - 第03章 - 部署flannel插件
文章目录1.3、部署flannel网络1.3.0、下载flannel二进制文件1.3.1、创建flannel证书和私钥1.3.2、生成flannel证书和私钥1.3.3、将pod网段写入etcd1.3.4、配置flannel为systemctl管理1.3.5、分发flannel证书和启动文件到所有节点1.3.6、配置并启动flannel服务1.3.7、查看已分配的pod网段列表1.3.8、查看各节点是否都存在flannel网卡1.3、部署flannel网络所有节点都需要flannel1.3.0、下原创 2021-02-13 01:47:13 · 488 阅读 · 0 评论 -
suse 12 二进制部署 Kubernetets 1.19.7 - 第04章 - 部署docker服务
文章目录1.4、部署docker1.4.0、下载docker二进制文件1.4.1、配置docker镜像加速1.4.2、配置docker为systemctl管理1.4.3、启动docker服务1.4.4、查看所有节点docker和flannel的网卡是否为同一网段1.4、部署docker所有节点都需要docker(复用master节点为node节点运行pod)1.4.0、下载docker二进制文件k8s-01:~ # cd /opt/k8s/packages/k8s-01:/opt/k8s/pa原创 2021-02-13 01:46:28 · 339 阅读 · 0 评论 -
suse 12 二进制部署 Kubernetets 1.19.7 - 第05章 - 部署kube-nginx
文章目录1.5、部署kube-nginx1.5.0、下载nginx二进制文件1.5.1、编译部署nginx1.5.2、配置nginx.conf1.5.3、配置nginx为systemctl管理1.5.4、分发nginx二进制文件和配置文件1.5.5、启动kube-nginx服务1.5、部署kube-nginxmaster节点需要kube-nginx使用Nginx 4层透明代理功能实现k8s节点(master节点和nginx节点)高可用访问kube-apiserver控制节点的kube-c原创 2021-02-13 01:45:47 · 291 阅读 · 0 评论