Small-scale Infrastructure Management with Python-based Tools

Abstract

Managing server infrastructures (i.e. everything below the application stack) is a lot of work. There is hardware to install, operating systems to set up, IP addresses to assign and backup the manage; at the same time, there are more to manage as the business grows. This talk will present several Python-based tools (namely cloud-init, curtin, MAAS, and Ansible) can help manage the infrastructure (even if the fleet is too small to justify huge investment in automation), and take a look at how they work under the hood.

Description

[Slides](https://docs.google.com/presentation/d/1FY0xbFmV-vi_Y_q5X0pS_xPrM9Em_3r6p49SN8hygiw/edit?usp=sharing) Links for the tools that were mentioned: * [MAAS](https://maas.io) - self-service, remote installation of Windows, CentOS and Ubuntu * [cloud-init](https://cloud-init.io) - the standard for customising cloud instances * [curtin](https://curtin.readthedocs.io/en/stable/) - the curt installer. It is blunt, brief, snappish, snippety and unceremonious. Its goal is to install an operating system as quick as possible. * [Ansible](https://www.ansible.com) - simple, agentless IT automation <br> Alternative Toolings: * Similar to MAAS * [Netbox](https://github.com/digitalocean/netbox) (for IP Address Management) * [Clobber](https://cobbler.github.io/) * [Spacewalk](https://spacewalkproject.github.io/) * [Foreman](http://theforeman.org/) * [Razor](https://github.com/puppetlabs/razor-server) * [Digital Rebar](https://rebar.digital/) * Similar to Ansible, cloud-init, curtin * [Chef](https://www.chef.io/) * [Puppet](https://puppet.com/) * [SaltStack](https://www.saltstack.com/) * [Capistrano](https://capistranorb.com/) * [Docker](https://www.docker.com/) (for setting up Application environment)

Speaker

SHY

目前在台大教務處擔任系統工程師