<div dir="ltr">Hi Nicholas, <br><br>Thanks for the input. I wrote up a short blog post about our experiences going from 2.1 to 2.3. Hopefully it provides some feedback and can be helpful for others in the same position.<br><div><br></div><div><a href="http://zeestrataca.com/posts/upgrading-juju/" target="_blank">http://<wbr>zeestrataca.com/posts/<wbr>upgrading-juju/</a><div class="gmail_extra"><br>Regards<br clear="all"><div><div class="m_1053323476361787954gmail_signature"><div>--</div>Sandor Zeestraten<br></div></div><div class="m_1053323476361787954gmail_signature"><br></div><div class="gmail_quote">On Thu, Mar 22, 2018 at 4:39 PM, Nicholas Skaggs <span dir="ltr"><<a href="mailto:nicholas.skaggs@canonical.com" target="_blank">nicholas.skaggs@canonical.com</a><wbr>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class="m_1053323476361787954gmail-im m_1053323476361787954gmail-HOEnZb">Sandor, re:sharing experiences, if you want to frame some scenarios you've had trouble with, please feel free to share those. Distilling it down into a repeatable deployment -> upgrade will help us understand and account for it. As Tim mentioned, tools like juju-upgrader are generally candidates for incorporation into juju itself, provided they prove valuable to the community at large. We always welcome any PR's, but especially so for improvements that add this functionality.<br>
<br>
Nicholas<br>
<br></span><div class="m_1053323476361787954gmail-HOEnZb"><div class="m_1053323476361787954gmail-h5">
On 03/21/2018 08:43 PM, Tim Penhey wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Hi Sandor,<br>
<br>
Streamlining upgrades is definitely on the team's road-map. We are aware<br>
of the juju-upgrader plugin, and will be looking to incorporate some of<br>
that functionality into the core codebase.<br>
<br>
The core team has worked on better upgrade testing as part of our CI,<br>
which enables more test scenarios to help discover issues between more<br>
versions.<br>
<br>
Cheers,<br>
Tim<br>
<br>
On 22/03/18 05:32, Sandor Zeestraten wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Is this shared google doc open for external contributors?<br>
<br>
After spending a while upgrading our 2.1.x environments to 2.3.x and<br>
hitting some bugs along the way in staging (see below), I'd agree that<br>
the process needs a bit of love and wouldn't mind sharing some experiences.<br>
<br>
Rick mentioned <a href="https://launchpad.net/juju-upgrader" rel="noreferrer" target="_blank">https://launchpad.ne<wbr>t/juju-upgrader</a> on the Juju show a<br>
couple of episodes back, but I haven't seen it mentioned anywhere else<br>
yet. Are those tools supposed to deal with some of these issues and<br>
eventually be rolled into juju-core?<br>
<br>
<a href="https://bugs.launchpad.net/juju/+bug/1746265" rel="noreferrer" target="_blank">https://bugs.launchpad.net/juj<wbr>u/+bug/1746265</a><br>
<a href="https://bugs.launchpad.net/juju/+bug/1748294" rel="noreferrer" target="_blank">https://bugs.launchpad.net/juj<wbr>u/+bug/1748294</a><br>
<a href="https://bugs.launchpad.net/juju/+bug/1697936" rel="noreferrer" target="_blank">https://bugs.launchpad.net/juj<wbr>u/+bug/1697936</a><br>
<br>
Regards<br>
--<br>
Sandor Zeestraten<br>
<br>
On Wed, Feb 28, 2018 at 8:30 AM, Mark Shuttleworth <<a href="mailto:mark@ubuntu.com" target="_blank">mark@ubuntu.com</a><br>
<mailto:<a href="mailto:mark@ubuntu.com" target="_blank">mark@ubuntu.com</a>>> wrote:<br>
<br>
<br>
I think this UX on the upgrade process has obvious problems. Nobody<br>
should have to guess at what to do, in which sequence.<br>
<br>
Can I suggest that we have a shared Google doc to mock up a nice<br>
experience starting with the simple command 'juju upgrade' which then<br>
walks people through the process, including the distinction between<br>
upgrading charms, agents and controllers, as well as the ability to do<br>
aerospace-grade upgrades through live migration to newer controllers?<br>
<br>
Mark<br>
<br>
On 02/27/2018 11:26 PM, Tim Penhey wrote:<br>
> Hi Daniel,<br>
><br>
> The issue here is that you are upgrading the default model, not the<br>
> controller model itself.<br>
><br>
> I think we could make the error messaging more clear, and also<br>
have the<br>
> command also check the controller version before showing a lot of<br>
> baffling output.<br>
><br>
> What you need to do is upgrade the controller model first, so either<br>
> switch to it or run:<br>
><br>
> juju upgrade-juju -m controller --agent-version 2.3.3<br>
><br>
> Cheers,<br>
> Tim<br>
><br>
> On 28/02/18 11:19, Daniel Bidwell wrote:<br>
>> I am running on juju 2.3.3-xenial-amd64 and my controllers are<br>
running<br>
>> in VMware Vsphere with version 2.3.2. I thought that it would be a<br>
>> good thing for me to upgrade the controllers.<br>
>><br>
>> I have a controller, "juju switch" generates:<br>
>> bannercontroller:admin/default<br>
>><br>
>> and juju status generates:<br>
>> Model Controller Clo<wbr>ud/Region Version<wbr> SLA<br>
>> default bannercontroller myv<wbr>scloud/New<br>
Datacenter 2.3.2 unsuppor<wbr>ted<br>
>><br>
>> App Version Status Scale C<wbr>harm Store Rev OS Notes<br>
>><br>
>> Unit Workload Agent Machine<wbr> Public address Ports Message<br>
>><br>
>> Machine State DNS Inst id Series AZ Message<br>
>><br>
>> doing "juju upgrade-juju --agent-version 2.3.3 --debug" generates:<br>
>><br>
>> 17:16:19 INFO juju.cmd supercommand.go:56 running juju [2.3.3 gc<br>
go1.9.2]<br>
>> 17:16:19 DEBUG juju.cmd supercommand.go:57 args:<br>
[]string{"/snap/juju/3452/bin<wbr>/juju", "upgrade-juju",<br>
"--agent-version", "2.3.3", "--debug"}<br>
>> 17:16:19 INFO juju.juju api.go:67 connecting to API addresses:<br>
[<a href="http://10.1.61.239:17070" rel="noreferrer" target="_blank">10.1.61.239:17070</a> <<a href="http://10.1.61.239:17070" rel="noreferrer" target="_blank">http://10.1.61.239:17070</a>>]<br>
>> 17:16:19 DEBUG juju.api apiclient.go:843 successfully dialed<br>
"wss://<a href="http://10.1.61.239:17070/model/5a057215-e835-42fb-8c5a-f9d57eded74c/api" rel="noreferrer" target="_blank">10.1.61.239:17070/mode<wbr>l/5a057215-e835-42fb-8c5a-f9d5<wbr>7eded74c/api</a><br>
<<a href="http://10.1.61.239:17070/model/5a057215-e835-42fb-8c5a-f9d57eded74c/api" rel="noreferrer" target="_blank">http://10.1.61.239:17070/mod<wbr>el/5a057215-e835-42fb-8c5a-f9d<wbr>57eded74c/api</a>>"<br>
>> 17:16:19 INFO juju.api apiclient.go:597 connection established<br>
to<br>
"wss://<a href="http://10.1.61.239:17070/model/5a057215-e835-42fb-8c5a-f9d57eded74c/api" rel="noreferrer" target="_blank">10.1.61.239:17070/mode<wbr>l/5a057215-e835-42fb-8c5a-f9d5<wbr>7eded74c/api</a><br>
<<a href="http://10.1.61.239:17070/model/5a057215-e835-42fb-8c5a-f9d57eded74c/api" rel="noreferrer" target="_blank">http://10.1.61.239:17070/mod<wbr>el/5a057215-e835-42fb-8c5a-f9d<wbr>57eded74c/api</a>>"<br>
>> 17:16:19 INFO juju.juju api.go:67 connecting to API addresses:<br>
[<a href="http://10.1.61.239:17070" rel="noreferrer" target="_blank">10.1.61.239:17070</a> <<a href="http://10.1.61.239:17070" rel="noreferrer" target="_blank">http://10.1.61.239:17070</a>>]<br>
>> 17:16:19 DEBUG juju.api apiclient.go:843 successfully dialed<br>
"wss://<a href="http://10.1.61.239:17070/model/5a057215-e835-42fb-8c5a-f9d57eded74c/api" rel="noreferrer" target="_blank">10.1.61.239:17070/mode<wbr>l/5a057215-e835-42fb-8c5a-f9d5<wbr>7eded74c/api</a><br>
<<a href="http://10.1.61.239:17070/model/5a057215-e835-42fb-8c5a-f9d57eded74c/api" rel="noreferrer" target="_blank">http://10.1.61.239:17070/mod<wbr>el/5a057215-e835-42fb-8c5a-f9d<wbr>57eded74c/api</a>>"<br>
>> 17:16:19 INFO juju.api apiclient.go:597 connection established<br>
to<br>
"wss://<a href="http://10.1.61.239:17070/model/5a057215-e835-42fb-8c5a-f9d57eded74c/api" rel="noreferrer" target="_blank">10.1.61.239:17070/mode<wbr>l/5a057215-e835-42fb-8c5a-f9d5<wbr>7eded74c/api</a><br>
<<a href="http://10.1.61.239:17070/model/5a057215-e835-42fb-8c5a-f9d57eded74c/api" rel="noreferrer" target="_blank">http://10.1.61.239:17070/mod<wbr>el/5a057215-e835-42fb-8c5a-f9d<wbr>57eded74c/api</a>>"<br>
>> 17:16:19 INFO juju.juju api.go:67 connecting to API addresses:<br>
[<a href="http://10.1.61.239:17070" rel="noreferrer" target="_blank">10.1.61.239:17070</a> <<a href="http://10.1.61.239:17070" rel="noreferrer" target="_blank">http://10.1.61.239:17070</a>>]<br>
>> 17:16:19 DEBUG juju.api apiclient.go:843 successfully dialed<br>
"wss://<a href="http://10.1.61.239:17070/api" rel="noreferrer" target="_blank">10.1.61.239:17070/api</a> <<a href="http://10.1.61.239:17070/api" rel="noreferrer" target="_blank">http://10.1.61.239:17070/api</a>><wbr>"<br>
>> 17:16:19 INFO juju.api apiclient.go:597 connection established<br>
to "wss://<a href="http://10.1.61.239:17070/api" rel="noreferrer" target="_blank">10.1.61.239:17070/api</a> <<a href="http://10.1.61.239:17070/api" rel="noreferrer" target="_blank">http://10.1.61.239:17070/api</a>><wbr>"<br>
>> 17:16:19 DEBUG juju.cmd.juju.commands upgradejuju.go:466<br>
searching for agent binaries with major: 2<br>
>> 17:16:22 INFO cmd upgradejuju.go:363 available agent binaries:<br>
>> 2.3.3-artful-amd64<br>
>> 2.3.3-artful-arm64<br>
>> 2.3.3-artful-ppc64el<br>
>> 2.3.3-artful-s390x<br>
>> 2.3.3-bionic-amd64<br>
>> 2.3.3-bionic-arm64<br>
>> 2.3.3-bionic-ppc64el<br>
>> 2.3.3-bionic-s390x<br>
>> 2.3.3-centos7-amd64<br>
>> 2.3.3-trusty-amd64<br>
>> 2.3.3-trusty-arm64<br>
>> 2.3.3-trusty-ppc64el<br>
>> 2.3.3-trusty-s390x<br>
>> 2.3.3-win10-amd64<br>
>> 2.3.3-win2012-amd64<br>
>> 2.3.3-win2012hv-amd64<br>
>> 2.3.3-win2012hvr2-amd64<br>
>> 2.3.3-win2012r2-amd64<br>
>> 2.3.3-win2016-amd64<br>
>> 2.3.3-win2016nano-amd64<br>
>> 2.3.3-win7-amd64<br>
>> 2.3.3-win8-amd64<br>
>> 2.3.3-win81-amd64<br>
>> 2.3.3-xenial-amd64<br>
>> 2.3.3-xenial-arm64<br>
>> 2.3.3-xenial-ppc64el<br>
>> 2.3.3-xenial-s390x<br>
>> best version:<br>
>> 2.3.3<br>
>> 17:16:22 DEBUG juju.api monitor.go:35 RPC connection died<br>
>> 17:16:22 DEBUG juju.api monitor.go:35 RPC connection died<br>
>> 17:16:22 DEBUG juju.api monitor.go:35 RPC connection died<br>
>> ERROR a hosted model cannot have a higher version than the server<br>
model: 2.3.3 > 2.3.2<br>
>> 17:16:22 DEBUG cmd supercommand.go:459 error stack:<br>
>> a hosted model cannot have a higher version than the server<br>
model: 2.3.3 > 2.3.2<br>
>> <a href="http://github.com/juju/juju/rpc/client.go:149" rel="noreferrer" target="_blank">github.com/juju/juju/rpc/clien<wbr>t.go:149</a><br>
<<a href="http://github.com/juju/juju/rpc/client.go:149" rel="noreferrer" target="_blank">http://github.com/juju/juju/<wbr>rpc/client.go:149</a>>:<br>
>> <a href="http://github.com/juju/juju/api/apiclient.go:924" rel="noreferrer" target="_blank">github.com/juju/juju/api/apicl<wbr>ient.go:924</a><br>
<<a href="http://github.com/juju/juju/api/apiclient.go:924" rel="noreferrer" target="_blank">http://github.com/juju/juju/<wbr>api/apiclient.go:924</a>>:<br>
>><br>
>><br>
>> I am a little baffled at what the problem might be. This<br>
controller has no vm associated with it.<br>
>><br>
<br>
<br>
--<br>
Juju-dev mailing list<br>
<a href="mailto:Juju-dev@lists.ubuntu.com" target="_blank">Juju-dev@lists.ubuntu.com</a> <mailto:<a href="mailto:Juju-dev@lists.ubuntu.com" target="_blank">Juju-dev@lists.ubuntu.<wbr>com</a>><br>
Modify settings or unsubscribe at:<br>
<a href="https://lists.ubuntu.com/mailman/listinfo/juju-dev" rel="noreferrer" target="_blank">https://lists.ubuntu.com/mail<wbr>man/listinfo/juju-dev</a><br>
<<a href="https://lists.ubuntu.com/mailman/listinfo/juju-dev" rel="noreferrer" target="_blank">https://lists.ubuntu.com/mai<wbr>lman/listinfo/juju-dev</a>><br>
<br>
<br>
</blockquote></blockquote>
<br>
</div></div></blockquote></div><br></div></div></div>