IRC log of #schooltool for Sunday, 2014-06-01

*** menesis has joined #schooltool05:30
*** menesis has left #schooltool05:32
*** khildin has joined #schooltool13:14
*** menesis has joined #schooltool13:27
*** menesis has quit IRC13:56
*** khildin has quit IRC14:00
*** menesis has joined #schooltool14:01
*** khildin has joined #schooltool14:13
*** menesis has quit IRC17:26
*** menesis has joined #schooltool18:17
*** replaceafill has joined #schooltool21:25
*** th1a has joined #schooltool21:40
replaceafillth1a, could you push your changes to the ark book branch?21:44
th1aI'm setting up a 14.04 virtualbox.21:45
replaceafilli'm setting 3 :D21:47
th1aSetting the default runlevel is infuriating.21:51
replaceafilldefault runlevel?21:51
th1aI just want my vm to start in runlevel 2, since I can only download 64bit server.21:51
replaceafilli use the desktop one and turn X off21:52
th1aWhat method do you use?21:52
replaceafilledit /etc/default/grub.cfg21:53
replaceafillchange a line to "text"21:53
th1aThat file doesn't exist.21:56
th1aOff to an awesome start here.21:56
replaceafilloh sorry21:58
th1aAh, I see it now.21:58
replaceafillit's just /etc/default/grub21:58
replaceafilland i change: GRUB_CMDLINE_LINUX_DEFAULT to just "text"21:58
replaceafillyou need to run "sudo update-grub" and reboot if you do this21:59
th1aMy VM is so slow it is super painful to do anything.22:00
th1aI should probably close about 25 browser tabs now.22:01
th1aIt should be fine with no graphics.22:01
th1aI hope.22:01
replaceafillyeah it's way better22:01
replaceafilli also enable the openssh-server22:01
replaceafillin the guests22:01
th1aYou'll have to walk me through this a bit probably.22:02
th1aJust a sec, I need to use the bathroom before we get into this.22:02
th1aThis is where a seven year old laptop suffers...22:06
th1aThis is where no official current Ubuntu docs showing up on the top for Google hurts.22:07
th1aOK, got that sorted at least.22:14
th1aNow going to the potty...22:14
replaceafilli'll reboot my router, brb22:15
*** replaceafill has quit IRC22:15
*** replaceafill has joined #schooltool22:16
th1aOK, pushed revisions.22:21
replaceafillkk, pulling22:21
th1aUpdating VirtualBox instance.22:21
replaceafillfirst change should be the line to install ST22:21
replaceafillshould be:22:21
replaceafill$ sudo apt-get install schooltool python-zc.zrs22:21
th1aOK... what?22:22
th1aWhat are we doing now, replaceafill?22:22
th1aThese are changes I'm typing into the current page?22:22
replaceafillwe're going to update the docs to include the zrs configuration, right?22:23
th1aOK so we're starting with updating these docs for the client.22:23
replaceafillthe client?22:24
th1aThe school.22:24
replaceafillok, let's get wording straight:22:24
th1aThat's an essential part of this process.22:24
replaceafilllocal = an instance (like the regular ones)22:24
replaceafillprimary = a school with zrs configuration22:25
replaceafillsecondary = the ark server with zrs configuration22:25
th1aI don't want to use primary and secondary.22:25
th1aFrom the user's point of view, there's the school server and the central server.22:25
th1aI think this section should be something like "Setting up data replication to central server"22:29
th1aAnd it all should be a separate section, because you have to know what the IP addresses are, etc.22:29
replaceafillsounds good22:30
replaceafilldo you want me to adjust the package templates as we speak?22:30
replaceafillyou should save a snapshot of your vm after you install ST22:30
replaceafilli meant22:30
replaceafillbefore installing ST22:30
th1aIf the template approach still seems easiest, sure.22:31
th1aWe're not going to explain the overall concept in this page, at this moment.22:31
replaceafillah ok22:31
replaceafilljust how to edit the config22:32
replaceafillto enable the sync'ing22:32
th1aIt seems like it should be sufficient to start with OK, these are the IP addresses you need to know.22:32
th1aI'm kind of assuming, btw, that we're going to hear that schools don't have static IP addresses.22:32
th1aSo, uh... you'll need to think about that some.22:33
th1aI'm assuming we'll be able to work around it.22:33
th1aBut at this point, both ends expect to know the other's IP, right?22:33
replaceafillis something like dyndns ok?22:33
th1aAnything that freaking works is ok.22:33
replaceafillthat's the spirit!22:34
th1aI'm not sure if tunneling can get around it.22:34
replaceafillso, for this afternoon we'll assume static known ips?22:34
th1aSo what's our "numbers you need to figure out first" list?22:35
replaceafillschools don't need to know anything about anyone i think22:36
replaceafilli mean22:36
replaceafillexternal addresses22:36
replaceafilljust their server ip22:36
th1aOK, the central server is doing the pinging?22:36
replaceafillbasically, the school just needs to make their 7081,7082 ports reachable from the outside22:37
replaceafill7081 for zeo, 7082 for zrs22:37
th1aAssuming it is just a plain default install, there's no firewall, but their router might be a firewall.22:39
replaceafilljust like mine22:39
replaceafilli need to forward ports there22:39
replaceafill"any request on 7081,7082 goes to this local ip"22:39
replaceafillin my head is like one of those phrases in books "this is out of the scope of this book" :)22:40
th1aI wrote "Assuming there is a router between the school and the internet, you will have to22:41
th1aopen ports 7081 and 7082 for the database replication.  You may want to just22:41
th1aforward those ports to the SchoolTool server."22:41
th1aSunesh is the only audience for this at this point.22:41
replaceafilli really like how you write the book th1a22:41
replaceafilli hope we get feedback from him :)22:42
th1aThanks replaceafill.22:42
th1aOh, in this case we will, I'm sure.22:42
replaceafilllocal access from the intranet to the school server requires the same configuration already explained in the book22:43
replaceafillon how to make schooltool accessible22:43
th1aI have no idea why I made that a separate page.22:44
th1aI should change that.22:44
replaceafillafter installing?22:44
th1aIt is just sequenced in a way that lets you skip it, which you'd almost never want to do, right?22:45
th1aAnyhow, moving on.22:45
replaceafillyou focused on the "system admin" part probably22:45
replaceafillso, this is where the templates were supposed to help22:46
th1aThe next step?22:47
replaceafillcheck the /etc/schooltool/standard22:47
replaceafillschools are supposed to:22:49
replaceafill$ sudo cp /etc/schooltool/standard/schooltool_zrs_primary.conf /etc/schooltool/standard/schooltool.conf22:49
replaceafill$ sudo cp /etc/schooltool/standard/zeo_zrs_primary.conf /etc/schooltool/standard/zeo.conf22:50
replaceafill(if we keep this approach and names)22:50
th1aWell, we can just tell sunesh which files need to be edited.22:51
th1aWe don't need to expect he's going to copy/paste commands.22:51
replaceafillthen they need to edit schooltool.conf22:52
th1aOK, so the schools will just be editing standard.22:52
replaceafillin your instance vm, go to the /etc/schooltool/standard22:53
replaceafilland run:22:53
replaceafilldiff --ignore-all-space schooltool_zrs_primary.conf schooltool.conf22:53
replaceafillyou'll see the one line they need to change22:53
replaceafillbut in this case (for security reasons is not)22:55
replaceafillthe line should be: server
replaceafillso the ark central server can connect22:55
th1aOK... so do you want to add inline comments?22:56
replaceafillwe'll need to update the package ofc22:57
replaceafillfor schooltool.conf the inline comment is really simple22:58
replaceafillfor zeo.conf, not so much22:58
replaceafillyou can see the diff:22:58
replaceafilldiff --ignore-all-space zeo_zrs_primary.conf zeo.conf22:58
th1aYou can comment out a whole section and say "Put the info in here and uncomment  the whole thing."23:00
replaceafillit's like pasting the zeo_zrs_primary.conf file INTO zeo.conf23:01
replaceafilland commenting it out23:01
th1aI'm not registering at all what is difficult about this.23:06
replaceafillGOOD EXPLANATION HERE should include: "remove anything above"23:07
th1aCan you use hashed comments?23:08
th1aIs it not really XML?23:08
replaceafillit's just the way the default one uses23:08
th1aOK, that makes it even easier.23:08
replaceafilllet me test it first23:08
replaceafilli'm not sure about the xml-iness23:09
replaceafillfrom zconfig doc:23:10
replaceafill"Comments can be added on lines by themselves. A comment has a ‘#’ as the first non-space character and extends to the end of the line:"23:10
th1aOK, cool.23:11
replaceafillyeah, xml comments produce errors23:12
th1aSo... what goes where?23:12
th1aUncomment this and SCHOOL_IP_ADDRESS goes where?23:12
replaceafillthey don't need to change anything again23:13
replaceafillthe server access its own interface23:13
replaceafillit's basically "remove lines above and uncomment the following block"23:14
th1aRemove which lines?23:14
replaceafilldid you see:
replaceafillanything above line 1623:15
th1aYes, ok.23:15
replaceafilland that would be it for the school23:17
th1aWhich file is that then?23:18
replaceafillwhat should be the comment in zeo.conf?23:24
th1aTo enable replication to the central server via ZRS, delete the lines above this one and uncomment out the section below.23:25
th1aI guess just "uncomment" not "uncomment out"23:26
replaceafillthe central server now?23:28
th1aIf that's all there is to the school server.23:29
th1aOh... uh... so... what's the security on this?23:29
th1aOh jesus.23:30
th1aI mean, anyone trying to connect on this port?23:30
th1aWith zrs running?23:30
replaceafillat this point anyone can connect to the zeo server23:31
replaceafillbut that's a zeo configuration, not zrs23:31
th1aPresumably we need to configure that?23:32
replaceafillyou can set authentication on zeo if you want23:32
th1aI'd say we need to.23:32
th1aHave you looked into that?23:33
replaceafillyes, a little23:33
replaceafillit's really basic iirc23:33
replaceafilljust a file with username:hashed_password23:33
replaceafilli need to check again23:33
replaceafillauthentication-protocol, authentication-database23:33
th1aSimple would be good at this point.23:34
replaceafillwhat i don't remember is how you generate the password23:34
th1aI suspect all this will need to be done by something like the school opening up an ssh tunnel to the central server, which I think would get around the IP address, security and compression issues all at once.23:34
th1aWell, we could do the basic server side now.23:35
th1aI had a moment of panic over the non-existent security.23:36
replaceafillso, you suspect we'll get rid of zrs?23:36
replaceafillah never mind23:37
replaceafillgot it23:37
th1aJust tunnel it.23:37
replaceafilli should try that23:37
th1aOK, so...23:41
replaceafillthe central server will need a ST instance per school23:42
replaceafillhow to set that is already described in the book23:43
th1aRemind me if those actually run all the time.23:44
replaceafilli mean, how to set multiple one23:44
th1aIs that necessary to get the data or to view it?23:45
replaceafillwell, the central server only needs the zeo connection to the school for the repliccation part23:46
th1aI know we discussed this before.23:46
replaceafilland supervisor provides a way to start services indivudally23:46
replaceafillbut at this point is the full instance running23:47
th1aOK, but when we have 30 they don't all have to be running?23:47
replaceafillassumming you don't know when the school is going to connect23:47
replaceafillthey should be running23:48
th1aDon't you only need the zeo connection?23:48
th1aSo... why do you need all the schooltools running all the time?23:48
th1aWhat are they doing?23:48
*** khildin has quit IRC23:48
th1aThey can't connect to the secondary dbs anyhow.23:49
th1aWe're probably talking about different things.23:49
th1aThe zeos need to run but the schooltools don't until you want to view the data directly?23:49
replaceafillbut currently, we don't have a way to just start the zeos23:50
th1aAh, but that is not difficult?23:50
replaceafillthe current /etc/init.d/schooltool script starts all23:50
th1aThat's not a long term problem.23:50
replaceafillit's possible23:50
replaceafillbut we'll need more configuration options23:51
replaceafillif you currently do: sudo service schooltool stop23:51
th1areplaceafill:  This is one of those times I'm just double checking that we didn't completely mis-design this.23:51
th1aMore configuration options shouldn't be a big problem then.23:52
replaceafillth1a, if the 300 instances start sucking their resources, we can add a script to do the proper thing23:52
replaceafillagain, it's possible, we just haven't done it23:52
th1aI'd think 10 would suck, and they have more than that.23:52
th1aCool, moving on.23:52
replaceafillone thing to worth mentioning23:53
replaceafillthat zeo link could use a cron job23:53
replaceafillor supervisor somehow23:53
replaceafillin case the link breaks23:53
replaceafillanyway, moving on23:54
replaceafillimho, the only misdesign is school port not reachable23:54
replaceafillthe rest can be optimized ofc23:55
th1aSo, you set up the multiple servers, probably name them after the schools.23:55
th1aThen what?23:55
replaceafillok, for each instance23:56
replaceafillyou'll need to change schooltool.conf and zeo.conf23:56
replaceafillbut you'll need a way for the dashboard to switch between modes23:56
replaceafillwhen viewing the data23:56
replaceafillcurrently that way is having two schooltool.conf files (one for local browsing and one for zrs sycn'ing)23:57
replaceafilland two zeo.conf files (same)23:57
th1aOK, so...?23:59

Generated by 2.15.1 by Marius Gedminas - find it at!