Sunday, 2016-10-02

*** manous has quit IRC00:05
*** zul has quit IRC00:22
*** zul has joined #openstack-swift00:29
*** zul has quit IRC00:33
*** zul has joined #openstack-swift00:38
*** mingyu has joined #openstack-swift01:11
*** mingyu has quit IRC01:16
*** mingyu has joined #openstack-swift01:23
*** david-lyle has quit IRC03:04
*** nadeem has joined #openstack-swift03:30
*** klrmn has quit IRC04:15
*** abhitechie has joined #openstack-swift04:19
*** mingyu has quit IRC04:21
*** nadeem has quit IRC04:32
*** zhengyin has joined #openstack-swift04:37
*** bjolo has joined #openstack-swift04:49
*** nadeem has joined #openstack-swift04:51
*** bjolo has quit IRC05:46
openstackgerritzheng yin proposed openstack/swift: Use more specific asserts in test/unit/common/middleware  https://review.openstack.org/34277005:48
*** manous has joined #openstack-swift05:53
*** tqtran has joined #openstack-swift05:55
*** tqtran has quit IRC05:59
*** mingyu has joined #openstack-swift06:08
*** mingyu has quit IRC06:13
*** abhinavtechie has joined #openstack-swift06:52
*** abhitechie has quit IRC06:55
*** pcaruana has joined #openstack-swift07:01
openstackgerritzheng yin proposed openstack/swift: add test_init case in cli/recon  https://review.openstack.org/38081307:19
*** zhengyin has quit IRC07:32
*** manous has quit IRC07:45
*** nadeem has quit IRC08:17
*** abhinavtechie has quit IRC08:50
*** mingyu has joined #openstack-swift08:58
*** mingyu has quit IRC09:03
*** kong has quit IRC09:41
*** mingyu has joined #openstack-swift09:55
*** tqtran has joined #openstack-swift09:56
*** tqtran has quit IRC10:01
*** zhengyin has joined #openstack-swift10:10
*** geaaru has joined #openstack-swift10:37
*** mingyu has quit IRC11:16
*** mingyu has joined #openstack-swift11:17
*** mingyu has quit IRC11:22
*** cnf has joined #openstack-swift11:59
*** mingyu has joined #openstack-swift12:02
cnfhi, is there any good documentation on running a single node swift instance?12:08
cnfSAIO seems to simulate a 4 node cluster, I just want a single node instance12:08
*** zul has quit IRC12:24
*** zul has joined #openstack-swift12:27
*** nikivi has joined #openstack-swift12:35
*** Jeffrey4l_ has quit IRC12:38
*** nikivi has quit IRC12:50
*** david-lyle has joined #openstack-swift12:56
*** Jeffrey4l has joined #openstack-swift13:16
cnfhmm, I just can't get this thing working :/13:29
cnfargl, stupid swift >,< I followed the install doc, but I just get a 500 error on port 808013:39
cnfno idea why13:39
*** tqtran has joined #openstack-swift13:58
*** tqtran has quit IRC14:02
*** zhengyin has quit IRC14:30
*** david-lyle has quit IRC14:54
*** pcaruana has quit IRC14:56
*** oak has joined #openstack-swift15:49
*** david-lyle has joined #openstack-swift16:18
*** david-lyle has quit IRC16:23
*** silor has joined #openstack-swift17:47
*** silor1 has joined #openstack-swift17:52
*** silor has quit IRC17:54
*** silor1 is now known as silor17:54
*** tqtran has joined #openstack-swift17:59
*** tqtran has quit IRC18:04
*** silor has quit IRC18:10
cnfis it possible to run swift behind an ssl terminating reverse proxy?18:31
*** nikivi has joined #openstack-swift19:45
notmynamecnf: yes. it's common (and strongly recommend) to offload tls termination to some other process19:55
cnfwell, i'm not having much luck atm, but I think i'm gonna call it a night20:01
*** kong has joined #openstack-swift20:04
*** nikivi has quit IRC20:04
notmynamecnf: sorry about that. where are you stuck?20:06
cnfI had swift3 working with swauth, mostly20:06
notmynamesorry i didn't catch you earlier. it's sunday in my time zone, and I'm normally not too active in IRC on the weekends (relatively)20:06
notmynamethat's cool20:07
cnfno idea how to actually connect to swift itself, though20:07
notmynameyou were looking for a single-node setup?20:07
notmynameoh20:07
cnfand I can't get keystone working, at all20:07
cnfyeah, I need a single machine object store20:07
notmynameone machine with a bunch of drives?20:07
cnfone ZFS pool20:07
notmynameah20:07
notmynameTBH, I wouldn't recommend that. (just as I wound't recommend RAID volumes in swift)20:08
cnfwell, the ZFS raid is already there, not much choice in that20:08
notmynameit's generally not a good idea to hide the physical failure domains from swift. means that swift can't make placement and recovery decisions based on that20:08
cnfbut as a matter of interest, why not?20:08
notmynameif you've got one machine with ZFS already, why do you need swift? why not stick with zfs?20:09
cnfwell, there is only one node, anyway20:09
cnfoh, i'm sticking with ZFS20:09
notmynameswift does data placement across drives, servers, racks, and DCs20:09
cnfI just want to expose an object store to share ome space on it20:09
cnfbeen looking around like mad finding something that's workable20:09
cnfbasically, I just want to expose the ZFS space as some sort of object store API, preferably S3 compatible20:10
notmynamekindof a silly example, but https://github.com/notmyname/swift_on_pi is something I put together a while back to run swift on a raspberry pi. it might give you some hints on the single-server setup (note: in no way do I recommned running swift in prod on a raspberry pi ;-)20:11
cnfI understand it's not really what Swift is made for, but I can't really find anything else, so i'm trying to find out if I can make it work20:11
cnfhaha20:11
cnfthis is a C2750 8 core avaton with 32G of ECC ram20:11
cnfit's a home setup, but it's not crap :P20:11
notmynameinteresting. I've had some coworkers deploy on that before20:12
notmynameyou can get some interesting supermicro mini-itx boards with it and have a nice small form factor storage box20:12
notmynameI was looking into it, but currently my eye is on the xeon-d. haven't actually spent the money yet, though ;-)20:13
cnfit's a mini-itx board in a NODE 304 case20:13
cnfoh, the xeon-d is my next home lab purchase20:13
cnfas ESXi node20:13
notmynamecool20:13
cnfto replace / suplement the NUC20:13
cnfyou know, I would just run minio, if only minio was multi tenant :/20:14
cnfor multi-user at least20:14
cnfnotmyname:  i'm finding openstack in general quite frustrating to work with20:15
notmynameyeah, swift's a pretty nice storage system :-)20:15
notmynameoh, yeah. me too ;-)20:15
cnffinding out what is wrong is just...20:15
cnfidno, like looking for a needle while swimming in pudding20:15
notmynameso back up to what you're looking for. are you just looking for storage you can put on your box to give an s3 api? or do you need other stuff too, like Vm provisioning20:16
cnfoh, atm just an API to my storage20:16
notmynameok, cool. so no need to look beyond swift for now20:17
cnfthe VM's are ESX, so i don't think that'd wok anyway20:17
cnfwork*20:17
notmynameare you struggling finding docs/guides or debugging help or just general "what is this and how does it work" info?20:17
cnfa little of all of the above :P20:18
cnfthe guides make a lot of assumptions that don't quite fis that I want to do20:18
cnfand then finding the missing info is a nightmare20:18
cnfand when things go wrong, openstack in general isn't good at communicating what is actually wrong20:19
cnfadd to that I don't know how half of it is _supposed_ to work :P20:19
notmynamedid you see swift.openstack.org? the good news is that theres a good bit of info there. the bad news (spoken as one of the people responsible for writing it) is that it's kinda confused as to the audience. sometimes to end-users (like yourself) and sometimes to contributors (like me)20:19
cnfyeah, I have looked through it20:20
notmynameso you got to the point where you had the code installed, right? just not configured and running successfully?20:20
cnfwell, swauth + swift3 was working20:21
cnfin some client20:21
cnfwithout ssl20:21
notmynameok20:21
notmynamethat's somethign20:21
cnfswauth is rather limiting though20:21
cnflimitED20:21
notmynameok, we can get to that :-)20:21
cnfalso, the S3 api was working, but I have no idea how to talk swift API to it20:22
notmynameyou remember the `swift-init` command?20:22
cnfi'm running swift-init all start -v -n20:22
cnfatm20:22
notmynameok20:22
notmynamethat's the thing that starts up all of the swift processes (there's a lot). but the basic idea is that it will start everything that there's a config file for. so if you've got 2 object server configs, it will start 2 object servers. etc20:23
cnfright20:23
notmynamebut the basic things you'd need are `swift-init main start` and `swift-init rest start`20:23
notmynamethe "main" ones are proxy, account, container, and object server20:23
cnfi have account, container, object and proxy20:23
notmynamethat's what handles the API20:24
notmynamethe "rest" ones are the background daemons that do consistency checks and handles failures20:24
notmynameand you run that on every server in your cluster (in your case, all one of them)20:24
cnf^^;20:24
notmynameall your configs are in /etc/swift/*20:25
notmynameso you'll probably have swift.conf and {proxy,account,container,object}-server.conf20:25
cnfindeed20:25
notmynamethere's some more complicated stuff it can do, eg having a subfolder with more than one config file in it, but in your case, just one of each should be fine20:26
notmynameall the sample configs are very well commented with sane defaults. they're in the source tree and viewable at https://github.com/openstack/swift/tree/master/etc20:27
notmynamebasically, if something's commented out, the default value is given and it's probably ok for you. if it's not commented out, you need to set it to something yourself (eg see the "changeme" values in swift.conf)20:28
cnfuhu20:28
notmynamedo you have it up and running and not responding to API requests right now?20:29
cnfI have it in an unknown state20:29
notmynameprocesses at least running?20:30
cnfoh, yeah20:30
cnfescept for it not finding libshss.so.1 and libisal.so.2, but that doesn't seem to stop it?20:31
notmynamenope. that's fine20:31
notmynameIIRC those warnings were removed if you don't have them installed20:31
cnfok20:31
notmynameok, just some basic sanity check, on the server run `swift-recon --validate object`20:33
notmynamealso, s/object/container/ and s/object/account/20:34
cnf1/1 hosts ok, 0 error[s] while checking hosts.20:34
*** Jeffrey4l_ has joined #openstack-swift20:34
notmynameyay20:34
cnfsame for the other 220:34
notmynameperfect20:34
notmynamewhat bind_port are you using in the proxy server?20:35
cnfwell ,it's a bit of a special setup, and I'm only using it because some clients I was trying insist on ssl20:35
*** Jeffrey4l has quit IRC20:36
cnfwell, only using it now before the rest is working20:36
notmyname?20:36
cnfI run swift in docker, with the reverse proxy also in docker20:36
cnfbut that should not batter20:36
cnfmatter20:36
notmynameok20:36
*** ajiang has quit IRC20:37
*** bhakta has quit IRC20:37
notmynameI was going to walk through getting some basic API stuff working20:37
cnfthat could work20:37
notmynamejust need to know the port and if you're using auth20:37
cnfit is on port 1237 locally20:38
cnfand the proxy on 44320:38
notmynameok20:38
*** klrmn has joined #openstack-swift20:38
notmynameany restrictions on 1237? can we talk to that one before adding in tls?20:38
cnfoh, no atm it's all open20:38
notmynamecool20:38
*** ajiang has joined #openstack-swift20:39
notmynameok. auth? you're using swauth?20:39
*** bhakta has joined #openstack-swift20:39
cnfI was just trying to use cyberduck to check my sanity20:39
cnfbut cyberduck insists on ssl20:39
notmynameya20:39
cnfyeah, swauth i can get working20:40
notmynamecyberduck insists on some very specific things ;-)20:40
notmynameif so, do you have the default test/tester/testing account set up?20:40
cnfyep20:40
notmynameok, cool20:40
notmynamenow, your call here. want to do it low-level with curl and understand what's going on? or do you want to do slightly higher-level with a CLI?20:41
cnfunderstanding is good20:41
notmynameyay20:41
notmynameok, this https://gist.github.com/notmyname/b0678451006086951e75ba47d974977220:42
notmynamecurl request to get an auth token and storage url20:42
notmynameI give it the username ("test:tester") and the password ("testing")20:43
notmynameand the -i shows the headers on the response20:43
*** hoonetorg has quit IRC20:43
notmynameoh, I'm using 8080. you'll switch to 1237 and whatever ip/host you have20:43
cnfhmm, that gives me internal server error20:44
notmynameah, ok20:44
notmynameno worries20:44
notmynamesee the line 9 on my output?20:44
notmynamethe x-trans-id header?20:44
cnfuhu20:45
notmynamegrab the value of that ("txace85f6f75c343e196e86-0057f1712asaio" in my case) and grep /var/log/syslog for it. pastebin the result20:45
cnfyeah, no syslog ^^;20:45
notmynamerhel variant? /var/log/messages20:46
notmynamethe general answer is "wherever you have the syslog output pointed"20:46
cnfno, no syslog at all20:47
cnfit's not running20:47
cnfbut I fixed it20:47
notmynameok20:47
cnfI had changed the storage paramaters in the swauth web admin thing20:47
cnfi put them back20:47
notmynameok, then back up and let me know where it breaks or if it's working20:48
cnfthe curl command is working now20:49
notmynameoh, cool20:49
notmynameok, next step then20:49
notmynametwo things that are important to pull out of the response20:49
cnf{"storage": {"default": "local", "local": "http://127.0.0.1:1237/v1/AUTH_b4450a14-c618-4a84-83aa-195c68b4e42e"}}20:49
cnfthat is actually the thing I had changed20:49
cnfand then put back now20:49
cnfright20:49
notmynameok20:50
notmynamethe other is the auth token20:50
cnfok20:50
notmynameso this first request was the auth step. we sent the request to the auth system (swuath happens to be running in the same process as the swift proxy, so same ip/port combo, but it could be a totally different system)20:50
cnfright20:51
notmyname...and the auth system responded with a storage url and a token that's good to talk to that url20:51
cnfso if i want to use keystone auth, I need to proxy keystone as well?20:51
notmynameif you want to use keystone auth, you'll have a keystone instance that you'll talk to separately to get a token.20:52
cnfhmm, ok20:52
notmynameok, I updated https://gist.github.com/notmyname/b0678451006086951e75ba47d974977220:52
cnfso it needs to be reachable from any client?20:52
notmynameya20:52
cnfright20:52
cnfalso, the storage url20:52
cnfmine has a 127.0.0.1 ip20:52
notmynamesecond file added to the gist shows curl sending the token to the storage url20:52
cnfis that relevant to whetevr client you use?20:53
notmynamesounds like a configuration issue in swauth. but if you fix by hand for the moment, it shoudl still work20:53
cnfok, I get access denied20:55
notmynameah, ok.20:55
notmynamesomethign with your swauth config is not right20:56
cnfok20:56
notmynameso eith swift can't talk to swauth or swauth is denying access20:57
notmynamein the proxy-server.conf, what's the pipeline line you have?20:57
cnfpipeline = catch_errors cache swift3 swauth slo dlo proxy-server20:58
*** nikivi has joined #openstack-swift20:58
notmynamewhere'd you get that from?20:58
notmynameyou'll notice that it's *very* different from the sample config20:59
cnfuhm, swift3 and swauth docks20:59
notmynameah20:59
cnfI only added slo and dlo20:59
notmynameya20:59
cnfI have no idea what all the plugins do, so i just followed that swauth and swift3 said20:59
notmyname:-)20:59
notmynametrying to think of what's simplest21:01
notmynamethe end result I want you to be at is basically using the sample config file21:01
notmynameexcept with the swauth stuff21:01
notmynameso the structure of the config file is ini-style21:02
notmynamein your config file now, you've got a [filter:swauth] section21:02
notmynameyou want to keep that21:03
notmynameand I'm not sure what if any other changes you've made21:03
cnfha, I kind of lost track :P21:03
cnfit's been a long day21:03
notmynameok. so make a .bak of your exisitng one, use the sample config file, and add in the sawuth filter section21:04
cnfthe one from https://github.com/openstack/swift/tree/master/etc ?21:04
notmynamewhat version of swift are you using?21:06
cnfmikita21:07
* notmyname goes to look at https://wiki.openstack.org/wiki/Swift/version_map21:08
cnfhmm, so that's not working21:08
notmynameok, cool. 2.7.021:08
cnfwhat did i do wrong...21:08
notmynameyou're using a newer confi file that probably references some recent stuff. like crypto. what did the error message say21:08
cnfLookupError: Entry point 'copy' not found in egg 'swift' (dir: /usr/lib/python2.7/dist-packages; protocols: paste.filter_factory, paste.filter_app_factory; entry_points: )21:08
notmynameah ok. so find the "copy" string in the pipeline and delete it21:09
notmynamealso, swap tempauth for swauth21:09
cnfok21:10
notmynameswift-init proxy restart21:11
cnfstill get access denied21:11
cnfwell, 403 forbidden to be precise21:11
notmynameok21:11
notmynameset this value to "true" https://github.com/openstack/swift/blob/master/etc/proxy-server.conf-sample#L14621:12
cnfsame21:13
notmynameok, grep the logs for the x-trans-id value21:14
* notmyname is hoping swauth may have logged a reason21:14
cnfnothing specific21:14
notmynameisn't there a swauth cli to add/remove accounts? I havne't looked at swauth in a long time21:15
notmynamecheck that the user you're using is "admin" (IIRC)21:15
notmynameerr...has an admin role or group or something21:15
notmynamedon't care what it's named21:15
cnf.admin21:16
notmynamewas already there?21:17
cnfyeah21:18
notmynameok, just for fun, in your proxy pipeline, pull out swauth and add tempauth21:18
notmynamesince you're using the sample config, everything should still work just fine. even with test/tester testing21:19
cnfhttps://gist.github.com/cnf/a5483647af068bef532890ae037ce68821:19
notmynameyeah. nothing there21:20
notmynameFWIW, log formats are descibed at http://docs.openstack.org/developer/swift/logs.html21:20
cnfok, now I get a 40421:21
cnfthe first curl query works21:22
cnfthe 2nd one gives me a 40421:22
notmynameI'm trying to remember what that is.21:24
*** nikivi has quit IRC21:24
notmynamewhat does `swift-ring-builder /etc/swift/account.builder` show you?21:25
notmynameshould have some mount points in it that match where your drives are in the system21:25
cnfhttps://gist.github.com/cnf/a5483647af068bef532890ae037ce68821:26
*** david-lyle has joined #openstack-swift21:27
notmyname"zfs" is the mountpoint?21:27
cnfyep21:27
notmynamecompare with the contianer.builder and object.builder21:28
notmynamethe port numbers should all be different (and match the bind_port in the respective config file in /etc/swift)21:28
cnflooks good21:29
notmynamehmm21:30
*** david-lyle has quit IRC21:31
cnfhmz21:31
cnffrustrating21:31
notmynameya, especially remotely :-)21:32
notmynamepermissions in the mountpoint?21:32
cnfswift:swift on all of it21:33
notmynameok, so swauth gives 403 and tempauth gives 40421:33
cnfyeah21:33
notmynamedouble check account_autocreate21:34
notmynameshould be true (and uncommented)21:34
cnfyeah... adding doesn't help of you set it to false ^^;21:35
cnfoops21:35
cnf(i has been a long day)21:35
cnfok, got a 200 now21:36
notmynameyay!21:36
notmynameok, so more API stuff21:38
cnf:P21:38
notmynameok, so same token and url: curl -i -H "X-Auth-Token: AUTH_tkee9998acb0b741e7864825bde70faa7c" http://saio:8080/v1/AUTH_test/c -XPUT21:38
notmynamebut I acced /c and -XPUT21:38
notmynameto PUT to a new container21:38
notmynametada21:38
notmynameyou now created a container21:39
cnfoh, wait21:39
cnfi spoke too soon21:39
notmynameoh21:39
cnfok, 204 no content21:39
cnfthat's good21:39
notmynameya21:39
notmynameempty account = 20421:40
cnfHTTP/1.1 201 Created21:40
cnfso, where does the test in AUTH_test come from?21:40
notmynamecurl -i -H "X-Auth-Token: AUTH_tkee9998acb0b741e7864825bde70faa7c" http://saio:8080/v1/AUTH_test/c/foo --data-binary 1234 -XPUT21:41
notmynameto create an object in the container "c" called "foo". the contents are "1234"21:41
notmynameAUTH_test comes from the tempauth (or swauth) config21:41
cnfok, 201 created21:41
notmynamethat's your account in swift. like a bank account, not a use account. it's a place where you put stuff21:41
cnfok21:41
notmynameand now "curl -i -H "X-Auth-Token: AUTH_tkee9998acb0b741e7864825bde70faa7c" http://saio:8080/v1/AUTH_test/c/foo"21:41
notmynameand you'll download (GET) the object21:42
notmynameyou should see 123421:42
cnf200 \o/21:42
notmynameyay21:42
cnfnice21:42
notmynameok, the swauth problem was also probably because of the autocreate setting21:42
cnfi think i had that set corrcyly21:43
cnflet me check21:43
patchbot(let <variable> = <value> in <command>) -- Defines <variable> to be equal to <value> in the <command> and runs the <command>. '=' and 'in' can be omitted.21:43
cnfyeah it was account_autocreate = True in the old config21:44
cnfok, so now tempauth works21:45
notmynamehttps://bugs.launchpad.net/swift/+bug/162971121:45
openstackLaunchpad bug 1629711 in OpenStack Object Storage (swift) "change account_autocreate to default to true" [Wishlist,Confirmed]21:45
cnfwhich is a bit basic :P21:45
notmynamethere21:45
notmynamecool, so the basics are working21:45
cnfhehe, nice21:45
notmynamemy kid is asking to play rocket league, so I've got to get offline for now21:49
notmynamebut definitely feel free to drop by with more questions21:49
notmynamewe're pretty well covered in most time zones during the business week21:49
cnfok, I got swauth workin notmyname21:49
notmynameyay21:49
cnfit was the AUTH_21:49
notmyname(eg australia and japan are about to come online for their monday)21:49
cnfswauth doesn't use AUTH_TEST21:49
cnfit was AUTH_b4450a14-c618-4a84-83aa-195c68b4e42e21:49
notmynameah, right21:49
cnfwell, it's midnight here21:49
cnfand I have $dayjob tomorrow21:50
notmynameglad it's working for you now21:50
cnf(working with _actual_ openstack, trying to get a bloody compute node to come online21:50
notmynamesorry for the difficulty21:50
cnfwell, part one is working21:50
cnfnono, thanks for giving me some insight21:50
notmynamebut I want swift to get better. please let me know how21:50
cnfsane debugging! :P21:50
cnfpython stack traces aren't useful if you don't know the code21:51
cnfanyway, go play with your kid, thanks for your time21:51
notmynamehappy to help21:52
*** tqtran has joined #openstack-swift22:01
*** tqtran has quit IRC22:05
*** mingyu_ has joined #openstack-swift22:09
*** mingyu has quit IRC22:09
*** geaaru has quit IRC22:34
*** vint_bra has joined #openstack-swift22:40
*** hoonetorg has joined #openstack-swift22:57
*** kei_yama has joined #openstack-swift23:31
*** zul has quit IRC23:42

Generated by irclog2html.py 2.14.0 by Marius Gedminas - find it at mg.pov.lt!