Skip to content

Ops

Operations,运维

DevOps

是什么

DevOps 是一种文化、实践和工具的集合,旨在促进开发团队(Development)和运维团队(Operations)之间的协作与自动化,从而加速软件开发与交付过程。

核心

持续集成(CI)和持续交付(CD)是 DevOps 的关键实践之一。

常见工具

  • CI/CD 工具:Jenkins、GitHub Actions、GitLab CI/CD。
  • 配置管理:Ansible、Puppet、Chef。
  • 容器化:Docker、Kubernetes。

参考链接

技术蛋老师 Github Actions 工作流自动化入门核心

Github Pages 官方文档(里面有用到如何使用 Github Actions 工作流辅助页面发布,可以仔细看看)

Github 官方文档中有 CI/CD and DevOps 的模块,里面有 Github Actions Github Packages(类似 maven) Github Pages。(虽然面试大概率没什么用,不过还是很实用的技术)

Simple-Ops-Process

(简单运维流程)

网站托管云平台 Render 的文档中可以看出一个真正的项目需要哪些完整的运维流程。

(学习用处不是很大,简化版云服务商,在传统云服务商的基础上又加了一层抽象,只是当前我的菜鸡水平能大致看懂而已,阿里云的官方文档是真复杂。)

服务分类

graph TD;
    A["Will your app receive traffic from the public internet(browsers, mobile apps, etc.)?"] --"Nope."--> B["Will your app receive private network traffic from your other Render services?"];
    A --"Yes!"--> C["Does your app consist entirely of statically served files (HTML, CSS, JS, etc.)?"];
    B --"No, any traffic is outgoing."--> D["Will your app run continuously, or periodically on a schedule?"];
    B --"Yes!"--> E["Create a Private service"];
    D --"Continuously."--> F["Create a Background worker"];
    D --"Periodically."--> G["Create a Cron job"];
    C --"No, my app includes server-side logic."--> H["Create a Web service"];
    C --"Yes!"--> I["Create a Static site"];
场景 示例 服务
接收公共互联网流量,完全由静态文件组成 静态博客、文档网站 Static site(静态站点)
接收公共互联网流量,包含服务器端逻辑 电商网站、动态博客系统 Web service(Web 服务)
不接收公共互联网流量,接收来自其他内网的私有网络流量 微服务、数据处理服务 Private service(私有服务)
不接收公共互联网流量,不接收来自其他内网服务的流量 定时任务、后台数据同步任务 Cron job(定时任务)
不接收公共互联网流量,且需要持续运行 后台任务服务、实时推送服务 Background worker(后台任务)
不接收公共互联网流量,且需要按计划运行 数据库清理、定期报告生成 Cron job(定时任务)