swift-dispersion-report(1)
π swift-dispersion-report(1) π
okay bestie, gather round, because we're talking about swift-dispersion-report β one of the OpenStack Swift dispersion utilities, straight out of the swift-dispersion fam. she's here to tell you how healthy your whole cluster is. no cap.
β¨ SYNOPSIS β¨
swift-dispersion-report [-d|--debug] [-j|--dump-json] [-p|--partitions]
[--container-only|--object-only] [--insecure] [conf_file]
πΈ DESCRIPTION πΈ
so this is one of the swift-dispersion utilities, and her whole job is evaluating the overall cluster health. how? by checking if a set of deliberately distributed containers and objects are currently in their proper places within the cluster. slay.
for instance, a common deployment has three replicas of each object. the health of that object can be measured by checking if each replica is in its proper place. if only 2 of the 3 is in place, the object's health can be said to be at 66.66%, where 100% would be perfect. math is math π
once swift-dispersion-populate has been used to populate the dispersion account, you should run the swift-dispersion-report tool repeatedly for the life of the cluster, in order to check the health of each of these containers and objects. like, forever. it's a lifestyle.
these tools need direct access to the entire cluster and to the ring files. installing them on a proxy server will probably do, or a box used for swift administration purposes that also contains the common swift packages and ring. both swift-dispersion-populate and swift-dispersion-report use the same configuration file, /etc/swift/dispersion.conf. and the account used by these tools should be a dedicated account for the dispersion stats, and also have admin privileges. periodt.
π OPTIONS π
-d,--debugβ output any404responses to standard error π-j,--dump-jsonβ output the dispersion report in json format, for the data girlies-p,--partitionsβ output the partition numbers that have any missing replicas--container-onlyβ only run the container report π«--object-onlyβ only run the object report π¦--insecureβ allow accessing an insecure keystone server. the keystone's certificate will not be verified. risky behavior, but okay-P,--policy-nameβ specify storage policy name
π¦ CONFIGURATION π¦
example /etc/swift/dispersion.conf:
[dispersion]
auth_url = https://127.0.0.1:443/auth/v1.0
auth_user = dpstats:dpstats
auth_key = dpstats
swift_dir = /etc/swift
# project_name = dpstats
# project_domain_name = default
# user_domain_name = default
# dispersion_coverage = 1.0
# retries = 5
# concurrency = 25
# dump_json = no
# endpoint_type = publicURL
β EXAMPLE β
$ swift-dispersion-report
Queried 2622 containers for dispersion reporting, 31s, 0 retries
100.00% of container copies found (7866 of 7866)
Sample represents 1.00% of the container partition space
Queried 2621 objects for dispersion reporting, 22s, 0 retries
100.00% of object copies found (7863 of 7863)
Sample represents 1.00% of the object partition space
look at those numbers. 100.00%. we love to see it π₯
π DOCUMENTATION π
more in depth documentation about the swift-dispersion utilities β and also OpenStack Swift as a whole β can be found at:
https://docs.openstack.org/swift/latest/admin_guide.html#dispersion-reporthttps://docs.openstack.org/swift/latest/
iykyk π
π SEE ALSO π
ngl bestie, if your cluster is at 100% you are genuinely the main character. go off π
okay that's the whole vibe check β this page is from the OpenStack Swift manual, dated 8/26/2011, and it lives on Linux. mwah, take care of your rings πβ¨π¦
π¦ where this page comes from
- debian bookworm: swift 2.30.1-0+deb12u1 Β· Apache-2
- debian bookworm: swift 2.30.1-0+deb12u3 Β· Apache-2
- debian trixie: swift 2.35.1-0+deb13u3 Β· Apache-2
- debian trixie: swift 2.35.1-0+deb13u4 Β· Apache-2
- nixos 26.05: python3.13-swift 2.37.1
- nixos 26.05: python3.14-swift 2.37.1
- nixpkgs unstable: python3.13-swift 2.38.3
- nixpkgs unstable: python3.14-swift 2.38.3
- ubuntu jammy: swift 2.29.1-0ubuntu1 Β· Apache-2
- ubuntu jammy: swift 2.29.2-0ubuntu1.1 Β· Apache-2
- ubuntu noble: swift 2.33.0-0ubuntu1 Β· Apache-2
- ubuntu noble: swift 2.33.0-0ubuntu1.1 Β· Apache-2
- ubuntu questing: swift 2.36.0-0ubuntu1
- ubuntu questing: swift 2.36.0-0ubuntu1.1
- ubuntu resolute: swift 2.37.1-0ubuntu2 Β· Apache-2
- ubuntu resolute: swift 2.37.1-0ubuntu2.1 Β· Apache-2
- ubuntu stonking: swift 2.38.2-0ubuntu1 Β· Apache-2
- Copyright (c) 2010-2011 OpenStack Foundation
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms