This is an old revision of the document!
Table of Contents
Stack of NUCs
The mission in this Lab is to create genuine hands-on experience for technology learners using the learner-friendly NUC PCs.
Mission:
- Auto install Ubuntu servers
- Install and use Ansible to manage our servers
- Install and run a FAH protein folding cluster
- Install a Kubernetes cluster
Materials:
- Wireless router providing DHCP and internet access
- NUCs
- 4 minimum for the Kubernetes portion; 5 recommended, or more are recommended for testing Kubernetes resiliency
- wifi cards to make it easier to run large stacks of NUCs
- D34010WYK was used to Lab testing as they are readily available; I used 8GB RAM and 32GB or greater mSATA SSDs
- USB sticks
- 3 USB sticks, 8GB or more each
- Using a pair of sticks for booting and one more for firmware upgrades
More projects:
- Trying running different workloads on your Stack of NUCs
- If you are interested in testing Kubernetes, there are some good tutorials on running Kubernetes all on one NUC using LXD to virtualize all the nodes.
References:
- NUC cluster building: cloud-init https://jimangel.io/posts/automate-ubuntu-22-04-lts-bare-metal/
Project Overview
Before starting the Lab, you might review Preparing NUCs for Labs. The will help you prepare all the NUCs for use.
Set Up NUC 1
NUC 1 - install Ubuntu desktop on the first build
- install Ubuntu and packages on NUC 1
- create the modified ISO for USB installation of remaining NUCs
- create the CIDATA USB stick
- create the firmware upgrade USB stick
- create SSH management keys
Set Up NUC 2
NUC 2 - install Ubuntu on Ansible control node
- automatic install of Ubuntu
- configure as Ansible control node
Set Up NUC 3 and Remaining NUCs
NUC 3 - Build remaining NUCs starting with NUC 3
- automatic install of Ubuntu
- configure as Ansible node
- repeat for as many nodes as desired
Discover NUCs and add to Inventory
Discover and Add to Inventory - Discover the worker nodes you built and add them to Ansible's inventory.
First Ansible Playbook - Update
Ansible - Update - update Ubuntu packages on all the NUCs in the stack
Second Ansible Playbook - CMOS Battery Health and Clock Setting
Ansible - CMOS - use Ansible to check the CMOS battery and update the hardware clock on the RTC (real time click) chip
Installing FAH with Ansible
FAH Installation - install Folding at Home on our Stack of NUCs and donate CPU time towards a good cause.
Removing FAH with Ansible
FAH Removal - it's time to remove Folding at Home so we can continue to the next demonstration.
Installing Kubernetes with Ansible
Install Kubernetes - we will install Kubernetes using Ansible.
Demonstrating a Web App on Kubernetes
Demonstrate App on k8s - demonstrate running a web app on the Kubernetes cluster.
Let's get started with building our first NUC, NUC 1!