k8s修改etcd 2379端口
k8s集群中 ETCD 一般以 static pod方式部署在 master 0/1/2 节点上,路径一般为 /etc/kubernetes/manifests/etcd.yaml ,需要针对k8s集群中已经在运行的 ETCD 3 副本进行端口切换变更,从 2379 端口变更到 2378,2380 保持不变。
etcd.yaml示例:
apiVersion: v1 kind: P...Continue reading >>
k8s集群中 ETCD 一般以 static pod方式部署在 master 0/1/2 节点上,路径一般为 /etc/kubernetes/manifests/etcd.yaml ,需要针对k8s集群中已经在运行的 ETCD 3 副本进行端口切换变更,从 2379 端口变更到 2378,2380 保持不变。
apiVersion: v1 kind: P...Continue reading >>
最近遇到一个客户k8s测试集群经常崩溃,最终定位是etcd磁盘IO性能不足,最终替换成ssd盘解决,记录一下排查过程。
集群是跑在客户的共享虚机上,磁盘是机械硬盘,问题现象如下:
kube-system下涉及高可用的组件 kube-apiserver、kube-controller-manager、kube-scheduler 频繁重启,某些选主模式的组件、服务反复重启,频繁CrashLoopBack...
在k8s集群使用和运维中,每天都需要输入大量 kubectl 常用命令,其实我们可以通过定义 alias 别名和函数简化 kubectl 命令,比如使用k代替kubectl,po代替pods,svc代替services,kgpon代替kubectl get po -n [命名空间+资源名](以参数传入),并且添加kubectl命令自动补全,将这些别名和函数添加到 Shell 配置文件(如 ...
Continue reading >>Kubernetes Cordon
kubectl cordon 命令用于将节点标记为不可调度。这意味着 Kubernetes 调度器不会将任何新的 Pod 调度到该节点上。但是,已经在该节点上运行的 Pod 不会受到影响,它们将继续运行。在 kubectl cordon 节点后删除节点上已有 Pod,Kubernetes 会自动将新的 Pod 调度到其他可用节点上,从...
Continue reading >>Kubernetes 集群的性能测试是确保集群在高负载下稳定运行的重要步骤。Kubemark 和 ClusterLoader2 是 Kubernetes 社区提供的两个重要工具,专门用于模拟大规模集群负载和性能测试。以下是它们的详细介绍和使用方法:
Kubemark 是 Kubernetes 的一个性能测试工具,用于模拟大规模 Kubernetes 集群。它通过创建“空心节...
Continue reading >>Kubernetes 的污点 (Taint) 和容忍度 (Toleration) 是强大的机制,用于控制 Pod 在节点上的调度。它们允许对节点进行标记,并指定哪些 Pod 可以忽略这些标记并仍然被调度到这些节点上。 这对于实现节点隔离、资源专用以及处理节点维护非常有用,Kubernetes 污点和容忍度还可以与其他调度功能(如节点亲和性)结合使用。
污点 (Taint):
污点应用于节点,表示节点的...
Continue reading >>