Author Archives: setevoy

FreeBSD: Home NAS, part 5 – ZFS pool, datasets, snapshots, and ZFS monitoring
5 (3)

27 December 2025

Continuing the “for fun and profit” journey of setting up my home server with FreeBSD on a Lenovo ThinkCentre M720s SFF. And today, finally, we will do the main part – set up a ZFS pool on real disks, look at working with datasets, encryption, snapshots, and monitoring. All posts in this blog series: FreeBSD:… Read More: FreeBSD: Home NAS, part 5 – ZFS pool, datasets, snapshots,… »

Loading

FreeBSD: Home NAS, part 4 – Local DNS with Unbound
5 (1)

26 December 2025

In the previous post, FreeBSD: WireGuard VPN, Linux peer and routing between networks, we set up a VPN to connect two networks – my office and home – and everything is working perfectly. However, currently, to connect to any host in the networks, you have to specify an IP address. Of course, you could manually… Read More: FreeBSD: Home NAS, part 4 – Local DNS with Unbound5… »

Loading

FreeBSD: Home NAS, part 3 – WireGuard VPN, Linux peer, and routing
4.1 (15)

25 December 2025

I am continuing to set up my home server on FreeBSD 14.3, which is intended to serve as a NAS. In the previous post, FreeBSD: introduction to Packet Filter (PF) firewall, we got acquainted with firewalls; the next step is to configure a VPN for access. The main idea is to (finally!) connect my “office”… Read More: FreeBSD: Home NAS, part 3 – WireGuard VPN, Linux peer,… »

Loading

FreeBSD: Home NAS, part 2 – introduction to Packet Filter (PF) firewall
3.7 (6)

24 December 2025

I’m continuing to gradually set up my home NAS on FreeBSD, and the first thing I want to dive into is FreeBSD firewalls. I used to work with IPFW back in the day – FreeBSD: initial setup of IPFW, from 2012. Currently, there are three “built-in” firewalls in the system – Packet Filter (PF), IP… Read More: FreeBSD: Home NAS, part 2 – introduction to Packet Filter… »

Loading

FreeBSD: Home NAS, part 1 – configuring ZFS mirror (RAID1)
4.8 (5)

23 December 2025

I have an idea to set up a home NAS on FreeBSD. For this purpose, I bought a Lenovo ThinkCentre M720s SFF – it’s quiet, compact, and offers the possibility to install 2 SATA III SSDs plus a separate M.2 slot for an NVMe SSD. What is planned: on NVMe SSD: UFS and FreeBSD on… Read More: FreeBSD: Home NAS, part 1 – configuring ZFS mirror (RAID1)4.8… »

Loading

FreeBSD: Installation on a ThinkPad X200 Tablet in 2025
0 (0)

23 December 2025

I’ve been a ThinkPad fan for a long time; I really love their entire lineup. Recently, I came across the X200 model, which was manufactured starting in 2008 – I just saw a picture somewhere and really wanted it for my “collection.” Unexpectedly, it was even available for sale in Ukraine, so I bought this… Read More: FreeBSD: Installation on a ThinkPad X200 Tablet in 20250 (0) »

Loading

VictoriaMetrics: Recording rules for AWS Load Balancer logs
0 (0)

6 December 2025

Continuing the topic of AWS Load Balancer logs: in the previous post, Golang: recording AWS Load Balancer logs to VictoriaLogs, we collected logs using our own logs collector in Golang. Now we need to get something useful out of these logs. Previously, when I had Loki on my project, we used its RecordingRules to create… Read More: VictoriaMetrics: Recording rules for AWS Load Balancer logs0 (0) »

Loading

Golang: writing an AWS Load Balancer logs collector for VictoriaLogs
5 (1)

6 December 2025

The next task I want to do with Golang is building a custom log collector that retrieves AWS Application Load Balancer logs from S3 and sends them to VictoriaLogs. Sure, we could simply use Vector.dev, like what I did for AWS VPC Flow Logs (see: Vector.dev introduction, logs from AWS S3, and VictoriaLogs integration). But… Read More: Golang: writing an AWS Load Balancer logs collector for VictoriaLogs5… »

Loading

Golang: interfaces – the “magic” of calling methods through interface
0 (0)

29 November 2025

Interfaces in Go allow you to describe access to data or behavior without providing concrete implementations inside the interface itself. In this way, we create a “common bus” that we can then use to “connect” external “systems.” In other words, an interface is an abstraction that defines a contract. The contract describes what can be… Read More: Golang: interfaces – the “magic” of calling methods through interface0… »

Loading

Golang: creating OpenAI Exporter for VictoriaMetrics
0 (0)

23 November 2025

Got a new task to monitor costs on OpenAI – to see how much each project spends per day, and send alerts to Slack if costs exceed a set threshold. I tried several existing exporters for the OpenAI API, but none provided cost metrics per project – so we’ll build one ourselves. To create the… Read More: Golang: creating OpenAI Exporter for VictoriaMetrics0 (0) »

Loading