Kubernetes - Mechanism
|Word Count:12|Reading Time:1mins
基础架构
Master
Worker
工作流程
插件
Author: zhongmingmao
Copyright Notice: All articles on this blog are licensed under CC BY-NC-SA 4.0 unless otherwise stated.
Related Articles

2022-11-07
Kubernetes - 3rd example
架构 MariaDB ConfigMap maria-cm.yaml12345678910apiVersion: v1kind: ConfigMapmetadata: name: maria-cmdata: DATABASE: 'db' USER: 'wp' PASSWORD: '123' ROOT_PASSWORD: '123' 12$ k apply -f maria-cm.yamlconfigmap/maria-cm created StatefulSet maria-sts.yaml123456789101112131415161718192021222324252627282930313233343536373839404142434445464748apiVersion: apps/v1kind: StatefulSetmetadata: name: maria-sts labels: app: maria-stsspec: # headless svc serviceNam...

2022-07-08
Kubernetes - Dockerfile

2021-06-06
容器基础 -- Namespace & Cgroups
VM vs Container Hypervisor 通过硬件虚拟化,模拟出一个操作系统所需要的各种硬件,然后在虚拟的硬件上安装Guest OS 对应用进程的隔离环境负责 额外的资源消耗和占用 使用虚拟化技术作为应用沙盒,必须由Hypervisor来负责创建VM,该VM是真实存在的且里面运行一个完整的Guest OS Docker Engine 『轻量级』虚拟化 不存在真正的『Docker容器』运行在宿主机里面,Docker只是在创建进程时,加上各种不同的Namespace参数 真正对隔离环境负责的是宿主机操作系统,而非Docker Engine 容器化后的用户应用,依然还是宿主机上的普通进程 相对于VM的优势:敏捷 + 高性能 基于Linux Namespace劣势:隔离不彻底 多个容器之间使用的还是同一个宿主机的操作系统内核 低版本的Linux宿主机不能运行高版本的Linux容器 容器给应用暴露出来的攻击面是很大的 – Seccomp(对容器内部发起的系统调用做过滤拦截,影响容器性能) 在Linux内核中,很多资源和对象是不能被Namespace化的,如时间 Namesp...

2023-01-27
Kubernetes - Operator
应用接入应用容器化开销风险 Log Driver Blocking mode Non-Blocking mode 共享 Kernel 共享系统参数配置 进程数共享 fd 数共享 主机磁盘共享 资源监控应用视角 容器中看到的资源是主机资源 top Java Runtime.availableProcessors() cat /proc/cpuinfo cat /proc/meminfo df -k 影响应用 Java Concurrent GC Thread Heap Size 线程数不可控 判断规则 查询 /proc/1/cgroup 是否包含 kubepods 关键字 12345678910111213141516171819202122232425262728293031323334$ cat /proc/1/cgroup12:cpuset:/11:devices:/init.scope10:blkio:/init.scope9:freezer:/8:net_cls,net_prio:/7:pids:/init.scope6:pe...

2026-04-28
K8S Orchestration - KRO V1
概述 KRO 是 Kubernetes SIG Cloud Provider 下的子项目,旨在简化 Kubernetes 中复杂自定义资源的创建和管理 核心概念 KRO 的核心自定义资源是 ResourceGraphDefinition - RGD,它允许你: 将多个 Kubernetes 资源组合成一个可复用的组件 定义资源之间的依赖关系 为这些资源提供默认配置 工作原理123456789101112131415161718192021222324252627282930313233343536373839flowchart TB subgraph User["用户层"] A["📝 ResourceGraphDefinition<br/>(RGD)"] B["创建资源实例"] end subgraph KRO["KRO 控制层"] C["🔄 KRO Controller"] D["🔍 分析依...

2022-10-22
Kubernetes - ConfigMap + Secret
定义ConfigMap 明文配置 12345678$ k create cm info --from-literal=name=zhongmingmao --dry-run=client -oyamlapiVersion: v1data: name: zhongmingmaokind: ConfigMapmetadata: creationTimestamp: null name: info ConfigMap 没有 spec,因为 ConfigMap 存储的是配置数据,并不是容器,因此没有运行时规格 ConfigMap 里的数据都是 Key-Value 结构 cm.yml12345678910apiVersion: v1kind: ConfigMapmetadata: name: infodata: name: zhongmingmao city: guangzhou greeting: | hello kubernetes! 123456789101112131415161718192021222324252627282930$ k apply -f cm.ym...
Announcement
Things are always unexpected!









