自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

海鸥

在网络的世界里留下彩色印记

  • 博客(193)
  • 问答 (1)
  • 收藏
  • 关注

原创 K8S中使用 reloader 实现滚动升级

K8S中使用 reloader 实现滚动升级

2026-01-07 13:47:51 780

原创 Job 对应的 Pod 运行成功后未被删除 小结

核心结论:Completed 状态的 Job/Pod 主要占用节点磁盘(卷数据)和Etcd 元数据,挂载卷的场景下磁盘占用是核心风险;最佳实践为所有 Job 配置自动清理;CronJob 严格限制;挂载 PVC 的 Job 需手动/自动释放存储资源,避免持久化存储浪费。/bin/bashset -e# 删除所有Completed Pod# 删除所有Completed状态的Jobecho "清理完成!

2025-12-18 09:03:48 721

原创 in argocd ‘/tmp/_argocd-repo/../.git/index.lock‘: No space left on

可以补充完整的执行环境(如 Pod 名称固定前缀、节点权限等),我会针对性完善。(仅拥有者有写入+执行权限,无读取权限),且你当前执行命令的用户不是。ArgoCD 支持配置仓库缓存的 TTL(过期时间),修改。临时文件,最终 checkout 失败。(目录属主),导致无法遍历目录统计大小。若仅需清理空间,无需统计大小,可直接用。,导致 Git 拉取代码时无法创建。用户(Pod 内默认属主),或用。的 Deployment,为。用户强制删除目录(Pod 内。Deployment 中,给。

2025-12-17 12:45:08 928

原创 ArgoCD 中无用 ReplicaSet 问题全解析

基础配置:所有 Deployment 统一设置,从根源控制版本数;日常运维:通过 CronJob 每天清理超 24 小时的无用 ReplicaSet;应用生命周期:删除 ArgoCD 应用时启用级联删除,避免残留;风险兜底:清理前先通过--dry-run验证,或保留最近 1 天的 ReplicaSet 不清理。ArgoCD 中无用的 ReplicaSet(无 Pod 运行的旧版本)

2025-12-10 10:37:03 691

原创 Descheduler for Kubernetes

基础配置image:tag: v0.29.0 # 适配 K8s 1.24+,按需选择版本# 调度策略配置(核心)policy:profiles:- name: "RemoveDuplicates" # 驱逐重复 Pod(同一节点多副本)args:- name: "LowNodeUtilization" # 驱逐低资源利用率节点的 Podargs:cpu: 20 # 节点CPU利用率低于20%触发memory: 20cpu: 50 # 目标利用率50%memory: 50。

2025-12-09 13:16:28 655

原创 比较 SeaweedFS 与 Longhorn

SeaweedFS是主打高吞吐的分布式文件/对象存储,Longhorn是K8s原生的分布式块存储,二者适配K8s场景的性能特点、核心优缺点差异显著,以下结合具体数据、适用场景及官方信息展开详细对比:二者的性能优化方向不同,SeaweedFS侧重小文件高吞吐和快速寻址,Longhorn侧重块存储的一致性与稳定性,具体性能数据如下:

2025-11-12 14:08:14 847

原创 在k8s中seaweedfs中,weed 命令详细举例说明

在 Kubernetes 环境中使用weed命令行工具操作 SeaweedFS 时,需先确保weed客户端能连接到集群内的 SeaweedFS 服务(通常是 Filer 或 Master)。以下是,涵盖文件/目录的上传、下载、删除、查看等操作,结合 Kubernetes 环境的网络特性进行说明。

2025-11-12 13:07:44 699

原创 在k8s中部署seaweedfs,上传文件到seaweedfs方法

若已通过 SeaweedFS CSI 驱动创建了 PV/PVC,可将卷挂载到 Pod 中,直接在 Pod 内读写文件(文件会自动存储到 SeaweedFS)。确保 S3 Gateway 已部署(通常作为 Deployment 或 StatefulSet),并通过 Service 暴露端口(默认 8333)。在 K8s Pod 中通过 FUSE 挂载 SeaweedFS 目录,直接像操作本地文件一样上传,适合应用需要直接读写文件系统的场景。等工具上传,适合习惯 S3 操作的场景。(注意:需确保容器有。

2025-11-05 10:12:25 550

原创 新的pvc是否可以指定pv, 而这个pv已经被另一个pvc绑定,状态为bound

结论:新 PVC 无法指定已处于Bound状态的 PV(已绑定其他 PVC),Kubernetes 会主动拒绝该绑定请求。核心逻辑:PV 与 PVC 的绑定是排他性的,避免多业务共享同一卷导致数据安全风险。数据复用方案:需通过“快照 + 克隆”创建新卷,或在Retain策略下释放 PV 后复用(需手动操作)。

2025-10-14 16:44:01 374

原创 用helm安装SeaweedFS时,指定了persistentVolumeClaim

在使用 Helm 安装 SeaweedFS 时指定 persistentVolumeClaim(PVC)配置,核心意义是为 SeaweedFS 的关键组件(如 master、filer、volume 节点)提供持久化存储,确保数据在 Pod 重启、重建或集群故障时不丢失。

2025-10-14 09:17:12 571

原创 Descheduler for Kubernetes(K8s 重调度器)

Descheduler 的行为由ConfigMap配置(默认名称# descheduler-config.yaml(ConfigMap 内容) apiVersion : v1 kind : ConfigMap metadata : name : descheduler - config namespace : kube - system data : policy.yaml : | apiVersion: "descheduler/v1alpha2"

2025-10-10 16:01:39 634

原创 在K8s中,seaweedFS 和 Longhorn 的比较

SeaweedFS和Longhorn在K8s中的使用有以下一些比较:

2025-10-10 10:02:29 475

原创 seaweedfs中,通过 Filer 接口写入测试文件,会存储到哪里

从用户视角(通过 Filer 接口访问):文件位于逻辑路径。从系统存储视角:文件数据分散存储在一个或多个 Volume Server 的数据卷中,由 Filer 统一管理映射关系。这也是为什么通过能看到文件(访问 Filer 的逻辑路径),但 Pod 内看不到的核心原因——若 Pod 挂载的逻辑路径与写入路径不匹配,就无法通过 Pod 内的目录访问到文件。

2025-10-09 14:48:42 395

原创 Helm Chart 中,SeaweedFS的 master.data.type 选择

对比维度hostPath数据可靠性低(依赖单节点磁盘)高(依赖集群级存储)部署复杂度简单(无需提前配置)稍复杂(需 PV/StorageClass)动态调度支持不支持(Pod 迁移后数据丢失)支持(PV 可跟随 Pod 调度)高级特性(快照等)不支持支持(依赖后端存储)适用场景开发测试、临时场景生产环境、正式部署建议开发测试用hostPath快速部署;生产环境必须用。

2025-09-30 15:34:30 898

原创 主流工作法简介

这些方法各有侧重,实际应用中常结合使用(例如用SMART设定OKR,用PDCA优化Scrum迭代,用80/20优先级配合GTD执行),需根据具体场景灵活选择。

2025-09-19 16:47:23 442

原创 从S3上以目录形式下载文件

从S3上可以以目录形式下载文件。你可以使用AWS命令行工具、AWS SDK或者一些第三方工具来实现。

2025-09-05 14:22:39 442

原创 在S3中,如何指定一个文件不受lifecycle的影响,不要被删除。

在S3中,要确保一个文件不受生命周期(Lifecycle)规则影响(即不被自动删除或转换存储类),核心思路是,或。

2025-09-05 14:19:31 865

原创 Argo CD 中部署的 Helm Chart 中的 Job 不定时自动重启

在 Argo CD 中部署的 Helm Chart 中的 Job 不定时自动重启,通常与以下几种机制或配置有关。Argo CD 默认会定期检查集群状态与期望状态的差异(即 “自动同步”),如果发现 Job 不存在或未完成,可能会触发重新部署。若 Helm Chart 中的其他资源(如 ConfigMap、Secret)发生变化,可能触发整个 Chart 的重新部署。若 Job 被标记为不健康,可能触发重新部署。若 Chart 中意外混入了 CronJob 配置,会导致定时触发。

2025-07-16 08:59:28 688

原创 在 Jenkins Master 上设置一个全局环境变量

所有 Agent(节点)和后续的 Pipeline 都可以访问它。如果有进一步问题(如权限管理、变量覆盖优先级等),可以继续探讨!这段 Groovy 脚本定义了一个函数。中添加或修改一个环境变量(

2025-07-10 14:42:52 822

原创 helm chart的chart.yaml 中,version: 0.0.8, appVersion: “0.0.6“ 区别

在 Helm Chart 的。主版本.次版本.补丁。

2025-07-02 14:04:24 474

原创 S3中 client.get_usage_stats() 和 client.list_buckets() 区别详解

是 Amazon S3 客户端的两个不同方法,用于获取不同类型的信息。:实际上,AWS SDK 中并没有。

2025-06-27 15:52:29 383

原创 K8S: etcdserver: too many requests

通过以上步骤,您可以有效解决etcd请求过载问题,并优化Kubernetes集群的长期稳定性。如果问题持续存在,建议进一步分析具体请求来源,可能需要对特定组件进行代码级优化。错误时,表明etcd数据库接收到的请求量超过了其处理能力。etcd作为Kubernetes的核心组件,存储着集群的所有状态数据,处理请求过载会导致集群不稳定。对etcd集群进行滚动更新时,每次只更新一个节点,确保集群可用性。当Kubernetes集群出现。

2025-06-23 14:13:25 1544 1

原创 Helm 回滚部署操作指南

当新版本部署出现问题(如配置错误、服务异常或功能故障)时,通过回滚可快速恢复到之前稳定的版本,减少故障影响时间。默认情况下,Helm 回滚会使用历史版本的配置。若需保留当前配置(如仅回滚代码而非配置),添加。通过以上步骤,可高效完成 Helm 部署的回滚操作,保障系统在出现问题时快速恢复到稳定状态。命令回滚到指定的历史版本(

2025-06-19 09:18:22 672

原创 Kubernetes证书过期后更新证书的过程中,正在运行的 Pod 是否受有影响

通过合理规划和操作,可以最大程度减少证书更新对 Pod 的影响。

2025-06-17 09:49:30 616

原创 Helm 的 Chart.yaml 文件中,version 和 appVersion 详解

【代码】Helm 的 Chart.yaml 文件中,version 和 appVersion 详解。

2025-06-16 10:08:32 737

原创 Helm Chart 中values.yaml 和通过 -f(或 --values)讲解

Chart 自带的默认配置文件,位于 Chart 根目录。它定义了所有可配置参数的默认值,是 Chart 的一部分,随 Chart 一起分发。参数指定的外部 YAML 文件。用于覆盖 Chart 中默认的配置值,优先级高于 Chart 自带的。)参数指定的 YAML 文件是互补关系,共同控制 Chart 的配置参数。参数,可实现 Chart 的灵活配置与环境无关性。部分,确认参数是否按预期覆盖。在 Helm Chart 中,

2025-06-06 09:11:35 681

原创 S3 存储进行健康检查

在 AWS 环境中,对 S3 存储进行全面健康检查是保障数据安全与合规的重要工作。

2025-05-30 11:12:08 430

原创 在Helm Chart中指定备用Registry的访问优先级

通过 Init Container 实时检查 Registry 可用性,按顺序尝试主/备 Registry,将可用地址写入共享卷供主容器使用。,它能在运行时动态检测 Registry 可用性,实现真正的优先级控制,且无需依赖外部工具。中定义优先级顺序,通过 Helm 模板逻辑选择第一个可用的 Registry。在 Helm Chart 中指定备用 Registry 的访问优先级,需要通过。Hook 在部署前检查 Registry 可用性,并修改 Chart 值。

2025-05-19 09:49:03 328

原创 Helm Chart 中配置多个 Docker Registry 地址以实现备用访问

通过以上方法,你可以在 Helm Chart 中灵活配置多个 Docker Registry 地址,实现高可用性的镜像拉取策略。

2025-05-19 09:44:40 575

原创 kubelet 清理资源以缓解磁盘压力

容器垃圾回收流程:Kubelet会清理可以驱逐的容器,包括那些状态不是RUNNING且在本轮GC前创建的容器。对于普通容器,Kubelet会根据MaxPerPodContainer与MaxContainers的设置,按照LRU策略,从Pod的死亡容器列表删除一定数量的容器,直到满足配置需求;镜像清理过程:kubelet会识别不再被任何容器引用的镜像(未使用镜像),并按照最近使用时间排序,优先删除最旧的镜像,对于新拉取的镜像,会存活一定时间(默认2分钟)后才执行清理,以防止刚拉取的镜像就被清理掉。

2025-04-29 15:54:34 1691

原创 在K8S迁移节点kubelet数据存储目录

在 Kubernetes(k8s)中迁移节点kubelet数据存储目录是一项需要谨慎操作的任务,因为kubelet负责管理节点上的容器运行时。

2025-04-29 14:45:07 808

原创 给女友讲懂 Kubernetes 的方法

用一些比喻故事来给女友讲懂Kubernetes的方法,希望能帮助她轻松理解这个复杂的概念:此女友非女友,是指外行人能快速的了解什么是Kuberneters。

2025-04-21 16:07:34 406

原创 k8s 调整Node节点 Max_Pods

默认情况下,Kubernetes集群中一个Node最多能起110个Pod。这是基于性能和资源管理的考虑,以确保Kubernetes集群的稳定性和可靠性。

2025-04-18 14:53:17 936

原创 rclone copy 上传情况解析

当使用rclone命令进行文件上传且不额外指定参数时

2025-04-17 13:57:06 1539

原创 K8S_ResourceQuota与LimitRange的作用

【代码】K8S_ResourceQuota与LimitRange的作用。

2025-04-15 14:57:38 706

原创 详解S3中的Glacier 存储类

详解S3中的存储类

2025-04-10 14:16:38 1004

原创 S3中的s3cmd 常用命令

s3cmd 是一个在命令行环境下与 Amazon S3 或兼容 S3 的存储服务进行交互的实用工具。

2025-04-09 13:44:35 1244

原创 15个Kubernetes隐藏技巧

Kubernetes蕴藏着许多能提升效率的实用技巧

2025-04-08 08:20:14 364

原创 aws s3api 常用命令

AWS S3API 是 Amazon Web Services(AWS)提供的用于与简单存储服务(S3)进行交互的命令行工具

2025-04-07 10:42:29 858

原创 安装 AWS CLI

aws s3api是 AWS CLI(Amazon Web Services Command Line Interface)中的一部分,用于与 Amazon S3 服务进行交互的 API 命令集合。若要使用aws s3api,你需要安装 AWS CLI。

2025-04-03 16:05:31 1968

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除