ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Kubernetes SIG Windows 2021 年度技术盘点:HostProcess 容器、Windows CSI 与运维就绪之路

Kubernetes SIG Windows 2021 年度技术盘点:HostProcess 容器、Windows CSI 与运维就绪之路 Kubernetes SIG Windows 2021 年度技术盘点HostProcess 容器、Windows CSI 与运维就绪之路【免费下载链接】communityKubernetes Community Documentation项目地址: https://gitcode.com/GitHub_Trending/com/community导读本文以 sig-windows/annual-report-2021.md 年度报告为核心系统梳理 SIG Windows 在 2021 年Kubernetes v1.22/v1.23 周期交付的关键技术成果HostProcess 容器支持进入 Beta、Windows CSI 支持走向 Stable、kubectl node logs命令接口定义、Windows 节点运维就绪标准等。读完本文你将完整掌握 SIG Windows 当年的 KEP 演进脉络、子项目生态布局、社区健康指标以及普通贡献者可以切入的具体参与方向并能结合 sig-windows/CONTRIBUTING.md 与 sig-windows/README.md 快速上手 Windows 节点相关的开发与测试工作。年度核心成果五大高光技术项按照 charter.md 的定义SIG Windows 的职责范围是Kubernetes 在 Windows 操作系统上的运行包括维护 Kubernetes 与 Windows 容器之间的接口以及 kube-proxy 等存在 Windows 专属实现的组件。2021 年度报告列出的五项重点工作正是这一范围的具体落地HostProcess 容器支持进入 Beta 并跨社区推广这是当年最受关注的能力。HostProcess 容器允许 Windows 容器以主机进程形态运行从而可以在 Windows 节点上部署 flannel、calico、csi-proxy、kube-proxy 等基础设施组件。报告明确给出了 sig-windows-tools 项目中 hostprocess 目录下的部署示例并提到 KuReDWindows 节点重启守护与 prometheus-community/windows_exporterNode Exporter 的 Windows 版均已通过 HostProcess 容器形态获得支持。定义kubectl node logs命令接口为后续 Windows 节点日志查询能力即 2023 年 v1.27 的 Node log query 特性见 sig-windows/annual-report-2023.md奠定接口基础。以 sig-windows-dev-tools 打通透明的开发者体验该工具链致力于让在本地构建一个带 Windows 节点的 Kubernetes 集群变得简单是 SIG 持续投入的开发者体验项目。定义 Windows 运维就绪Operational Readiness标准为 Windows 节点在生产环境的可观测性、可靠性建立量化标准最终孵化出独立的 windows-operational-readiness 子项目。定义 Pod 的 OS 字段为 API 层权威识别 Windows Pod 铺路对应 KEP 2802。KEP 演进全览从 Alpha 到 Stable 的 2021 成绩单2021 年 SIG Windows 的 KEP 工作横跨 v1.22、v1.23 两个版本周期覆盖 Stable / Beta / Alpha / Pre-alpha 四个阶段阶段版本KEP 编号主题Stablev1.221122Windows CSI 支持windows-csi-supportBetav1.231981Windows 特权容器支持HostProcess 容器Betav1.232802在 API 准入层权威识别 Windows PodAlphav1.221981Windows 特权容器支持Alphav1.232802在 API 准入层权威识别 Windows PodPre-alpha目标 v1.242578Windows 运维就绪Windows Conformance从这张表可以看到清晰的演进节奏KEP 1981 在 v1.22 以 Alpha 起步v1.23 即升入 BetaKEP 2802 则在 v1.23 同时完成了 Alpha 与 Beta 两个阶段。而 KEP 2578Windows Operational Readiness当时仍处于 Pre-alpha目标定在 v1.24。值得注意的是后续年度的报告验证了这条路线图的兑现情况sig-windows/annual-report-2022.md 记录到——KEP 2802 于 v1.25 升为 StableKEP 1981HostProcess 容器于 v1.26 正式毕业为 StableKEP 2578 则于 v1.24 以 Alpha 形态落地Windows ConformanceKEP 2258Node log query于 v1.27 进入 Alpha正是 2021 年kubectl node logs接口定义的后续开花结果。未纳入 KEP 的三条并行工作线年度报告同时披露了三条未以 KEP 形式跟踪、但对 Windows 生产化同样关键的工作线Windows kube-proxy 向 KPNG 迁移将 Windows 版 kube-proxy 迁往 KPNGKubernetes Proxy Next Generation架构。这一迁移后来在 2022 年演化出独立的 windows-service-proxy 子项目并成为使用 KPNG 构建树外 kube-proxy的样板工程见 sig-windows/annual-report-2023.md。TestGrid 上报任务从 aks-engine 迁往 Cluster APIcluster-api/cluster-api-provider-azure把 Windows 的端到端测试基础设施迁移到更现代化的 Cluster API 体系上。Dockershim 移除对 Windows 节点的验证在 Kubernetes 全面移除 Dockershim 的过程中同步验证 Windows 节点侧的兼容与迁移路径。这三条线体现了 SIG Windows 2021 年的工程重心既向前推进新特性也不断重构测试基础设施与组件实现为 Windows 节点的长期可维护性筑基。项目健康最需要帮助的领域与社区健康指标年度报告坦率地指出csi-proxy 与存储领域是 Windows 生态中服务最不足的方向——尽管 Windows CSI 支持KEP 1122已进入 Stable但负责承载该能力的 csi-proxy 子项目仍需要更多社区力量会议信息见其仓库 README2021 年社区已跨 VMware、Rancher 等公司围绕新的优化 issue 展开协作。SIG 关注并测量的社区健康指标包括sig-windows-dev-tools 仓库 Star 数2021 年已增长至 46被视为社区兴趣度的风向标sig-windows-tools 仓库 Star 数代表尝试在 k8s 节点上安装 Windows的用户规模windows-gmsa 仓库 Star 数代表将 Windows Pod 集成进 GMSA组托管服务账户的企业采用度。这些指标与 sig-windows/README.md 中列出的子项目矩阵一一对应windows-gmsa、windows-operational-readiness、windows-samples、windows-service-proxy、windows-testing、windows-tools构成了 SIG Windows 的可观察生态版图。社区与成员数据截至 2021 年度报告SIG Windows 的社区规模与治理数据如下主 Slack 频道成员1507 人主邮件列表成员188 人主会议参会/参与人数估算约 10 人SIG 自有包的独立 Reviewers6 人SIG 自有包的独立 Approvers4 人在治理方面报告确认了多项运营状态README 与 CONTRIBUTING 已按 committee-steering/governance/sig-governance.md 的要求审核更新sigs.yaml 中的子项目列表与 OWNERS 链接已核验SIG 领导层活跃且来自多家公司报告中明确确认存在多公司/多组织贡献者并在 2021 年完成了两次社区级对外更新KubeCon EU 与 KubeCon NA 的虚拟演讲。整体符合 community-membership.md 所描述的贡献者阶梯治理模型。用户与公司可以切入的贡献方向年度报告明确列出了四类用户/公司当前尚未充分参与、但亟需力量的方向这也正是读者最实际的切入点在多个 Windows 应用上测试 HostProcess 实现验证 HostProcess 容器在真实业务负载下的表现覆盖 flannel、calico、csi-proxy、kube-proxy 之外的更多场景改进开发者工具环境以壮大社区即参与 sig-windows-dev-tools 的迭代降低 Windows 相关开发的门槛2022 年报告再次强调这是一贯被识别的贡献障碍并补充了 M1/M2 MacBook 支持等工作加固 CSI proxy 与 CSI 支持生态对应上文提到的 csi-proxy 服务不足问题大规模开展 Kubernetes on Windows 性能测试并发布结果产出可公开引用的性能数据支撑 Windows 节点在生产环境的推广决策。附Windows 贡献者的上手路线仓库配套资源想要实际参与上述方向可结合 sig-windows/CONTRIBUTING.md 的完整流程加入社区通过 Slack 的 #sig-windows 频道与 SIG-Windows Google Group 与维护者建立联系查看 SIG 的 Open Issues / Open PRs 看板从源码构建 Windows 二进制Kubernetes 构建脚本未移植到 Windows需要在 Linux 或 WSL2 环境下执行交叉构建例如./build/run.sh make kubelet KUBE_BUILD_PLATFORMSwindows/amd64单独构建 kubelet或./build/run.sh make cross KUBE_BUILD_PLATFORMSwindows/amd64一次构建全部二进制产物输出到_output/dockerized/bin更新节点二进制对已有集群可先kubectl drain nodename排空节点再通过 PowerShell 执行Stop-Service kube-proxy -Force、Stop-Service kubelet -Force替换 kubelet.exe/kube-proxy.exe 后Start-Service kubelet重启可用sc.exe qc kubelet查询二进制路径运行测试使用 windows-testing 项目构建 e2e 测试二进制并参考 TestGrid 上的 SIG-Windows 配置提交 PR在 PR 描述中加/sig windows打上标签并用/test pull-kubernetes-e2e-aks-engine-windows-containerd触发 Windows 专属 e2e 测试排障与日志收集对 Windows 容器网络依赖服务启动失败可用容器 lifecycle 的 postStart 钩子轮询等待 DNS 解析如ping -n 1 dbhost.example.com命中后再Restart-Service -Name dbconnect日志收集可用 nssm.exe 的AppStdout/AppStderr选项例如nssm set kubelet AppStdout C:\k\kubelet.log网络问题则可借助 Microsoft SDN 的 collectlogs.ps1 抓取C:\server.etl跟踪文件。总结从 2021 年度报告可以勾勒出 SIG Windows 的清晰技术主线以HostProcess 容器打破 Windows 节点上基础设施容器化的限制以Windows CSI补齐存储生态以Pod OS 字段 准入层识别让 Windows 负载被 API 权威感知以运维就绪标准 node logs 接口打通生产可运维性再配合 dev-tools 与测试基建的持续投入。后续 2022、2023 年度报告sig-windows/annual-report-2022.md、sig-windows/annual-report-2023.md则逐一兑现了这张路线图。对希望深耕 Windows 容器生态的开发者而言从 csi-proxy 加固、HostProcess 场景测试到 dev-tools 改进都是当前仍然开放且价值明确的参与窗口。【免费下载链接】communityKubernetes Community Documentation项目地址: https://gitcode.com/GitHub_Trending/com/community创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表