Azure is selling a BROKEN CLOUD. K8s.

Recently, I created a kubernetes cluster in Azure as a POC. I did this using Terraform to ensure it was infrastructure as code. This way it could be easily stood up again.

After jumping through tons of hoops to turn on a service that was no longer in preview, I was able to add a node pool for windows machines… In short, after a lot of hoops I was able to do so. This included getting cores quotas/etc extended. That took a few days because of the response time from Microsoft.

So, at this point I am heavily invested with my time (over a week of waiting and back/forth with MSFT). Now I have a K8s cluster up and running with a windows pool and Linux pool. It appears to be working…but this was a facade.

Once I started using the K8s cluster, I noticed a problem with all my deployments that had one of the following features:

  • Several Mounts (PVCs)
    • I found more than 3
  • Mounts Over 5-10gb

I tried reaching out to Microsoft via an azure support ticket. I was basically just given the run around, and asked to go through more hoops; all of which were for no more of a reason than to close the question in the techs queue.

Finally, I was able to get more information (only because of GitHub), see below:

This, again was a lie (even if not on purpose); as it has been well more than the original two weeks referred to. The original issue was opened March 2019! Also, after I tried to rebuild (per their suggestion) I was told they are out of cores; and “would I like to rebuild in another region?”, this started the quota requests again. That added 3 more days of waiting.

(Probably due to large government contract)

None of this behavior is enterprise grade, and quite frankly I don’t know why anyone would ever use this cloud. Please reference my previous post on their uptime. Keep in mind they are slightly more expensive that AWS, less robust, and less reliable.

This is the most classic case of “This is always how we have done it.”, and the nature of people to avoid change.

Enterprise Cloud? Not Azure…

Azure has only 99.95% uptime (Four 9s is standard, 6 is my personal minimum). The Azure cloud also has an incomplete UI, and a large portion of its services are either NOT theirs ( hosted in their “Marketplace”), or they are a part of their API which is constantly changing/invalidating infrastructure as code, such as Terraform.

However, Gartner says the following about Azure:

“Gartner finds fault with some of the platform’s imperfections. “While Microsoft Azure is an enterprise-ready platform, Gartner clients report that the service experience feels less enterprise-ready than they expected, given Microsoft’s long history as an enterprise vendor,” it said. “Customers cite issues with technical support, documentation, training and breadth of the ISV partner ecosystem.”

Root ZFS Soon, but now we know how soon (sort of)…

The following is a link to the current project in GitHub. This will give us what is hopefully an accurate picture of the timeline.

https://github.com/orgs/ubuntu/projects/1

Given the hopeful nature of devs and people like me, this will keep us in check for a realistic timeline. Wish I could help guys, but kernel programming is not in my wheel house (yet).

Root ZFS for Ubuntu… soon..

Dev at Ubuntu Dimitri John Ledkov who has previously been involved in this effort commented on the Ubuntu mailing list with this update: 

Zstd patches have not made it into the upstream kernel yet. 

As used by mkinitramfs: 
– lz4 is faster to compress than gzip 
– lz4 is blazingly fast to decompress 
– lzma is dog slow to compress and decompress, but is tiny 
– lz4 size weight over gzip is marginal (14%) but imho worth the improved boot time & initrd creation time 
– xz is potentially even slower and even smaller than lzma 

In places where size is an absolute premium (tiny embedded iot devices) and performance is irrelevant, xz or lzma should be used. 

In all other places, our performance profile is in favor of lz4. 

Imho that includes the kernel image itself, thus we should consider switching: 
– initramfs tools to default to lz4 
– livecd-rootfs to default to lz4 
– kernels to compress kernel image with lz4 
– grub to include lz4 support 

I shall proceed with changing the defaults on the above to improve our responsiveness experience on installer, cloud, core and classic devices. If our firstboot & subsequent boot speed degrades or disk space becomes a concern, we can look into tweaking these changes further.

So, we can hope for this in Ubuntu 19.10 for testing/updates before (hopefully) being released in Ubuntu 20.04 LTS.

Linux Gaming just got way better!

Since the release of ProtonDB, there have been over 2500 games added to Linux!

What is Proton?

Proton is a new tool released by Valve Software that has been integrated with Steam Play to make playing Windows games on Linux as simple as hitting the Play button within Steam. Underneath the hood, Proton comprises other popular tools like Wine and DXVK among others that a gamer would otherwise have to install and maintain themselves. This greatly eases the burden for users to switch to Linux without having to learn the underlying systems or losing access to a large part of their library of games. Proton is still in its infancy so support is inconsistent, but regularly improving.

ProtonDB is used to collaborate on performance on different hardware/software configurations. Allowing the community to work together to get the games working.

Setting Up Proton in STEAM – Tested Ubuntu 18.10

Deploy Large Stacks Easily in ANY Cloud with Juju

First, a lot of people will ask, “What is Juju?”.  I had also not heard of it; however after using it, I can say it is an amazing piece of software.  It is made by Canonical, and this is their description of it:

“Juju is a state-of-the-art, open source modelling tool for operating software in the cloud. Juju allows you to deploy, configure, manage, maintain, and scale cloud applications quickly and efficiently on public clouds, as well as on physical servers, OpenStack, and containers. You can use Juju from the command line or through its beautiful GUI.”  

Essentially, JuJu makes deploying large, complicated, and difficult piece of software a breeze.  It also has a great GUI, and CLI tools.  It also supports many clouds as you can see below. 

I am currently testing this for my use case.  However, if you have to manage several clouds/customers/etc, it has the potential to save tons of time from an operational perspective.

 

Want to install it? Super easy on Ubuntu via a SNAP:

sudo snap install juju --classic

This will setup a new controller on your system behind a NAT’d interface.  It will then walk you through the setup.  Also, I highly recommend a run through of the install documentation; especially if you are going to run it on your own hardware; or localhost (LXD).  Recommended for ‘easy’ setup are the following: Ubuntu 18.04+, LXD, and ZFS (if on your own servers). ZFS is highly  recommended by myself for many other reasons we can get into later, see ZFSonLinux.org.

Links on Site

Due to the purchase of Github from Microsoft, I have removed my account and all repositories.  This will also affect a few posts I have made here.  The links used to embed some small snippets (aka GISTs) of code will no longer work.  As time is available I will start fixing them manually.  Until then I thank you for your patience.

 

Thanks,
Matthew Curry

How to use a PS1 in Linux/MAC

Here are the PS1‘s I use for my daily driver.  Feel free to take them and change them up.

I use different colors, so one doesn’t accidentally login or run something as root (which is in red, users are yellow).

To use these, simply copy and paste them into either the root user; or regular user’s .bashrc.

Alternatively you can add them to /etc/profile to make them enforced system wide. 

For MAC, it is the same; however the PS1 is a little different. See below.

 

Root

 

User

Site Updates

Just a heads up to all out there that care.

MattCurry.Com was down for a bit, while I installed the SSL Certificate, and updated my site.

Again, thank you to all the regular users.  Please don’t forget to subscribe to my RSS for updates.

Sincerely,
Matthew Curry