Jenkins部署及使用

Jenkins

1.定义

  • 1.Jenkins是一款开源CI/CD软件,用于自动化各种任务,包括构建、测试和部署软件

1.CI/CD

  • 1.CI:持续集成(Continuous Integration)
    Jenkins部署及使用_第1张图片
    • 1.协同开发是目前主流的开发方式,一般由多位开发人员同时处理同一个应用的不同模块或功能
    • 2.但如果将所有开发分支代码集成在一起,则会花费很多时间从而降低效率,持续集成CI可以帮助开发者更加方便地将代码更改合并到主分支
    • 4.一旦开发人员将改动的代码合并到主分支,系统就会通过自动构建应用并运行不同级别的自动化测试(通常是单元测试和集成测试)来验证这些更改,确保这些更改没有对应用造成破坏
    • 5.如果自动化测试发现新代码和现有代码之间存在冲突,CI可以更加轻松地快速修复这些错误
  • 2.CD:持续交付(Continuous Delivery)/持续部署(Continuous Deployment)
    • 1.持续集成CI在完成了构建、单元测试和集成测试这些自动化流程后,持续交付CD可以自动把已验证的代码发布到企业自己的存储库
    • 2.持续交付CD目的是建立一个可随时将开发环境的功能部署到生产环境的代码库
    • 3持续交付CD的过程中,每个步骤都涉及到了测试自动化和代码发布自动化,流程结束后运维团队可以快速、轻松地将应用部署到生产环境中
    • 4.对于一个完整、成熟的CI/CD管道来说,最后的阶段是持续部署,其作为持续交付的延伸,持续部署可以自动将应用发布到生产环境
    • 5.CD指的是持续交付/持续部署,这些相关概念有时会交叉使用,两者都事关管道后续阶段的自动化,但有时也会单独使用,用于说明自动化程度
    • 6.持续交付(第一种CD)通常是指开发人员对应用的更改会自动进行错误测试并上传到存储库,然后由运维团队将其部署到实时生产环境中,因此持续交付的目的就是确保尽可能减少部署新代码时所需的工作量
    • 7.持续部署(另一种CD)指的是自动将开发人员的更改从存储库发布到生产环境,以供客户使用,主要为了解决因手动流程降低应用交付速度,从而使运维团队超负荷的问题

2.DevOps

  • 1.持续交付是持续集成的延伸,而持续部署又是持续交付的延伸,通常将不同环境发布和测试过程称为部署流水线,并把部署到生产环境的过程实现自动化
  • 2.DevOpsCI/CD思想的延伸,CI/CDDevOps的基础核心,如果没有CI/CD自动化的工具和流程DevOps是没有意义的

2.安装部署

  • 1.参考Linux软件安装中的Linux系统下安装Jenkins

你可能感兴趣的:(运维,jenkins,运维)