基础架构团队接管Kubernetes部署运维
- 背景:企业越来越多地采用围绕Kubernetes的云原生开发方式,其IaaS特性使其适合作为公有云或私有云的基础架构。基础架构团队因具备专业技能,开始接管Kubernetes的建设和运维。
- 原因:K8s部署运维占用人大量时间精力,基础架构团队能优化部署流程、引入自动化脚本,提高效率和质量。
- 可行性:挑战在于Kubernetes与传统基础架构的不同(存储、网络、安全等),但可通过管理工具掌握基础知识快速上手。
- 优势:管理工具提供自动化、可视化、一致性支持,提升运维效率和安全。
如何选择Kubernetes管理平台
- 挑战:手动管理集群生命周期费时费力,可视化工具集成程度低,安全策略制定复杂,多环境一致性管理要求高,业务增长带来性能瓶颈。
- 核心能力:生产就绪、多环境与虚拟化统一支持、简单智能的部署运维、集成可视化分析界面、网络与安全高级管理功能。
- 选型建议:根据业务需求、技术采用情况、混合云/多云需求、自主性要求、技术人才情况选择合适的平台。
如何部署运维Kubernetes
- 评估:评估是否有合适的业务用例和组织能力使用Kubernetes。
- 计划:结合应用架构与部署目标选择合适的部署模式(公有云容器服务、容器管理软件、基于SaaS的管理服务)。
- 实施:
- 安全:采用DevSecOps方式,集成图像扫描、强化配置、部署安全产品。
- 监控和可视化:关注容器和服务级别监控,选择与Kubernetes供应商深度整合的工具。
- 存储:选择符合微服务架构原则、容器原生数据服务要求的存储解决方案。
- 网络:实现网络自动化,提供服务网格支持。
- 工具链集成:使用基础设施自动化工具、容器感知配置管理系统、CI/CD工具、资源管理和成本优化工具。
- 团队管理:组建平台运维团队,持续化管理并扩展DevOps业务。
Kubernetes部署:虚拟化还是裸金属?
- 架构对比:虚拟化环境多台虚拟机支持K8s集群,裸金属环境K8s直接跑在物理服务器上。
- 功能特性对比:
- 性能:虚拟化有性能损失,但可通过资源分配优化弥补。
- 可靠性:虚拟化可通过虚拟机放置组策略避免单点故障。
- 可用性:虚拟化可利用DRS、主动迁移等增强可用性。
- 敏捷性:虚拟化环境资源分配更灵活。
- 扩展能力:两者均可扩展,但虚拟化更敏捷。
- 资源利用率:虚拟化更高。
- 安全性:虚拟化提供更强隔离。
- 成本与资源投入:虚拟化环境在多集群场景成本可能更低。
- 结论:结合企业需求和使用场景选择合适的部署环境,虚拟化和裸金属各有优劣。
适合在虚拟化环境中部署Kubernetes的三个场景
- 场景1:需要快速部署和灵活伸缩Kubernetes集群。虚拟化环境可快速创建、删除和变更Kubernetes集群,满足敏捷需求。
- 场景2:需要为“多租户”提供各自的Kubernetes运行环境。虚拟化技术可提供内核和网络安全隔离,满足多租户需求。
- 场景3:需要在有限资源内同时支持虚拟化和容器化应用。虚拟化技术可提高资源利用率,满足混合部署需求。
虚拟化vs.裸金属:支持Kubernetes性能对比测试
- 测试目标:对比测试超融合(虚拟化环境)与裸金属服务器部署Kubernetes集群的基础性能、有状态应用性能和无状态应用性能。
- 测试结果:SKS(虚拟机Kubernetes)性能可达裸金属Kubernetes的82%-96%,满足大部分业务场景的性能需求。
- 结论:SKS可满足大部分常规应用场景的性能需求,虚拟化在资源效率、弹性扩缩、安全隔离、简易运维等方面具有优势。
基于虚拟化/超融合建设Kubernetes的优势
- 优势:资源效率高、弹性扩缩、安全隔离、简易运维。
- 产品推荐:SmartX已发布生产级Kubernetes构建与管理服务产品SKS,帮助企业轻松部署和管理生产级Kubernetes集群。