实验环境 系统 主机 网卡 centos7.9.2009 k_master ens33 192.168.50.20 centos7.9.2009 k_node ens33 192.168.50.21 都是最小化安装的 基础环境准备(所有节点都需要配置的) 配置yum源 因为centos7 的yum源 ...
调度资源碎片化详解 调度资源碎片化是指:由于每个Pod的Request设置不合理,导致节点上虽然实际物理内存还有大量空闲,但因为Request的"虚占"导致无法调度新Pod的现象。 这类似于硬盘文件系统的碎片化——明明总空闲空间很大,但因为没有连续的大块空间,无法存储大文件。 核心概念:Reques ...
这两个不可以配置一样的值,Pod的内存限制必须大于JVM的最大堆内存(-Xmx)。 将Pod内存限制和JVM堆内存都设为8G,几乎必然导致Pod因内存不足(OOMKilled)而被杀死。这是因为JVM运行时占用的总内存,除了你用-Xmx设置的堆内存,还包括许多其他“非堆”部分,而这些开销并没有被计算 ...
前言 Kubernetes(K8s)是容器编排的事实标准,本文带你实战 Spring Boot 微服务在 K8s 中的自动化部署。 一、K8s 核心概念 Pod:最小调度单元,一个 Pod 可包含多个容器 Deployment:声明 Pod 副本数和更新策略 Service:为 Pod 提供稳定的访 ...
Docker BuildKit 深度解析 BuildKit 是 Docker 的下一代构建引擎,从 Docker 18.09 版本开始引入,现已默认启用。它重新设计了构建系统,提供了更好的性能、安全性和可扩展性。 一、核心架构与优势 传统构建器 vs BuildKit 特性 传统构建器 BuildK ...
Kubernetes Secret 资源使用详解 1. Secret 基本概念 Secret 是 Kubernetes 中用于存储敏感信息的资源对象,如密码、OAuth 令牌、SSH 密钥等。与 ConfigMap 类似,但 Secret 的数据是经过 base64 编码存储的。 2. Secret ...
一、k8s svc详解 介绍了pod之间怎么通信的,可以通过ClusterIP,dns,pod ip直接通信 dns比较有趣 web-svc.default.svc.cluster.local pod对外提供服务就需要NodePort,LoadBalance 如果还对七层有要求的话,就需要ingre ...
前言 Kubernetes(K8s)是当今最流行的容器编排平台,是DevOps工程师的必备技能。本文从概念到实践,带你快速入门K8s。 一、K8s是什么? Kubernetes是一个开源的容器编排平台,用于自动化部署、扩展和管理容器化应用。 核心功能: 自动装箱:根据资源需求自动调度容器 自我修复: ...
kite —— 一个轻量级、现代化的 Kubernetes 仪表盘,旨在为 Kubernetes 集群提供直观、易用的管理和监控界面。 ...
离线ARM64环境 Kubernetes v1.31.3 部署过程记录 前言 本文基于 Ubuntu 22.04/24.04 LTS ARM64 架构,提供完全离线、无外网、无私有仓库的 Kubernetes 集群部署方案,包含完整部署流程、离线物料制备、实战踩坑问题解决。 一、部署环境要求 1.1 ...
实践环境 registry.cn-shanghai.aliyuncs.com/labring/kubernetes:v1.27.16 registry.cn-shanghai.aliyuncs.com/labring/helm:v3.8.2 简介 Helm 是 Kubernetes 生态系统中最核心 ...
实践环境 nerdctl下载地址 https://github.com/containerd/nerdctl/releases openEuler-22.03-LTS-SP4 registry.cn-shanghai.aliyuncs.com/labring/kubernetes:v1.27.16 ...
实践环境 openEuler-22.03-LTS-SP4 registry.cn-shanghai.aliyuncs.com/labring/kubernetes:v1.27.16 registry.cn-shanghai.aliyuncs.com/labring/helm:v3.8.2 regis ...
前言 在本地虚拟机环境中使用 kubeadm 搭建 Kubernetes 集群是学习和实验的理想选择。考虑到实际应用场景中可能存在的网络限制以及镜像构建需求,本文详细记录了在完全离线环境下部署单节点 Kubernetes 集群的完整过程。通过集成 Harbor 私有镜像仓库,所有 Kubernete ...
在Kubernetes(k8s)中,PodDisruptionBudget(PDB)是一种资源对象,用于限制在自愿中断(voluntary disruptions)期间同时终止的Pod数量,从而保障应用的可用性。以下是详细说明: 我们为Deployment配置了PDB(PodDisruptionBu ...
deployment关联到pod spec.selector.matchLabels.deployment: hello 作用: 这是选择器(Selector),用于告诉Deployment: 识别哪些Pod属于这个Deployment管理 它会匹配集群中已有的Pod标签 一个Deployment只 ...
在Kubernetes环境中遇到网络问题时,一个强大的工具集往往是快速定位和解决问题的关键。netshoot正是为此而生的神器。 在日常的Kubernetes运维中,网络问题是最常见又最令人头疼的挑战之一。Pod无法通信、服务不可访问、DNS解析失败、网络性能下降...这些问题往往让人束手无策。今天 ...
深入理解云原生时代的核心设计模式 乍看之下,Sidecar 模式确实只是在 Pod 里多运行一个容器而已。但这种表面理解,就像说“互联网不过是一堆电缆和服务器”一样,忽略了其背后的精妙设计思想和革命性价值。今天,我们就来深入探讨这个看似简单却极具威力的云原生核心模式。 从一个认知误区说起 "Pod ...
Helm作为Kubernetes的包管理工具,通过模板化的方式简化了应用的部署流程。本文将深入探讨Helm模板的编写方法,涵盖常用语法、命令以及注意事项,帮助您快速掌握Helm模板的核心技巧。 一、Helm模板基础 Helm模板使用Go模板语言,结合Kubernetes YAML文件,生成最终的部署 ...
开篇 你的 AI Agent 生成了一段 Python 代码,敢直接在生产环境运行吗?传统容器启动需要 3-5 秒,虚拟机更慢。开源项目 Daytona 给出了新方案:90 毫秒内创建隔离沙箱,支持 Python / Node / Go 等多语言,还能持久化状态。这是专为 AI 时代设计的代码执行基 ...