Posts up to 2024-08-11

Vitastor S3 prototype based on Zenko CloudServer

The prototype of S3 Vitastor backend for Zenko CloudServer is now running 😊

This is of course far from being a release, it lacks at least defragmentation. But you can already try to run it and write/read something to it via S3. It’s even usable with GeeseFS. 😊

So, here are the instructions!

2024-08-11 Continue reading →

Vitastor 1.7.1 released

Some stupid hotfixes for 1.7.0 :)

  • Fix NFS mount
  • Fix modify-osd
  • Fix use_antietcd not taken from /etc

2024-07-16 Continue reading →

Vitastor 1.7.0 released

Omnidirectional release

2024-07-15 Continue reading →

S3 implementation comparison

One question: Where to pilfer which S3 implementation to reuse?

I have no desire to write S3 from scratch, because the protocol, even though simple, has a lot of small details that require attention and cannot be ignored, because users always want maximum compatibility with Amazon S3.

At the time of writing this post, the following options were found: Minio, SeaweedFS, Ceph (RadosGW), Zenko CloudServer, OpenStack Swift, and Deuxfleurs Garage.

The main interest during comparison is comparing the S3 frontend, the external part of the server, because the storage layer will anyway be replaced with our own one (Vitastor).

S3 tests from Ceph were run during comparison, but in the simplest configuration, without setting up additional integrations possibly required for some of the tests.

Let’s try to look at the features of each implementation!

2024-05-09 Continue reading →

Vitastor 1.6.1 released

A bunch of monitor fixes

  • Add noout flag for OSDs (/vitastor/config/osd/xx)
  • Fix “effective” size of degraded PGs (and thus “used space”) calculation in monitor
  • Fix monitor not clearing PGs of deleted pools
  • Fix incorrect PG generation with hosts with 0 OSDs
  • Fix monitor crashing during primary OSD recheck when pool has no PGs
  • Fix monitor crashing when node_placement included non-existing OSDs
  • Fix possible data movement after removing OSDs reweighted to 0
  • Remove extra empty keys from pool configurations created by vitastor-cli create-pool
  • Fix 32-bit build

2024-04-22 Continue reading →

Vitastor 1.6.0 released

Hierarchical failure domains, handling of 100% full OSDs, nbd-netlink and more.

2024-04-09 Continue reading →

Vitastor 1.5.0 released

After half a year of hard work, VitastorFS is finally here ! :-)

2024-03-16 Continue reading →

Vitastor 1.4.8 released

  • Do not use \r if output is not a terminal (should fix unexpected job output in proxmox)
  • Fix rm/rm-data error return code, add --down-ok option to bypass the error
  • Add EIO retry timeout and allow to disable these retries, rename up_wait_retry_interval to client_retry_interval
  • Add ubuntu jammy build
  • Wait for blockstore initialisation before starting OSD (prevent timeouts when init takes time)
  • Fix a rare use-after-free in automatic sync after delete in blockstore

2024-02-29 Continue reading →

Vitastor 1.4.7 released

  • Fix another old “BUG: Attempt to overwrite used offset” in a very simple case: bs=4k rw=write iodepth=16 from OSD start; add this case to tests
  • Fix a rare crash with “unexpected state during flush: 0x51” possible with EC since 1.4.2 during rebalance and OSD outages
  • Fix a rare write stall with EC & immediate_commit=none caused by sync operations reserving unneeded space in the journal
  • Fix 32-bit build warnings, most in printf/scanf format strings

2024-02-22 Continue reading →

Vitastor 1.4.6 released

Unwavering stabilization of 1.4.x, continued :-)

  • Include the accidentally lost part of 1.4.5 journal trimming fix
  • Fix a possible OSD crash with “BUG: Attempt to overwrite used offset” which was probably present for long time, but became apparent after fixing flapping tests in CI
  • Fix remaining flapping tests in CI. It was the first time when tests actually passed without retries :-)

2024-02-20 Continue reading →

← Newer Posts Older Posts →