<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Fri, Jul 4, 2014 at 5:23 AM, Tim Penhey <span dir="ltr"><<a href="mailto:tim.penhey@canonical.com" target="_blank">tim.penhey@canonical.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I do just want to make the point that we are not just an ubuntu only<br>
system any more, nor even linux only.<br>
<br>
I'd prefer if we kept away from terms like "apt-get" as it doesn't make<br>
sense for windows nor centos.  While we could certainly treat those<br>
values differently on the other platforms, it definitely gives the<br>
feeling that we are *mainly* ubuntu and (hand wavey) some others.<br>
<br>
Any ideas for better names?<br></blockquote><div><br></div><div>"upgrade-packages"? Still kinda Linuxy, so alternatively "upgrade-system".</div><div><br></div><div>In cloud-init, it's "package_upgrade", with "apt_upgrade" as an alias.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Tim<br>
<div class=""><br>
<br>
On 04/07/14 02:56, Matt Bruzek wrote:<br>
> +1 to making these options configurable and having sane defaults.<br>
><br>
> Thanks!<br>
><br>
>    - Matt Bruzek <<a href="mailto:matthew.bruzek@canonical.com">matthew.bruzek@canonical.com</a><br>
</div>> <mailto:<a href="mailto:matthew.bruzek@canonical.com">matthew.bruzek@canonical.com</a>>><br>
<div class="">><br>
><br>
> On Thu, Jul 3, 2014 at 9:50 AM, Antonio Rosales<br>
</div>> <<a href="mailto:antonio.rosales@canonical.com">antonio.rosales@canonical.com</a> <mailto:<a href="mailto:antonio.rosales@canonical.com">antonio.rosales@canonical.com</a>>><br>
<div class="">> wrote:<br>
><br>
>     On Tue, Jul 1, 2014 at 7:19 PM, Andrew Wilkins<br>
</div>>     <<a href="mailto:andrew.wilkins@canonical.com">andrew.wilkins@canonical.com</a> <mailto:<a href="mailto:andrew.wilkins@canonical.com">andrew.wilkins@canonical.com</a>>><br>
<div class="">>     wrote:<br>
>     > On Wed, Jul 2, 2014 at 3:38 AM, Antonio Rosales<br>
>     > <<a href="mailto:antonio.rosales@canonical.com">antonio.rosales@canonical.com</a><br>
</div><div><div class="h5">>     <mailto:<a href="mailto:antonio.rosales@canonical.com">antonio.rosales@canonical.com</a>>> wrote:<br>
>     >><br>
>     >> Suggest we make an environments.yaml key value of say<br>
>     "apt-get-update"<br>
>     >> set to a boolean with the default being "true". Existing charms are<br>
>     >> timing out[0] when apt-get update is turned off due to stale apt-get<br>
>     >> metadata. Users then can them make the choice, and we can make<br>
>     >> suggestions in the docs as to what this key value means and how<br>
>     it can<br>
>     >> improve performance especially in the developer scenario when the<br>
>     care<br>
>     >> more about fast iterative deploys.<br>
>     >><br>
>     >> Thoughts?<br>
>     ><br>
>     ><br>
>     > I'm not suggesting we turn off update, just upgrade. We add repos<br>
>     > (cloud-tools, ppa), so we need to update for juju's dependencies<br>
>     anyway. I<br>
>     > don't think my proposal will affect charms.<br>
><br>
>     Ah yes, sorry.  However, I would still suggest upgrade and update be<br>
>     config parameter with the default being past behavior. On that note it<br>
>     would also be nice to have a utility for Juju to pass on additional<br>
>     user defined cloud-init config options.<br>
><br>
>     -thanks,<br>
>     Antonio<br>
><br>
>     ><br>
>     >><br>
>     >> [0] <a href="https://bugs.launchpad.net/juju-core/+bug/1336353" target="_blank">https://bugs.launchpad.net/juju-core/+bug/1336353</a><br>
>     >><br>
>     >> -thanks,<br>
>     >> Antonio<br>
>     >><br>
>     >> On Tue, Jul 1, 2014 at 4:43 AM, Andrew Wilkins<br>
>     >> <<a href="mailto:andrew.wilkins@canonical.com">andrew.wilkins@canonical.com</a><br>
</div></div><div class="">>     <mailto:<a href="mailto:andrew.wilkins@canonical.com">andrew.wilkins@canonical.com</a>>> wrote:<br>
>     >> > On Tue, Jul 1, 2014 at 5:45 PM, John Meinel<br>
</div>>     <<a href="mailto:john@arbash-meinel.com">john@arbash-meinel.com</a> <mailto:<a href="mailto:john@arbash-meinel.com">john@arbash-meinel.com</a>>><br>
<div><div class="h5">>     >> > wrote:<br>
>     >> >><br>
>     >> >> I would just caution that we'd really prefer behavior to be<br>
>     consistent<br>
>     >> >> across platforms and clouds, and if we can work with Microsoft<br>
>     to make<br>
>     >> >> 'apt-get update' faster in their cloud everyone wins who uses<br>
>     Ubuntu<br>
>     >> >> there,<br>
>     >> >> not just us.<br>
>     >> ><br>
>     >> ><br>
>     >> > I was meaning to disable it across all providers. It would be<br>
>     ideal to<br>
>     >> > improve upgrades for all Ubuntu users, but from what I can tell<br>
>     it's a<br>
>     >> > case<br>
>     >> > of Azure's OS disks being a tad slow. If you start going up the<br>
>     >> > instance-type scale, then you do get more IOPS. I haven't<br>
>     measured how<br>
>     >> > much<br>
>     >> > of a difference it makes.<br>
>     >> ><br>
>     >> >><br>
>     >> >> Have we looked into why Upgrade is taking 3m+? Is it the time to<br>
>     >> >> download<br>
>     >> >> things, is it the time to install things? I've certainly heard<br>
>     things<br>
>     >> >> like<br>
>     >> >> "disk ops is a bit poor" on Azure (vs CPU is actually better than<br>
>     >> >> average).<br>
>     >> >> Given the variance of 6m+ to 3m20s with Eat my data, it would<br>
>     seem disk<br>
>     >> >> sync<br>
>     >> >> performance is at least a factor here.<br>
>     >> ><br>
>     >> ><br>
>     >> > I just looked, and it is mostly not network related (I assume<br>
>     mostly I/O<br>
>     >> > bound). On ec2 an upgrade fetches all the bits in 0s; on Azure it's<br>
>     >> > taking<br>
>     >> > 5s.<br>
>     >> ><br>
>     >> >> Given I believe apt-get update is also disabled for local (it<br>
>     is run on<br>
>     >> >> the initial template, and then not run for the other instances<br>
>     copied<br>
>     >> >> from<br>
>     >> >> that), there is certainly precedence. I think a big concern is<br>
>     that we<br>
>     >> >> would<br>
>     >> >> probably still want to do apt-get update for security related<br>
>     updates.<br>
>     >> >> Though perhaps that is all of the updates we are applying<br>
>     anyway...<br>
>     >> >><br>
>     >> >> If I read the "aws.json" file correctly, I see only 8 releases<br>
>     of the<br>
>     >> >> 'precise' image. 6 of 'trusty' and 32 total dates of released<br>
>     items.<br>
>     >> >> And<br>
>     >> >> some of the trusty releases are 2014-01-22.1 which means it is<br>
>     likely<br>
>     >> >> to be<br>
>     >> >> beta releases.<br>
>     >> >><br>
>     >> >> Anyway, that means that they are actually averaging an update only<br>
>     >> >> 1/month, which is a fairly big window of updates to apply by<br>
>     the end of<br>
>     >> >> month (I would imagine). And while that does mean it takes<br>
>     longer to<br>
>     >> >> boot,<br>
>     >> >> it also means you would be open to more security holes without it.<br>
>     >> ><br>
>     >> ><br>
>     >> > My contention is that if we don't *keep* it updated, we may as<br>
>     well just<br>
>     >> > leave it to the user. When you create an instance in ec2 or<br>
>     Azure or<br>
>     >> > whatever, it doesn't come fully up-to-date. You get the<br>
>     released image,<br>
>     >> > and<br>
>     >> > then you can update it if you want to.<br>
>     >> ><br>
>     >> >> John<br>
>     >> >> =:-><br>
>     >> >><br>
>     >> >><br>
>     >> >><br>
>     >> >><br>
>     >> >> On Mon, Jun 30, 2014 at 5:05 PM, Andrew Wilkins<br>
>     >> >> <<a href="mailto:andrew.wilkins@canonical.com">andrew.wilkins@canonical.com</a><br>
</div></div><div><div class="h5">>     <mailto:<a href="mailto:andrew.wilkins@canonical.com">andrew.wilkins@canonical.com</a>>> wrote:<br>
>     >> >>><br>
>     >> >>> Hi folks,<br>
>     >> >>><br>
>     >> >>> I've been debugging a bootstrap bug [0] that was caused by<br>
>     ssh timing<br>
>     >> >>> out<br>
>     >> >>> (and the client not noticing), which was caused by "apt-get<br>
>     upgrade"<br>
>     >> >>> taking<br>
>     >> >>> an awfully long time (6 minutes on Azure).<br>
>     >> >>>     [0] <a href="https://bugs.launchpad.net/juju-core/+bug/1316185" target="_blank">https://bugs.launchpad.net/juju-core/+bug/1316185</a><br>
>     >> >>><br>
>     >> >>> I just filed<br>
>     <a href="https://bugs.launchpad.net/juju-core/+bug/1335822" target="_blank">https://bugs.launchpad.net/juju-core/+bug/1335822</a>, and<br>
>     >> >>> did a<br>
>     >> >>> quick and dirty hack that brought the upgrade down to 3<br>
>     minutes on<br>
>     >> >>> Azure. I<br>
>     >> >>> don't know the variance, so I can't be sure that it's all due to<br>
>     >> >>> eatmydata,<br>
>     >> >>> but smoser's results are similar.<br>
>     >> >>><br>
>     >> >>> Even with eatmydata, a full bootstrap on Azure just took me 10<br>
>     >> >>> minutes.<br>
>     >> >>> That's roughly broken down into:<br>
>     >> >>>  - apt-get update: 20s<br>
>     >> >>>  - apt-get upgrade: 3m20s<br>
>     >> >>>  - apt-get install <various>: 10s<br>
>     >> >>>  - Download tools (from shared Azure storage account): 5s<br>
>     >> >>>  - jujud bootstrap: 1m50s<br>
>     >> >>><br>
>     >> >>> We could bring the 10m down to 6m40s. Still not brilliant, but<br>
>     >> >>> considerably better IMO.<br>
>     >> >>><br>
>     >> >>> I propose that we remove the "apt-get upgrade" altogether. Cloud<br>
>     >> >>> images<br>
>     >> >>> are regularly updated and tested, and I think we should be<br>
>     able to<br>
>     >> >>> rely on<br>
>     >> >>> that alone. If users want something more up-to-date, they can<br>
>     use the<br>
>     >> >>> daily<br>
>     >> >>> images which are not tested as a whole, but are composed of SRUs,<br>
>     >> >>> which is<br>
>     >> >>> effectively what users get today.<br>
>     >> >>><br>
>     >> >>> Cheers,<br>
>     >> >>> Andrew<br>
>     >> >>><br>
>     >> >>> --<br>
>     >> >>> Juju-dev mailing list<br>
</div></div>>     >> >>> <a href="mailto:Juju-dev@lists.ubuntu.com">Juju-dev@lists.ubuntu.com</a> <mailto:<a href="mailto:Juju-dev@lists.ubuntu.com">Juju-dev@lists.ubuntu.com</a>><br>
<div class="">>     >> >>> Modify settings or unsubscribe at:<br>
>     >> >>> <a href="https://lists.ubuntu.com/mailman/listinfo/juju-dev" target="_blank">https://lists.ubuntu.com/mailman/listinfo/juju-dev</a><br>
>     >> >>><br>
>     >> >><br>
>     >> ><br>
>     >> ><br>
>     >> > --<br>
>     >> > Juju-dev mailing list<br>
</div>>     >> > <a href="mailto:Juju-dev@lists.ubuntu.com">Juju-dev@lists.ubuntu.com</a> <mailto:<a href="mailto:Juju-dev@lists.ubuntu.com">Juju-dev@lists.ubuntu.com</a>><br>
<div class="">>     >> > Modify settings or unsubscribe at:<br>
>     >> > <a href="https://lists.ubuntu.com/mailman/listinfo/juju-dev" target="_blank">https://lists.ubuntu.com/mailman/listinfo/juju-dev</a><br>
>     >> ><br>
>     >><br>
>     >><br>
>     >><br>
>     >> --<br>
>     >> Antonio Rosales<br>
>     >> Juju Ecosystem<br>
>     >> Canonical<br>
>     ><br>
>     ><br>
><br>
><br>
><br>
>     --<br>
>     Antonio Rosales<br>
>     Juju Ecosystem<br>
>     Canonical<br>
><br>
>     --<br>
>     Juju-dev mailing list<br>
</div>>     <a href="mailto:Juju-dev@lists.ubuntu.com">Juju-dev@lists.ubuntu.com</a> <mailto:<a href="mailto:Juju-dev@lists.ubuntu.com">Juju-dev@lists.ubuntu.com</a>><br>
<div class="HOEnZb"><div class="h5">>     Modify settings or unsubscribe at:<br>
>     <a href="https://lists.ubuntu.com/mailman/listinfo/juju-dev" target="_blank">https://lists.ubuntu.com/mailman/listinfo/juju-dev</a><br>
><br>
><br>
><br>
><br>
<br>
<br>
--<br>
Juju-dev mailing list<br>
<a href="mailto:Juju-dev@lists.ubuntu.com">Juju-dev@lists.ubuntu.com</a><br>
Modify settings or unsubscribe at: <a href="https://lists.ubuntu.com/mailman/listinfo/juju-dev" target="_blank">https://lists.ubuntu.com/mailman/listinfo/juju-dev</a><br>
</div></div></blockquote></div><br></div></div>