DevOps并不只是一套工具,更多是思想和方法,用DevOps的思想、方法、工具、流程等来协调开发团队和运维团队的关系、提升研发运营效率、促进高效文化的建设和持续改进。所以选择jenkins或者Gitlab来实现DevOps工具链并不冲突。工具选型通常要基于自身技术能力和技术积累,适合别人的不见得适合自己。
很多人可能对DevOps存在误解,仅认为DevOps就是CICD。Google SRE是对DevOps思想的一种比较好的实践,你看Google SRE并没有强调选择什么样的工具,而是从运维的视角通过研发来保证系统的稳定和可持续性。从而达到开发和运维的统一。
Giblab全家桶提供了很多工具选择,类似于Spring提供了众多的框架和组件,但这些工具并不是开箱即用的,往往需要额外的工作,特别是开源的组件和工具,在持续不断的变化中。所以至于选择什么样的工具和组件,要基于实际的情况来决定。熟悉的组件用起来会更省时省力,所谓熟能生巧,不熟悉不了解的可能需要花很多时间学习,有学习成本。不同的情况不同的人效果是不一样的。我一直认为,技术没有绝对的好与坏,要根据自己的实际情况来选择。