Training for Baby Crafty Penguins

Training for Baby Crafty Penguins

Here is the training that we like our fledgling baby Crafty Penguins go through. This gives solid exposure to Linux, Networking, and Development concepts required to fill a DevOps or SRE (Site Reliability Engineering) role.

  1. Run through http://www.linuxfromscratch.org/lfs/ book to build a Linux system from scratch.

  2. Setup GNS3 simulator with:

    1. Cisco IOS switch

    2. VLANs. One VLAN for WAN upstream internet access (assume DHCP client), one for internal server LAN (192.168.71.0/24), and one for VoIP devices (192.168.72.0/24)

    3. Debian 9 bare-bones server to host DHCP server and DNS resolver

    4. Web server with WordPress

    5. Sophos XG Firewall (Home edition is free)

      1. Setup interfaces for each of the WAN, LAN, and VOIP VLANs
      2. NAT including port forward for web traffic to WP server
    6. OSPF to advertise unique /32 loopback IPs of all hosts and firewalls to each other. Use Quagga on the LFS server and Bird on the WordPress server.

  3. Setup a Proxmox VE hypervisor with software RAID1 configuration. This could be in a virtual machine.

  4. On the LFS server, setup Postfix that actually works using real domain. Setup summer vacation autoreply on santa@ mailbox.

  5. Create a simple Django web app that handles hardware inventory for any physical or virtual device such as servers, workstations, firewalls, access points, virtual machines, etc. In the model, also handle properties of each device such as memory, cpu, disk space, network interface, OS name, OS version. Expose an API so that other applications can create/update entries in the database.

  6. SaltStack recipe that manages the /etc/resolv.conf file on each Linux system, and registers the data of each system in the Django app using it’s API.

  7. Selenium test suite for the Django app to test that login and device search works.

  8. Make sure the above all starts automatically after a reboot.

  9. Documentation for the above. The focus of documentation is to help a colleague support what you setup, as well as your “future you” who has forgotten who it’s been setup.

  10. Network diagram for the above.

Photo by Ian Parker on Unsplash

Categories: Team, Training

By Slava Martin

April 1, 2017

Slava Martin
Author: Slava Martin

The Crafty Penguins team provides Linux, DevOps, and SRE tools and services for leading edge technology companies around the world.

PREVIOUS

Props to DevOps Panel Meetup

NEXT

Why we love Gitlab