Hi,<br><br>I'm sure Ryan will have more input, but I've got responses to a few of these questions that might help.  Inline below.<br><br>On Tue, Apr 17, 2012 at 7:14 AM, Daniel Kinzler <span dir="ltr"><<a href="mailto:daniel@brightbyte.de">daniel@brightbyte.de</a>></span> wrote:<br>
<div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi all<br>
<br>
We have today tried to set up an instance for wikidata, namely "wikidata-dev-1"<br>
in the "wikidata" project. We have run into several issues - some are merely<br>
things that appear unclear, others seem genuinely misswing or broken. I'll try<br>
to be brief in my descriptions in order to provide an overview. You can ask me<br>
or reedy for details.<br>
<br>
So, here goes:<br>
<br>
* UNCLEAR: Which image (ubuntu version) should be used (when trying to be close<br>
to the live environment)? Why are the different versions there? And why is there<br>
both "oneric" and "oneiric"?<br>
<br>
* MISSING: apparently, the security groups (firewall rule sets) for an instance<br>
can not be changed after it was created.<br></blockquote><div><br>This is by design, and is the same on EC2.  <br> </div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">

* MISSING/UNCLEAR: We will want to create our own puppet scripts for setting up<br>
wikidata repos for testing, etc. Where do we need to submit them? How would we<br>
apply them to instances?<br></blockquote><div><br>This is a section of the docs that are missing.  In the absence of real docs, I wrote down what I had to do to get a new project up and running with my puppet stuff: <a href="https://labsconsole.wikimedia.org/wiki/User:Bhartshorne/Path_to_a_New_Project">https://labsconsole.wikimedia.org/wiki/User:Bhartshorne/Path_to_a_New_Project</a><br>
<br>I would love it if someone would take that and turn it into something that can be a part of the general documentation.<br> </div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">

<br>
* MISSING: it would be very convenient to be save "profiles" for setting up new<br>
instances - profiles would just be the puppet config for that instance.<br>
Alternatively, allow a new instances to be created "configured just like that<br>
one over there".<br></blockquote><div><br>For the swift project I set up, once I got my puppet stuff right, all I added to specific nodes was 'swift storage' or 'swift proxy'.  I think that most of our nodes wind up with just a small set of classes, so for me at least, this wasn't too important.  If there are a large number of puppet classes you're installing on a host, perhaps that's an indication that the abstraction is wrong somewhere?  I'm not very good with puppet, so I may be way off base here.<br>
 </div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
* MISSING: foll VM snapshots. But that's just "nice to have". Puppet templates<br>
would be much more useful.<br>
<br>
* BROKEN: We were unable to install a mysql server. Trying to apply db:core<br>
failed with an error. The error ocurrs when trying ot restart the ganglia<br>
monitoring daemon (gmon or whatever). It complains about a syntax error<br>
(unexpected token "}") in the config file.<br></blockquote><div><br>Try using the generic::mysql::server class instead of the db::core class. The core class is specifically tuned for our production DBs.  You might have to cherrypick the generic mysql stuff over; I'm not sure it's in the test branch.  <a href="https://gerrit.wikimedia.org/r/#patch,sidebyside,4599,2,manifests/generic-definitions.pp">https://gerrit.wikimedia.org/r/#patch,sidebyside,4599,2,manifests/generic-definitions.pp</a><br>
 </div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
* BROKEN: Actually, installing mysql (db:core) initially failed with a different<br>
error: it's missing the directory /a. If that dir is needed, the puppet script<br>
should create it, no?<br></blockquote><div><br>same as above.<br> </div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
* UNCLEAR: after changing the puppet config for an instance, when are the<br>
changes applied? We ended up running puppetd -tv manually from the shell...<br>
shouldn't the console just trigger that whenever the config is changes?<br></blockquote><div><br>I've been running puppetd -tv as well.  <br> </div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">

<br>
* MISSING/UNCLEAR: some puppet bundles are incompatible with each other. Trying<br>
to install all of apache2 and apache2:php5 and apache2:php5-mysql fails with an<br>
unhelpful error message about conflicting declarations. So, dependencies and<br>
conflicts between bundles should somehow be indicated (or at least there should<br>
be meaningful messages on the console).<br></blockquote><div><br>it's true.  I don't know a good way around this.  For example, the generic::mysql::server class conflicts with the db::core class.  They both try and install (different versions of) the mysql server in different ways with different configurations.  I think that's just a fact of having a large environment; we need different configs for stuff, so we have to choose the right one for a given task.<br>
 </div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
* UNCLEAR: which are the bundles needed to install a standard LAMP stack?<br>
<br>
* MISSING: we were not able to find out reliably when an instance has finished<br>
booting. It would be helpful to at least have a big message in the console<br>
output. Just put a big "READY TO ROLL" in there. Well, ideally, the status in<br>
the instance list should be "booting", not "running", until it's fully up.<br></blockquote><div><br>You can check the console output but instead I usually just go make a cup of tea.  ;)<br> </div>
<blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
We'd be very grateful for any input on the above issues. As it stands, we'll be<br>
using labs as a plain VM hoster, and install everything by hand. Which kind of<br>
sucks...<br></blockquote><div><br>HTH,<br><br>-ben<br> </div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
Thanks<br>
Daniel<br>
<br>
<br>
_______________________________________________<br>
Labs-l mailing list<br>
<a href="mailto:Labs-l@lists.wikimedia.org">Labs-l@lists.wikimedia.org</a><br>
<a href="https://lists.wikimedia.org/mailman/listinfo/labs-l" target="_blank">https://lists.wikimedia.org/mailman/listinfo/labs-l</a><br>
</blockquote></div><br>