Kubernetes的社区是以委员会(Committees),SIG(Special Interest Group特别兴趣小组)和工作组(Working Groups)的形式组织起来的,每个工作组都会定期召开视频会议。
所有的SIG和工作组都使用slack和邮件列表沟通
github: https://github.com/kubernetes/community
简介
Kubernetes SIG(Special Interest Group,特殊兴趣小组)是 Kubernetes 社区的组织结构之一,专注于某一特定领域的开发、维护和改进。这些小组由社区成员组成,每个 SIG 都负责 Kubernetes 项目中某个方面的技术或功能
SIG 的主要特点
- 分工明确
每个 SIG 负责 Kubernetes 项目中的一个特定领域,比如网络、存储、认证、调度等 - 社区驱动
SIG 由社区成员自发组织和管理,提倡开放协作和社区贡献 - 独立管理
SIG 拥有一定的自主权,可以决定自己的工作范围、计划和优先级 - 透明运作
SIG 的会议、决策和文档都对社区开放,任何人都可以参与和了解进展
组织架构
SIG(Special Interest Group)
SIG是社区的核心组织形式,分为以下几类:
- Project SIGs(项目层)
负责与Kubernetes项目开发流程相关的任务,如文档、测试、发布等 - Horizontal SIGs(水平层)
关注跨领域的功能,例如API机制、身份验证、日志结构化等 - Vertical SIGs(垂直层)
专注于特定应用或基础设施领域,如边缘计算、大数据、服务目录等 - Vertical SIGs 主要聚焦于 Kubernetes 的应用层、资源管理以及基础设施支持,涵盖了从应用开发到底层架构管理的各个领域。具体分为以下三类:
- Applications(应用)
专注于支持不同类型的应用程序和相关功能开发 - Resource Management(资源管理)
负责资源优化和管理 - Infrastructure(基础设施)
专注于 Kubernetes 底层集群和存储的开发与支持
- Applications(应用)
Project SIGs
- sig-architecture
负责维护和发展 Kubernetes 的设计原则,并提供所需的统一专业知识,以确保架构随时间保持一致性 - sig-contributor-experience
优化社区贡献者的体验 - sig-docs
管理Kubernetes文档 - sig-release
负责发布流程 - sig-testing
改进测试流程和工具 - sig-k8s-infra
负责管理和维护社区的基础设施,支持项目的开发、测试和发布
Horizontal SIGs
- sig-api-machinery
负责API Server的所有方面,包括 API 注册和发现、通用的 API CRUD 语义、准入控制、编码/解码、转换、默认值、持久化层(etcd)、OpenAPI、自定义资源定义(CRD)、垃圾回收和客户端库 - sig-auth
负责对Kubernetes授权、身份验证和集群安全策略的改进 - sig-cli
Kubernetes命令行工具(如kubectl)的开发 - sig-instrumentation
负责所有 Kubernetes 组件的指标、日志记录、事件和跟踪实现集群可观察性的最佳实践以及相关组件(如 klog 和 kube-state-metrics)的开发 - sig-multicluster
负责解决与多个 Kubernetes 集群及其应用程序管理相关的共同挑战。其工作重点是设计、讨论、实施和维护多集群管理的 API、工具和文档
todo 跟 Open Cluster Management 区别 - sig-scalability
负责研究和改进Kubernetes的性能和可扩展性,确保 Kubernetes 在不同规模下都能稳定、高效地运行 - sig-ui
用户界面相关开发 - sig-Windows
负责Windows Node 和在 Kubernetes 上调度 Windows 容器 - Security
负责 Kubernetes的安全性全局管理,包括漏洞管理、安全审计和文档支持等
Vertical SIGs
Applications
- sig-apps
负责应用程序在 Kubernetes 上的管理、部署、扩展和生命周期管理,提供用于管理应用的核心资源,如 Deployment、StatefulSet等
Resource Management
- sig-autoscaling
Kubernetes 中的各种自动扩缩容功能,从单个 Pod 的资源调整到整个集群的节点扩展,覆盖了 Kubernetes 资源管理的自动化需求 - sig-scheduling
负责 Kubernetes 调度器的核心开发和优化,确保 Pods 能被分配到合适的节点上 - sig-node
负责Kubernetes中与节点相关的所有组件和功能,尤其是管理 Pods 和主机资源之间的交互 - sig-network
负责Kubernetes中的网络部分
Infrastructure
- Storage
负责 Kubernetes 中存储相关的功能与组件,确保容器可以无缝地使用各种存储资源,包括文件存储和块存储 - Cloud Provider
负责确保 Kubernetes 能够以中立的方式支持各种云提供商(包括公共云和私有云),并推动 Kubernetes 与云服务的深度集成 - Cluster Lifecycle
负责改进 Kubernetes 的集群管理体验,包括管理集群的安装、升级和扩展等生命周期操作