/srv/irclogs.ubuntu.com/2011/04/27/#ubuntu-ensemble.txt

=== niemeyer is now known as niemeyer_away
* hazmat pokes at upstart03:45
hazmatmanual respawn03:45
hazmatSpamapS, re upstart.. i was experimenting and had this https://pastebin.canonical.com/46732/04:03
hazmatseems like i'm missing something04:03
hazmatupstart sees the job but won't run it04:03
SpamapShazmat: initctl reload-configuration04:13
SpamapShazmat: you shouldn't have to do that. But I think there may be something wrong w/ the inotify04:13
hazmatSpamapS, thanks04:19
hazmatSpamapS, the integration afaics at least for units, would be the machine agent dropping in new files per unit.. i looked at using instances, but we need several parameters.. still experimenting04:20
hazmatSpamapS, actually that was user error.. missed a sudo04:21
hazmati think the inotify did pick it up04:22
hazmathmm04:23
hazmathmm.. i guess we'll still need to pass env vars for some scenarios where the value shouldn't be in a ps aux listing.04:23
hazmatbut upstart definitely adds value04:24
SpamapShazmat: Not sure I understand. You have ensemble's agent that needs to be running on the machine. Are you saying there are times you'll want two of them running?04:27
=== kim0 is now known as kim0|vacation
niemeyerMorning!13:23
niemeyerWoot, empty review column again14:17
hazmatniemeyer, nice14:38
=== robbiew1 is now known as robbiew
_mup_ensemble/ensemble-alternate-regions r210 committed by kapil.thangavelu@canonical.com15:37
_mup_additional test verifying precendence of default-image-id over region15:37
=== deryck is now known as deryck[lunch]
_mup_ensemble/ensemble-alternate-regions r211 committed by kapil.thangavelu@canonical.com15:59
_mup_fix config test, to use prepulated data for authorized key, revert change to provider serialization, as authorized key is still required.15:59
_mup_ensemble/ensemble-alternate-regions r212 committed by kapil.thangavelu@canonical.com16:21
_mup_rename resolve_region_uri/get_region_uri, yank the static region url map for string interpolation template16:21
_mup_ensemble/ensemble-alternate-regions r213 committed by kapil.thangavelu@canonical.com16:23
_mup_merge trunk16:23
=== niemeyer is now known as niemeyer_lunch
_mup_ensemble/expose-provisioning r210 committed by jim.baker@canonical.com16:28
_mup_Watch services in provisioning16:28
_mup_ensemble/ensemble-alternate-regions r214 committed by kapil.thangavelu@canonical.com16:30
_mup_document new ami per region, and precedence of ec2-uri over region.16:30
_mup_ensemble/trunk r210 committed by kapil.thangavelu@canonical.com16:31
_mup_merge ensemble-alternate-regions [r=niemeyer][f=768320]16:31
_mup_Allows for ensemble to work in different aws regions via16:31
_mup_environments.yaml specification of an environment machine provider16:31
_mup_region (us-east-1, us-west-1, eu-west-1, ap-northeast-1,16:31
_mup_ap-southeast-1). Also validates allowed region values as part of the16:32
_mup_ec2 environment schema.16:32
_mup_ensemble/expose-provisioning r211 committed by jim.baker@canonical.com16:32
_mup_Merged trunk16:32
_mup_ensemble/expose-dummy-provider r210 committed by jim.baker@canonical.com16:36
_mup_Cleanup16:36
_mup_ensemble/expose-dummy-provider r211 committed by jim.baker@canonical.com16:36
_mup_Merged trunk16:36
_mup_ensemble/ec2-deb-build r215 committed by kapil.thangavelu@canonical.com16:36
_mup_merge ensemble-alternate-regions16:36
_mup_ensemble/ec2-deb-build r216 committed by kapil.thangavelu@canonical.com16:37
_mup_merge trunk16:37
_mup_ensemble/expose-provisioning r212 committed by jim.baker@canonical.com16:37
_mup_Merged expose-dummy-provider16:37
_mup_ensemble/ec2-deb-build r217 committed by kapil.thangavelu@canonical.com16:40
_mup_extract ami to constant for debian/ec2-build16:40
_mup_ensemble/trunk r211 committed by kapil.thangavelu@canonical.com16:43
_mup_merge ec2-deb-build [r=niemeyer][f=769286]16:43
_mup_Updates all aws regions with new ensemble images, that utilize latest16:43
_mup_zookeeper release (3.3.3), this fixes several zookeeper python binding16:43
_mup_problems that caused agents to crash.16:43
SpamapSDunno if you guys caught this, but it seems netns (as in, the network isolation part of lxc) has been removed from the lucid kernel in the latest SRU16:52
SpamapSSomething to consider when testing LXC on lucid.. need to get the maverick or (better) natty backport kernel in order to have proper LXC16:52
_mup_ensemble/resolved-spec r190 committed by kapil.thangavelu@canonical.com16:57
_mup_resolved spec fixes per review.16:57
=== deryck[lunch] is now known as deryck
_mup_ensemble/trunk-merge r188 committed by kapil.thangavelu@canonical.com16:57
_mup_merge trunk16:57
_mup_ensemble/resolved-spec r192 committed by kapil.thangavelu@canonical.com16:58
_mup_fix an ec2 provider test pointing to an old ami :-(16:58
hazmatSpamapS, noted, though we're not really on lucid anymore at this point... everything is natty based atm17:01
SpamapShazmat: hahahahahahahahahahahahahahahahaha17:02
SpamapShazmat: sorry I just cackle when people think serious users will use anything non-LTS ;)17:02
SpamapS*even* in the cloud17:02
hazmatSpamapS, hmm.. true, but until we get ourselves working with the std ubuntu amis, they don't have many options17:03
SpamapShazmat: I think its safe to say Ensemble will become what its supposed to become around 12.04 .. but 10.04 is going to be where people start hacking on it.17:03
SpamapSSounds to me like ensemble should actually become part of the standard AMI's that we produce.17:04
hazmatSpamapS, we could produce/set those for lucid17:04
hazmatSpamapS, yeah.. that make things a bit easier.. 17:04
SpamapSOnce its in main, we can do that.17:05
SpamapSUntil then, ensemble will have to cheat a little.17:05
hazmatin for a penny, in for a pound ;-)17:05
SpamapSEither w/ cloud-init or its own "speshul" ami's17:05
SpamapSHow's the packaging going?17:05
SpamapSSounds like the zookeeper bits only affect the ami's you're working on..17:06
hazmatSpamapS, i finished by 'special' as in special ed.. zookeeper debs.. i need to go make and start fresh on a  clean deb for zk 3.3.317:06
hazmats/by/my17:06
SpamapSwe're only using the special AMI's for the bootstrap node right?17:06
hazmatSpamapS, all the images have been remastered, and ensemble works now in different regions17:06
hazmatSpamapS, no.. we're using them for all nodes..17:06
SpamapSthats hot. ;)17:06
SpamapSoh thats not17:07
hazmatits more than a bit hokey.. 17:07
hazmatwe don't need zk running on the other nodes17:07
SpamapSis that just because we haven't gotten around to the bit that will feed in cloud-config stuff for the agents?17:07
hazmatnor java installed17:07
_mup_ensemble/expose-ensemble-commands r215 committed by jim.baker@canonical.com17:07
_mup_Addressed review comments17:07
hazmatSpamapS, we have that, and originally we where using cloud-init for driving everything at instance startup.. but doing things like checking out ensemble,txzookeeper from trunk are still in there and take time.17:08
hazmatso same basic argument as the bootstrap.. 17:08
hazmatonce we get zk, ensemble, txzoo in a ppa, we can move to just installing them in cloud-init 17:09
hazmatand ditch the 'special' amis17:09
SpamapShazmat: checking out? Come on.. you've got a PPA and a .deb :)17:09
hazmatthe latency for the bootstrap would still exist (installing java stack and friends).17:09
SpamapShazmat: we have them in ~ensemble/ppa now17:10
hazmatSpamapS, :-) true, but at the moment its very helpful to ensure trunk is always working17:10
_mup_ensemble/expose-ensemble-commands r216 committed by jim.baker@canonical.com17:10
_mup_Modified too_many_args tests to update to argparse 1.2/python 2.7 error messages17:10
hazmatSpamapS, yeah.. we should discuss doing a real release based on that ppa for uds.17:11
SpamapShazmat: this part really could get tricky17:11
hazmatliving on trunk is probably more dev oriented, but considering how young and rapid the pace, its still our quickest way forward, but its not clear if we want to subject early adopters to the same.17:12
SpamapShazmat: Its important that the bootstrap node know it can talk to the spawned machines.. so it should be very careful how and where it tells the machines to grab their agent17:12
hazmatSpamapS, indeed, that is a problem now17:12
hazmattrunk skew between deploys17:12
SpamapSI think the default would be to have the bootstrap node try to apt-get install ensemble=${binary:Version}17:13
hazmati've got an open ticket that we should at least be recording the rev/release number per machine so its identifiable.17:13
SpamapSAnd have an environment and service override available for a different version if need be17:13
_mup_ensemble/trunk r212 committed by kapil.thangavelu@canonical.com17:14
_mup_merge resolved-spec [r=niemeyer][f=767964]17:14
_mup_ensemble resolved subcommand user documentation specification. 17:14
SpamapShazmat: one interesting idea is to have the bootstrap node mirror the PPA at bootstrap time17:14
SpamapShazmat: that would provide stasis for the environment.. just tell all nodes to pull from it.17:14
SpamapShazmat: but that would also mean it becomes a SPOF17:14
SpamapShmmm I like this idea tho17:15
SpamapSensemble bootstrap --mirror=ppa:ensemble/ppa17:15
SpamapShazmat: technically you could also have the bootstrap machine *create* an ami for the environment from that information alone17:16
hazmatSpamapS, if we can record the revno of the bootstrap node, we can use that to freeze subsequent deploys from an lp branch17:19
hazmatagainst a ppa its not as clear, do ppas always keep historical debs..17:20
hazmattime for some lunch errands17:20
_mup_ensemble/expose-ensemble-commands r217 committed by jim.baker@canonical.com17:23
_mup_PEP817:23
_mup_ensemble/expose-ensemble-commands r218 committed by jim.baker@canonical.com17:24
_mup_Merged trunk17:24
_mup_ensemble/trunk r213 committed by jim.baker@canonical.com17:37
_mup_merged expose-ensemble-commands [r=niemeyer][f=767407]17:37
_mup_Implements "ensemble expose" and "ensemble unexpose" subcommands,17:37
_mup_which set and remove a flag znode, **/services/<internal service17:37
_mup_id>/exposed**, respectively.17:37
_mup_ensemble/expose-provisioning r213 committed by jim.baker@canonical.com17:38
_mup_Merged trunk17:38
=== niemeyer_lunch is now known as niemeyer
hazmati'm starting to feel like we should have a more general way of encapsulating these state requests, (debug/expose/resolved/logging/etc).18:53
hazmatwe're adding lots of LOC reimplementing the same pattern over and over18:53
hazmatniemeyer, ^18:53
niemeyerhazmat: Which state requests, more specifically?18:54
niemeyerhazmat: Getting, saving, watching?18:54
hazmatniemeyer, debug/expose/resolved/logging are all marking states from the cli to denote a user request, that is completed by agent, get/set/clear/watch are common to all of them18:54
niemeyerhazmat: Indeed18:55
niemeyerhazmat: Good part of it is already abstracted away, though18:55
niemeyerhazmat: yield self._client.create(self._exposed_path)18:56
hazmatwell ideally yaml_state.flush()18:56
niemeyerhazmat: Agreed, anyway.  I'm just saying that we're already on the way to abstracting them away18:56
niemeyerhazmat: Exactly.. the above is simpler still for this case, though18:56
niemeyerhazmat: Watching could get some love next18:57
hazmatniemeyer, maybe.. the duplication still feels like its missing an encapsulation pattern18:57
niemeyerhazmat: YAMLState was already awesome in that regard18:57
hazmattrue18:57
niemeyerhazmat: Hmmm.. YAMLState.watch? :-)18:57
* niemeyer teases hazmat18:58
hazmatniemeyer, perhaps.. i'm thinking of some sort of pattern where we could do   _debug_api = DebugRequest() \n set_debug = _debug_api.set(callback)  .. at the class level with watches etc.18:59
hazmatwhat a good pattern here isn't entirely clear.18:59
jimbakerniemeyer, indeed, i need something like a watch for the yaml state corresponding to opened ports18:59
niemeyerhazmat: I was pondering a bit over jimbaker's branch too18:59
hazmatwe need watch callback separation and possibly set pre flush callbacks for validation18:59
niemeyerhazmat: The detail is that there's still some custom logic here and there18:59
hazmatniemeyer, yeah.. the resulting encapsulation would need to factor that out19:00
niemeyerhazmat: Like, "Oh, that's fine to ignore on conflicts..  ah, that's what the watch should return.." etc19:00
niemeyerhazmat: Right, and that's another abstraction layer19:00
jimbakeri see that kim0|vacation is presumably on vacation19:00
hazmateither as subclass behavior to a  generic yaml state request api or via pre invoke, and callbakcs19:00
hazmatjimbaker, yeah.. for this week19:00
niemeyerhazmat: There's nothing that another abstraction layer can't solve.. except the excess of abstraction layers..  so that saying goes. :-)19:00
hazmatniemeyer, which is solved by another layer ;-)19:01
niemeyerjimbaker: Hmmm, that's a clever assumption.. ;-D19:01
hazmatslightly offtopic... USG data center consolidation, move 2 clouds  http://online.wsj.com/article/SB10001424052748704729304576287431386089352.html?mod=WSJ_newsreel_politics 19:02
SpamapShazmat: notice that there is no race between upstart's inotify and starting the job. start automatically looks for the config file before trying to start the job.19:19
hazmatSpamapS, nice, that's good to know, thanks19:20
niemeyerhttp://blog.rightscale.com/2011/04/25/amazon-ec2-outage-summary-and-lessons-learned/19:42
hazmathmm..19:56
hazmatlooks like natty will need a ppa kernel for lxc-attach19:56
_mup_ensemble/resolved-state-api r197 committed by kapil.thangavelu@canonical.com20:44
_mup_use properties for computed resolved paths20:44
_mup_ensemble/expose-provisioning r214 committed by jim.baker@canonical.com23:37
_mup_Setup watches incrementally from a service being exposed to ports being opened23:37

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