Canonical on Ubuntu 'Bionic Beaver' 18.04 LTS and its controversial changes

Ubuntu Server enhancements and experiments

You’ve been also been experimenting with Zstandard compression, how’s that going?

DB: I can talk about that. [...] I think the version that went into Xenial was an older version experiment in 16.04. That gives you an idea of how new the library is. We did some work, this cycle, to bring back the latest supported version of Zstandard back to Xenial. And then there’s also been some talk on the APT compression front, offering Zstandard as the alternative to GZIP and XZ compression and the other compression types that are there.

And then possibly changing that in the 18.10, maybe 19.04 timeframe, for the default, for APT compression. We were looking at it for 18.04, but it’s just a bit too early to make that kind of a change.

Is it quite a significant improvement that it supplies?

DB: Like all compression libraries, it’s dependent on the thing that you’re compressing. And also, there’s a compute and memory trade-off that’s always involved. So the numbers that were posted, and that we’ve tried so far, are just not representative enough of a large enough sample for us to be confident that it’ll be an improvement in all cases. That’s one of the reasons that we’re not there yet for 18.04. It looks very promising, but it looks more like an 18.10 timeframe where we’ll have that data.

David, could you give us an overview of the Ubuntu Server?

DB: So, as Will said, as Will’s hinting at in multiple answers, Ubuntu Server is used in the CD that you download off of the web page. But the usage is just so much broader than that.

So there’s enterprise usage that gets installed with MaaS. MAAS is our ‘Metal as a Service’ product where you can deploy large-scale servers in your data center with an image. Also, we have usage in Docker, Kubernetes, Vagrant, all the way up to the clouds.

So all of those things kind of use a version of Ubuntu Server. So the breadth of the mechanisms that people install on a bunch of servers is very large. So one of the big things that we’re announcing with 18.04 is what we called the Ubuntu-Minimal Project. I don’t know if you’ve read about that.

Is that the minimal installation?

DB: There are two things called Minimal [...]. There’s one that’s the Minimal Desktop as well. But this one is the Ubuntu-Minimal Server. It is a reduced-sized Ubuntu that is really targeted at environments where there is not going to be a human interacting with the server.

So just like in a Desktop, the Ubuntu Server is focused on making the experience very, very nice and comfortable for a human to interact with. Even though it’s just a command line, we want that to be a very nice, first-class experience.

Ubuntu-Minimal strips out those creature comforts, and it really brings the installation down to a bare minimum that is necessary for you to be able to log into the machine. So there’s SSH running, and apt get install anything that you need to facilitate your application. So it’s meant to be running in a headless environment entirely, and ideally nobody will ever interact with it – only if there’s a problem that comes up, and they need to debug something.

So this is great in the Docker and Kubernetes cloud instances of the world, where you spin up thousands of them, and they’re all configured exactly the same way, and you want it to go as fast as possible and be as lightweight as possible.

The Subiquity installer brings much needed improvements to the ease and speed of server installations

The Subiquity installer brings much needed improvements to the ease and speed of server installations

What sort of size are we talking for Ubuntu-Minimal now?

DB: Yeah, the nice thing about that is, it’s improving all the time. So the last numbers I have are from a few weeks ago. I don’t know what they’re at right now. But a few weeks ago, it was in the ‘40% smaller than Ubuntu’ range. Again, those things are just stripping out stuff like editors, documentation – because a human reads documentation, and a machine doesn’t read it. Things like that. Things that people interact with. Some command lines utilities get installed but just don’t need to be there.

Like the desktop, you also ran a survey for the server side of things. What responses did you get from that?

DB: Yeah. In fact, Ubuntu-Minimal came out of one of those feedback requests that we did. A couple of the other headline items that I have to talk about are related to feedback.

Another way to get Ubuntu installed that we’re changing in 18.04, is going back to that first time that I mentioned, downloading the CD image, or the DVD image, off of the website. That was a bit of feedback that we received from the community, that the old Debian installer – that was the name of the tool that’s used to create that old installer for Ubuntu Server – was just clunky and hard to navigate. So we spent time over the past couple of cycles making a new server installer, based on that feedback.

The server installer name is called Subiquity. So the Desktop installer is Ubiquity, but the Server would be Ubiquity with an ‘S’ in front of it. So Subiquity. That is a new image-based installer that goes significantly faster than the old package-based installer. And also, it asks you far fewer questions. So the idea is that it asks you how to configure the network, how you want to configure your disks, and then install. So that nice ‘just press Enter workflow’ through the program takes just a few minutes to get through, and you’re done. So we’re really looking forward to feedback on that bit of effort that we’ve put into 18.04.

Moving on to other things that we got feedback on; one that’s coming up is: networking has always been difficult to configure on Ubuntu. It is something that is called etc/network/interfaces or ENI, for short. That is a legacy system that spans multiple generations of Unix in different forms.

In the modern world, there are two ways to configure networking. One is a network manager that is used mostly on desktops and IoT devices. The other one is system.network, which is a systemd module for configure networking. Which we are targeting for the server environment.

Since there’s these two different ways to configure it, they have their own little quirks. Ubuntu is launching, in 18.04, a tool called netplan.io, which, if you go to that website, you can see how they use netplan. It’s just a configuration generator. So you type in a very simple YAML format – how you want your network to look. It can be as simple as three lines. It will render the correct backend networking data for either the network manager or systemd-networkd – whichever system you happen to be on. It kind of simplifies the way that you can view networking.

Chris Thornett

Chris Thornett is the Technology Content Manager at onebite, editor, writer and freelance tech journalist covering Linux and open source. Former editor of Linux User and Developer magazine.