CoreOS: an introduction – Brandon Philips
- Reference to the “Datacenter as a Computer Paper“
- Intro to containers
- cAdvisor – API of what resources are used by a container
- Rocket
- Multiple implementations of container spec , rocket is just one implementation
- Operating system is able to make less promises to applications
- Kernel API is really stable
- Making updates easy
- Based on ChromeOS
- Update one partition with OS version. Then flip over to that.
- Keep another partition/version ready to fail back if needed
- Safer to update the OS seperated from the app
- Just around 100MB in size. Kernel, very base OS, systemd
- etcd
- Key value store over http (see my notes from yesterday)
- multiple, leader election etc
- Individual server less critical since data across multiple hosts
- Scheduling stuff to servers
- fleet – very simple, kinda systemd looking
- fleetctl start foo.service – sends it off to some machine
- meso, kubernetes, swam other alternative scedulers
- Co-ordination
- locksmith
- Service discover
- skydns, discoverd, conf
- Export location of application to DNS or http API
- Need proxies to forward request to the right place (for apps not able to query service discovery directly)
- It is all pretty much a new way of thinking about problems
Why you should consider using btrfs, real COW snapshots and file level incremental server OS upgrades like Google does. – Marc Merlin
- Worked at netapp, hooked on snapshots, lvm snapshots never worked too well , also lvm partitions not too good
- Switched laptop to btrfs to 3 years ago
- Why you should consider btrfs
- Copy on Write
- Snapshots
- cp -reflink=always
- metadata is redundant and checksummed, data checksummed too
- btrfs underlying filesystem [for now]
- RAID 0, 1, 5, 6 built in
- file compression is also built in
- online background scrub (partial fsck)
- block level filesystem diff backups(instead of a slow rsync)
- convert difectly from ext3 (fails sometimes)
- Why not use ZFS instead
- ZFS more mature than ZFS
- Same features plus more
- Bad license. Oracle not interested in relicensing. Either hard to do or prfer btrfs
- Netapp sued sun for infringing patents with ZFS. Might be a factor
- Hard to ship a project with it due to license condistions
- Is it safe now?
- Use new kernels. 3.14.x works okay
- You have to manually balance sometimes
- snapshots, raid 0 , raid 1 mostly stable
- Send/receive mostly works reliably
- Missing
- btrfs incomplete, but mostly not needed
- file encryption not supported yet
- dedup experimental
- Who use it
- openSUSE 13.2 ships with it by default
- File System recovery
- Good entry on bfrfs wiki
- btrfs scrub, run weekly
- Plan for recovery though, keep backups, not as mature as ext4/ext3 yet, prepare beforehand
- btrfs-tools are in the Ubuntu initrd
- Encryption
- Recommends setup encryption on md raid device if using raid
- Partitions
- Not needed anymore
- Just create storage pools, under them create sub volumes which can be mounted
- boot: root=/dev/sda1 rootflags=solvol=root
- Snapshots
- Works using subvolumes
- Read only or read-write
- noatime is strongly recommended
- Can sneakily fill up your disk “btrfs fi show” tells you real situation. Hard to tell what snapshots to delete to reclaim space
- Compression
- Mount option
- lzo fast, zlib slower but better
- if change option then files changed from then on use new option
- Turn off COW for big files with lots of random rights in the middle. eg DBs and virtual disk images
- Send/receive
- rsync very slow to scan many files before copy
- initial copy, then only the diffs. diff is computed instantly
- backup up ssd to hard drive hourly. very fast
- You can make metadata of file system at a different raid level than the the data
- Talk slides here. Lots of command examples