OpenWRT/LEDE On a Routerboard RB750Gr3 (Hex3)
The Routerboard RB750Gr3 (aka Hex3) is a nice and very affordable (~$60) hardware platform based on the MediaTek MT7621AT. It features gigabit ethernet ports, and a relatively fast multi-core CPU. However, out of the box it runs RouterOS. While this is a feature-full platform, I found configuration difficult and not very pleasant. Hoping that a build of OpenWRT/LEDE would soon become available, I bought an RB750Gr3 a couple of months ago.
A build became available, but it couldn’t be flashed on the RB750Gr3 without external hardware like a bus-pirate. But this has recently changed, and it’s now possible to TFTP boot a LEDE runtime, which allows access to write to the flash/mtd. Using this method it’s now possible to install OpenWRT/LEDE and upgrade uboot on the device without external hardware.
The OpenWRT site documents this procedure nicely, however, it’s still quite a lot of work to build all the required images and files. So I’ve deciced to host the images that I’ve created here, so other people can skip this rather tedious step of building the image.
The files can be found on https://rb750gr3.sigio.nl/
Please update factory.bin with your own MAC address at offset E000. Currently it’s set to 64:D1:54:AA:BB:CC
You can then netboot/tftpboot using the file ‘vmlinux-initramfs.elf’ (boot the RB750 and hold RESET until the leds stop flashing)
Wait for the system to come up on 192.168.1.1
Login as root
Copy the factory.bin uboot.bin uboot-env.bin and lede-17.01.2-ramips-mt7621-rb750gr3-squashfs-sysupgrade.bin to the system (in /tmp for example)
mtd write (without reboot) the 4 files to the relevant partitions (cat /proc/mtd to see the names/devices)
Monitoring S.M.A.R.T. attributes in Nagios/Icinga
One of my customers is using various (Samsung) SSD’s in their servers, and the first of these have started reaching their end-of-life. SSD’s have a somewhat different failure scenario then spinning metal disks, so monitoring their life-expectancy can be interesting.
Besides just logging and graphing the SMART attributes, it is also handy to have some alerting on when certain thresholds are crossed. To do this, I’ve written a simple nagios/icinga script which will alert on interesting SMART attributes, and will also calculate the percentage of total guaranteed writes on the SSD’s. Since the guaranteed TBW value will differ between various SSD vendors and product-ranges, this value needs to be specified on the command-line by the user.
I’ve integrated this check-script into my normal monitoring-scripts, but it can off-course also be used as a stand-alone tool. If has options to specify the device to smartctl, so disks behind raid-controllers can also be monitored.
The script can be found in my sysadmin repository on github: check_ssd_attribs
Sig-I/O joins up with ITGilde Coöperatie
Today, september 2nd 2015 Sig-I/O Automatisering has joined the ITGilde Coöperatie
By joining ITGilde Coöperatie the customers of Sig-I/O Automatisering can make use of the knowledge and skills of a large (~50) group of highly skilled freelance Unix/Linux specialists.
The following (dutch) article was posted on the ITGilde website:
Vandaag verwelkomt ITGilde Mark Janssen als 49ste lid van ITGilde. Naast ITGilde is Mark actief bij de NLUUG en RevSpace . Het motto van Mark is: “over 5 minuten is het opgelost”. De reden voor Mark om aan te sluiten bij ITGilde is een kwalitatief hoogwaardig netwerk met een hoge frequentie van vakgerelateerde bijeenkomsten; gericht op Linux/Unix ondernemers. Daarnaast werkt Mark meer dan fulltime en wil toch meer klanten kunnen helpen dan hij nu aankan. ITGilde is daar de oplossing voor: “ik kan mezelf maar 1 keer inzetten maar met ITGilde beschik ik nu over een pool van goede technische Unix/Linux specialisten!” Welkom Mark!
Read passwords from the 'pass' passwordstore into ansible
Ansible is a great orchestration-tool, and while it has it’s own secure password storage system (Vault), I prefer to use ‘pass’ from http://passwordstore.org
There is no specific ‘pass’ plugin for ansible, but using the ‘pipe’ lookup plugin works quite well
This can then be used to store API keys, passwords for various accounts, or other information that needs to remain secret while still being able to share and version your ansible plays.
Update 2017: There is now a passwordstore lookup-plugin for ansible