前端要了解的k8s、CI/CD、Devops概念

1,了解k8s

简单的理解,k8s就是docker容器集群的管理工具。他将容器进行更多自动化的操作,自动创建、自动重启、自动扩容等,这个过程称为容器编排

k8s抽象了硬件资源,将N台物理机或云主机抽象成一个资源池,容器的调度交给K8S(例如CPU 不够用就调度到一台足够使用的机器上;服务因为某些原因挂了, K8S会帮我们自动迁移重启)

2,k8s的优点

轻量级、效率高、弹性管理(当容器增多和减少时,可以很简单的改变资源的利用)、负载均衡。

k8s可确保各pod(包含一个或多个容器)之间的安全网络通信。

k8s支持将docker容器化应用平滑的迁移过去。

k8s还支持选择Jenkins、GitLab CI等工具进行CI/CD的流水线配置,实现流水线自动化部署。

3,了解CI/CD

CI/CD的核心概念就是持续集成、持续交付、持续部署。他可以让自动化持续贯穿应用的整个生命周期(从集成、测试、到交付、部署)。

CI持续集成(Continuous Integration)

为多个人员开发同一个应用的不同模块/功能提供了方便。每个开发人员都可以在自己的分支开发新功能,CI保证了在每个开发者将自己的代码合并到主分支时,可以自动构建应用并运行不同级别的自动化测试来验证当前开发者的修改,来确保整个应用没有遭到破坏。

CD持续交付(Continuous Delivery)

CD持续交付的核心是建立一个可随时将开发环境的功能部署到生产环境的代码库。CI 在完成了构建、单元测试、集成测试这些自动化流程后,CD持续交付可以自动把已验证的代码发布到存储库,以方便后续团队之间部署生产环境。

CD持续部署(Continuous Deployment)

CD持续部署是CD持续交付的延伸,他可以将应用自动发布到生产环境。意味着开发人员对应用的改动,在编写完成后的几分钟内就能及时生效(前提是它通过了自动化测试)。

CI/CD工具

Jenkins,CircleCI,Bamboo等

4,了解DevOps

DevOps是一个软件开发的模式,他的目的就是为了可以更快速更可靠的构建出高质量的软件

传统的开发流程是 需求分析=> 代码开发=> 打包构建=> 用例测试=> 上线部署=> 项目运营=> 埋点或异常监控。对应的岗位通常会有开发、测试、运维3个,而在DevOps出现后,只需1个岗位即可。

CI/CD就是DevOps开发模式的一种实现。

5,总结

综上,可以基于docker、k8s、gitLab CI/CD打造一套完整的自动化构建部署流程。可参考CI/CD系列 | 一步上手Gitlab CI/CD - 掘金

Gitlab CI/CD 官方文档:docs.gitlab.com/ee/ci/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

妍思码匠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值