运维工作的知识要点

应用运维主要的知识方面可以用以下模块大致概括,课程需要做的,就是如何让大家掌握这些知识。

操作系统

  • linux 基础操作命令 (ls、cp、mv、rm、cd、pwd、cat、echo、vi等)
  • 文本处理工具 (vim、awk、grep、find、sed)
  • 监控工具 (dstats、top、xxx)
  • 磁盘管理 (raid、lvm、nfs、fdisk、fstab、df、du)
  • 文件系统管理 (mkfffs、mount、umount、swap)
  • 内存管理
  • 文件管理 (link、find、tar、zip)
  • 用户管理 (组、权限)
  • 备份与恢复 (dump、restore、rsync)
  • 进程管理 (systemd、cron、proc、dmesg)
  • 进程通信 (socket、channel、signal、shared mem)
  • 包管理器 (rpm、yum)
  • 启动管理 (init、inittab、grub、rc)

网络

  • 网络模型
  • 网络设备
  • 路由表
  • 网络协议栈
  • lvs
  • keepalived

数据库维护

  • 搭建、备份
  • 权限管理
  • 数据表设计
  • 索引优化
  • 数据存储结构原理

常用开源组件

  • 消息队列
  • 键值数据库
  • 对象存储
  • 文档存储
  • 倒排索引
  • OLAP数据库
  • 时间序列数据库
  • nginx / openresty

安全

  • 加密方法
  • 防火墙
  • 代理
  • 统一认证授权方案
  • 巡检与审计
  • 数据库安全
  • web安全

日志监控

  • ELK / EFK
  • promethues + grafana

自动化

  • shell
  • 语言 (python、golang)
  • ansible / puppter

容器技术

  • namespace
  • cgroup
  • overlay
  • 网络配置
  • k8s

devops 体系

  • CICD 流程
  • CD 工具链
  • 灰度体系
  • 测试体系
  • 混沌测试
  • 敏捷流程

No man was ever wise by chance.
Seneca the Younger