容器化策略由最佳实践和运营计划组成,可通过加速应用程序开发、测试和部署来帮助推动数字化转型。这种方法能够将应用程序与底层基础设施解耦,从而提高业务敏捷性、应用程序安全性和操作环境。
为什么容器应该成为我的 IT 策略的一部分?
容器在开发和部署方面为组织提供了新级别的敏捷性。比虚拟机(VM)更轻量级的容器平台(如 Docker)提供了许多相同的好处——从底层基础架构中抽象出应用程序——但在操作系统 (OS) 级别而不是硬件级别。与虚拟机相比,容器提供了应用程序的可移植性和一致性,增强了敏捷开发环境,促进了微服务部署,并通过在每台服务器上支持更多容器来提高可扩展性。
什么是高级容器化策略?
容器化是企业数字化转型计划的一部分。容器化策略应考虑应用程序开发管道、平台注意事项、培训、支持、安全性,当然还应确定哪些应用程序优先用于容器化。
开始
大多数组织将从唾手可得的成果开始,即那些设计现代且具有高波动性(即频繁的代码更新)的应用程序。在第一个应用程序投入生产之前,采用快速失败、经常失败的方法,使组织能够实时快速适应容器的优势。
发展组织技能
除了开发之外,容器策略还必须解决人员和流程的变化。用户培训、支持教育、安全和治理,包括修改服务水平协议,都应该被考虑在内。
完成转型
接下来,组织可以将注意力转向容器化其他应用程序,例如遗留/单体应用程序和集群应用程序。请记住,并非每个应用程序都需要部署在容器中,有些应用程序更适合它们当前运行的 VM。但是,将旧应用程序迁移到容器可能是将这些应用程序重构为现代 CI/CD 代码的第一步DevOps实践。
您如何构建容器化业务案例?
任何成功策略的第一要务是通过关注底线利益来获得最高级别的支持。通过在单个硬件上运行多个容器而获得的基础架构效率可以通过减少所需的云资源数量来影响本地设备的资本支出和运营支出收益。除了降低基础架构成本和节省操作系统许可费用之外,还可以实现额外的节省,因为不再需要为不同的环境开发单独的应用程序可执行文件。容器加速了整个应用程序的生命周期。容器带来的更高敏捷性转化为更快的部署、竞争优势和更高效的开发团队。
企业使用容器的主要原因是什么?
许多组织已将容器作为更大的数字化转型计划的一部分。容器采用有几个驱动因素,包括:
- 对遗留或传统应用程序进行现代化改造的需求
- 希望提高开发、DevOps 和安全团队的敏捷性
- 提高应用程序可扩展性和可移植性的愿望
- 需要加快所有应用程序实现商业价值的时间
容器化的底线好处是什么?
VMware 可以帮助组织开发企业业务案例来展示采用容器的价值。容器化对于您团队未来的 IT 成功有多大必要?VMware 可以帮助您预测多少:
- 通过开发人员的敏捷性改进可以节省时间。平均开发成本为 50 美元以上/小时,节省的每一小时很快就会增加
- 通过实现更高的应用程序密度并降低操作系统和许可费用,可以节省运营费用
- 通过减少整体基础设施需求,同时满足更多要求,可以减少资本支出
使容器策略与所有利益相关者保持一致的最佳方式是什么?
DevOps、IT、安全、开发和业务线 (LOB) 都从采用容器中获益。展示每个人的好处将加速对需求的接受并顺利达成迁移计划。需要关注的一些因素包括:
- DevOps:提高敏捷性,开发、测试和生产环境之间的一致性,简单的更新,对许多框架的支持。
- IT:提高服务器效率、降低许可费用、降低总体 OpEx(运营费用)和资本支出。
- LOB:加速实现价值,竞争优势。
- DevSecOps:容器是不可变的,因此组件被替换而不是修补。微服务可以在不影响应用程序的其余部分的情况下更新单个服务。
- 高管:节省底线,提高整体敏捷性,更好的竞争态势。
容器化应用程序迁移计划的关键要素是什么?
尽管规划是必不可少的,但没有必要迁移每个应用程序,或一次迁移多个应用程序。开始简单并利用早期成功的组织将获得最大的总体接受度。
首先发现低摩擦、高价值的应用程序,例如需要频繁更新的现代应用程序。同样重要的是考虑治理、安全和人员因素,如培训、支持和安全,这些因素将受到应用程序开发和部署变化的影响。
与其对新工具或基础设施进行大量投资,不如等到至少一个应用程序被容器化并且组织了解其好处。利用这些早期的胜利来获得认可并简化与 LOB(业务线)和执行团队成员的未来预算对话。
哪些应用程序最适合容器化?
尽管容器越来越多地用于广泛的应用程序,但容器的短暂性最适合那些无状态(即传递处理请求所需的所有信息)和非集群(即设计为运行在单台机器上而不需要服务器集群来运行),例如网络守护进程和 Web 服务器组件。
在容器化策略中还应考虑哪些其他因素?
团队文化可以产生很大的不同。与抗拒变革的传统开发或 IT 团队相比,敏捷和创新的团队自然会拥有更容易的采用曲线。
首先关注那些需要频繁部署的应用程序。遗留或弃用的应用程序可以在以后容器化,如果有的话。例如,VM 可能比容器更好地服务于软件定义的网络基础设施。
此外,还要考虑对基础设施的财务影响。以前运行许多 VM 实例的应用程序可以通过容器化实现大量节省,因为所需的物理基础设施规模减小了。
部署容器化策略需要注意什么?
每个容器化部署都有六个关键要素:
- 应用选择。根据应用程序属性(例如年龄、更新频率、状态与无状态以及对组织底线的影响)确定优先级。
- 治理。确保人员和流程到位,以保护、支持和教育利益相关者了解容器化实践。
- 平台。无论应用程序是否被重构,容器都会影响服务器和基础设施的利用率。容器化可能是许多应用程序云迁移的前奏。
- 创建 CI/CD 管道。如果还没有到位,采用持续集成和部署实践与容器无缝推出新代码的能力相吻合。
- 编排。容器中的大部分魔力是编排和自动化工具,例如 Kubernetes,它们推出容器化应用程序并根据需要向上和向下扩展实例。
- 持续评估。随着新应用程序的出现和业务需求的发展,组织可能需要重新确定下一个容器化应用程序的优先级。
为什么要从沙盒环境开始?
沙盒为开发和 IT 团队提供了熟悉容器和编排平台(如 Docker 和 Kubernetes)的机会,而不会影响生产环境。继续对新的容器化应用程序进行沙箱化有助于提高人们对代码投入生产时将按预期运行的信心。
部署容器需要多长时间?
尽管容器化加速了整体发展,但仍有一条学习曲线。从一个简单的候选人开始,然后确保所有利益相关者团队都与一个单一的、可管理的时间表保持一致,其中包括必要的培训。通过从小处着手、利用胜利并根据应用程序选择标准取得进展,组织可以通过在此过程中展示成功来开始其转型。
容器化策略中的关键治理问题是什么?
首先,确定整个组织的角色和职责。然后,为每个容器化的应用程序制定测试、培训和支持计划。最后,让容器安全成为从沙盒到部署的每个测试的一部分。