зеркало из https://github.com/Azure/aks-engine.git
feat: add support for Kubernetes v1.20.0-alpha.3 (#3934)
See https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.20.md#changelog-since-v1200-alpha2
This commit is contained in:
Родитель
06108099d0
Коммит
b7a0d5a6db
|
@ -78,6 +78,16 @@ jobs:
|
|||
containerRuntime: 'docker'
|
||||
runSSHTests: true
|
||||
|
||||
- template: e2e-job-template.yaml
|
||||
parameters:
|
||||
name: 'k8s_1_20_docker_e2e'
|
||||
k8sRelease: '1.20'
|
||||
apimodel: 'examples/e2e-tests/kubernetes/release/default/definition.json'
|
||||
createVNET: true
|
||||
enableKMSEncryption: false
|
||||
containerRuntime: 'docker'
|
||||
runSSHTests: true
|
||||
|
||||
- template: e2e-job-template.yaml
|
||||
parameters:
|
||||
name: 'k8s_1_18_containerd_e2e'
|
||||
|
@ -97,3 +107,13 @@ jobs:
|
|||
enableKMSEncryption: false
|
||||
containerRuntime: 'containerd'
|
||||
runSSHTests: true
|
||||
|
||||
- template: e2e-job-template.yaml
|
||||
parameters:
|
||||
name: 'k8s_1_20_containerd_e2e'
|
||||
k8sRelease: '1.20'
|
||||
apimodel: 'examples/e2e-tests/kubernetes/release/default/definition-no-vnet.json'
|
||||
createVNET: false
|
||||
enableKMSEncryption: false
|
||||
containerRuntime: 'containerd'
|
||||
runSSHTests: true
|
||||
|
|
|
@ -6,7 +6,7 @@ defaultEnv = [
|
|||
VALIDATE_CPU_LOAD: false,
|
||||
] + params
|
||||
|
||||
def k8sVersions = ["1.16", "1.17", "1.18", "1.19"]
|
||||
def k8sVersions = ["1.16", "1.17", "1.18", "1.19", "1.20"]
|
||||
def latestReleasedVersion = "1.19"
|
||||
def tasks = [:]
|
||||
def testConfigs = []
|
||||
|
|
|
@ -576,6 +576,11 @@ func TestExampleAPIModels(t *testing.T) {
|
|||
apiModelPath: "../examples/kubernetes-releases/kubernetes1.19.json",
|
||||
setArgs: defaultSet,
|
||||
},
|
||||
{
|
||||
name: "1.20 example",
|
||||
apiModelPath: "../examples/kubernetes-releases/kubernetes1.20.json",
|
||||
setArgs: defaultSet,
|
||||
},
|
||||
{
|
||||
name: "vmss",
|
||||
apiModelPath: "../examples/kubernetes-vmss/kubernetes.json",
|
||||
|
|
|
@ -0,0 +1,31 @@
|
|||
{
|
||||
"apiVersion": "vlabs",
|
||||
"properties": {
|
||||
"orchestratorProfile": {
|
||||
"orchestratorType": "Kubernetes",
|
||||
"orchestratorRelease": "1.20"
|
||||
},
|
||||
"masterProfile": {
|
||||
"count": 1,
|
||||
"dnsPrefix": "",
|
||||
"vmSize": "Standard_D2_v3"
|
||||
},
|
||||
"agentPoolProfiles": [
|
||||
{
|
||||
"name": "agentpool1",
|
||||
"count": 3,
|
||||
"vmSize": "Standard_D2_v3"
|
||||
}
|
||||
],
|
||||
"linuxProfile": {
|
||||
"adminUsername": "azureuser",
|
||||
"ssh": {
|
||||
"publicKeys": [
|
||||
{
|
||||
"keyData": ""
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -223,6 +223,9 @@ var AllKubernetesSupportedVersions = map[string]bool{
|
|||
"1.19.1": false,
|
||||
"1.19.2": true,
|
||||
"1.19.3": true,
|
||||
"1.20.0-alpha.1": false,
|
||||
"1.20.0-alpha.2": false,
|
||||
"1.20.0-alpha.3": true,
|
||||
}
|
||||
|
||||
// AllKubernetesSupportedVersionsAzureStack is a hash table of all supported Kubernetes version strings on Azure Stack
|
||||
|
|
|
@ -115,6 +115,12 @@ func getDefaultImage(image, kubernetesImageBaseType string) string {
|
|||
// The map supports GCR or MCR image string flavors
|
||||
var kubernetesImageBaseVersionedImages = map[string]map[string]map[string]string{
|
||||
common.KubernetesImageBaseTypeGCR: {
|
||||
"1.20": {
|
||||
common.AddonResizerComponentName: "addon-resizer:1.8.7",
|
||||
common.MetricsServerAddonName: "metrics-server/metrics-server:v0.3.7",
|
||||
common.AddonManagerComponentName: "kube-addon-manager-amd64:v9.1.1",
|
||||
common.ClusterAutoscalerAddonName: "cluster-autoscaler:v1.18.0",
|
||||
},
|
||||
"1.19": {
|
||||
common.AddonResizerComponentName: "addon-resizer:1.8.7",
|
||||
common.MetricsServerAddonName: "metrics-server/metrics-server:v0.3.7",
|
||||
|
@ -221,6 +227,12 @@ var kubernetesImageBaseVersionedImages = map[string]map[string]map[string]string
|
|||
},
|
||||
},
|
||||
common.KubernetesImageBaseTypeMCR: {
|
||||
"1.20": {
|
||||
common.AddonResizerComponentName: "oss/kubernetes/autoscaler/addon-resizer:1.8.7",
|
||||
common.MetricsServerAddonName: "oss/kubernetes/metrics-server:v0.3.7",
|
||||
common.AddonManagerComponentName: "oss/kubernetes/kube-addon-manager:v9.1.1",
|
||||
common.ClusterAutoscalerAddonName: "oss/kubernetes/autoscaler/cluster-autoscaler:v1.19.0",
|
||||
},
|
||||
"1.19": {
|
||||
common.AddonResizerComponentName: "oss/kubernetes/autoscaler/addon-resizer:1.8.7",
|
||||
common.MetricsServerAddonName: "oss/kubernetes/metrics-server:v0.3.7",
|
||||
|
@ -443,6 +455,91 @@ func getK8sVersionComponents(version, kubernetesImageBaseType string, overrides
|
|||
var ret map[string]string
|
||||
k8sComponent := kubernetesImageBaseVersionedImages[kubernetesImageBaseType][majorMinor]
|
||||
switch majorMinor {
|
||||
case "1.20":
|
||||
ret = map[string]string{
|
||||
common.APIServerComponentName: getDefaultImage(common.APIServerComponentName, kubernetesImageBaseType) + ":v" + version,
|
||||
common.ControllerManagerComponentName: getDefaultImage(common.ControllerManagerComponentName, kubernetesImageBaseType) + ":v" + version,
|
||||
common.KubeProxyAddonName: getDefaultImage(common.KubeProxyAddonName, kubernetesImageBaseType) + ":v" + version,
|
||||
common.SchedulerComponentName: getDefaultImage(common.SchedulerComponentName, kubernetesImageBaseType) + ":v" + version,
|
||||
common.CloudControllerManagerComponentName: azureCloudControllerManagerImageReference,
|
||||
common.CloudNodeManagerAddonName: azureCloudNodeManagerImageReference,
|
||||
common.WindowsArtifactComponentName: "v" + version + "/windowszip/v" + version + "-1int.zip",
|
||||
common.WindowsArtifactAzureStackComponentName: "v" + version + common.AzureStackSuffix + "/windowszip/v" + version + common.AzureStackSuffix + "-1int.zip",
|
||||
common.DashboardAddonName: dashboardImageReference,
|
||||
common.DashboardMetricsScraperContainerName: dashboardMetricsScraperImageReference,
|
||||
common.ExecHealthZComponentName: getDefaultImage(common.ExecHealthZComponentName, kubernetesImageBaseType),
|
||||
common.AddonResizerComponentName: k8sComponent[common.AddonResizerComponentName],
|
||||
common.MetricsServerAddonName: k8sComponent[common.MetricsServerAddonName],
|
||||
common.CoreDNSAddonName: getDefaultImage(common.CoreDNSAddonName, kubernetesImageBaseType),
|
||||
common.CoreDNSAutoscalerName: clusterProportionalAutoscalerImageReference,
|
||||
common.KubeDNSAddonName: getDefaultImage(common.KubeDNSAddonName, kubernetesImageBaseType),
|
||||
common.AddonManagerComponentName: k8sComponent[common.AddonManagerComponentName],
|
||||
common.DNSMasqComponentName: getDefaultImage(common.DNSMasqComponentName, kubernetesImageBaseType),
|
||||
common.PauseComponentName: pauseImageReference,
|
||||
common.TillerAddonName: tillerImageReference,
|
||||
common.ReschedulerAddonName: getDefaultImage(common.ReschedulerAddonName, kubernetesImageBaseType),
|
||||
common.ACIConnectorAddonName: virtualKubeletImageReference,
|
||||
common.AzureCNINetworkMonitorAddonName: azureCNINetworkMonitorImageReference,
|
||||
common.ClusterAutoscalerAddonName: k8sComponent[common.ClusterAutoscalerAddonName],
|
||||
common.DNSSidecarComponentName: getDefaultImage(common.DNSSidecarComponentName, kubernetesImageBaseType),
|
||||
common.BlobfuseFlexVolumeAddonName: blobfuseFlexVolumeImageReference,
|
||||
common.SMBFlexVolumeAddonName: smbFlexVolumeImageReference,
|
||||
common.KeyVaultFlexVolumeAddonName: keyvaultFlexVolumeImageReference,
|
||||
common.IPMASQAgentAddonName: getDefaultImage(common.IPMASQAgentAddonName, kubernetesImageBaseType),
|
||||
common.AzureNetworkPolicyAddonName: azureNPMContainerImageReference,
|
||||
common.CalicoTyphaComponentName: calicoTyphaImageReference,
|
||||
common.CalicoCNIComponentName: calicoCNIImageReference,
|
||||
common.CalicoNodeComponentName: calicoNodeImageReference,
|
||||
common.CalicoPod2DaemonComponentName: calicoPod2DaemonImageReference,
|
||||
common.CalicoClusterAutoscalerComponentName: calicoClusterProportionalAutoscalerImageReference,
|
||||
common.CiliumAgentContainerName: ciliumAgentImageReference,
|
||||
common.CiliumCleanStateContainerName: ciliumCleanStateImageReference,
|
||||
common.CiliumOperatorContainerName: ciliumOperatorImageReference,
|
||||
common.CiliumEtcdOperatorContainerName: ciliumEtcdOperatorImageReference,
|
||||
common.AntreaControllerContainerName: antreaControllerImageReference,
|
||||
common.AntreaAgentContainerName: antreaAgentImageReference,
|
||||
common.AntreaOVSContainerName: antreaOVSImageReference,
|
||||
"antrea" + common.AntreaInstallCNIContainerName: antreaInstallCNIImageReference,
|
||||
common.NMIContainerName: aadPodIdentityNMIImageReference,
|
||||
common.MICContainerName: aadPodIdentityMICImageReference,
|
||||
common.AzurePolicyAddonName: azurePolicyImageReference,
|
||||
common.GatekeeperContainerName: gatekeeperImageReference,
|
||||
common.NodeProblemDetectorAddonName: nodeProblemDetectorImageReference,
|
||||
common.CSIProvisionerContainerName: csiProvisionerImageReference,
|
||||
common.CSIAttacherContainerName: csiAttacherImageReference,
|
||||
common.CSILivenessProbeContainerName: csiLivenessProbeImageReference,
|
||||
common.CSILivenessProbeWindowsContainerName: csiLivenessProbeWindowsImageReference,
|
||||
common.CSINodeDriverRegistrarContainerName: csiNodeDriverRegistrarImageReference,
|
||||
common.CSINodeDriverRegistrarWindowsContainerName: csiNodeDriverRegistrarWindowsImageReference,
|
||||
common.CSISnapshotterContainerName: csiSnapshotterImageReference,
|
||||
common.CSISnapshotControllerContainerName: csiSnapshotControllerImageReference,
|
||||
common.CSIResizerContainerName: csiResizerImageReference,
|
||||
common.CSIAzureDiskContainerName: csiAzureDiskImageReference,
|
||||
common.CSIAzureFileContainerName: csiAzureFileImageReference,
|
||||
common.KubeFlannelContainerName: kubeFlannelImageReference,
|
||||
"flannel" + common.FlannelInstallCNIContainerName: flannelInstallCNIImageReference,
|
||||
common.KubeRBACProxyContainerName: KubeRBACProxyImageReference,
|
||||
common.ScheduledMaintenanceManagerContainerName: ScheduledMaintenanceManagerImageReference,
|
||||
"nodestatusfreq": DefaultKubernetesNodeStatusUpdateFrequency,
|
||||
"nodegraceperiod": DefaultKubernetesCtrlMgrNodeMonitorGracePeriod,
|
||||
"podeviction": DefaultKubernetesCtrlMgrPodEvictionTimeout,
|
||||
"routeperiod": DefaultKubernetesCtrlMgrRouteReconciliationPeriod,
|
||||
"backoffretries": strconv.Itoa(DefaultKubernetesCloudProviderBackoffRetries),
|
||||
"backoffjitter": strconv.FormatFloat(DefaultKubernetesCloudProviderBackoffJitter, 'f', -1, 64),
|
||||
"backoffduration": strconv.Itoa(DefaultKubernetesCloudProviderBackoffDuration),
|
||||
"backoffexponent": strconv.FormatFloat(DefaultKubernetesCloudProviderBackoffExponent, 'f', -1, 64),
|
||||
"ratelimitqps": strconv.FormatFloat(DefaultKubernetesCloudProviderRateLimitQPS, 'f', -1, 64),
|
||||
"ratelimitqpswrite": strconv.FormatFloat(DefaultKubernetesCloudProviderRateLimitQPSWrite, 'f', -1, 64),
|
||||
"ratelimitbucket": strconv.Itoa(DefaultKubernetesCloudProviderRateLimitBucket),
|
||||
"ratelimitbucketwrite": strconv.Itoa(DefaultKubernetesCloudProviderRateLimitBucketWrite),
|
||||
"gchighthreshold": strconv.Itoa(DefaultKubernetesGCHighThreshold),
|
||||
"gclowthreshold": strconv.Itoa(DefaultKubernetesGCLowThreshold),
|
||||
common.NVIDIADevicePluginAddonName: nvidiaDevicePluginImageReference,
|
||||
common.CSISecretsStoreProviderAzureContainerName: csiSecretsStoreProviderAzureImageReference,
|
||||
common.CSISecretsStoreDriverContainerName: csiSecretsStoreDriverImageReference,
|
||||
common.AzureArcOnboardingAddonName: azureArcOnboardingImageReference,
|
||||
common.AzureKMSProviderComponentName: azureKMSProviderImageReference,
|
||||
}
|
||||
case "1.19":
|
||||
ret = map[string]string{
|
||||
common.APIServerComponentName: getDefaultImage(common.APIServerComponentName, kubernetesImageBaseType) + ":v" + version,
|
||||
|
|
|
@ -117,6 +117,7 @@ function Get-FilesToCacheOnVHD {
|
|||
"https://kubernetesartifacts.azureedge.net/kubernetes/v1.19.1/windowszip/v1.19.1-1int.zip",
|
||||
"https://kubernetesartifacts.azureedge.net/kubernetes/v1.19.2/windowszip/v1.19.2-1int.zip",
|
||||
"https://kubernetesartifacts.azureedge.net/kubernetes/v1.19.3/windowszip/v1.19.3-1int.zip"
|
||||
"https://kubernetesartifacts.azureedge.net/kubernetes/v1.20.0-alpha.3/windowszip/v1.20.0-alpha.3-1int.zip"
|
||||
);
|
||||
"c:\akse-cache\win-vnet-cni\" = @(
|
||||
"https://kubernetesartifacts.azureedge.net/azure-cni/v1.1.3/binaries/azure-vnet-cni-singletenancy-windows-amd64-v1.1.3.zip",
|
||||
|
|
|
@ -363,6 +363,7 @@ pullContainerImage "docker" "busybox"
|
|||
echo " - busybox" >> ${VHD_LOGS_FILEPATH}
|
||||
|
||||
K8S_VERSIONS="
|
||||
1.20.0-alpha.3
|
||||
1.19.3
|
||||
1.19.2
|
||||
1.18.10
|
||||
|
|
Загрузка…
Ссылка в новой задаче