On Thu, 19 Jul 2012 16:10:06 +0100 "Juan J. Martinez" <[email protected]> wrote:
> I guess you can use the list of current accounts from Keystone and > translate that into the account ring hash. > swift-get-nodes /etc/swift/account.ring.gz myKeyStoneAcct | grep Hash | > cut -f2 5819de5a52d5813f5ce95c9121b97652 > > Then you can look for hashes that are not in that list of hashes. Per > storage node you should check: > > /srv/node/$0/accounts/$1/*/$2/ The point is to use Swift itself _and_ Keystone, in order to find discrepancies or "orphan" accounts. I ended using listdir for now, since our installation is very small, so directories fit in memory. Code is here: https://github.com/zaitcev/swift-report Output looks like this: 15051/4a7/3acbbe2ab55b81269ff88490a1b574a7 SK zaitcev 60690/f22/ed125debcbadbac11ef93c40dede0f22 SK glance 5497/6ee/1579e4404e54e5edb53c00f1206696ee SK shared 52389/69e/cca50f1c92b3b7f2a15d6b8e2aaee69e S- - 3066/787/0bfa11e194ee8889ff1c797a718cf787 SK admin 56328/3d8/dc088209ed71d08a00493c95888583d8 SK testuser "S" is for accounts found in Swift, "K" is for accounts found in Keystone. I have a feeling though that I must be reinventing the bicycle here. Surely someone, somewhere, have written a Swift consistency checker before. -- Pete _______________________________________________ Mailing list: https://launchpad.net/~openstack Post to : [email protected] Unsubscribe : https://launchpad.net/~openstack More help : https://help.launchpad.net/ListHelp

