upgrade from MAAS 2.3.5 -> 2.4.2 (or later) does not account for 80 -> 5240 port change
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
MAAS |
Won't Fix
|
Undecided
|
Unassigned |
Bug Description
Upgraded (do-release-
Nov 19 15:56:37 maas sh[31121]: 2018-11-19 15:56:37 provisioningser
Nov 19 15:56:37 maas sh[31121]: Traceback (most recent call last):
Nov 19 15:56:37 maas sh[31121]: File "/usr/lib/
Nov 19 15:56:37 maas sh[31121]: current.result = callback(
Nov 19 15:56:37 maas sh[31121]: File "/usr/lib/
Nov 19 15:56:37 maas sh[31121]: _inlineCallbacks(r, g, deferred)
Nov 19 15:56:37 maas sh[31121]: File "/usr/lib/
Nov 19 15:56:37 maas sh[31121]: result = result.
Nov 19 15:56:37 maas sh[31121]: File "/usr/lib/
Nov 19 15:56:37 maas sh[31121]: return g.throw(self.type, self.value, self.tb)
Nov 19 15:56:37 maas sh[31121]: --- <exception caught here> ---
Nov 19 15:56:37 maas sh[31121]: File "/usr/lib/
Nov 19 15:56:37 maas sh[31121]: info = yield self._fetch_
Nov 19 15:56:37 maas sh[31121]: File "/usr/lib/
Nov 19 15:56:37 maas sh[31121]: current.result = callback(
Nov 19 15:56:37 maas sh[31121]: File "/usr/lib/
Nov 19 15:56:37 maas sh[31121]: failure.
Nov 19 15:56:37 maas sh[31121]: File "/usr/lib/
Nov 19 15:56:37 maas sh[31121]: self.raiseExcep
Nov 19 15:56:37 maas sh[31121]: File "/usr/lib/
Nov 19 15:56:37 maas sh[31121]: raise self.value.
Nov 19 15:56:37 maas sh[31121]: File "/usr/lib/
Nov 19 15:56:37 maas sh[31121]: current.result = callback(
Nov 19 15:56:37 maas sh[31121]: File "/usr/lib/
Nov 19 15:56:37 maas sh[31121]: d.addCallback(
Nov 19 15:56:37 maas sh[31121]: File "/usr/lib/
Nov 19 15:56:37 maas sh[31121]: return _default_
Nov 19 15:56:37 maas sh[31121]: File "/usr/lib/
Nov 19 15:56:37 maas sh[31121]: obj, end = self.raw_decode(s, idx=_w(s, 0).end())
Nov 19 15:56:37 maas sh[31121]: File "/usr/lib/
Nov 19 15:56:37 maas sh[31121]: raise JSONDecodeError
Nov 19 15:56:37 maas sh[31121]: json.decoder.
Turns out that the reason was simple and the maas_url used on a region still contained an implicit :80 port usage.
/etc/maas/
cluster_uuid: 731d7023-
maas_url:
- http://
Adding the port http://
Might be worthwhile to handle this during upgrade automatically.
Changed in maas: | |
status: | New → Invalid |
Hi Dimitrii,
MAAS does not bind to port 80, and it hasn't been doing so since 2.0. In fact, this was made public in the transition from Trusty to Xenial, and users were asked to stop using port 80 as their MAAS endpoint (as it was no longer supported). Due to Juju, we decided to keep apache2 as a dependency to continue to provide port 80 as a reverse proxy via apache2, so that Juju users were not impacted, but it was communicated that port 80 was no longer supported.
That said, MAAS upgrades do not change the endpoint configured in rackd.conf: maas_url, provided that you could be putting the communication between rack and region behind a proxy (such as HAProxy), as such, MAAS doesn't enforce having a port in the config. (e.g. FCB uses port 80 to connect racks to regions).
Lastly, as of 2.4.0, we completely dropped the dependency on apache2.