开发运维知识地图

开发工具

  • VSCode:编辑器配置、插件、快捷键、调试技巧等
  • IDE:各类集成开发环境的使用与配置
  • 命令行工具:Shell、PowerShell、终端增强工具
  • 调试工具:断点调试、性能分析、内存检测

版本控制系统

  • Git:基础命令、分支管理、工作流、冲突解决等
    • 分支策略:Git Flow、GitHub Flow、GitLab Flow
    • 提交规范:Conventional Commits
    • 高级操作:变基、Cherry-pick、Submodule
  • GitHub:仓库管理、协作、CI/CD、Actions等
    • Issues与PR:问题跟踪、代码审查
    • Pages:静态网站部署
    • Actions:自动化工作流
  • 其他平台:GitLab、Bitbucket等

基础设施

  • Docker:容器化、镜像管理、网络、存储、编排等
    • 基础概念:镜像、容器、仓库
    • Dockerfile:构建自定义镜像
    • Docker Compose:多容器应用编排
    • 网络与存储:卷、网络模式、数据持久化
  • Kubernetes:容器编排、集群管理、服务发现
    • 核心概念:Pod、Service、Deployment
    • 配置管理:ConfigMap、Secret
    • 资源调度:节点亲和性、污点与容忍
  • 服务网格:Istio、Linkerd等

CI/CD(持续集成/持续部署)

  • Jenkins:自动化构建、测试、部署
  • GitHub Actions:工作流配置、自动化流程
  • GitLab CI:Pipeline配置、Runner管理
  • 自动化测试:单元测试、集成测试、端到端测试

云服务与部署

  • 云平台:AWS、Azure、GCP、阿里云等
  • Serverless:函数计算、事件驱动架构
  • IaC(基础设施即代码):Terraform、CloudFormation
  • PaaS平台:Heroku、Vercel、Netlify等

监控与日志

  • 监控系统:Prometheus、Grafana、Zabbix
  • 日志管理:ELK Stack、Loki、Fluentd
  • APM(应用性能监控):New Relic、Datadog
  • 告警系统:AlertManager、PagerDuty

网络与安全

  • 网络基础:DNS、HTTP/HTTPS、负载均衡
  • 安全实践:HTTPS配置、认证授权、漏洞扫描
  • 防火墙与WAF:网络安全策略、Web应用防火墙
  • 密钥管理:证书、密钥轮换、Vault

数据库运维

  • 关系型数据库:MySQL、PostgreSQL管理
  • NoSQL数据库:MongoDB、Redis运维
  • 数据库优化:索引、查询优化、性能调优
  • 备份与恢复:策略、工具、灾难恢复

DevOps文化与实践

  • 团队协作:敏捷开发、Scrum、看板
  • 自动化:脚本编写、任务调度
  • 问题排查:故障诊断、根因分析
  • 文档管理:技术文档、知识库维护