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

使用 root 安装 minikube


安装 minikube 可以去官网 https://minikube.sigs.k8s.io/docs/start/ 下载对应的版本。 比如通过可以选择二进制的安装方式: curl -LO https://storage.googleapis.com/minikube/releases/latest

Kubernetes 之 RuntimeClass 介绍


RuntimeClass RuntimeClass是一个让Pod选择容器运行时的一个特性,用于多运行时环境。 可以在不同的 Pod 设置不同的 RuntimeClass,以提供性能与安全性之间的平衡。 例如,如果你的部分工作负载需要高级别的信息安全保证,你可以决定在调度这些 Pod 时尽量使它们在使

Kubernetes组件介绍


Kubernetes组件介绍 控制节点组件 APIServer:APIServer是整个集群的控制中枢(无状态,数据保存在etcd中,看LB调度到哪个节点中的APIServer),提供集群中各个模块之间的数据交换(比如Scheduler和Controller Manager需要进行数据交换,都需要通

更新 deployment 解决 field is immutable 问题


现象在执行./deploy.sh -s | kubectl apply -f -升级CoreDNS过程中,如果遇到以下提示:The Deployment &quot;coredns&quot; is invalid: spec.selector: Invalid value: v1.LabelSelector{MatchLabels:map[string]string{&quot;app.kube

prometheus格式化告警数值


Prometheus 可以使用 $value 变量将当前告警规则表达式的数值输出到告警信息里。但是有些浮点数值位数相当长,非常不便于阅读,对于强迫症患者来说更是不可接受的。如何让告警数值变得 “人类可读” 呢?有如下告警规则,对某个域名进行探测,访问时间超过 0.5秒 且持续 1 分钟以上则发送告警:- name: blackbox-exporter rules: - alert: D