Tuesday, 2020-06-23

*** gyee has quit IRC01:23
*** manuvakery has joined #openstack-swift02:34
*** rcernin has quit IRC02:41
*** rcernin has joined #openstack-swift02:43
*** evrardjp has quit IRC04:33
*** evrardjp has joined #openstack-swift04:33
openstackgerritMerged openstack/python-swiftclient master: Clean up some warnings  https://review.opendev.org/73642605:23
*** m75abrams has joined #openstack-swift05:31
*** rpittau|afk is now known as rpittau06:34
*** ccamacho has joined #openstack-swift07:02
*** manuvakery has quit IRC07:44
*** rcernin has quit IRC08:18
alecuyerclayg:  just saw your message, reading up now09:07
openstackgerritHervé Beraud proposed openstack/swift master: Remove elementtree deprecated methods  https://review.opendev.org/73746809:32
*** rpittau is now known as rpittau|bbl10:12
*** tkajinam has quit IRC10:17
openstackgerritHervé Beraud proposed openstack/swift master: Remove lxml deprecated methods  https://review.opendev.org/73746811:32
*** rpittau|bbl is now known as rpittau12:14
*** zaitcev has quit IRC12:42
*** zaitcev has joined #openstack-swift12:44
*** ChanServ sets mode: +v zaitcev12:44
*** zaitcev has quit IRC13:01
*** zaitcev has joined #openstack-swift13:02
*** ChanServ sets mode: +v zaitcev13:02
*** m75abrams has quit IRC13:40
openstackgerritDavid Sariel proposed openstack/swift master: Let developers/operators add watchers to object audit (simplified)  https://review.opendev.org/70665314:08
*** m75abrams has joined #openstack-swift15:08
*** renich has joined #openstack-swift15:33
*** admin0 has joined #openstack-swift15:50
admin0hi all .. anyone knows about swift implementation in kolla-ansible ?15:50
*** gyee has joined #openstack-swift15:59
*** rpittau is now known as rpittau|afk16:00
openstackgerritClay Gerrard proposed openstack/swift master: s3pi: test retry complete/abort  https://review.opendev.org/73757016:04
*** renich_ has joined #openstack-swift16:17
*** renich has quit IRC16:17
*** renich_ is now known as renich16:18
*** renich has quit IRC16:19
timburkegood morning16:19
*** m75abrams has quit IRC16:33
*** josephillips has joined #openstack-swift16:58
josephillipshey guys16:58
josephillips2 questions16:58
josephillipssetting overload factor requiered perfrom rebalance?16:59
josephillipsand requiered move the .gz file to storage nodes?16:59
claygjosephillips: overload is *not* required - but if you have unbalanced zones (and less zones than replicas) it's highly recommend you run with about 10% overload (trading some dispersion for balance)17:15
claygit can also be helpful during a rebalance that's adding a new zone to run with some overload 🤔17:15
claygbut either way overload or no after you rebalance, YES, you must distribute .gz ("the ring") to all nodes 👍17:16
josephillipsgood17:16
claygtimburke: I'm seeing a LOT of HEADs triggered from PUTs - what do you think it would take to beat p 735738 into shape and get it over the finish line?17:16
patchbothttps://review.opendev.org/#/c/735738/ - swift - s3api: Don't do naive HEAD request for auth - 1 patch set17:16
josephillipsexist a way to confirm that the gz file have the overload setting on it?17:17
timburkeclayg, i'm less worried about sending the request down the pipeline now -- i think rledisez said he deploys ceilometermiddleware left of s3api, so it won't be a problem. even if someone had it to the right, a request method like TEST should be pretty easy to filter out ;-)17:21
timburkeif we can get a test to demonstrate the fix, that'd be great, but even without it's pretty easy for me to functionally test and see that things seem better17:21
timburkejosephillips, i'd consult the builder file to see whether overload is set or not. i usually view the .ring.gz as a pretty opaque artifact and just make sure that the MD5 matches between all nodes and where ever i've got the builder17:24
josephillipsok17:25
josephillipsi ask this because i add the function to a juju charm to perform overload17:25
josephillipsand im just want to make sure is moving to the nodes17:25
josephillipsthanks17:25
josephillips:)17:25
josephillipslooks like is working17:26
timburke\o/17:26
admin0hi .. i deployed swift using kolla-ansible, but its not working .. so i want to know how to troubleshot it .. how to check the content of the ring on what disks are included ?18:23
timburkeadmin0, `swift-ring-builder <builder file>` will tell you the devices in the ring18:39
timburkeif your builder is missing/lost, you can use `swift-ring-builder <ring.gz file> write_builder` to get a builder based on a ring, but note that there may be information present in the original builder that wouldn't show up in the recovered builder18:40
admin0timburke, this is how its built/done in kolla-ansible https://docs.openstack.org/kolla-ansible/pike/reference/swift-guide.html18:49
admin0i have the account.ring.gz  container.ring.gz and object.ring.gz .. which of these files have info related to the disk layout ? and what command to use to view them ?18:53
DHEswift-ring-builder filename.ring.gz write_builder  # will convert back to a builder file, but with some metadata lost19:40
DHEthen you can examine the contents using the above methods19:40
DHEif you have existing builder files those would be preferred19:40
timburkeadmin0, fwiw, looks like kolla will put the builders somewhere like /etc/kolla/config/swift/object.builder19:53
timburkeall three rings/builders have information about which disks are used: account for account DBs, container for container DBs, object for object data.19:53
timburkethese can all use the same disks, or all separate disks, or anywhere in between19:54
timburkeoften, ops will put account and container DBs on SSDs (since they demand more IOPS) and object on a separate set of spinning disks19:55
timburkefrom the looks of those docs, kolla puts three disks per node in each of the rings19:56
timburkei *think* you can run something like `docker run --rm -v /etc/kolla/config/swift/:/etc/kolla/config/swift/ $KOLLA_SWIFT_BASE_IMAGE swift-ring-builder /etc/kolla/config/swift/object.builder` to see the device table19:57
ormandjhow are people keeping replication from slaughtering cpu, while still keeping objects replicated? :) we've got a worker per disk and it's eating cpu at the default 30s interval20:21
ormandj(this is train, fwiw)20:22
admin0timburke, that worked .. but i think i made a mistake . as the name looks funny: https://gist.github.com/a1git/9651c807c4061fe81f142554e85a170520:27
admin0i only had one disk ..20:28
admin0next is, how do I map/validate that the d{1} to the actual disks in the server20:28
timburkeormandj, makes me think of https://review.opendev.org/#/c/715298/ ... if you don't mind hacking up your swift, you could try upping that sleep in swift/common/daemon.py to see if that helps20:29
patchbotpatch 715298 - swift - Optimize obj replicator/reconstructor healthchecks (MERGED) - 5 patch sets20:29
timburkeadmin0, that does indeed look suspicious :-(20:33
timburkeon each server, i'd run `ls /srv/node/`20:33
admin0nothig is inside /srv/node20:33
admin0i already checked20:33
timburke...maybe have a look in fstab? is there anything that's *supposed* to get mounted there?20:34
admin0can the name be anything there ? or does that name have to match what is int he name to /srv/node/name ?20:34
admin0so if i redo it and make it d1 (for disk1) , does it have to be mounted as /srv/node/d1 ?20:34
timburkethat's the way it's usually done. doesn't have to be at /srv/node, though, i suppose -- our saio instructions, for example, make a few "disks" under /srv/node1, /srv/node2, /srv/node3, and /srv/node4 (since we want to simulate multiple servers in a single VM)20:36
timburkecheck the `devices` option in object-server.conf -- if it's not set, it'll use /srv/node20:36
timburkethe dir name under that point *does* have to match what's in the ring, though20:37
admin0the object-server.conf has devices = /srv/node20:37
admin0so i need to mount /dev/sdb as /srv/node/d1 to match the builder ?20:37
zaitcevSounds plausible.20:39
zaitcevAlthough it's not obligatory, strictly speaking, I usually do not name devices the same d1 on all nodes, just for convenience.20:41
admin0ok20:42
zaitcevexample of a small cluster: https://pastebin.com/viGsh4zY20:43
admin0zaitcev, how does it appear in /fstab and /srv/node ?20:47
zaitcevhttps://pastebin.com/mA8qSyD020:49
admin0got it20:49
admin0thanks20:49
zaitcevactually, I think that advice is no longer operational20:49
zaitcevBecause the cluster was created before Systemd, back when faulty /etc/fstab was a problem.20:50
zaitcevadmin0: Remember that the mount point itself must be owned by root, but the root of the volume is owned by swift. This way, if something didn't get mounted on boot, you aren't filling up your root filessytem.20:52
*** tkajinam has joined #openstack-swift22:53
*** rcernin has joined #openstack-swift23:02
*** rcernin has quit IRC23:08
*** rcernin has joined #openstack-swift23:08

Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!