Upgrade Your Azure Instances to Flatcar Container Linux Pro
Recently, we introduced a new offer into the Flatcar Container Linux line-up, the Pro edition of Flatcar. Available in the Azure Marketplace, Flatcar Pro offers a number of advantages over the free community edition of Flatcar, including:
- Azure-Tuned Linux Kernel, optimally configured for Azure out of the box.
- Commercial Support: in the event of any issues, the Kinvolk support team is standing by and ready to help, working closely with our counterparts in Microsoft.
- Highest possible network performance, thanks to Azure Accelerated Networking support.
- Built-in drivers for all Azure GPU-enabled instance types, enabling access to accelerated graphics hardware for workloads such as machine learning.
- HyperV telemetry, enabling reporting of boot-time and other issues through the hypervisor for ease of troubleshooting and support.
- Optional support for Federal Information Processing Standards (FIPS), to enable organizations to meet security compliance requirements.
If you are already using the (non-Pro) version of Flatcar Container Linux, and would like to upgrade to Pro, you will need to reprovision your instances using the new Marketplace offer ID. An in-place migration is unfortunately not possible, but reprovisioning should be straightforward.
Below, we provide some guidance depending on how you provisioned your machines in the first place:
- Using the Azure Web portal
- Using Terraform
- Using the
az
command line tool (for example, in a shell script) - Using Azure Resource Manager (ARM) templates
Please try it out, and let us know how you get on!
Deploy Flatcar Container Linux Pro from the Azure web portal
To deploy directly from the web portal start page:
- Select “Create a resource” from the portal start page. This will direct you to the “new resource” page.
- In the search box, enter “ Flatcar Container Linux Pro”. You will be directed to our Marketplace product page.
- On the product page, click “create”. This will start the regular virtual machine creation wizard where you can pick a region, configure machine and storage size, peripherals, etc. Finish the wizard to launch your Pro instance.
To deploy from the web portal’s “Virtual Machines” section:
- Select “Add” → “Virtual machine”. This will direct you to the virtual machine creation wizard.
- Under “Instance details” / “Image”, click “Browse all public and private images. This will open a search box.
- In the search box, enter “ Flatcar Container Linux Pro”.
- Select the first item, “Flatcar Container Linux Pro (Stable)”.
- Finish the instance config via the wizard to launch your Pro instance.
Update your Terraform-based deployment to use Flatcar Container Linux Pro
If you are using Terraform to automatically deploy Flatcar Container Linux, find the storage_image_reference section in your Terraform script. It should look something like this:
storage_image_reference \{
publisher = "kinvolk"
offer = "flatcar-container-linux"
sku = "stable"
version = "latest"
\}
Change the offer from “flatcar-container-linux” to “flatcar_pro”, and your script should look like this:
storage_image_reference \{
publisher = "kinvolk"
offer = "flatcar_pro"
sku = "stable"
version = "latest"
\}
Please note that the change only takes effect for newly deployed instances.
Deploy Flatcar Container Linux Pro using the az
CLI
To deploy using the az command line tool, for example in a shell script:
- List the images available to retrieve the URN. The latest version will be listed last (the exact URN may differ from what is shown here):
[ \
... \
{ \
"offer": "flatcar_pro", \
"publisher": "kinvolk", \
"sku": "stable", \
<strong>"urn": "kinvolk:flatcar_pro:stable:2605.7.0",</strong> \
"version": "2605.7.0" \
} \
]```
2. Use the above URN in place of the “kinvolk:flatcar-container-linux” URN, wherever you currently use the `az` command line. You can specify you custom ignition config via the `--custom-data` parameter:
$ az vm create --name node-1 --resource-group group-1
--admin-username core --custom-data "$(cat config.ign)"
--image kinvolk:flatcar_pro:stable:2605.7.0
## Update your ARM template to use Flatcar Container Linux Pro
If you are using ARM templates to automatically deploy Flatcar Container Linux, find the imageReference section in your template. It should look something like this:
"storageProfile": { "imageReference": { "publisher": "kinvolk", "offer": "flatcar-container-linux", "sku": "stable", "version": "latest" },
Change the offer from “flatcar-container-linux” to “flatcar_pro”, and your template should look like this:
"storageProfile": { "imageReference": { "publisher": "kinvolk", "offer": "flatcar_pro", "sku": "stable", "version": "latest" },
Please note that the change only takes effect for newly deployed instances.