List Headline Image
Updated by Aymen Amri El Amri on May 27, 2017
 REPORT
88 items   2 followers   0 votes   25 views

The Must Know Checklist For DevOps & Site Reliability Engineers

This list is not exhaustive but enumerates only technical basic, must-know skills and some random thoughts. You may use them as a checklist to evaluate yourself or someone else or to prepare for your next DevOps/SRE job interviews.

2

You should master *nix systems and have a good understanding of how Linux distributions work.

3

Be at ease with Terminal. You may have GUIs to manage your servers but you have to LOVE the terminal no matter what’s...

4

How to get the CPU/system info (cat /proc/version, /proc/cpuinfo, uptime, et. al.)

5

How cron jobs works. Set cron jobs on specific days/time/month.

6

How to know what OS you are running on your machine (cat /etc/lsb-release)

7

Learn the difference between different *nix OSs and How to know what OS you are running on your machine (e.g. cat /et...

8

Difference between shells: sh/dash/bash/ash/zsh ..

9

How to set and unset ENV variables. Exporting ENV variable is temporary, how to export permanent variables ?

10

What are shell configuration files : ~/.bashrc, .bash_profile, .environment .. How to “source” settings for program i...

11

Knowing Vim, its configuration (.vimrc) and some of its basic tips is a must.

12

How logging works in *nix systems, what are logging levels and how to work with log management tools (rsyslog, logsta...

13

How swapping works. What is swappiness. (swapon -s, /proc/sys/vm/swappiness, sysctl vm.swappiness ..)

14

How to view/set network configuration on a system

15

How to set static/dynamic IP address on a machine with different subnets? (Hint: CIDR)

16

How to view/set/backup your router settings?

17

How DNS works ? How to set-up a DNS server (Bind, Unbound, PowerDNS, Dnsmasq ..) ? What is the difference between rec...

18

Get familiar with DNS and A, AAAA, C, CNAME, TXT records

19

How SSH works, how to debug it and how you can generate ssh keys and do passwordless login to other machines

20

How to set-up a web server (Apache, Nginx ..)

21

What are the difference between Nginx and Apache ? When to use Nginx ? When to use Apache ? You may use both of them ...

22

How to set-up a reverse-proxy (Nginx ..)

23

How to set-up a caching server ( Squid, Nginx ..)

24

How to set-up a load balancer ( HAproxy, Nginx ..)

25

What is an init system ? Do you know Systemd (used by Ubuntu since 15.04) , Upstart (developed by Ubuntu), SysV ..