It’s been a while since I’ve last posted a weekly recep, since then I’ve been labbing and techin. Tekkin ? And reading a few books.

Topics / labs:

  • Ansible / Automating Linux installation

  • Python

  • Virtualization

  • Synology

Ansible

I’ve completed the KodeKloud Ansible cert course and currently reviewing the mock tests. Ansible tasks will become easier while familiarizing with sys admin tasks. I’ve been looking for ways to use Ansible in my home lab.

  1. I found a really great reddit thread on how to become a sys admin. This is great practice on automating various sys admin tasks using Ansible.

  2. I deployed a baremetal Ubuntu server 20.04 installation on a mini celeron processor. I used this system to:

  3. Deploy an Apache server

  4. Mysql database

  5. Host Nextcloud server

Server Auto-Install

I completed all of these tasks using Ansible and a cloud-init auto install script.

An autoinstall script is generated after every Ubuntu installation. You can find that script here: /var/log/installer/autoinstall-user-data

       Getting things up and running with the auto installation is similar to deploying a         virtual machine using cloud images. However there’s a few more steps to take.         You’ll need to choose your method of readying this auto-install file to the installer.

        After much research, I chose to pack it into the .iso . I followed the guide github         repository attached in the references below.

       I then created a playbook to handle installing, and confirguring the nextcloud         server.

### Resources:

Python

I am still working through Angela Yu’s 100 days of code. Although somewhat at a slower pace. I completed Day-88’s project which was a todolist. For this project I took an approach of dumping all tasks, picking the most important ones from that list, and then use that as your todo list. I learned of this method after listening to this Catalyst Podcast episode featuring Charles Duhig the author of Power of Habit. Worth a listen.

This project was fun to work on because I was stretched. I am somewhat happy with the final outcome even though it feels very much like a beta.

code: -> 100daysofcode/dumppickdo

I will continue to add features to this todo list. I plan to host it version 1 of the software on a cloud server soon.

Virtualization

Since provisioning my virtualization host on XCP-ng has been going well. I wanted to interact with that environment using my development environment that is on a kvm/qemu host.

I ran into a few issues because that guest is behind a NAT network. I can reach it other networks fine, but I wanted them to be able reach me without digging around with IPTables. I needed true bridge networking like in my XCP-ng setup.

After researching aka googling, I found this great blog post / video on setting up a bridge with kvm / qemu. Virtual Machine Networking (libvirt) | octetz

This is great because I can ssh into my development environment without using the host as a jump box if you will.

Synology

I have a DS 220+ NAS and it’s been great. I’ve set it up as a local remote git repo, data backup server, and local cloud backup. If you’re looking for a NAS this review on Youtube is worth checking out. Synology DS220+ NAS Review - YouTube