k8s 中对 Pod 进行抓包


以 nginx 为例,找到待抓包的 pod 及分布在哪个节点上: # kubectl get pods -o wide NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE

debug 调试运行中的 Pod


在 pod 运行的时候,除了可以通过kubectl describe pod查看 pod 的事件信息,或者通过kubectl exec外,还可以通过临时容器来进行调试。 使用临时容器来调试 可以使用 kubectl debug 命令来给正在运行中的 Pod 增加一个临时容器。 首先,像示例一样创建一

ingress-nginx 部署 defaultbackend


ingress-nginx 部署 defaultbackend 介绍 defaultBackend 是一种默认后端服务,用于处理 ingress-nginx 控制器无法理解的所有 URL 路径和主机(即所有未映射 Ingress 的请求)。 部署 部署 defaultbackend 有几种方法。如果

containerd 配置私有仓库


配置 containerd 编辑 /etc/containerd/config.toml 文件: [plugins."io.containerd.grpc.v1.cri".registry.configs] # 内部私有仓库认证信息 [plugins.

Service和Headless Service的区别


Service 和 Headless Servic 的区别 普通的 Service,只能通过解析 service 的 DNS 返回 service 的 Cluster IP。 headless service作为service的一种类型,顾名思义无头服务,无头 Service 不会获得集群 IP,k

kubernetes POD生成的域名不是按照pod name来生成


问题 在使用nslookup测试 Pod 的 DNS 记录发现 Pod 的域名没有按照<pod name>.<svc name>.<namespace>.svc.cluster.local的格式来生成,而是<pod name>变成了<IP Address>的形式做 DNS 解析域名。解析示例如下:

Helm 逻辑控制


https://helm.sh/docs/chart_template_guide/control_structures/ Helm的模板语言提供了以下控制结构: if/else, 用来创建条件语句 with, 用来指定范围 range, 提供"for each"类型的循环 除了这些之外,还提供了一

Helm内置变量、常用函数


Helm内置变量的使用 https://helm.sh/zh/docs/chart_template_guide/builtin_objects/ Release.Name:实例的名称,helm install指定的名字 Release.Namespace:应用实例的命名空间 Release.IsU

failed to verify certificate_ x509 错误


问题 执行kubectl get pods的时候出现以下内容, E0410 22:54:36.968355 2502 memcache.go:265] couldn't get current server API group list: Get "https://192.168.4.5:64

kubeadm单机版部署


基本环境配置 配置信息 备注 系统版本 rocky linux 8.7 Pod网段 10.0.0.0/8 Service网段 172.16.0.0/12 Runtime配置 先卸载已经安装的docker dnf remove docker \ docker-cli