运维工作需要掌握的技能

前期 地基

  1. 各种Linux发行版的安装和配置
  2. 在终端环境安装与配置应用程序
  3. 利用SSH,RDP等网络协议,远程登录并操作服务器
  4. 了解各种云平台的各种功能

中期 装修

  1. HTTP服务

    1. Apache
    2. Nginx 反向代理
  2. 数据库

    1. MySQL 关系型
    2. MongoDB 非关系型
  3. 传输

    1. Git 版本控制和拉取代码
    2. FTP 文件传输
    3. SCP 基于SSH的文件传输

后期 维护

  1. 监控
    1. Nagios
    2. PM2 基于Node.js的进程管理
  2. 故障应对
    1. 设计预案
    2. 编写自动化脚本
  3. 存储
    1. 规划存储
    2. 安全 备份,扩容,迁移
  4. 优化配置
    1. 网络,系统,软件
    2. 提高响应速度,改善用户体验
  5. 任务和流量
    1. 服务状态
    2. 定时/非定时任务的触发
  6. 预先安全
    1. 防火墙
    2. 预防网络攻击
    3. 权限控制
  7. CI/CD
    1. 自动化部署
    2. 平台和工具的使用

通用技能:

  1. 编写项目文档,并长期维护的能力。
  2. 终身学习能力,与时俱进。