Kubernetes
文章平均质量分 81
为什么叫k8s?因为k和s之间正好8个字母~~~
月巴左耳东
搞一下不就知道了
展开
-
k8s 1.28.2 集群部署 Thanos 对接 MinIO 实现 Prometheus 数据长期存储
Thanos 官网Thanos quay.io 镜像仓库Thanos 是一个强大的 Prometheus 扩展解决方案,能够解决 Prometheus 在大规模环境下的存储、扩展性和高可用性问题。它非常适合大规模集群监控需求,尤其是需要长期存储监控数据和全局查询。yaml 和 dashboard 的 json 文件可以从 gitee 自取:https://gitee.com/chen2ha/yaml_for_kubernetes/tree/master/thanos。原创 2024-10-29 14:21:06 · 906 阅读 · 0 评论 -
k8s 1.28.2 集群部署 NFS server 和 NFS Subdir External Provisioner
可以使用现有的 NFS 服务器动态创建 pv 和 pvc。原创 2024-10-25 23:08:48 · 964 阅读 · 0 评论 -
k8s 使用 containerd 作为容器运行时拉取 http 的 harbor 私有仓库镜像
文章目录@[toc]版本介绍报错内容解决方法主配置文件修改创建镜像仓库配置备注版本介绍k8s:v1.28.2containerd:1.6.33报错内容我的 harbor 用的是 http 的,因为是内网自己用,就没有配置 https 了,于是配置好镜像拉取的凭据,pod 拉取镜像会有以下的报错Failed to pull image "harbor.devops.icu/baseimage/prometheus:v2.54.1": failed to pull and unpack原创 2024-10-24 11:48:19 · 352 阅读 · 0 评论 -
k8s 1.28.2 集群部署 harbor v2.11.1 接入 MinIO 对象存储
Harbor 官网Harbor 是一个开源的制品仓库相比较 docker registry,它可以通过策略和基于角色的访问控制来保护镜像Harbor 是 CNCF 毕业项目,提供合规性、性能和互操作性,帮助您跨 Kubernetes 和 Docker 等云原生计算平台一致、安全地管理镜像。原创 2024-10-15 14:22:49 · 1346 阅读 · 0 评论 -
get-helm-3 脚本下载 helm 3 二进制文件
返回下面这类信息就可以开始使用 helm 了。返回下面的内容,说明安装完成了。安装指定版本 helm 3。原创 2024-10-14 09:32:28 · 343 阅读 · 0 评论 -
k8s 1.28.2 集群部署 MinIO 分布式集群
MinIO 官网MinIO 官方 linux 的部署文档以下内容从官方翻译MinIO 是一款软件定义的高性能分布式对象存储服务器所有 MinIO 部署都实施纠删码后端MinIO 有以下三种拓扑SNSD或者Standalone单节点驱动器除了底层存储卷实现的范围之外,它不会提供额外的可靠性或可用性。这些部署最适合本地测试和评估,或者没有可用性或性能要求的小型数据工作负载。SNMD或者单节点多驱动器性能、规模和容量要求较低的工作负载。原创 2024-10-10 19:53:55 · 1803 阅读 · 1 评论 -
k8s 1.28.2 集群部署 ingress 1.11.1 包含 admission-webhook
此时会返回 created,说明 ingress 的规则配置成功了。正常会返回下面的内容,是 nginx 的默认页面。通过官方 helm 做了一些修改。验证 ingress。原创 2024-09-26 15:36:26 · 667 阅读 · 0 评论 -
openeuler 22.03 lts sp4 使用 kubeadm 部署 k8s-v1.28.2 高可用集群
centos 7已经于2024 年 06 月 30 日停止维护,国内又信创热潮,对于后期来说,谁也不知道形势会发生什么样的变化目前国产操作系统有:openeuler(华为欧拉),anolis OS(阿里龙蜥),OpenCloudOS(腾讯),UOS(统信),kylin OS(银河麒麟/商业版的,开源版是 openkylin)至于为什么选择了openeuler,因为目前为止,只有openeuler不仅有 iso 镜像,还有wsldocker 镜像。原创 2024-09-17 09:27:49 · 2128 阅读 · 0 评论 -
cert-manager - kubernetes 集群中 TLS 证书管理工具
过两分钟检查一下服务是不是都起来了,这个主要看网络,看镜像的拉取速度了,默认的 namespace 是 cert-manager。查看 secret 就可以看到是否创建成功了。yaml 里面安装的 rbac 比较多。看到上面创建的 secret 了。检查是否有 crds 了。总共启动了三个 pod。原创 2024-09-16 16:35:13 · 545 阅读 · 0 评论 -
helm 部署单节点 mysql 8.0.36
helm 部署单节点 mysql 8.0.36原创 2024-07-29 19:51:30 · 373 阅读 · 0 评论 -
k8s 部署 metribeat 实现 kibana 可视化 es 多集群监控指标
k8s 部署 metribeat 实现 kibana 可视化 es 多集群监控指标原创 2024-07-09 00:12:01 · 1234 阅读 · 0 评论 -
k8s 使用 helm 文件部署 8.12.2 es 分角色集群
节点。原创 2024-07-04 20:00:50 · 738 阅读 · 0 评论 -
机器 reboot 后 kubelet 目录凭空消失的灾难恢复
可能之前有一些 kubeadm config 不同的地方,比如镜像的仓库什么的,可以和其他 worker 节点的对照一下,然后修改一下后,重启 kubelet。因为一些情况,需要 reboot 服务器,结果 reboot 机器后,kubeadm init 节点的 kubelet 目录消失了,整个。这篇文章做了 kubelet 的修复,目前集群是正常了,后期暂时不知道是否会有其他异常,若有异常,后续会继续更新博客。目录没有了,导致 kubelet 启动失败,etcd 和 apiserver 也没法启动。原创 2024-06-16 03:31:34 · 563 阅读 · 0 评论 -
rocky-8.9 使用 kubeadm 部署 1.26 版本 kubernetes 问题汇总
其他 master 节点没有 ca 证书,导致加入节点有以下报错(worker 节点加入不会有异常)把对应的证书分发到其他 master 节点,重新加入节点即可。这个就行了,我的部署文档里面有这一步,可以把。这是从 4.12 内核版本开始移除了。这个问题不影响,只需要执行。rocky-8.9 是。版本的内核,已经没有。这个内核参数了,执行。原创 2024-05-26 15:55:36 · 599 阅读 · 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 · 847 阅读 · 1 评论 -
二进制 containerd 1.7.0 部署 calico 报错
启动 calico 容器异常,查看 kubelet 日志,发现了下面的报错,可以看到,是缺少了。再次使用 runc 命令,就可以查看到 runc 的信息了。版本太低了,centos 7 的最新版是。之后,就可以正常安装 calico 了。尝试了 yum 安装,但是还是报错了。查看 runc 命令能不能用。原创 2024-01-07 16:25:01 · 614 阅读 · 0 评论 -
kubernetes-v1.23.3 部署 MySQL-5.7.31
pod 变成 running 之后,就可以通过 ip 加 nodeport 的方式来访问了,使用 mysql 数据库内的用户名和密码登录,可以自己先提前在 mysql 数据库里面创建好。mysql 的数据目录使用的 hostpath 的方式,通过亲和性来绑定节点,需要提前给对应的节点打上。原创 2023-10-03 14:27:38 · 496 阅读 · 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 · 602 阅读 · 0 评论 -
k8s 拉取镜像报错 no basic auth credentials
如果有多个私有仓库,这种方式创建的 Secret 更好用一点。原创 2023-10-02 16:40:00 · 1051 阅读 · 0 评论 -
kubernetes 集群利用 efk 收集容器日志
找到导航栏的 logtrail,然后在输入框输入 pod_name: “” 来看指定容器的日志。apply 之后,就可以使用任一节点的 ip 加上 30007 去访问 kibana 的界面。以下只提供 yaml 文件,大家自己按照下面的顺序整理,然后依次 apply 即可。不一定会立刻生成,具体要看实际的环境是否有 pod 产生日志,需要等一会再看看。创建完 pvc 后,需要确认一下 pvc 是否为 Bound 状态。编写 dockerfile。原创 2023-08-03 15:41:50 · 783 阅读 · 2 评论 -
kubernetes 部署 nginx-ingress-controller
在没有 ingress 规则的时候,我们去访问。开放出来的,也可以去其他节点验证。这个时候去访问域名,一样可以返回。下面来配置 ingress 规则。可以看到,暴露出来的端口是。返回状态码 200,表示成功。原创 2023-07-08 18:18:34 · 795 阅读 · 0 评论 -
k8s 学习笔记 - LimitRange 限制范围
LimitRange是限制namespace(命名空间)内可为每个适用的对象类别 (例如Pod或)指定的资源分配量(limits和requests)的策略对象一个LimitRange(限制范围)对象提供的限制能够做到:在一个namespace(命名空间)中实施对每个Pod或Container最小和最大的资源使用量的限制。在一个namespace(命名空间)中实施对每个能申请的最小和最大的存储空间大小的限制。在一个namespace(命名空间)中实施对一种资源的requests(申请值)和。原创 2023-06-03 23:17:43 · 1654 阅读 · 0 评论 -
基于 cri-dockerd 二进制部署 kubernetest-v1.26.3
基于 cir-dockerd 二进制部署 kubernetest-v1.26.3原创 2023-05-01 13:57:26 · 1979 阅读 · 2 评论 -
kubernetes dns 解析超时问题排查
kubernetes dns 解析超时问题排查原创 2023-03-28 19:40:26 · 1751 阅读 · 1 评论 -
二进制 k8s 集群下线 worker 组件流程分析和实践
二进制 k8s 集群下线 worker 组件流程分析和实践原创 2023-02-13 19:28:55 · 927 阅读 · 2 评论 -
二进制 k8s 集群下线 master 组件流程分析和实践
二进制 k8s 集群下线 master 组件流程分析和实践,需要对于 k8s 组件之间的工作有一定的了解原创 2023-02-13 18:15:27 · 698 阅读 · 1 评论 -
Kubernetes 集群使用 GlusterFS 作为数据持久化存储
Kubernetes 集群使用 GlusterFS 作为数据持久化存储原创 2023-02-03 21:13:29 · 477 阅读 · 0 评论 -
metrics-server - unable to fully collect metrics
metrics-server - unable to fully collect metrics原创 2023-02-02 17:07:35 · 744 阅读 · 0 评论 -
kubernetes-dashboard 实现 http 访问以及免 token 登录
kubernetes-dashboard 实现 http 访问以及免 token 登录原创 2023-02-01 20:55:54 · 2663 阅读 · 0 评论 -
kubetpl - kubernetes 模板管理工具
kubetpl - kubernetes 模板管理工具原创 2023-01-22 19:43:06 · 1016 阅读 · 1 评论 -
containerd 镜像构建工具 -- nerdctl 和 buildkit
containerd 镜像构建工具 -- nerdctl 和 buildkit原创 2022-11-27 19:22:02 · 3588 阅读 · 0 评论 -
k8s namespace 一直处于 Terminating 状态的解决方法
删除 terminating 状态的 namespace原创 2022-10-24 10:24:48 · 1107 阅读 · 0 评论 -
使用 shell 脚本二进制部署 k8s 环境 [支持 docker 和 containerd]
使用 shell 部署二进制 k8s 集群,支持 docker 和 containerd原创 2022-10-02 21:05:04 · 1605 阅读 · 1 评论 -
kubeadm 部署的 k8s 增加 ip 并重新生成证书
kubeadm 部署的 k8s 增加 ip 并重新生成证书原创 2022-08-20 17:54:57 · 2089 阅读 · 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 · 9626 阅读 · 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 · 4683 阅读 · 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 · 3958 阅读 · 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 · 10366 阅读 · 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 · 4087 阅读 · 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 · 2731 阅读 · 9 评论