-
解决 Kubernetes 节点上的挂载点卡住问题:一次深入探索
在Kubernetes的日常操作中,我们可能会遇到各种各样的挑战和问题。最近,我遇到了一个特别棘手的问题:即使Pod 和Persistent Volume (PV) 已经被删除,它们之间的挂载关系仍然存在,导致整个集群的节点都无法使用 df -h 命令。本文将分享我是如何发现并解决这个问题的。 在Kubernetes集群的日常维护中,我们发现所有节点都无法正常执行 df -h 命令。这个命令通常用…... admin- 0
- 0
- 173
-
K8S中使用Ingress或者istio配置后端txt文件域名验证istio
方案一:Ingress配置 apiVersion: networking.k8s.io/v1 kind: Ingress metadata: annotations: nginx.ingress.kubernetes.io/cors-allow-credentials: 'true' nginx.ingress.kubernetes.io/cors-allow-headers:…... admin- 0
- 0
- 296
-
从k8s容器丢包事件中掌握内核参数优化技巧
在k8s的使用场景中,容器不是仅仅能运行就算ok,往往还需要进行容器的内核参数优化和应用程序参数的调优,如在高并发的业务场景下,运行一个java程序,我们不仅需要对其JVM参数进行调优,而且需要对其所在的容器进行内核参数优化,这篇文章主要通过一次容器丢包事件介绍容器中内核参数优化的方法。 线上业务反馈接口偶发性返回502状态码,从请求日志和监控系统看,有好几个微服务的接口都有出现,期间容器资源使用…... 装系统的sre运维- 0
- 0
- 155
-
记一次机房搬迁后网络改造引起的K8S内部容器无法访问外部网络
最近公司规模扩大,原办公室已经无法容纳更多的员工,公司高层决定搬迁办公室,同时也需要搬迁,并且在现有的电信桥接动态公网IP出口的基础上需要再增加一条移动专线,现在有2台交换机,也无法支持新的办公,需要再采购一个交换机。现在办公和服务器在一个网段192.168.2.0/24。我在了解业务后,对新办公室进行了如下改造: 1、首先网段肯定不够支撑新办公区的网络,于是改造成大内网192.168.0.0/1…... admin- 0
- 0
- 160
-
在 Kubernetes 中重启 pod 的 3 种方法
在 Kubernetes 中,管理和维护容器化应用程序是一项重要的任务。其中一个常见的操作是重启 Pod,无论是为了解决问题还是应用程序的更新。在本文中,我们将深入探讨在 Kubernetes 中重启 Pod 的三种方法,并为每种方法提供详细的步骤和示例。 kubectl 命令 首先,我们需要登录到运行着 Kubernetes 集群的主机或者使用远程访问工具来连接到集群。 使用 kubectl 命…... admin- 0
- 0
- 469
-
Ingress获取真实IP
一般情况下,经过ingress的请求会携带headerX-Real-IP,用户可根据header解析出真实访问IP。 特殊情况,用户请求可能经过多个nginx才达到ingress, 通过上述方法得到的并不是用户的真实IP。 request->nginx->…->ingress->backend 方案1 use-forwarded-headersnginx-ingress官方…... admin- 0
- 0
- 376
-
Kubernetes (k8s) 管理工具 kubectl 自动补全设置方法
1.安装bash-completion工具 yum install bash-completion -y 否则报错: -bash: _get_comp_words_by_ref: command not found 2.执行bash_completion source /usr/share/bash-completion/bash_completion 3.加载kubectl completion…... admin- 0
- 0
- 504
-
k8s网络插件之calico两种网络模式
一、calico概述 1、k8s网络之Calico网络2、k8s网络组件calico详解3、calico的组件、架构与原理4、calico的两种网络模式BGP和IP-IP性能分析 二、IPIP与BGP两种网络模式对比 IPIP网络: 流量:tunl0设备封装数据,形成隧道,承载流量 适用网络类型:适用于互相访问的Pod不在同一个网段中,跨网段访问的场景,外层封装的IP能够解决跨网段的路由问题。 效…... admin- 0
- 0
- 848
-
K8S集群中Pod的Evicted状态原因
在Kubernetes(K8S)中,Pod的Evicted状态表示Pod已经被驱逐,并不再运行在节点上。Pod驱逐主要是由于资源约束,如内存不足或磁盘空间不足。以下是详细原理、原因和解决方案。 原理: Kubernetes集群会监控节点资源使用情况,当资源不足时,kubelet会触发Pod驱逐过程。驱逐过程会根据优先级和资源使用情况选择要驱逐的Pod。一旦Pod被驱逐,其状态将变为Evicted,…... admin- 0
- 0
- 788
-
解决 Kubernetes 命名空间卡在Terminating终止状态的问题
几个月前,我在卸载 Ceph 集群(使用 Rook 挂载)时遇到了删除命名空间的问题。 基础 我认为我已经正确删除了集群中的 Ceph 对象,最后简单地删除了命名空间: kubectl --context=sandbox delete ns rook-ceph 然而,当我尝试验证它是否确实被删除时: kubectl --context=sandbox get ns rook-ceph NAME …... 装系统的sre运维- 0
- 0
- 201
-
nginx-ingress代理websocket配置示例
官方文档中说明websocket不需要特别的配置,但需要在注解中配置以下三项 再ingress-nginx的官方文档中说明websocket不需要特别的配置,但需要在注解中配置以下三项 nginx.ingress.kubernetes.io/proxy-http-version: "1.1" nginx.ingress.kubernetes.io/proxy-read-time…... admin- 0
- 0
- 259
-
Kubernetes集群 for openEuler 22.03 LTS 二进制手动部署
Kubernetes集群 for openEuler 22.03 LTS 二进制手动部署 本文档介绍在 openEuler 操作系统上,通过二进制部署 K8S 集群的一个参考方法。 说明:本文所有操作均使用root权限执行。 一、集群状态 本文所使用的集群状态如下: 集群结构:6 台openEuler 22.03 LTS系统的虚拟机,3 个 master 和 3 个 node 节点。 物理机:op…... 装系统的sre运维- 0
- 0
- 192
-
nsenter命令解决容器内部命令不足排查网络的问题
在docker或者container中,为了尽可能缩减镜像大小,常常不会包含一些常用的工具,类似ping,curl,tcpdump等,虽然精简了镜像,但如果我们需要在容器内部测试网络联通性时,没有这些工具就非常的头疼。其实容器内部和主机之间的网络环境是互相隔离的,处于独立的命名空间下,那如果能在主机上切换命名空间,就可以在主机上以容器的网络环境进行操作,就可以利用主机上的工具,利用这个思想,我们就…... admin- 0
- 0
- 188
-
新手必看:Kubernetes快速入门——利用vscode快速生成YAML清单!
在使用Kubernetes时,我们经常需要搜索Kubernetes YAML文件以便部署测试Pod、Deployment或其他对象。毕竟,没人愿意每次都手动编写YAML文件的每一行,对吧? 让我们来看看一些简化YAML创建过程的Kubernetes技巧。 使用Kubernetes扩展自动生成YAML 最简单的创建Kubernetes YAML文件的方法之一是使用Visual Studio的Kube…... admin- 0
- 0
- 167
-
Kubernetes etcd 定时备份及恢复方案
etcd 是一个高可用的分布式键值存储系统,在Kubernetes集群中用于存储和管理集群的所有关键信息,如配置数据、元数据、状态信息等。简而言之,etcd 存储了Kubernetes集群本身的所有数据,包括Pod、Service、Node、Namespace 等对象的元数据和状态。可以说,只要我们有了etcd的备份文件,就可以恢复Kubernetes集群的状态。 虽然etcd的数据是默认是存储在…... admin- 0
- 0
- 190
-
解决请求实体上传过大 ingress 报错 413 Request Entity Too Large的问题
经常我们会遇到上传超过1M左右的文件,但是向K8S中的Ingress nginx发起请求的时候会报错413 Request Entity Too Large。 具体原因是因为ingress nginx 默认 client_max_body_size为 1M, 超过 1M 后会报错 413 Request Entity Too Large。 解决办法 找到k8s集群 的ingress路由规则配置,编…... 装系统的sre运维- 0
- 0
- 176
-
Kubernetes Secrets 与跨命名空间访问指南
Kubernetes Secrets 与跨命名空间访问指南 Kubernetes 是一个强大的平台,旨在大规模管理容器化应用程序,其中 Secrets 作为安全管理敏感数据(如密码、API 令牌和加密密钥)的关键功能。默认情况下,Secrets 仅限于创建它们的命名空间,限制了它们在命名空间之间的可访问性。 在本指南中,我们将探讨跨命名空间安全高效共享 Secrets 的方法,讨论安全考虑,并提供…... 装系统的sre运维- 0
- 0
- 227
-
k8s集群经历断电后无法启动的故障处理分享
故障应急总让人充满心跳,有时交换机故障、有时光缆被挖断,这次却是机房意外断电。。。 前阵子有个兄弟求助,他们的机房遭遇了意外断电。恢复供电后,k8s集群却无法启动。经过一番“截图分析诊断法”的默契配合,最终成功解决了故障。今天通过这篇文章,和大家分享一下这个过程。 故障发生后,很多指令无法正常回显,容器的元数据也无法正常加载,故障现象主要呈现为如下3点:1. 执行指令的时…... 装系统的sre运维- 0
- 0
- 253
-
从k8s的事件聊聊for循环
序言 见过的人越多,就越喜欢狗。 感觉没有秋天,突然一下就凉凉的,偶尔还下个雨。k8s事件和for循环 人人都爱for循环,无论是开发还是运维,经常随便来个for循环来执行一些脚本,例如进行一个测试。 for i in `seq 1000`;do curl…... admin- 0
- 0
- 110
-
Kubernetes CoreDNS 无法解析外网域名的问题
k8s master机器环境 # cat /etc/resolv.conf nameserver 172.16.100.1 pod中的resolv.conf文件如下$ cat /etc/resolv.conf # Generated by NetworkManager nameserver 10.96.0.10 # 此ip为coredns的IP地址 排查过程 当pod需要解析一个域名时,如果域名是…... admin- 0
- 0
- 459
-
Kubernetes重要概念:Service详解
1 Service相关概念 1.1 什么是Service? 在 Kubernetes 中,Service 是一种抽象的资源,它提供了稳定的访问接口,将外部或集群内部的流量路由到对应的 Pod 上。Pod 是 Kubernetes 中的基本调度单元,但它们是临时的,IP 地址和生命周期都可能发生变化。Service 为 Pod 提供一个稳定的访问方式,解决了 Pod 的动态 IP 问题。…... 装系统的sre运维- 0
- 0
- 183
-
Kubernetes中Minikube与Kubeadm的关键区别是什么?
Kubernetes中Minikube与Kubeadm的关键区别是什么? ❝ 选择正确的Kubernetes工具:理解Minikube和Kubeadm用于开发和生产环境 Kubernetes,作为自动化部署、扩展和管理容器化应用程序的领先开源平台,拥有多种工具来简化集群的设置和管理。 在这些工具中,Minikube和Kubeadm作为两个受欢迎的选项脱颖而出。它们在Kubernetes生态系统中服…... admin- 0
- 0
- 192
-
一招完美解决k8s调度不均问题
01 前言 在近期的工作中,我们发现 k8s 集群中有些节点资源使用率很高,有些节点资源使用率很低,我们尝试重新部署应用和驱逐 Pod,发现并不能有效解决负载不均衡问题。 02 调度不均衡的原因 1.1 sceduler 不是根据node负载进行调度 k8s 调度器默认会根据Pod cpu和内存request 值调度,Pod r…... admin- 0
- 0
- 323
-
超实用!k8s网络抓包技巧,事半功倍
在k8s中,每个Pod都拥有独立的网络命名空间,这意味着它们有自己的网络接口、IP 地址和路由表。容器之间通过共享同一个网络命名空间进行通信,这种隔离使得网络问题的排查变得更加复杂,但同时也提供了灵活性和安全性。 既然Pod拥有独立的命名空间,那我们不妨借助工具进入其命名空间进行网络抓包,这样就省去了进入Pod内部抓包的麻烦。那么,具体该怎么…... 装系统的sre运维- 0
- 0
- 176
❯
个人中心
购物车
优惠劵
今日签到
有新私信
私信列表
搜索
客服
扫码打开当前页
返回顶部
幸运之星正在降临...
点击领取今天的签到奖励!
恭喜!您今天获得了{{mission.data.mission.credit}}积分
我的优惠劵
-
¥优惠劵使用时效:无法使用使用时效:
之前
使用时效:永久有效优惠劵ID:×
没有优惠劵可用!