16:00:33 #startmeeting Infrastructure (2022-09-08) 16:00:33 Meeting started Thu Sep 8 16:00:33 2022 UTC. 16:00:33 This meeting is logged and archived in a public location. 16:00:33 The chair is mkonecny. Information about MeetBot at https://fedoraproject.org/wiki/Zodbot#Meeting_Functions. 16:00:33 Useful Commands: #action #agreed #halp #info #idea #link #topic. 16:00:33 The meeting name has been set to 'infrastructure_(2022-09-08)' 16:00:33 #meetingname infrastructure 16:00:33 The meeting name has been set to 'infrastructure' 16:00:33 #chair nirik mobrien zlopez bodanel dtometzki jnsamyak computerkid 16:00:33 Current chairs: bodanel computerkid dtometzki jnsamyak mkonecny mobrien nirik zlopez 16:00:34 #info Agenda is at: https://board.net/p/fedora-infra 16:00:34 #info About our team: https://docs.fedoraproject.org/en-US/cpe/ 16:00:34 #info Fedora Infra documentation: https://docs.fedoraproject.org/en-US/infra 16:00:34 #topic greetings! 16:00:48 morning 16:01:10 Hi everyone 16:01:16 Welcome to today show :-) 16:01:34 I will be your guide for today 16:01:34 .hello zlopez 16:01:35 mkonecny: zlopez 'Michal Konecny' 16:01:46 .hello eddiejennings 16:01:47 eddiejenningsjr: eddiejennings 'Eddie Jennings' 16:02:30 Let's go to the first part of this show 16:02:45 Anyone new wants to say hello? 16:02:46 #topic New folks introductions 16:02:46 #info This is a place where people who are interested in Fedora Infrastructure can introduce themselves 16:02:46 #info Getting Started Guide: https://fedoraproject.org/wiki/Infrastructure/GettingStarted 16:04:29 It seems like no new folks today 16:05:02 #topic Next chair 16:05:02 #info magic eight ball says: 16:05:02 #info chair 2022-09-15 - dtometzki 16:05:09 #info chair 2022-09-22 - phsmoura 16:05:09 #info chair 2022-09-29 - ??? 16:05:27 Anybody wants to be seated in the chair for 2022-09-29? 16:06:01 I should be able to do 2022-09-29 16:06:11 It's yours 16:06:36 #info chair 2022-09-29 - eddiejenningsjr 16:07:05 I think we are prepared for rest of the month :-) 16:07:13 Let's see what else is awaiting us today 16:07:19 #topic announcements and information 16:07:19 #info CPE Infra&Releng EU-hours team has a Monday through Thursday 30 minute meeting going through tickets at 1030 Europe/paris in #centos-meeting 16:07:19 #info CPE Infra&Releng NA-hours team has a Monday through Thursday 30 minute meeting going through tickets at 1800 UTC in #fedora-meeting-3 16:07:24 #info If your team wants support from the Fedora Program Management Team, file an isssue: https://pagure.io/fedora-pgm/pgm_team/issues?template=support_request 16:07:24 #info please help us with improving contribution to fedora infra https://discussion.fedoraproject.org/t/improving-contribution-to-fedora-infrastructure/38294/8 16:07:24 #info oncall should also handling #fedora-releng pings if possible 16:07:45 #info Fedora 37 Beta freeze now in effect! 16:07:46 #info Fedora 37 Beta Go/No Go meeting happening today 1700 UTC in #fedora-meeting 16:07:50 Anything else to announce? 16:08:27 #info Fedora is awesome 16:08:31 Thats all I have 16:08:46 * mkonecny agrees 16:08:56 I think that one is a known fact rather than announcement nirik 16:09:07 ah yeah, probibly so. 16:09:36 Apparently Fedora (maybe the kernel itself) isn't playing nice with the trackpad on the Clevo model used for the latest System76 Lemur Pro, but other than a minor issue, I concur, Fedora = awesome :D 16:10:26 It seems that there is nothing else to announce 16:10:38 Let's look at the oncall 16:10:43 #topic Oncall 16:10:44 #info https://fedoraproject.org/wiki/Infrastructure/Oncall 16:10:44 #info https://docs.fedoraproject.org/en-US/cpe/day_to_day_fedora/ 16:10:49 #info phsmoura is on call from 2022-09-02 to 2022-09-08 16:10:49 #info mobrien is on call from 2022-09-09 to 2022-09-15 16:10:49 #info dtometzski is on call from 2022-09-16 to 2022-09-22 16:11:01 #info ??? is on call from 2022-09-23 to 2022-09-29 16:11:05 .oncalltakeeu 16:11:07 mobrien: Kneel before zod! 16:11:11 We are well prepared for the oncall 16:11:24 I'll take on-call for 2022-09-23 to 2022-09-29. I like ending on-call with a meeting chair day :) 16:11:34 yeah, that often works well... 16:11:42 Eddie Jennings, Jr.: It's yours 16:12:02 #info eddiejenningsjris on call from 2022-09-23 to 2022-09-29 16:12:24 Sorry missing space 16:12:41 #info Summary of last week: (from current oncall ) 16:12:45 I didnt receive any pings 16:13:00 So quiet week 16:13:11 #topic Monitoring discussion [nirik] 16:13:11 #info https://nagios.fedoraproject.org/nagios 16:13:11 #info Go over existing out items and fix 16:13:39 nothing really new here I don't think... let me check 16:14:08 Maybe replacing nagios with zabbix :-D 16:14:18 I've noticed the f35-test and f36-test instances bounce on and off a lot 16:14:28 if someone wants to go look at those that would be nice. 16:14:39 What they are used for? 16:14:47 maintainer-test machines. 16:15:05 https://fedoraproject.org/wiki/Test_Machine_Resources_For_Package_Maintainers 16:15:18 they have to be on our vpn due to IPA. 16:15:49 otherwise we continue to get badges-backend alerts. I suppose if someone is bored, they could look at that when it happens and see whats causing it to get stuck.. 16:16:14 otherwise same stuff, we can move on... 16:16:40 Ok 16:16:53 I did have a quick look at f36 maintainer test the other day, seems to be a slow connection from what I can see with the vpn 16:16:57 I will look into it more though 16:17:06 We actually have a learning topic for today 16:17:12 #topic Learning topic 16:17:12 #info 2022-09-08 BTRFS #2 [eddiejennings] 16:17:17 :D 16:17:25 excellent. 16:18:14 As always, I don't claim to be a master, as I'm learning myself, and of course I couldn't finish some of my testing this weekend due to $life. 16:18:59 Today, I'm going to talk about one way to leverage BTRFS for file backups. 16:20:03 First, some inspiration. This Fedora Magazine article from September 2020 is what got me thinking about this and provided some initial technical guidance. https://fedoramagazine.org/btrfs-snapshots-backup-incremental/ 16:21:35 As with anything related to learning, it is best (in my opinion) to try to apply what you're trying to do to the real world; thus, here is what I set out to do. 16:23:47 Both my and my wife's laptop are running Fedora 36 using default storage settings, so `/home` is using BTRFS as its file system. I want to achieve the following. 16:23:48 1. Take regular backups of `/home` 16:23:48 2. Keep a few backups on the laptop 16:23:48 3. Keep most externally (on a VM in my home lab) 16:23:48 4. Do some cold archiving offsite (likely BackBlaze B2) 16:24:23 The key is, for better or worse, I'm wanting to build the solution myself and leverage BTRFS features. 16:25:03 For those unfamiliar with BTRFS, what feature am I talking about? I'm talking about BTRFS's snapshot feature! 16:26:48 What is a snapshot, you ask? It is effectively a copy of a particular BTRFS subvolume (in fact it's a subvolume itself). 16:27:40 Those more knowledgeable about BTRFS than I will likely cringe at my word copy, as it's not exactly a copy as in doing `cp file1 file2`, but in terms of function, that is how a snapshot is going to behave in this context. 16:28:25 If you want to view the subvolumes on your system, you can run `sudo btrfs subvolume list /` 16:30:26 So for my scenario, I decided that I wanted to make a hidden directory named `/.snapshots` and create all of my snapshots of `/home` there. 16:31:07 You can create a snapshot nearly anywhere, BUT, the destination of the snapshot must be a BTRFS file system. 16:32:13 Let's say that `/.snapshots` was its own mount point on an XFS filesystem (rather than being a part of `/`, which is BTRFS for me), saving BTRFS snapshots there would not work -- to the best of my knowledge. 16:33:04 Ok, Eddie, how do we actually make these snapshots, and how would they be considered a backup. 16:34:53 To make a snapshot that is read-only (explanation coming soon), you would run `sudo btrfs subvolume snapshot -r /home /.snapshots/snapshotname` 16:35:30 `/home` is the BTRFS subvolume you're wanting to snapshot and `/.snapshots/snapshotname` is the directory that will be your snapshot. 16:36:46 So if you ran that command (assuming `/.snapshots` exists on your system and it's BTRFS formatted), followed by `ls /.snapshots`, you will see a directory named `snapshotname` 16:37:00 within this directory will be the entire contents of the `/home` directory 16:37:54 Also everything is readonly (that's what the `-r` does), so data cannot be changed; thus, you have an immutable backup of `/home` now at `/.snapshots/snapshotname` 16:40:02 If you were to delete `/home/foo.txt`. You can easily restore the file by doing `cp /.snapshots/snapshotname/foo.txt /home/` 16:41:22 The beauty of this is these snapshots (which are actually BTRFS subvolumes themselves) don't take much (any that I've seen so far, but I'm sure it's taking up something) space. So it's feasible to take a snapshot say hourly, which is what I'll be doing. 16:41:59 Earlier, I mentioned readonly snapshots, and that I would do some explaining. 16:42:03 is the read-only feature using permissions? 16:43:43 I think it's enforced at the filesystem level... and files have their own perms if you look at them... 16:43:45 Good question. From what I can see the read-only aspect does not come from traditional octal permissions 16:43:49 (but I'm not sure) 16:44:07 I agree with nirik 16:44:16 But rather, it's a part of BTRFS filesystem attributes 16:45:35 If you were to do `sudo btrfs subvolume show /path/to/your/snapshot` you'll see in flags that's readonly (if you made the snapshot using `-r` 16:46:04 Correct, it's enforced by btrfs kernel code, not even root can modify the contents of read-only subvolumes. 16:46:16 got it 16:46:23 By default snapshots are not readonly, you must pass the `-r` flag. 16:47:04 Why would you want non-readonly snapshots? Having a non-readonly snapshots make doing a large revert-in-place function possible. 16:47:57 * nirik thinks cmurf has a highlight for btrfs. ;) 16:48:28 This isn't something I have messed with, but I want to in the future. For my project, I am trying to emulate "traditional" backups of you have copies which are immutable, and you restore files by copying from this immutable copy. 16:49:40 So for the project, I've covered items 1 and 2. Life got in the way for testing btrfs send / receive, which would be the next step with getting these snapshots off of the local machine (snapshot doesn't do you much good when the laptop itself is on fire) and onto an external server. 16:50:36 Now cmurf is far more knowledge able than I in things btrfs, but what I can provide is the newb's perspective and some basics of how to get started working with snapshots as backups :) 16:51:13 So, questions / comments / snarky remarks? :) 16:51:22 Hi \o 16:51:27 You're doing great, keep going 🙂 16:51:37 I had the backups set similarly, but I was forced to disable them, because of the space the snapshot took and deleting files didn't help, because they are still in the snapshot 16:52:07 This is the script I will be using to creating the snapshots on my and my wife's laptop. 16:52:07 https://gitlab.com/EddieJennings/home-lab-ansible/-/blob/create_backup_server/templates/btrfs-backup.sh.j2 16:52:10 Can anybody get me some learning stuff on, why we need to migrate from EXT file systems to BTRFS? 16:52:56 I'm on BTRFS solely due to defaults for Fedora Workstation, and the snapshots were intriguing to me 16:53:36 Said script is being launched from a systemd timer that goes off every hour. If I find that's taking too much space, I'll adjust. 16:53:55 TheExorcist[m]: well, a bit beyond the scope here... but look at the fedora change for it and the mailing list discussion. Basically more features with btrfs 16:53:55 OK, BTRFS is something like Home Stuff for RedHat and Fedora? 16:54:14 BTRFS is a modern copy-on-write filesystem with features including snapshots, file integrity, compression etc. 16:54:48 Supposedly also including native encryption in the future? 16:55:24 Once I get my btrfs send /receive going with my backup server, I'll do another learning session detailing the what / how / gotcha from my experience :) 16:55:25 being worked on yeah... 16:55:27 * eddiejenningsjr hands back to zlopez 16:57:54 We have last few minutes of the meeting 16:58:00 So I'm switching to open floor 16:58:01 #topic Open Floor 16:58:11 Anything else to discuss? 16:59:03 I had more issues with BTRFS, than EXT file systems, so far. in my experience, BTRFS is still very unstable. 16:59:18 and unreliable. 16:59:30 Have you filed bugs? 16:59:38 I filed one. 16:59:44 I had issues with it many years ago... but recently it's been fine here 16:59:58 Cool, either cc me on it or paste URL here please 17:00:22 We are out of time 17:00:24 #endmeeting