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 any 404 responses 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:

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 πŸŽ€βœ¨πŸ¦‹