前篇提到了DevOps的工作岗位要求,但是没有来的及深入细节,本文根据个人10年多的经验,尽量详细地列举DevOps所需要用到的一些技术和相关参考网站。

Linux基础

  • Linux系统的基本概念;
  • 必须会使用至少一个编辑器,例如VIM;
  • 至少会一种shell,例如bash;
  • 会使用rsh/ssh/scp/rhost/rsync;
  • cron相关设置和命令,crontab;
  • 进程的状态,以及相关的命令ps, top, pgrep,pstree;
  • 文件状态的查看排序,ls;
  • 文件的查找, find;
  • 文件权限,以及相关命令ls, chmod, chown;
  • 文件的压缩解压种类,tar;
  • job相关命令 jobs,nohup,bg, fg, disown;
  • 信号的种类INT,TERM,QUIT, 和kill的使用,例如 kill -9;
  • 软硬链接的概念和命令,ln;
  • 磁盘的使用和配额命令,df,du,quota;
  • 内存的种类swap和buffer,相关命令top;
  • 系统的检测命令,uptime,ps,top, free,pstree;
  • Daemon,service的工作原理,配置,使用,例如命令service;
  • 用户的权限,group等的操作;
  • 磁盘的自动挂载;
  • 文件内容的查找命令grep,sed;
  • 高级命令xargs;
  • 文本数据库的操作命令,例如cut,tr,sort,uniq;
  • 会使用pstree,strace等追踪进程相关问题;
  • 网络和防火墙的配置;
  • wget,curl下载或者模拟http;

linux 入门请移步:
http://www.linux6.com/
https://www.cnblogs.com/itech/p/3660240.html

脚本编码能力

DevOps的工作内容就是流程的自动化,不是所有的任务都有第三方的免费工具,所以使用Perl或者Python将重复的工作脚本化自动化是一项主要的工作职责。其中包括:

  • 文件读写处理,
  • 正则表达式匹配,
  • 多线程多进程并发,
  • 日志分析和报警,
  • 生成csv或者网页的报告,
  • 各种任务的自动化检测和报警。
  • 以及通用软件和系统的开发,

总之各种任务种类繁多,但是只要你有Perl或者Python这样的瑞士军刀,那就手到擒拿了。

开发和持续集成相关的工具

最近几年软件流程相关的工具百花齐放,虽然没有web技术框架那么夸张,但是也足够让人眼花缭乱了。工具会根据公司软件所在的领域不同,也会应为软件所使用的技术栈有所差异。

  • 开发编译工具的使用,Makefile,gdb,gradle,cmake,vscode等;
  • 源码管理工具,git,github,svn等;
  • 持续集成工具,Jenkins,TeamCity, Bamboo等;
  • 测试相关框架和自动化,Junit,selenium等;
  • 软件质量相关工具,Jira,SonarQube 等;
  • artifact管理,dockerhub,jfrog,nexus等;
  • 容器相关工具,docker,kubernes,swam,mesos等;
  • 流程监控和报警,elesticsearch,kibana,prometheus,grafana等;
  • 云服务的使用, amazon,openshift,google cloud platform等;
  • 自动部署工具,chef,puppet,salkstack,ansible;

更多工具:https://github.com/cicdops/awesome-ciandcd

其他必须技能

    • web服务器作为基础架构之一,必须会配置,例如apache,nginx;
    • 数据库在配置管理中,也是基础架构之一,必须熟悉使用和管理,常用的数据库MySQL,Mongo,Redis;
    • 虚拟机的使用,VirtualBox, Vagrant;
    • Docker容器的使用以及容器编排工具的配置和使用;
    • Web开发能力,熟悉javascript和流行的web框架React等;
    • 机器学习和人工智能相关的技术;

DevOps技能自查表的更多相关文章

  1. 《Genesis-3D开源游戏引擎--横版格斗游戏制作教程05:技能读表》

    5.技能读表 技能读表概述: 技能读表,作为实现技能系统更为快捷的一种方式,被广泛应用到游戏开发中.技能配表,作为桥梁连接着游戏策划者和开发者在技能实现上的关系.在游戏技能开发中,开发者只需要根据策划 ...

  2. 2019 DevOps 必备面试题——DevOps 理念篇

    原文地址:https://medium.com/edureka/devops-interview-questions-e91a4e6ecbf3 原文作者:Saurabh Kulshrestha 翻译君 ...

  3. 卡牌手游源码《暗黑世界V1.3》数据库表说明文档!!!

    原地址:http://blog.csdn.net/uxqclm/article/details/11970761 欢迎来到9秒:www.9miao.com 由于看到论坛中有人询问需求<暗黑世界V ...

  4. 《Genesis-3D开源游戏引擎--横版格斗游戏制作教程06:技能播放的逻辑关系》

    6.技能播放的逻辑关系 技能播放概述: 当完成对技能输入与检测之后,程序就该对输入在缓存器中的按键操作与程序读取的技能表信息进行匹配,根据匹配结果播放相应的连招技能. 技能播放原理: 按键缓存器中内容 ...

  5. DevOps之技能面

    <教学手册(Teaching Manual)> 教学:人类培养态度.传授知识.训练技能的活动.教学目的:知识与技能的层次:(了解.理解.熟悉.掌握.精通).教学手段:理论与实践的方面:(科 ...

  6. WEB入门 四 CSS样式表深入

    学习内容 Ø        CSS选择器深入学习 Ø        CSS继承 Ø        CSS文本效果 Ø        CSS图片效果 能力目标 Ø        掌握CSS选择器的组合声 ...

  7. 【转】MMORPG游戏服务器技能系统设计:表格字段与技能程序框架

    本文主要从一个程序员的角度阐述一下mmorpg服务器技能系统的程序框架设计,最近在做这个,就当做一个总结吧,其中某些概念可能没有解释清楚,欢迎大家拍砖讨论~ 技能其实是战斗系统的一个组成部分,战斗基本 ...

  8. 《暗黑世界V1.3》数据库表说明文档

    <暗黑世界V1.3>数据库表说明文档 (下载地址:http://www.9miao.com/forum.php?mod=viewthread&tid=38821&highl ...

  9. 2019 DevOps 技术指南

    原文链接:https://hackernoon.com/the-2018-devops-roadmap-31588d8670cb 原文作者:javinpaul 翻译君:CODING 戴维奥普斯 写在前 ...

随机推荐

  1. Lambda 方法引用

    1.方法引用:若Lambda 体中的内容有方法已经实现了,我们可以使用“引用方法”(可以理解为方法引用是Lambda表达式的另外一种表现形式) 方法引用主要有三种语法格式: ①  对象 :: 实例方法 ...

  2. iview2+ 表单密码验证

    <Form :model="formItem" v-model="formItem.id" ref="formItem" :label ...

  3. python自动化第一课 - python安装以及pycharm配置

    1.安装python 1.1打开python官网https://www.python.org/downloads/windows/进行下载Python 3.8.0 1.2下载完毕后进行安装,1勾选 A ...

  4. Kubernetes Jenkins动态创建Slave

    目录 0.前言 1.Jenkins部署 2.配置jenkins动态slave 3.dubbo服务构建 3.1.制作dubbo镜像底包 3.2.制作slave基础镜像 3.2.1.Maven镜像 3.2 ...

  5. swoole模块的编译安装:php编译安装swoole模块的代码

    本篇文章给大家带来的内容是关于swoole模块的编译安装:php编译安装swoole模块的代码,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 1.下载swoole 1 wget ht ...

  6. 手把手教你用Abp vnext构建API接口服务

    ABP是一个开源应用程序框架,该项目是ASP.NET Boilerplate Web应用程序框架的下一代,专注于基于ASP.NET Core的Web应用程序开发,也支持开发控制台应用程序. 官方网站: ...

  7. C语言 变量初始化二进制、八进制、十六进制

    int a1 = 10;   //十进制 int a2 = 0b10;  //二进制 int a3 = 010;    //八进制 int a4 = 0x10;  //十六进制 打印的结果:

  8. Vue 学习记录(一)

    Vue 研究了一段时间,要学的东西挺多的. 一.基本指令 1.v-text:2.v-html:3.v-pre;4.v-cloak:5.v-once:6.v-if:7.v-else:8.v-else-i ...

  9. 记 2020蓝桥杯校内预选赛(JAVA组) 赛后总结

    目录 引言 结果填空 1. 签到题 2. 概念题 3. 签到题 4. 签到题 程序题 5. 递增三元组[遍历] 6. 小明的hello[循环] 7. 数位递增[数位dp] 8. 小明家的草地[bfs] ...

  10. Pyinstaller通过spec文件打包py程序(多个py脚本)

    Pyinstaller pyinstaller是python的一个第三方模块,使用它可以将python程序打包为可执行文件,实现打包后的程序在没有python环境的机器上也可以运行.pyinstall ...