Skip to content
This repository has been archived by the owner on Oct 24, 2023. It is now read-only.

feat: Add new Linux VHDs #5041

Merged
merged 1 commit into from
Jan 13, 2023
Merged

Conversation

jackfrancis
Copy link
Member

@jackfrancis jackfrancis commented Jan 12, 2023

Reason for Change:

This PR updates the Ubuntu 18.04-LTS VHD to the latest image, and introduces a Ubuntu 20.04-LTS VHD with an image built at the same time (10 Jan 2023).

This new 20.04-LTS VHD can be used by referencing a new "distro" value of "aks-ubuntu-20.04".

Issue Fixed:

Credit Where Due:

Does this change contain code from or inspired by another project?

  • No
  • Yes

If "Yes," did you notify that project's maintainers and provide attribution?

  • No
  • Yes

Requirements:

Notes:

@jackfrancis jackfrancis changed the title Add new Linux VHDs feat: Add new Linux VHDs Jan 12, 2023
@jackfrancis
Copy link
Member Author

cc @Michael-Sinz

This PR introduces a 20.04-LTS VHD

@jackfrancis jackfrancis requested a review from marosset January 12, 2023 19:00
@jackfrancis
Copy link
Member Author

@@ -428,7 +430,7 @@ func Build(cfg *config.Config, masterSubnetID string, agentSubnetIDs []string, i
if config.Distro != "" {
prop.MasterProfile.Distro = vlabs.Distro(config.Distro)
for _, pool := range prop.AgentPoolProfiles {
if !pool.IsWindows() {
if !pool.IsWindows() && pool.Distro == "" {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I followed all of the other changes but don't understand this one with respect to support for 20.04.

Is this a bug fix of some other behavior?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Other than not understanding this one item, the rest looks good.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a change to the front end of the E2E suite that handles configuration injection (via environment variables) into the api model before building out and then testing the cluster.

While integrating the new 20.04-LTS VHD into E2E tests, I noticed that if you pass in an env var to specify the distro value it overwrites all pool distros. We don't actually want to do that as we intentionally test a mixed-distro pool.

You can see the results in the successful test output of the new 20.04 test:

$ k get nodes -o json
2023/01/12 17:53:00 NAME                                   STATUS   ROLES    AGE     VERSION   INTERNAL-IP    EXTERNAL-IP   OS-IMAGE                         KERNEL-VERSION      CONTAINER-RUNTIME
2914k8s01000000                        Ready    agent    7m4s    v1.24.9   10.240.0.4     <none>        Windows Server 2019 Datacenter   10.0.17763.3650     containerd://1.5.8+azure
k8s-master-29143041-0                  Ready    master   7m15s   v1.24.9   10.255.255.5   <none>        Ubuntu 20.04.5 LTS               5.15.0-1030-azure   containerd://1.5.13+azure-2
k8s-master-29143041-1                  Ready    master   7m      v1.24.9   10.255.255.6   <none>        Ubuntu 20.04.5 LTS               5.15.0-1030-azure   containerd://1.5.13+azure-2
k8s-master-29143041-2                  Ready    master   7m1s    v1.24.9   10.255.255.7   <none>        Ubuntu 20.04.5 LTS               5.15.0-1030-azure   containerd://1.5.13+azure-2
k8s-pool1804-29143041-vmss000000       Ready    agent    20s     v1.24.9   10.240.0.87    <none>        Ubuntu 18.04.6 LTS               5.4.0-1100-azure    containerd://1.5.13+azure-2
k8s-pool1804gen2-29143041-vmss000000   Ready    agent    5m52s   v1.24.9   10.240.0.35    <none>        Ubuntu 18.04.6 LTS               5.4.0-1100-azure    containerd://1.5.13+azure-2
k8s-poollinux-29143041-vmss000000      Ready    agent    7m10s   v1.24.9   10.240.0.61    <none>        Ubuntu 20.04.5 LTS               5.15.0-1030-azure   containerd://1.5.13+azure-2

I.e., the control plane is running the env var-configured distro (20.04-LTS VHD), but the pools are running various OS distros that are explicitly configured in the api model.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ahh! Thanks. Maybe a small comment in the code as it was unclear what it was trying to accomplish in my (naïve) reading of it.

@jackfrancis jackfrancis merged commit 904b3ff into Azure:master Jan 13, 2023
@jackfrancis jackfrancis deleted the vhds-20230110 branch January 13, 2023 17:59
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants