diff --git a/aks-node-controller/helpers/utils.go b/aks-node-controller/helpers/utils.go index e7c61f02c61..b8d5f0b2050 100644 --- a/aks-node-controller/helpers/utils.go +++ b/aks-node-controller/helpers/utils.go @@ -211,10 +211,6 @@ func ValidateAndSetLinuxKubeletFlags(kubeletFlags map[string]string, cs *datamod if isKubeletServingCertificateRotationEnabled(kubeletFlags) { // ensure the required feature gate is set kubeletFlags["--feature-gates"] = addFeatureGateString(kubeletFlags["--feature-gates"], "RotateKubeletServerCertificate", true) - // backfill deletion of --tls-cert-file and --tls-private-key-file, which are incompatible with --rotate-server-certificates - // these are set as defaults on the RP-side for Linux - delete(kubeletFlags, "--tls-cert-file") - delete(kubeletFlags, "--tls-private-key-file") } if IsKubernetesVersionGe(cs.Properties.OrchestratorProfile.OrchestratorVersion, "1.24.0") { diff --git a/e2e/scenario_test.go b/e2e/scenario_test.go index 93f33fd3d1d..9fe26de615a 100644 --- a/e2e/scenario_test.go +++ b/e2e/scenario_test.go @@ -943,15 +943,17 @@ func Test_Ubuntu2204_DisableKubeletServingCertificateRotationWithTags(t *testing vmss.Tags["aks-disable-kubelet-serving-certificate-rotation"] = to.Ptr("true") }, Validator: func(ctx context.Context, s *Scenario) { - ValidateFileHasContent(ctx, s, "/etc/default/kubelet", "\\-\\-rotate-server-certificates=false") + ValidateFileHasContent(ctx, s, "/etc/default/kubelet", "\\-\\-tls-cert-file=/etc/kubernetes/certs/kubeletserver.crt") + ValidateFileHasContent(ctx, s, "/etc/default/kubelet", "\\-\\-tls-private-key-file=/etc/kubernetes/certs/kubeletserver.key") ValidateFileExcludesContent(ctx, s, "/etc/default/kubelet", "\\-\\-rotate-server-certificates=true", "\\-\\-rotate-server-certificates=true") ValidateFileExcludesContent(ctx, s, "/etc/default/kubelet", "kubernetes.azure.com/kubelet-serving-ca=cluster", "kubernetes.azure.com/kubelet-serving-ca=cluster") + ValidateDirectoryContent(ctx, s, "/etc/kubernetes/certs", []string{"kubeletserver.crt", "kubeletserver.key"}) }, }, }) } -func Test_Ubuntu2204_DisableKubeletServingCertificateRotationWithTagsCustomKubeletConfig(t *testing.T) { +func Test_Ubuntu2204_DisableKubeletServingCertificateRotationWithTags_CustomKubeletConfig(t *testing.T) { RunScenario(t, &Scenario{ Tags: Tags{ ServerTLSBootstrapping: true, @@ -981,10 +983,12 @@ func Test_Ubuntu2204_DisableKubeletServingCertificateRotationWithTagsCustomKubel vmss.Tags["aks-disable-kubelet-serving-certificate-rotation"] = to.Ptr("true") }, Validator: func(ctx context.Context, s *Scenario) { - ValidateFileHasContent(ctx, s, "/etc/default/kubeletconfig.json", "\"serverTLSBootstrap\": false") + ValidateFileHasContent(ctx, s, "/etc/default/kubeletconfig.json", "\"tlsCertFile\": \"/etc/kubernetes/certs/kubeletserver.crt\"") + ValidateFileHasContent(ctx, s, "/etc/default/kubeletconfig.json", "\"tlsPrivateKeyFile\": \"/etc/kubernetes/certs/kubeletserver.key\"") ValidateFileExcludesContent(ctx, s, "/etc/default/kubelet", "\\-\\-rotate-server-certificates=true", "\\-\\-rotate-server-certificates=true") ValidateFileExcludesContent(ctx, s, "/etc/default/kubelet", "kubernetes.azure.com/kubelet-serving-ca=cluster", "kubernetes.azure.com/kubelet-serving-ca=cluster") ValidateFileExcludesContent(ctx, s, "/etc/default/kubeletconfig.json", "\"serverTLSBootstrap\": true", "serverTLSBootstrap: true") + ValidateDirectoryContent(ctx, s, "/etc/kubernetes/certs", []string{"kubeletserver.crt", "kubeletserver.key"}) }, }, }) @@ -1008,9 +1012,11 @@ func Test_Ubuntu2204_DisableKubeletServingCertificateRotationWithTags_AlreadyDis vmss.Tags["aks-disable-kubelet-serving-certificate-rotation"] = to.Ptr("true") }, Validator: func(ctx context.Context, s *Scenario) { + ValidateFileHasContent(ctx, s, "/etc/default/kubelet", "\\-\\-tls-cert-file=/etc/kubernetes/certs/kubeletserver.crt") + ValidateFileHasContent(ctx, s, "/etc/default/kubelet", "\\-\\-tls-private-key-file=/etc/kubernetes/certs/kubeletserver.key") ValidateFileExcludesContent(ctx, s, "/etc/default/kubelet", "\\-\\-rotate-server-certificates=true", "\\-\\-rotate-server-certificates=true") ValidateFileExcludesContent(ctx, s, "/etc/default/kubelet", "kubernetes.azure.com/kubelet-serving-ca=cluster", "kubernetes.azure.com/kubelet-serving-ca=cluster") - ValidateFileExcludesContent(ctx, s, "/etc/default/kubeletconfig.json", "\"serverTLSBootstrap\": true", "serverTLSBootstrap: true") + ValidateDirectoryContent(ctx, s, "/etc/kubernetes/certs", []string{"kubeletserver.crt", "kubeletserver.key"}) }, }, }) @@ -1041,9 +1047,12 @@ func Test_Ubuntu2204_DisableKubeletServingCertificateRotationWithTags_AlreadyDis vmss.Tags["aks-disable-kubelet-serving-certificate-rotation"] = to.Ptr("true") }, Validator: func(ctx context.Context, s *Scenario) { + ValidateFileHasContent(ctx, s, "/etc/default/kubeletconfig.json", "\"tlsCertFile\": \"/etc/kubernetes/certs/kubeletserver.crt\"") + ValidateFileHasContent(ctx, s, "/etc/default/kubeletconfig.json", "\"tlsPrivateKeyFile\": \"/etc/kubernetes/certs/kubeletserver.key\"") ValidateFileExcludesContent(ctx, s, "/etc/default/kubelet", "\\-\\-rotate-server-certificates=true", "\\-\\-rotate-server-certificates=true") ValidateFileExcludesContent(ctx, s, "/etc/default/kubelet", "kubernetes.azure.com/kubelet-serving-ca=cluster", "kubernetes.azure.com/kubelet-serving-ca=cluster") ValidateFileExcludesContent(ctx, s, "/etc/default/kubeletconfig.json", "\"serverTLSBootstrap\": true", "serverTLSBootstrap: true") + ValidateDirectoryContent(ctx, s, "/etc/kubernetes/certs", []string{"kubeletserver.crt", "kubeletserver.key"}) }, }, }) diff --git a/parts/linux/cloud-init/artifacts/cse_config.sh b/parts/linux/cloud-init/artifacts/cse_config.sh index e44f59d01cb..db873b8cfaf 100755 --- a/parts/linux/cloud-init/artifacts/cse_config.sh +++ b/parts/linux/cloud-init/artifacts/cse_config.sh @@ -164,15 +164,6 @@ EOF systemctl restart containerd } -# this simply generates a self-signed certificate used for serving by the kubelet -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -249,15 +240,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - # generate a kubelet serving certificate if we aren't relying on TLS bootstrapping to generate one for us. - # NOTE: in the case where ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION is true but - # the customer has disabled serving certificate rotation via nodepool tags, - # the self-signed serving certificate will be bootstrapped by the kubelet instead of this function - # TODO(cameissner): remove configureKubeletServerCert altogether - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -423,12 +405,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + # check if kubelet serving certificate rotation is disabled by customer-specified nodepool tags export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) @@ -437,27 +432,43 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" - # set the --rotate-server-certificates flag to false if needed + # set --rotate-server-certificates flag and serverTLSBootstrap config file field to false + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x - # set the serverTLSBootstrap property to false if needed KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + # manually generate kubelet's self-signed serving certificate + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + # make sure to eliminate the kubelet serving node label + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + # remove the --tls-cert-file and --tls-private-key-file flags, which are incompatible with serving certificate rotation + # NOTE: this step will not be needed once these flags are no longer defaulted by the bootstrapper + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + # make sure to add the kubelet serving node label + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/parts/linux/cloud-init/artifacts/cse_helpers.sh b/parts/linux/cloud-init/artifacts/cse_helpers.sh index 0786a0f7df2..505e11d9647 100755 --- a/parts/linux/cloud-init/artifacts/cse_helpers.sh +++ b/parts/linux/cloud-init/artifacts/cse_helpers.sh @@ -483,7 +483,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -657,4 +657,16 @@ removeKubeletNodeLabel() { fi } +# removes the specified FLAG_STRING (which should be in the form of 'key=value') from KUBELET_FLAGS +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/parts/linux/cloud-init/artifacts/cse_main.sh b/parts/linux/cloud-init/artifacts/cse_main.sh index 196bbcc2300..e96d16ba8e4 100755 --- a/parts/linux/cloud-init/artifacts/cse_main.sh +++ b/parts/linux/cloud-init/artifacts/cse_main.sh @@ -222,7 +222,7 @@ mkdir -p "/etc/systemd/system/kubelet.service.d" # IMPORTANT NOTE: We do this here since this function can mutate kubelet flags and node labels, # which is used by configureK8s and other functions. Thus, we need to make sure flag and label content is correct beforehand. -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/baker.go b/pkg/agent/baker.go index dd41e2b9053..2599c132832 100644 --- a/pkg/agent/baker.go +++ b/pkg/agent/baker.go @@ -300,10 +300,6 @@ func ValidateAndSetLinuxNodeBootstrappingConfiguration(config *datamodel.NodeBoo if IsKubeletServingCertificateRotationEnabled(config) { // ensure the required feature gate is set kubeletFlags["--feature-gates"] = addFeatureGateString(kubeletFlags["--feature-gates"], "RotateKubeletServerCertificate", true) - // backfill deletion of --tls-cert-file and --tls-private-key-file, which are incompatible with --rotate-server-certificates - // these are set as defaults on the RP-side for Linux - delete(kubeletFlags, "--tls-cert-file") - delete(kubeletFlags, "--tls-private-key-file") } if IsKubernetesVersionGe(config.ContainerService.Properties.OrchestratorProfile.OrchestratorVersion, "1.24.0") { @@ -347,9 +343,6 @@ func validateAndSetWindowsNodeBootstrappingConfiguration(config *datamodel.NodeB if IsKubeletServingCertificateRotationEnabled(config) { kubeletFlags["--feature-gates"] = addFeatureGateString(kubeletFlags["--feature-gates"], "RotateKubeletServerCertificate", true) - // RP doesn't currently set these flags for windows, though we filter them out anyways just to be safe - delete(kubeletFlags, "--tls-cert-file") - delete(kubeletFlags, "--tls-private-key-file") } } } diff --git a/pkg/agent/baker_test.go b/pkg/agent/baker_test.go index 27404d7b2dd..6f09c9f129b 100644 --- a/pkg/agent/baker_test.go +++ b/pkg/agent/baker_test.go @@ -874,8 +874,6 @@ var _ = Describe("Assert generated customData and cseCmd", func() { }, func(o *nodeBootstrappingOutput) { Expect(o.vars["ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION"]).To(Equal("true")) Expect(strings.Contains(o.vars["KUBELET_FLAGS"], "--rotate-server-certificates=true")).To(BeTrue()) - Expect(strings.Contains(o.vars["KUBELET_FLAGS"], "--tls-cert-file")).To(BeFalse()) - Expect(strings.Contains(o.vars["KUBELET_FLAGS"], "--tls-private-key-file")).To(BeFalse()) }), Entry("AKSUbuntu2204 with kubelet serving certificate rotation disabled and custom kubelet config", diff --git a/pkg/agent/testdata/AKSUbuntu1604+Containerd/CustomData b/pkg/agent/testdata/AKSUbuntu1604+Containerd/CustomData index 81258538b3e..d07c6b7d98c 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+Containerd/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1604+Containerd/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1604+Containerd/line33.sh b/pkg/agent/testdata/AKSUbuntu1604+Containerd/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+Containerd/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+Containerd/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1604+Containerd/line70.sh b/pkg/agent/testdata/AKSUbuntu1604+Containerd/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+Containerd/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+Containerd/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1604+Containerd/line9.sh b/pkg/agent/testdata/AKSUbuntu1604+Containerd/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+Containerd/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+Containerd/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+CustomLinuxOSConfig/CustomData b/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+CustomLinuxOSConfig/CustomData index 5f108cb2152..51ac9760b65 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+CustomLinuxOSConfig/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+CustomLinuxOSConfig/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+CustomLinuxOSConfig/line33.sh b/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+CustomLinuxOSConfig/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+CustomLinuxOSConfig/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+CustomLinuxOSConfig/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+CustomLinuxOSConfig/line70.sh b/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+CustomLinuxOSConfig/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+CustomLinuxOSConfig/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+CustomLinuxOSConfig/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+CustomLinuxOSConfig/line9.sh b/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+CustomLinuxOSConfig/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+CustomLinuxOSConfig/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+CustomLinuxOSConfig/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+DynamicKubeletConfig/CustomData b/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+DynamicKubeletConfig/CustomData index 5f108cb2152..51ac9760b65 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+DynamicKubeletConfig/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+DynamicKubeletConfig/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+DynamicKubeletConfig/line33.sh b/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+DynamicKubeletConfig/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+DynamicKubeletConfig/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+DynamicKubeletConfig/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+DynamicKubeletConfig/line70.sh b/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+DynamicKubeletConfig/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+DynamicKubeletConfig/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+DynamicKubeletConfig/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+DynamicKubeletConfig/line9.sh b/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+DynamicKubeletConfig/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+DynamicKubeletConfig/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+CustomKubeletConfig+DynamicKubeletConfig/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=false/CustomData b/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=false/CustomData index 72dadf009d8..f47cc79b739 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=false/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=false/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=false/line33.sh b/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=false/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=false/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=false/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=false/line70.sh b/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=false/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=false/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=false/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=false/line9.sh b/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=false/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=false/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=false/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=true/CustomData b/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=true/CustomData index 72dadf009d8..f47cc79b739 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=true/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=true/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=true/line33.sh b/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=true/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=true/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=true/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=true/line70.sh b/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=true/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=true/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=true/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=true/line9.sh b/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=true/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=true/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+Disable1804SystemdResolved=true/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1604+Docker/CustomData b/pkg/agent/testdata/AKSUbuntu1604+Docker/CustomData index 81258538b3e..d07c6b7d98c 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+Docker/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1604+Docker/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1604+Docker/line33.sh b/pkg/agent/testdata/AKSUbuntu1604+Docker/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+Docker/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+Docker/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1604+Docker/line70.sh b/pkg/agent/testdata/AKSUbuntu1604+Docker/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+Docker/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+Docker/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1604+Docker/line9.sh b/pkg/agent/testdata/AKSUbuntu1604+Docker/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+Docker/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+Docker/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1604+DynamicKubeletConfig/CustomData b/pkg/agent/testdata/AKSUbuntu1604+DynamicKubeletConfig/CustomData index 2e6eec20f2d..ee1979ed4dc 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+DynamicKubeletConfig/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1604+DynamicKubeletConfig/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1604+DynamicKubeletConfig/line33.sh b/pkg/agent/testdata/AKSUbuntu1604+DynamicKubeletConfig/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+DynamicKubeletConfig/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+DynamicKubeletConfig/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1604+DynamicKubeletConfig/line70.sh b/pkg/agent/testdata/AKSUbuntu1604+DynamicKubeletConfig/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+DynamicKubeletConfig/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+DynamicKubeletConfig/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1604+DynamicKubeletConfig/line9.sh b/pkg/agent/testdata/AKSUbuntu1604+DynamicKubeletConfig/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+DynamicKubeletConfig/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+DynamicKubeletConfig/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1604+EnablePrivateClusterHostsConfigAgent/CustomData b/pkg/agent/testdata/AKSUbuntu1604+EnablePrivateClusterHostsConfigAgent/CustomData index 6b215154861..b7331362120 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+EnablePrivateClusterHostsConfigAgent/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1604+EnablePrivateClusterHostsConfigAgent/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1604+EnablePrivateClusterHostsConfigAgent/line33.sh b/pkg/agent/testdata/AKSUbuntu1604+EnablePrivateClusterHostsConfigAgent/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+EnablePrivateClusterHostsConfigAgent/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+EnablePrivateClusterHostsConfigAgent/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1604+EnablePrivateClusterHostsConfigAgent/line70.sh b/pkg/agent/testdata/AKSUbuntu1604+EnablePrivateClusterHostsConfigAgent/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+EnablePrivateClusterHostsConfigAgent/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+EnablePrivateClusterHostsConfigAgent/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1604+EnablePrivateClusterHostsConfigAgent/line9.sh b/pkg/agent/testdata/AKSUbuntu1604+EnablePrivateClusterHostsConfigAgent/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+EnablePrivateClusterHostsConfigAgent/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+EnablePrivateClusterHostsConfigAgent/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1604+GPUDedicatedVHD/CustomData b/pkg/agent/testdata/AKSUbuntu1604+GPUDedicatedVHD/CustomData index f53c9a70064..b467e47979d 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+GPUDedicatedVHD/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1604+GPUDedicatedVHD/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1604+GPUDedicatedVHD/line33.sh b/pkg/agent/testdata/AKSUbuntu1604+GPUDedicatedVHD/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+GPUDedicatedVHD/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+GPUDedicatedVHD/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1604+GPUDedicatedVHD/line70.sh b/pkg/agent/testdata/AKSUbuntu1604+GPUDedicatedVHD/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+GPUDedicatedVHD/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+GPUDedicatedVHD/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1604+GPUDedicatedVHD/line9.sh b/pkg/agent/testdata/AKSUbuntu1604+GPUDedicatedVHD/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+GPUDedicatedVHD/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+GPUDedicatedVHD/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1604+K8S115/CustomData b/pkg/agent/testdata/AKSUbuntu1604+K8S115/CustomData index 81258538b3e..d07c6b7d98c 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+K8S115/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1604+K8S115/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/9xcfVujSLb/P5/iDMOMOiNJiLbt2EvvYII217xdIPb0tV0eDJXISCANhd2u5n72+1RRQEGIre3s3Nl1n342oU6dl995qVNVZL7/rnXlBa0rJ75uaIZhmx9MSxt0rb5tWqph2Seq3lf2gY51+6NJz9aHumVb+kAbTSzlVTpyovc1+71qdd/lIwfpyLtRv2e/V/v6cPKbeqoNLeV1OmBofU01tRqCw5RAHVu2PjQttd/Pmf6SDvVG3TPNWBvttEvDvdH7YX+k9opxuTR+pn2ooemUaIgShC4f3isNcxh1GEiD0fEHOq2vmwVOHQbUwLRPx6cbRB9wHNZsY7B1R0NL1Yea0VsnYcAZk2F3fZBBd3ZoEoKhPjzNx/baxdiaVnsMtLPJsUbCYjiy7JPRZNhT9hhU+uC0ZtpeMa2vWTxSe/tlLw5O7fGEU3Xv1ZqpXauO7mCdztCJjuukm9GjocsZdbhGea4Zpj4a2vrwXO3rPWWPQdkd6ut278u5o8fGqGf3tOMaos460fjs1FZ7PZZwDL2RoXIu0QxjZCj7DJ40UzlD6MTDLIZ6Y2N0rLGnTOPRxDomVhLrhunQK8736li3Tc041wyeQK4l6A1Nuz8anU3GjKxTS6b+z8TQ1omz4FAttT4XDtocRTUJD2RusBroB0yR83e9qm8P1gNrTfDrNpdE66NMcndiWqOBbWqq0X1n90YDVR+aqW2HjMHpeLI+/3CPGzR0Ell8Zhzurw9X7Tt8xdFo53pXs8f9yak+LDE6KIj04cnINkYDuzsyjMnY0nrKIUsH8/S3jXJ+aa/TcBJ+kYsq3VP1fuGdX7j6PRn3VEsrhrLMMTUS+Oc6zSuza+hji/rJ0NRewUlutzkhpJxOxqeG2tM4Ck6N8cQ4ZQEvtzt5kpCCYGjEDYrcZvh3ddNWTVM/HdrGaGTZ4/eKLMtrYzR+xpox0E2iqSLLjO1YpaWrOxp/oESKLPOcx+P+B3usmub7kUGT7UQ/VWS5krj5GjJiaSHLWUVLy9ha+Mjy6xLBaKwZqkUwTEuDLGfVyzJqBn+BRgoWTUrTUrtn9qlm2aoxsK3RmTZU5GwJrZIMNev9yDhjtkxSxoqcrahVcnNyPNQse2xoJ/pvikwW1Twpjyd6P6tlMlkXU1Deq2O7a2gkXFIwslWJH9GH5uTkRO/q2pBGxJltjtWupshklaLUltbXxiPD6pXKpiJnda4YzwI+Hc4MMSz9RO2S9crQ1AFZJTM+ipzVuBoixkyRSWlLGx/LGpMg/+2D3VUJbueaYSlyVthYZpAhzbBMRT7ImxOmtql1CahW37SPRyPLtAx1nC+n2m9aN8v7PDoOMgf3dPNY7Wu2PrbU475mKjIpa2nNNCamRTisB1dW3Hq6SWbZpvlOkV9nEW/oA9X4YA/1rq2PuaIqv2aRrw9NzbBsfdAzbUMzLRKiJPqMCdFkaI3sgTo87Ws21UmRX+8/dd6J3rc0I5/H0qhHgNA2zDshBa8i7+Cp8yryXnPBa2jEF7ah/fdEN7Se0slK1HBEi4J6qpkMmE5Wm8yhOjbfjfJqyDeN7SwzxoZ+TgbJ+klaARKVnaxckYd8uHba+1na5O36QDXPGFM21jW0nja0dLWfFttebU/czjKQtDPVVqfTPoBGo2hFaFNFtGHav4bKGHlOUCWrvy0rnfZhlYJbfN+r5kDptH95lMme0pHbj1LsK52sdm+geKV05AwV1odkQZ73p5pxThKZZKN+oneJL4yRlRZQSz1VOvJeo+HNYOYFLrQQnoKE75YIZrs+SIGzQCD8JEXIR06MBJCWkRdgkD4lHobO25aLbltB4vvwAPMILUH6BFvNrTeAr1HQAAAYmYq4HYcRBimi7Fs5NzLH+XwDWwsHT6+3xfYutP6xrffsvn6mKdvTMEJhvPOg95Tt5k87O2JrF5wduIdUBRwmyyWKtp2LziU4F3uXO28AffEwrLZ2mOTM7c/UIA+WZwuGB8ARSC5sCVs7DeTHiGqCptchCBXRQYhhFiaBKzRmXqMxOZ4MrYk9Mu2hOtAUIf0uNAaqQYKqGGAPihHaLVaHyUOhQZcvugMtCIpnQoPtfZRWEkctP5w6Pt003yRXaIr9RrqQp6PkuRtOb1DUQF+WBE3aqJ0rgnhftHUZ4kfKSijRaabFSwluPddzmIDcTXJT3mvKkpzNHJ7rPV3NWOsD9VSzzXdqJjJ/wEurm0PCPFPzfCWJ9xsYr3HhDLM+jLWKreTRV0QrwmIaNRfeNArjcIab03DRcm5i8k+aL5NClQrbginpeNJuNy2T3UFPEaYkygK4OYybXghREoBEEvPW89EcuSBJ0QIkKUBYug5jDJL02cPXUhDD0nOPWssonLbkVhC3lh4hXoQJCeu7JVKuvMDdjaOp0gqXuDVfJrtujJXWIki/hEvshUGsRITusZnOlBIWs7MHJQ65kSwO1uxMA67OwABhhdm29Fz28RYytY8ylfOHTIEjXhsKlNAgPXZX7b7T7J5uKK1bJ2pNnek1ajlkXjS99m5R3GqQflkdkgaNI47CEBO6dEJDO9eGFtkTnp7SFivj54fzlvPPJEKtQR4LKvne1L5gFMREm2Y3iXG4MKeRt8QtdIsCHLca3YnRJ/vb8cRSWnixbE2TyLdvUXQVxqgZJrhB1waeIoyceJ3C0E510zI+sFY3be9pTSL0rWkYzLx5885Z+NBoRAhHd9OFa3sze+Z4fhKh7R24p9WMjHkoVkT5DXx2PGzHPkJLRey8AewtUJhgRdx7A/G1N8Pw44+VD5TFLIzAAy8AcTtGn0AGkTHdeQNuSEnIH2MHYvZBEO9/XQmE11WEnBt4eICPObU3gwsQPZDQp5wfXHJLUfZHy7H2BU0TjFz4KIi/fhTIRCIlflMijRBOogDk/GFe07M/ajyIBRD56MyjH90w4FaBzWJXtajbseejAP/ngP9HIcrDFcR+GN4kyxwlHhmZQ4agFGLHt3msIjQNI1cR9+nUGDsRpuOKuO06GMHPP8RpQ/H52vMR4ChBJaAy6SDlXDPIJKqi0iaQECEbwJsmUYSCDVILdLe3eUKQOF13dkCaIxBL1m0OfsEidJyLS9MiRIqZu/ssy0i8Ild43NfMgZu9nCfLo5CkNuSp9Cw1w+hrQMZoGgZuLJCUrMvIILRj7OD4r5CTJCX/OhmZozVH2MZOdOX4fo4SdiL7MaRScopUEvlZOqauFu+52asMcGEDdBxtBT4nAgn/c0ZJiLSnQMdx+0b4MmcdtElY+yDNYrN/CyL9HBbKvAWRW+2h8/ZHucSHqHUB4t/hOwXacFmnDE0dB5cYlQi4DHypZ+1ZFC7sCM29GEd3NmkxbdJKvNDjZNYs9F0Ukbz3onQLmoEk7PwnhgWBDZZkG80HBYOBdKkMZCnt0kC839jSrUgYcS3hy8KIY/SHh9GVFzjR3VejiJE9EkiMYung62owZTLW44mbVImpssBKWG2IrfKccnjRsJFmFZm1QUODbnPElAKwLBI2uXEtDms5fz0eS0j+0SH5jLD8amjWhOfjIVqZsCFi6bZr5vnFPog+eeLaTyam8bnP4vNVKeZ4Xl8tZDxxOdQuaKCJmTS4vMxLWX0V41m9sIzlPUntGper9Bde5CjBLIzKbn7Ew4VX9yjp0rlFLjsAoZv9qR8mruQFHpYIbdykFJQ2PS09+US8n/FZCSBSCuI1hnz7Of1hznTre210ssXB/ngY/BntIaVELkgeCC2iXssVCgWLbOBC5S2Do7FqxHcxRospJtFKu/Xndd8Q305J4c/WhW/tt3M1wHXQIgykCPmh4z5lAtMbRKbKn9C257LJfiWJC9GSFITS0pmTSu6X5vweJlHg+GSSlOQTvimdCpfFOFz+2/mLKP1nOuvZqLpe7Fz56N8OWKb3XxPbtMIQU56H60vBpAknpSD9dQC5RVHshYE9x1mYYRRjEMRtehU2g60f4o/BFgjirwI8ALtkO4cHuEaOC1IA8o4AigKCKAuNVaOIXi0gMaAGrlkq5mtlHuR2G17BXhvE1B5DS6+ZTUu1JqYi/r1RX+rkcpGDt1A5iBdlKaVt+uG8UQBcFgBSgEgfUoGZ9W0yTMPEd+ld3hVKj5H4Q7CSJxi03gy+g5pzJZA7xNLOK84YFKSZIj9JfErtwtVdwWKzLrw3emlKUndwpdqbcbr4XoylJPBwDJI0I3sDSXJKF7+CKDdjFN16UyRUFC6vBZBZKsokxDeBGS6XPJhrle9JbBgt48PsRotbFHXDxdLh7jWya19VEbfTTkSGB5gmGCQXhJ8F0lrLOyXS45y0s4n04oJ0eDnvFUuH/MnxSmBteqnhI6mE3Jw9xwD4uemF8xb5H8nDLAXPIRV+7c2vUYzP0zRWxG39xFTyTUcqYyXkqouUiTTrPKK6eF9muqrTPo+1VcMNPweknPbQ1fhmboUnfG89PjtNb6VZcpPv+Z19J3/U0w2ta42MD1mhXdy4XgTSEsTScNqEJ/G1C+J9aWSVV/K1rCMxdNBug7PE0hxhyBRmLIh6KyX9zFRb/ZQKCpekM3WWmB5nZPOYcY+sGuXz3zcNAHopTqYoBD9mQelakgQ4l8FPWGnc5c0cJLY9J5ZKDkncMJoi+tBFs+KuhOx6iCF+OL2J6eMMDimE3vJmfnQ0Sm9uj44UnkvouwVi0l31kqjxtYWLGi2/oUvU+rL0Ji2abP9AAK/gwD4Sro1VY45wdzxRo+l1HmFONL1WxO0kbXsXOw1uj3lPBnd3VzQjHfLlYF8gAioj0YI8X9+LpnmUDjfW1lk2unCzUVp7vFg1Bgf7fIklqmwXqu/wQutlyhuktbka58UGO6GZRMUhfBpo7CyHnkPILDPY+VuE5uiLsvWP5s8fW+m/o+bP4lYJtmL6CpT/JeDzk3Odobr0tIFfBzMvAtHWD+exjUM7vfWuqIud+IbmUXFfkg6k1KSiDJ3SNdEPe8OdBkdIF2aLv0oSfjiBH6zmD3tDdvpH4jbTK+sqmJTA3TyV0v0eh4Ed48gL5oq4Db9/Ip1P0bhJkhPNgfCIsbNYAtDim6m0EtZIR0sUOSTbdJeQMgVqCFkNpk8EudnZWyexnPiGoAOpWIJlDSONINlHt8gHEPRgFkYLqoDjr9MOUBw7c5QKJYuojzByj0D8aQPfsedS2vaGcatufOs+B+wIxPzzLg/OEYjct90MjiMQ2afd3HzCg33c5aw9ArH4spuZdgQi+7SbW5BRjj13N1c7e2h57irNEe4oWbzn4oKegd6vvx6yEu/LUbxqklmNonAKpLgJ8J1CASrXA778ce3NNWmA7PjGW9rpi1a2G3mkly/6bFLZv6RH5KF7p4jbxakdSO9AGCDsuA52juh9t0Cb6WUUfrkD4ScBhGuMl0etlnzwS7Pzar/J/r+1YLNaXhBjJ5iivztLT2K7CKXT7shSuyO1ZZZzXKp9i6nUkMLWrFkSRGIS6WpIIiLYak7DxTLBqImdedz3YgwPsHCW2zHy0RRvN+na8EC3NtuCeeMtT5dJjwKmEzN8X3gDgifs7OxctC+bt46fIGi1QJg5foyEfCYFKqXcKt0ocDoKnH9YZ2rfJFfIR9imrXMwt6cowt7MmzoY2VGIaXT/xzqOgVDvu6jGdxeXpMvlPUeXy5tYYqwkhqfE8JQ4PKUMT2EHHiB1Za2vGC8hXUkHTuQFKBpF9JWtvhckXypLVBhnKylbJMOYNsuVtzdJr/zwUEfAv8S5TrX+Hud6Z1A+L/aqfXgD3Tr+2JneOHPUYw3bxOhX7KAtwb18JK04Y6QABDGJ/Jp2BAhXECIUJz5WxHvSE3DvgKR1MB1tVM4neD1T8FO005T7r09MszDBywQr4jYJiCwiicvSazWiWkpSjjvmTjbU4Lolbwa1HgVBHJnlfWucuCFgN5gB04p0uL9/It1tyv/3T/DZibNRugiW9VzrC7PdQsbwFchw0P4WphS6tOAnS9KZGOmLxRWPLlOXK/QEphSwgtgpP8m2iYK4J7CzFvpTVkVgr8uUyfvhZxR1nZhL3vswpttJsie9OKKvSR9dbpHPPiE+umTJ9v1JGEH6hvMucYiYCwcvBvmw2d4HJ3BBiOTD9r5AHjp+HIKLZl6AXLLxIXUhDMjKSRfM3bTlFLO3q72YlkocZjxSuaa38Hwn8u/oDqrTzgR1Os32fhNG+BpFn70Y1TFqMhSahQkse6lw4GY4/mfnrtAggw+C8DM3u8jqGhD2mu0Ugtu9Zvs5CDCn8QhQFl8Lfuq7Snpnu5PMvSyYVqxAC003ryR63CQs8qBYNT8Kt+RJdk7wURB26AoRJH5tKeEDbn1u3TtkdSWvEszvPXwdJrgX4lKUZozpqSVyYStufWy2WvOt0gbxiXYnV0mAk2bEMS7Erh63mrN4w/zMdj7VWR1nxPG/POVLBaYMSJb0ZVj/qELBfnqUnbyYyvZOo/HSyBTSLfYGj/D6Ci6aOYmPcw+8WHZTvGcQr5qsnsfnncdjJMXRd3Bx6hYr2xvlS9G3qFDqq0qyiGpEM9oylUaEnZ2KkssI3XphEvf/RGVrZZaUrqXglSeLwW1We0lLcV9G++LXS1IbuTucuuD8WdkWxPvbLAcK9vn9d72setD+SJnVQvkvCePH02pzrb7910TJxWXm4XXEbzdi/CR8c2xzo/LKPEh87KnR9LpSm1NTvYUzR1Z4jMYJ6ezSCt0A+P73T7SFWJsNsyhc0KFpGGCHLNs64RE3QZ9Bt/zswrtsLqoczjukEwhCTNNhN1MZXzt4Nz11ZU+ewqyxHjUVkzKP1Smysch9rcBtkEGjokbOS0rZU8vYS1R6YcF6brEaTPqWbtP/oMPTovpbK9SzBeUbwbQkbS4Hz0I7S/ynpv3T1M5+dFJqwDZvpLMejJ0KFKcEndr+i91r/cW6r3Sr4s3gsdoL6IsXY7b7mJMdxzWCgr6fl7AIsb1PmO+yNpKXBbIuDP6Izu+RPovTQnn5sshxE0CKipWZ3qpyoysBCp3gxx/zNSj/TTtRSKA3U/VDFXaNzQct32IiQ/+rtv05drHVikTnqtFwXPcsPe4bhi7qO1eoetfVV4+1vm1ahj485c7o0ncWPBBEnkCAv/3tbyCI2Y/nh6OeZlMCU4C3UPzavfP2x/p3MtjhIwShi8An+kBJQrqRj5Dj3pFVJkYB3iWr87UXzMle3XHXXx8pt23sXtF1yYw6CTiEdS3iZrMpFAe29Nys1spqUtQQEcfUPF7tive8IquaS9E6biXtua1uhBbhLXqJexEIazq9wMNPh6JVFdvKweCVqxDt/knKVcU+Sbn/H90y1dKI+P6d1h9rhqmNThr/FwAA//+Ej9uW4E8AAA== + H4sIAAAAAAAC/9xcfXubRrb/X5/ilNLabo0kZMdxnCVbLGGFa71dQE5zHS8PFiOZGoECIydeW/ez32eGAQaEHDtuc7P1PnlWYs6cl995mTMzqD/+0Lj0gsalE1/VNMOwzfempfXbVs82LdWw7BNV7yn7QMfaveG4Y+sD3bItva8Nx5byIhk50Xua/U612m+zkYNk5O2w17HfqT19MP5d7WoDS3mZDBhaT1NNrYLgMCFQR5atD0xL7fUypq+Soc6wfaoZa6OtZmG4M3w36A3VTj4uF8ZPtfcVNK0CDVGC0GXDe4VhDqMWA6k/PH5Pp/V0M8epxYDqm3Z31N0g+oDjsGYbg609HFiqPtCMzjoJA84YD9rrgwy600OTEAz0QTcb22vmY2ta7THQTsfHGgmLwdCyT4bjQUfZY1Dp/W7FtL18Wk+zeKT29ote7Hft0ZhTde/Fmqltq4ruYJ3O0ImO66Sb0aOhyxl1uEZ5phmmPhzY+uBM7ekdZY9B2R7o63bvy5mjR8awY3e04wqi1jrR6LRrq50OSziG3tBQOZdohjE0lH0GT5KpnCF04mEaQ52RMTzW2FOm8XBsHRMriXWDZOgF53t1pNumZpxpBk8gVxJ0BqbdGw5PxyNG1qokU/9nbGjrxGlwqJZanQsHTY6inIQHMjdYDvQDpsjZ207ZtwfrgbUm+GWTS6L1USa5PTatYd82NdVov7U7w76qD8zEtkPGoDsar88/3OMGDZ1EFp8Zh/vrw2X7Dl9wNNqZ3tbsUW/c1QcFRgc5kT44GdrGsG+3h4YxHllaRzlk6WB2f98o51VznYaT8ErOq3RH1Xu5d15x9Xs86qiWlg+lmWNqJPDPdJpXZtvQRxb1k6GpnZyT3GxyQkg5HY+6htrROApOjdHY6LKAl5utLElIQTA04gZFbjL827ppq6apdwe2MRxa9uidIsvy2hiNn5Fm9HWTaKrIMmM7Umnpag9H7ymRIss859Go994eqab5bmjQZDvRu4oslxI3W0OGLC1kOa1oSRlbCx9ZflkgGI40Q7UIhklpkOW0ellGxeArqCVg0aQ0LbV9anc1y1aNvm0NT7WBIqdLaJlkoFnvhsYps2WcMFbkdEUtk5vj44Fm2SNDO9F/V2SyqGZJeTzWe2ktk8m6mIDyTh3ZbUMj4ZKAka5K/Ig+MMcnJ3pb1wY0Ik5tc6S2NUUmqxSltrSeNhoaVqdQNhU5rXP5eBrwyXBqiGHpJ2qbrFeGpvbJKpnyUeS0xlUQMWaKTEpb0vhY1ogE+e/v7bZKcDvTDEuR08LGMoMMaYZlKvJB1pwwtU2tTUC1eqZ9PBxapmWoo2w51X7X2mneZ9FxkDq4o5vHak+z9ZGlHvc0U5FJWUtqpjE2LcJhPbjS4tbRTTLLNs23ivwyjXhD76vGe3ugt219xBVV+SWLfH1gaoZl6/2OaRuaaZEQJdFnjIkmA2to99VBt6fZVCdFfrn/2Hknes/SjGweS6MOAULbMO+EFLySvIPHzivJe8kFr6ERX9iG9t9j3dA6SistUYMhLQpqVzMZMK20NpkDdWS+HWbVkG8am2lmjAz9jAyS9ZO0AiQqW2m5Ig/5cG0199O0ydr1vmqeMqZsrG1oHW1g6WovKbadyp64mWYgaWfKrU6reQC1Wt6K0KaKaMO0fwmlMfKcoEpWf1tWWs3DMgW3+L5Tzb7Sar56kMme0pKbD1LsK620dm+geKG05BQV1oekQZ71p5pxRhKZZKN+oreJL4yhlRRQS+0qLXmvVvOmMPUCFxoIT0DCtwsE010fpMCZIxB+kSLkIydGAkiLyAswSB+XHobWm4aLbhrB0vfhHmYRWoD0EbbqW68BX6GgBgAwNBVxOw4jDFJE2TcybmSO8+katuYOnlxti81daPxrW+/YPf1UU7YnYYTCeOde7yjb9V92dsTGLjg7cAeJCjhcLhYo2nbOWxfgnO9d7LwG9NnDsNraYZJTtz9RgyxYniwY7gFHILmwJWzt1JAfI6oJmlyFIJREByGGabgMXKE29Wq18fF4YI3toWkP1L6mCMl3odZXDRJU+QB7kI/QbrE8TB4KNbp80R1oTpA/E2ps76M0lnHU8MOJ49NN8/XyEk2wX0sW8mSUPHfDyTWKaujzgqBJG7UzRRDv8rYuRfxIWQkFOs20eCnBjed6DhOQuUmuy3t1WZLTmYMzvaOrKWu9r3Y123yrpiKzB7y0qjkkzFM1z1aSeLeB8RoXzjDr/Ugr2UoefUG0IswnUX3uTaIwDqe4PgnnDec6Jv+k2WKZq1JimzMlHU/S7SZlst3vKMKERFkA14dx3QshWgYgkcS88Xw0Qy5IUjQHSQoQlq7CGIMkffLwlRTEsPDco8YiCicNuRHEjYVHiOfhkoT17QIpl17g7sbRRGmEC9yYLZa7boyVxjxIvoQL7IVBrESE7qGZzoQS5rPTBwUOmZEsDtbsTAKuysAAYYXZtvBc9vEGUrWPUpWzh0yBI14bCpRQIz12W22/1eyObiiNGydqTJzJFWo4ZF40ufJuUNyokX5ZHZAGjSOOwhATumRCTTvTBhbZE3a7tMVK+fnhrOH8exmhRj+LBZV8r2ufMQpiok29vYxxODcnkbfADXSDAhw3au2x0SP729HYUhp4vmhMlpFv36DoMoxRPVziGl0beIowcuJ1CkPr6qZlvGetbtLe05pE6BuTMJh6s/qtM/ehVosQjm4nc9f2pvbU8fxlhLZ34I5WMzLmoVgR5dfwyfGwHfsILRSx9RqwN0fhEivi3muIr7wphp9/Ln2gLKZhBB54AYjbMfoIMoiM6c5rcENKQv4YOxDTD4J499tKILwuI+Rcw/09fMiovSmcg+iBhD5m/OCCW4rSP1qOtc9ossTIhQ+C+NsHgUwkUuLXBdII4WUUgJw9zGp6+keNBzEHIhudevSjGwbcKrBZ7KoSdTv2fBTgvw/4fxaiPFxB7Ifh9XKRocQjI3PIEJRC7Pg2j1WEJmHkKuI+nRpjJ8J0XBG3XQcj+PWnOGkoPl15PgIcLVEBqFQ6SBnXFDKJqqg0CSREyAbwJssoQsEGqTm629s8IUicrjs7IM0QiAXrNge/YBE6zsWFaREixczdfZJlJF6RKzzsa+bAzV7OkuVBSBIbslR6kpph9CUgYzQJAzcWSEpWZWQQ2jF2cPw95CRJye8nIzO0Zgjb2IkuHd/PUMJOZD+EVEJOkVpGfpqOiavFO272KgVc2AAdR1uCz4lAwv+eUhIi7THQcdy+Er7UWQdNEtY+SNPY7N2ASD+HuTJvQORWe2i9+Vku8CFqnYP4T/hBgSZcVClDU8fBBUYFAi4Dn+tZexqFcztCMy/G0a1NWkybtBLP9DiZNQ19F0Uk770o2YKmIAk7f8ewILDBgmyj+aBgMJAulYEsJV0aiHcbW7oVCSOuJXxeGHGM/vQwuvQCJ7r9YhQxsgcCiVEsHHxVDqZUxno8cZNKMVUUWAqrDbFVnFMMLxo20rQkszJoaNBtjphCABZFwiY3rsVhJecvx2MByT87JJ8Qll8MzYrwfDhESxM2RCzddk09P98H0SePXPvJxCQ+91l8vijEHM/ri4WMJy6G2jkNNDGVBhcXWSmrrmI8q2eWsawnqVzjMpW+40WOEkzDqOjmBzyce3WPki6cG+SyAxC62Z/44dKVvMDDEqGN65SC0ianpScfifdTPisBREpBvMaQbz6lP8yYbv2oDU+2ONgfDoNv0R5SSuSC5IHQIOo1XCFXMM8GLlTeMDhqq1p8G2M0n2ASrbRbf1r3DfHNhBT+dF342n47UwNcB83DQIqQHzruYyYwvUFkqnyDtj2TTfYryzgXLUlBKC2cGankfmHOH+EyChyfTJKW2YSvSqfcZTEOF/9x/iJKf0tnPRlV14udSx/9xwHL9P4+sU0qDDHlabg+F0yacFIC0vcDyA2KYi8M7BlOwwyjGIMgbtOrsCls/RR/CLZAEH8T4B7YJdsZ3MMVclyQApB3BFAUEERZqK1qefRqAYkBNXDNQjFfK/MgN5vwAvaaICb2GFpyzWxaqjU2FfGftepSJxeLHLyB0kG8KEsJbd0PZ7Uc4KIAkAJE+pASzKxvk2ESLn2X3uVdouQYiT8EK3iCQetN4QeoOFcCuUUsbb3gjEFBkinyo8Qn1C5c3uYsNuvCe6OTpCR1B1eqvSmni+/FWFoGHo5BkqZkbyBJTuHiVxDleoyiG2+ChJLCxbUAUktFmYT4JjDDxYIHc63yPYoNo2V8mN1ofoOidjhfONy9RnrtqyridtKJyHAPkyUGyQXhV4G01vJOgfQ4I21tIj0/Jx1exnvF0iF7crwSWJteaPhIKiE3Y88xAH5ucuG8Rf5H8jBNwTNIhF95sysU47MkjRVxWz8xlWzTkchYCZnqImUiTVsPqC7eFZmuqrTPYm1Vc8NPASmnHXQ5up5Z4QnfW49Ou8mtNEtu8j27s29ljzq6obWtofE+LbTza9eLQFqAWBhOmvBlfOWCeFcYWWWVfC3rSAwdNJvgLLA0QxhShRkLot5KST4z1Va/JILCBelMnQWmxxnpPGbcA6tG8fz3dQ2AXoqTKQrBj1lQuJYkAc5l8CNWGndxPQOJbc+JpZJDEjeMJog+dNE0vyshux5iiB9OrmP6OIVDCqGzuJ4dHQ2Tm9ujI4XnEvpujph0W74kqn1p4aJGy6/pErW+LL1OiibbPxDASziwj4RrbVWbIdwejdVocpVFmBNNrhRxe5m0vfOdGrfHvCODu7srmpEO+XKwLxABpZFoTp6v70WTPEqGa2vrLBudu+korT1erBr9g32+xBJVtnPVd3ih1TLlDdKaXI3zYoOd0Iyj/BA+CTR2lkPPIWSWGez8LUIz9FnZ+lf91w+N5N9R/VdxqwBbPn0Fyv8S8PnJmc5QXnqawK+DqReBaOuHs9jGoZ3cepfUxU58TfMovy9JBhJqUlEGTuGa6Ke9wU6NI6QLs8VfJQk/ncBPVv2nvQE7/SNxm+qVdhVMSuBunkrp/ojDwI5x5AUzRdyGPz6Szidv3CTJiWZAeMTYmS8AaPFNVVoJa6TDBYockm26S0iZAhWErAbTJ4Jcb+2tk1hOfE3QgUQswbKCkUaQ7KEb5AMIejANozlVwPHXafsojp0ZSoSSRdRHGLlHIP6yge/Icyltc8O4VTW+dZcBdgRi9nmXB+cIRO7bbgrHEYjs025mPuHBPu5y1h6BmH/ZTU07ApF92s0sSClHnrubqZ0+tDx3leQId5Qs3nFxQc9A79ZfD1mJd8UoXtXJrFpeOAVS3AT4QaEAFesBX/649uaKNEB2fO0t7ORFK9uNPNLL5302qeyfkyPy0L1VxO381A6ktyD0EXZcBztH9L5boM30Igo/34LwiwDCFcaLo0ZDPnhVb73Yr7P/b8zZrIYXxNgJJuifzsKT2C5CaTVbstRsSU2Z5RyXal9jKjUktzVtlgSRmES6GpKICLbqk3C+WGJUx84s7nkxhnuYO4vtGPlogrfrdG24p1ubbcG89hbdxbJDAdOJGb4vvAbBE3Z2ds6bF/Ubx18iaDRAmDp+jIRsJgUqodwq3ChwOgqcf1hnal8vL5GPsE1b52BmT1CEvak3cTCyoxDT6P7bOo6BUO27qMJ35xeky+U9R5fL61hirCSGp8TwlDg8pRRPYQfuIXFl0Vd3Rb12d1dCspr2ncgLUDSM6GtbPS9Yfi4tU2GcrqZsoQxj2jCX3uAk/fL9fRUB/yLnOtX6u5zr3UHxzNgr9+I1dOP4I2dy7cxQhzVtY6NXsoO2BXfykbTijJECEMRl5Fe0JEC4ghCheOljRbwjfQH3HkhSC5PRWumMgtczcUCCdpJ2//WRaRYu8WKJFXGbBEUalcRtydUaUS0hKcYecykbqnEdkzeFSo+CIA7N4t41XrohYDeYAtOKdLl/fCQdbsL/j4/wyYnTUboQFvVc6w3THUPK8AXIcND8GqYUuqToLxekOzGSl4tLHl0kLlfoKUwhYAWxVXySbhUFcU9g5y3056yKwF6ZKZL3wk8oajsxl8B3YUy3lGRfen5EX5U+utgin31CfHTBEu7HkzCC5C3nXeIQMRMOXgzyYb25D07gghDJh819gTx0/DgEF029ALlk80NqQxiQ1ZMumrtJ2ymmb1h7MS2XOEx5JHJNb+75TuTf0l1Uq5kKarXqzf06DPEVij55MapiVGco1HMTWPZS4cDNcPxPzm2uQQofBOEnbnae1RUg7NWbCQQ3e/XmUxBgTuMRoCy+FPzUd6X0TncoqXtZMK1YkRbqblZJ9LhOWGRBsap/EG7Ik/Ss4IMg7NBVIlj6laWED7j1uVXvkVWVvFIwv/PwVbjEnRAXojRlTE8ukQtbceNDvdGYbRU2iY+0e3m5DPCyHnGMc7Grh63mLN4wP7WdT3VWxxlx/JenfKHAFAFJk74I659VKNjPj9LTF1PZ3qnVnhuZQrLN3uARXl/BRVNn6ePMA8+WXRfvGMSrOqvn8Vnr4RhJcPQdnJ+8xcr2RvlS9DUqFHqrgiyiGtGMtk2FEWFnp6TkIkI3XriMe99Q2UqZBaUrKXjlyWJwk9Ze0lLcFdE+/+2C1EbuHqcqOH9VtgXx7ibNgZx9dgdeLasatD9TZrlQ/iVh/HBaba7VN39NlJxfpB5eR/xmI8aPwjfDNjMqq8z9pY89NZpclWpzYqo3d2bICo/RaEk6u6RC1wB+/OMjbSHWZsM0Cud0aBIG2CHLtk54xHXQp9AuPjv3LurzMoezFukEghDTdNhNVcZXDt5NTl7Zk8cwq61HTcmk1GNVimwscl8qcBtk0KiokPOcUvbYMvYclZ5ZsJ5arPrjnqXb9D/q8Lio/toK9WRB2UYwKUmby8GT0E4T/7Fp/zi10x+eFBqwzRvptAdjpwL5KUGrsv9id1vfWfeVbFW8KTxUewF99mLMdh8zsuO4QpDT97ISFiG29wmzXdZG8qJA1oXBn9H5PdBncVooz18WOW4CSFG+MtObVW50JUCuE/z8c7YGZb9rJwoJ9HaqeqjErrb5oOVrTGTof9G2b2MXW61IdK5qNcd1T5Mjv0Hoop5zicr3XT31WOvZpmXogy53Rpe8t+CBIPIEAvzjH/8AQUx/QD8YdjSbEpgCvIH8F++tNz9Xv5fBDiAhCF0EPtEHChKSjXyEHPeWrDIxCvAuWZ2vvGBG9uqOu/4KSbFtY3eLrktmVEnAIaxrEdfrdSE/tKXnZpVWlpOigog4puLxale84xVZVVyMVnEraM9tdSM0D2/Qc9yLQFjT6RkefjwUjbLYRgYGr1yJaPcbKVcW+yjl/n90S1WriIgT35mVguGkp3YfjgWOYs0iMvZ4Wyg1bwV90CjJ2AQtT7P7lyhSkvEYRb6BHkV//vhW6400w9SGJ7X/CwAA//+ee/h8tFEAAA== @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1604+K8S115/line33.sh b/pkg/agent/testdata/AKSUbuntu1604+K8S115/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+K8S115/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+K8S115/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1604+K8S115/line70.sh b/pkg/agent/testdata/AKSUbuntu1604+K8S115/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+K8S115/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+K8S115/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1604+K8S115/line9.sh b/pkg/agent/testdata/AKSUbuntu1604+K8S115/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+K8S115/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+K8S115/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1604+K8S117/CustomData b/pkg/agent/testdata/AKSUbuntu1604+K8S117/CustomData index 6b215154861..b7331362120 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+K8S117/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1604+K8S117/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1604+K8S117/line33.sh b/pkg/agent/testdata/AKSUbuntu1604+K8S117/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+K8S117/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+K8S117/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1604+K8S117/line70.sh b/pkg/agent/testdata/AKSUbuntu1604+K8S117/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+K8S117/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+K8S117/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1604+K8S117/line9.sh b/pkg/agent/testdata/AKSUbuntu1604+K8S117/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+K8S117/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+K8S117/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1604+K8S118/CustomData b/pkg/agent/testdata/AKSUbuntu1604+K8S118/CustomData index 6b215154861..b7331362120 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+K8S118/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1604+K8S118/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1604+K8S118/line33.sh b/pkg/agent/testdata/AKSUbuntu1604+K8S118/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+K8S118/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+K8S118/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1604+K8S118/line70.sh b/pkg/agent/testdata/AKSUbuntu1604+K8S118/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+K8S118/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+K8S118/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1604+K8S118/line9.sh b/pkg/agent/testdata/AKSUbuntu1604+K8S118/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+K8S118/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+K8S118/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1604+KubeletConfigFile/CustomData b/pkg/agent/testdata/AKSUbuntu1604+KubeletConfigFile/CustomData index 5f108cb2152..51ac9760b65 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+KubeletConfigFile/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1604+KubeletConfigFile/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1604+KubeletConfigFile/line33.sh b/pkg/agent/testdata/AKSUbuntu1604+KubeletConfigFile/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+KubeletConfigFile/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+KubeletConfigFile/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1604+KubeletConfigFile/line70.sh b/pkg/agent/testdata/AKSUbuntu1604+KubeletConfigFile/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+KubeletConfigFile/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+KubeletConfigFile/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1604+KubeletConfigFile/line9.sh b/pkg/agent/testdata/AKSUbuntu1604+KubeletConfigFile/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+KubeletConfigFile/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+KubeletConfigFile/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1604+OSKubeletDisk/CustomData b/pkg/agent/testdata/AKSUbuntu1604+OSKubeletDisk/CustomData index 81258538b3e..d07c6b7d98c 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+OSKubeletDisk/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1604+OSKubeletDisk/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/9w7a5PbNpLf9SsQRpWxs6EefiV2Vt6iJY6GZb2OpCbnc3wsiIQk7FAADYDyzNpzv/0KAElREvWYWV8+nKoSD8FGo7vR3egH+OMPzRkmzRnky5rtusGlM7CDPyy/exX4ztAeT/3OK1DjSADztobn4CMw56BJE9GE/0oZaoaUCIgJYryZMLrGHFPSCOkqiZFA4NPvQCwRqQH1Q+GSAsOKGYLRHWCQAEEBT8MQcQ7QLRaYLBqNhpGD32IBWrU5rtVgIlaQ3fxhDTBJb60FIgIsaRyBn2q1wbgf9By301xD1ozpIiMM3vDa6ibCDJgJqH/NoO5rMQEmBzvAYZxygZi5YSGmC/BnRsgpYDPkyKSpSFKxPW8jpp8b/+SUVL0JY5pGJiZYmHMcI95I4BpFVZDrpYTjAsbxRsI53IbDZq2W3IklJc9P7VPAUARDESgSgpCSOV40krsMp2lq0vS4mUCxzCSBZ5rqpqKGhDkTGQZxKwoUWip6conEXfhabfpuOvKngWsPbMuzO/UnMZ8FDMUIcgRMBkz+VKnfR1D/ug17DzodYLRfNVovDPCprHE8jSiAiTAXUn3vAEwFZWhF1wiES0bJXa3Qyvo/NjP4HRdoFYoYMMQFZCIbiUyBV4jfkTBSSqknPomgQE9/qT9ZUi4IXKGnvwA1K0y5oCseMpyIt2/VVqxqtTllAANMQP0JR59BGzx/1Wo9/R1EVBGgLYwDo/6169nBlT2Y2K6nrHJi+Vf3xo5JAbBgKAHm5Wdw8WMGbY8vL44g+OknMGMI3igMc7xZto6BiT4rgvZWUbZYr3YQWooxRwU0jxFKQDtfIaIE1TiKgImB0SyR2YyMw4TWOE1ZiI4A7ED0HM93x6cxOSPPtwaDwwAZopNw3fHo0ulvUaRV1Kh/7Tme9W5gB54nZS41VLAU7ShohDmcxcjzrsC3byUZlyZvNM1IGF5DgQBaMOkwE0Zv7wCMIvWEObiof524zrXl24Hdd23PCybu+D8/BFavJ5/uL8r0eVfj6aCXsTB17eDK9yd6wmF6z5kddK3DCORPW33KkJwzkUx0rW32p5OeZKJrBV3b9b2yohaTbRHaZI0ZJStEhJLSEea6U88fDyVG3516/mECC/xdZb1d2EVM4DkOpeCPEikp0ASYRNIwnvrvxtORpGI4tEa9+0pZalgtuGvL9e4rBIbWMAb1DUxZHgwJdheuogDPgznEccoQeNkCbfAS1HcpAG/fPvgoe/b2p/Y23yWso1FwaTmD3xXvMV3wQNAArRERHBjWe6/R9ewGR6I7mVosXBpg83duSU0kwiblZubpa4WPd3r34IcOMFaQyVNLikV6rq13iodYRgQ7UtP24kpXj8kCrCAxo5ly/2aaSH8N5jFcAHneFvHGIfr1gTGEpDezUkGnav5lDBeXOEYGOPpaG+9tQpmQYRNf0jSOAn6Dk4CscYRhEDG8RozX9seC7Kjv1J9UbHJAaMAFFBy05W63W0BGcMAMb4+s8rTGkOjU/1EYCkPCUJJsVQrwEuIYRTJIi5BAbIUJkmqrkQKNFGRkZsuCGQJy5QRFWqwbxRldOz3HCnquc227uXMtmY1R/9qfTIPRuGffa6py+5QKqAEOi+mwSR/a2DBGkEyT/mTa0+IxwN7QUc3OvbcODlzEabxGkQGqxw/jKXyOFa0wmXKp7ftjtdr1VS8YjPubk61zIjgs4vX63lSwv9tyj0OBIrCgcYQIwCu4QCBhKMdrnCPObh5nOnL6RqY74wrV5XQwKE5Z1/6PqePavc4cylCiiCcK5XC84PpKutEOkLtc4ScVG1MuTf76qif3QTAKZqlQll4lBUIFmNOUREZFpCPBVbQzGvvBpfR5Zc9bTbykrKTT9bEn1bKeRaxjLxhZQzv3ZcCoV2KRLOaafIYiZ9vTQwk3QOlhI0MtmX5pX3/XVipFFaEEkQiRECOeT4cCU2Ic1f4MsthXNyUyPC4o2H2hldGofx3Zds+Tp4dvOSPb7W1bbi6Yr749sCdj1w/skYyFdsC0WMA5cvFRjKQHjiZxusCkIHBnXDHLkUiT7sjpYcZPsj5C4gtlNztot0ZrBdeOF7yXocfA9qs4yRgJYQyk38GU8D8gX3XqT/75WaY/F40JDG+k5Xz8BL4BjmIUiicNmW8oZEV6F5lfIF+ZfIlX3HgKvoFGRL+QmMJo6jq8EaE5TGPRCFPGEBGNfLHrZx8/NWIoEBfXekimEN3xcDIe2SN/YzLG0xKpOeoBDZXGfG+Sc7wPoWXqDv4SyZXWO0XeeQYUSbI9tTo4/A4Y9SqpG6XxTAJyqKxLRq1CybwEk/fpDJ0rLp5gcpPO0F+uWg8l1Mgp/R4K9ejF/0I9ymkslCcf2NKMDdS+HpXf7eqHURxq0plplxx4dlcmV/7AC96Nx77nu9Zk4oz6RxzcgUgqo8RDYcqQP/DeUSq4YDCRa8dI2LcozP3sA4AV0a4tidsJL44UbwxP1XzyCEwekf3JNAt3uVEZrRYhSZajnApVf3hYqIoITxkqR6q7I9uhUrY/ksCefe107WAymPadUeBcBvL4tY+FUQWWodMv+CtH45pFcw4Mlb1lxbHs36Zm2YzQGofITNQ+NDhi8rEiuZW/okz7YISNUuAmfwKhxyBptlvmCi8CqUUCLe5USG6At6AZoXWTpHEM/v73C3t8eVH76OlJn2ql8kPHkLKS+u/b/Q8dUyIzc2RABqQxMmpSL5VudUp/NlMuE/IQxhmNqhxfRS6olxeR3Nbs8WXBfhaWHlMjVZZsVOE2gFFUPW0isxeLRNoOqsG3SgL7eub5luur4sB+cfAwdTQ5SVxP51aKOppUE5dH6ds2oaxVhZ6X1jvX6QZDa2T1bfd4sQrPAeZDXYMYM0umWqoFAYz62DMqdPlUzKgIvoQzhsMhJHAhk73D7x6yu5ks5mr+Ksd9al93wPf3VaXr3u6O7on3gLPYkdCOL1bZUv7uJIPa5w3xYgKZwCpDAftjOXnHK/SGTaLDLn4nV+mNu+9tV6aOzujg2caRAH+71WVdGt4gJvnABJgpqHu2q63DdUZdZ2INgu7AsUd+4PRUd+rge8/uurYvKbH+Sx61eX3XtfuO57sfAjlT6nBBgnl7TtaWnZTyn1DEFonkX6oWW2jjYZBaLWQICiQHhpDgOeKih9lGaleWl1dcPdtyu1dBbzy0jsjOqH+tgi93Ld4eaGapjM3UvRaTI8jCpRnRFcTkQP2yaiFPK7YqIh8/jG60VMrnz+m6TiZKdXKQRami7FKhM21wPuw56/3Gyxh/42fM6Y6c0pzuyCmlrpPrV0Fvag2kE+i+P5aQnxHF9K66k/Wr3HL1Ux5cnudqT/KSVd6mHPWUJpSlsfduK7A9Xps4m8dN3pbzuRkBm7LMCUEpL1IISj1tl0uHtudZfTsYXwb+lR30rA9ZaLnfajgiWV1xMee6Fh+ReROmgq6gwKES6U4vMO/j8SZaYRGsMQQdsKIiKj9zEWHaXBiHcGZRwVaRzNipkpVjzSizRl29N+VyjagymoQ3XLduhlREuho/gWLZ2Z/efP3ahDc89x1ysIRH0DRcSiEfQHhfDjzD5YpGoPXry5fnzlAnk4mAUbp/8ScJodASk8RIn3cSWxYX6ALfAY34BmaQo1cvpBjfbvBv65JvuX3bD7qD8TTXeqUo3SUmsBvTdFfcDAm4GHZdXc+9pExBbiPN8pCrsed7ebfU6tsj/xHVemXAE90C7eq21RXlorDtildbpr3VEwx81xp5E8uVh+zVtG8HE6tvP9jaC6/iM0h4AmVCf5Uu0AQuUMnnVLw9Qpr3hzVRJ9/jyfG+wES3p/aGqtxd3x1PJ9fPDq53MKvaOw1lIhUuGE2T9bPKJEpmLAdSqPfTd/ZAqqAiJ7gcWH2vY2boTB2bdTICDJX6PMpzF+e7YmhT/duyI0nLyPYD3x5OBpZvV1vRZrKSBEEiEGiVxFAg7eUeI71NOVKuZ85juHh4OlrIspBHIU+my/EmQ59TxIW600JT0Wm/XAFzs3wBh0iUUExEJyX49k2z2WQpKXO++bPBaXgDNivoneOdjN8Gj3GItuCzqkCRx+an1Q+Ao9UasS5dSbMBekPcke3bXiDTEWc8emMarUar0TLugdFuPPu10dpNxx4p+IL+7yT6wJ2OfGdoqx3oVIi4w9CKipIYsuylHE7nWHuO9z7wP0zs72SsM0yiFU2JOGytU4LFp5qLPqeYId6RM0w9JcNUs+YCsaoXuZEeD3S8Ox6KOA909FPtAe2iKidaUvzpwBk6vndAYMeuLRSaOo3xCotyGLn37gw+s9A+ZzR7LBVVPZnijcZBbzqRqd546Hjd6XjqBe9cp/eI40mvM6K9NBmTCaMrzMP0HcORPJ2OvDyrgfnt278ZrqezlIjUIzDhSyp0ZFMowdZoTk91t3TvTs1Bmqv6xc+iqB2i9q9m69fXyHzReh6as+cvn5mw/fpZG6FnrV8RklbB73hzlvLmeiX/n1UKmst1kAocN1MitX9z/y2LkdvP8Z/ffZU/SRZWs7ChCodln3FtDZye5TvjUWC7bqdVq9WsiZOVCfSVHdf2Xcf2Oi9b+R6XIJSkOh3wcyO7bRZjctP4eVt4hzC2W+q2rnLg6qLODuJ70Pkf8N8fW+brT3/7s1H9b/3gUr2Rp1b6UFxMft5qlbf9oWycQv8qQ1+6I3kyqv3hWO3L69SfHLIGmGDpNREb8ZjSmzQxgFHc+yHZGGiD9sttue6RfV8h96yDJH+e73Wyy65bVVk5XsFu3fM9yVRrnx95dIGCsv1FdxoKdddWZvmz0X71W+PV80b72etG+5XxM6huCuxosqrdvP/NC0rL6JqYlMBgPH4vY8a8PLnH3pkYD+HK06wyytxv79xG1k66/Zu+jlzB2I/+uDcGT6J/8vju6ZvsAhkQS8wBJSECairAnFwIwNMkoUygCEByt6IMnVVr3uhSt6xFpSuCW7tVtuF7fZmMhMBc/6vKgl+8eK6qxHr3j4FJqDNEXlwjPLxxJ/nspix+JKdhymJgrmXoC0PEsvxbxkqMIIF4Uw7yZggbIRNgKUTC3zSb+xy/2RLMw7AaZ6B9lCQztZ3jTc3pkO/Ofen/M50qRTLf50qpKn2fulQKIInADQ5vJCCdz3PgDC5hVH3yAkXenNDFHF1WP3SXVH0NknKm6kUrSKKZpF7TleGfY4L5EkXZQlsrgJ+KMGq7C7PL5AVDM0oFYDrij34BekDyQmiEACagDVaYpAJdaKryChYwQ2DwZSoi+oUAk4E2+Ml4RGRW9blPSrIPfnY1+mGod64wTEeW79ujnt0LppO+a/Vs72CYnf+m0/zU7zluR+daMBHyP5VFqdJighimEQ6NA53u+pMIM3VfRB4hZYz3xtOdpnZeitwB2wLKSpCvXrw4Bak32Zr4b95MMiLfvNG6Zma3WswB5tL428bvF+Dt28dhJFAIRCIUmdNkwWCEzsa3+QAnJSvIb9Q3PBHE8V2eWW5GzFQjL3LOakRINT//LxBJp8Uq0KjxA0jy74pMk1BzFtPw5lyEZXyPQV7FXFWT+aQFquL9+a3x72B25ZuUlm+dhN9opu58bxQy10fM1QXgTZA1uwM3UEB9RZb/Ar7gOFYgM5RtfHSxrfm7ocr2VmQ3wUFE5mbRADEJFXh+R0m+10cQcEGTx8/OrGd7fn5JPDeAreao98Hz7WHXH+z2+x+xgNbXfwP9zoWF77dKSc83EdLmOyvdbgH6y73iTG3I0AnoGAiElBAUCkwJCJcovAEhjdAbA9S3g5MjFxAQiao/ENR87OCp1X60x5f/GwAA///qNetTrDsAAA== + H4sIAAAAAAAC/9w7a5PbNpLf9SsQRpWxs6EefiV2Vt6iJY6GZb2OpCbnc3wsiIQk7FAADYDyzNpzv/0KAElREvWYWV8+nKoSD8FGo7vR3ehuNH/8oTnDpDmDfFmzXTe4dAZ28Ifld68C3xna46nfeQVqHAlg3tbwHHwE5hw0aSKa8F8pQ82QEgExQYw3E0bXmGNKGiFdJTESCHz6HYglIjWgfihcUmBYMUMwugMMEiAo4GkYIs4BusUCk0Wj0TBy8FssQKs2x7UaTMQKsps/rAEm6a21QESAJY0j8FOtNhj3g57jdppryJoxXWSEwRteW91EmAEzAfWvGdR9LSbA5GAHOIxTLhAzNyzEdAH+zAg5BWyGHJk0FUkqtudtxPRz45+ckqo3YUzTyMQEC3OOY8QbCVyjqApyvZRwXMA43kg4h9tw2KzVkjuxpOT5qX0KGIpgKAJFQhBSMseLRnKX4TRNTZoeNxMolpkk8ExT3VTUkDBnIsMgbkWBQktFTy6RuAtfq03fTUf+NHDtgW15dqf+JOazgKEYQY6AyYDJnyr1+wjqX7dh70GnA4z2q0brhQE+lTWOpxEFMBHmQqrvHYCpoAyt6BqBcMkouasVWln/x2YGv+MCrUIRA4a4gExkI5Ep8ArxOxJGSin1xCcRFOjpL/UnS8oFgSv09BegZoUpF3TFQ4YT8fat2opVrTanDGCACag/4egzaIPnr1qtp7+DiCoCtIVxYNS/dj07uLIHE9v1lFVOLP/q3tgxKQAWDCXAvPwMLn7MoO3x5cURBD/9BGYMwRuFYY43y9YxMNFnRdDeKsoW69UOQksx5qiA5jFCCWjnK0SUoBpHETAxMJolMpuRcZjQGqcpC9ERgB2InuP57vg0Jmfk+dZgcBggQ3QSrjseXTr9LYq0ihr1rz3Hs94N7MDzpMylhgqWoh0FjTCHsxh53hX49q0k49LkjaYZCcNrKBBACyYdZsLo7R2AUaSeMAcX9a8T17m2fDuw+67tecHEHf/nh8Dq9eTT/UWZPu9qPB30Mhamrh1c+f5ETzhM7zmzg651GIH8aatPGZJzJpKJrrXN/nTSk0x0raBru75XVtRisi1Cm6wxo2SFiFBSOsJcd+r546HE6LtTzz9MYIG/q6y3C7uICTzHoRT8USIlBZoAk0gaxlP/3Xg6klQMh9aod18pSw2rBXdtud59hcDQGsagvoEpy4Mhwe7CVRTgeTCHOE4ZAi9boA1egvouBeDt2wcfZc/e/tTe5ruEdTQKLi1n8LviPaYLHggaoDUiggPDeu81up7d4Eh0J1OLhUsDbP7OLamJRNik3Mw8fa3w8U7vHvzQAcYKMnlqSbFIz7X1TvEQy4hgR2raXlzp6jFZgBUkZjRT7t9ME+mvwTyGCyDP2yLeOES/PjCGkPRmViroVM2/jOHiEsfIAEdfa+O9TSgTMmziS5rGUcBvcBKQNY4wDCKG14jx2v5YkB31nfqTik0OCA24gIKDttztdgvICA6Y4e2RVZ7WGBKd+j8KQ2FIGEqSrUoBXkIco0gGaRESiK0wQVJtNVKgkYKMzGxZMENArpygSIt1ozija6fnWEHPda5tN3euJbMx6l/7k2kwGvfse01Vbp9SATXAYTEdNulDGxvGCJJp0p9Me1o8BtgbOqrZuffWwYGLOI3XKDJA9fhhPIXPsaIVJlMutX1/rFa7vuoFg3F/c7J1TgSHRbxe35sK9ndb7nEoUAQWNI4QAXgFFwgkDOV4jXPE2c3jTEdO38h0Z1yhupwOBsUp69r/MXVcu9eZQxlKFPFEoRyOF1xfSTfaAXKXK/ykYmPKpclfX/XkPghGwSwVytKrpECoAHOaksioiHQkuIp2RmM/uJQ+r+x5q4mXlJV0uj72pFrWs4h17AUja2jnvgwY9UosksVck89Q5Gx7eijhBig9bGSoJdMv7evv2kqlqCKUIBIhEmLE8+lQYEqMo9qfQRb76qZEhscFBbsvtDIa9a8j2+558vTwLWdku71ty80F89W3B/Zk7PqBPZKx0A6YFgs4Ry4+ipH0wNEkTheYFATujCtmORJp0h05Pcz4SdZHSHyh7GYH7dZoreDa8YL3MvQY2H4VJxkjIYyB9DuYEv4H5KtO/ck/P8v056IxgeGNtJyPn8A3wFGMQvGkIfMNhaxI7yLzC+Qrky/xihtPwTfQiOgXElMYTV2HNyI0h2ksGmHKGCKikS92/ezjp0YMBeLiWg/JFKI7Hk7GI3vkb0zGeFoiNUc9oKHSmO9Nco73IbRM3cFfIrnSeqfIO8+AIkm2p1YHh98Bo14ldaM0nklADpV1yahVKJmXYPI+naFzxcUTTG7SGfrLVeuhhBo5pd9DoR69+F+oRzmNhfLkA1uasYHa16Pyu139MIpDTToz7ZIDz+7K5MofeMG78dj3fNeaTJxR/4iDOxBJZZR4KEwZ8gfeO0oFFwwmcu0YCfsWhbmffQCwItq1JXE74cWR4o3hqZpPHoHJI7I/mWbhLjcqo9UiJMlylFOh6g8PC1UR4SlD5Uh1d2Q7VMr2RxLYs6+drh1MBtO+Mwqcy0Aev/axMKrAMnT6BX/laFyzaM6BobK3rDiW/dvULJsRWuMQmYnahwZHTD5WJLfyV5RpH4ywUQrc5E8g9BgkzXbLXOFFILVIoMWdCskN8BY0I7RukjSOwd//fmGPLy9qHz096VOtVH7oGFJWUv99u/+hY0pkZo4MyIA0RkZN6qXSrU7pz2bKZUIewjijUZXjq8gF9fIiktuaPb4s2M/C0mNqpMqSjSrcBjCKqqdNZPZikUjbQTX4VklgX88833J9VRzYLw4epo4mJ4nr6dxKUUeTauLyKH3bJpS1qtDz0nrnOt1gaI2svu0eL1bhOcB8qGsQY2bJVEtdQQCjPvaMCl0+FTMqgi/hjOFwCAlcyGTv8LuH7G4mi7mav8pxn9rXHfD9fVXpure7o3viPeAsdiS044tVtpS/O8mg9nlDvJhAJrDKUMD+WE7e8Qq9YZPosIvfyVV64+5725WpozM6eLZxJMDfbnVZl4Y3iEk+MAFmCuqe7WrrcJ1R15lYg6A7cOyRHzg9dTt18L1nd13bl5RY/yWP2ry+69p9x/PdD4GcKXW4IMG8PSdry05K+U8oYotE8i9Viy208TBIrRYyBAWSA0NI8Bxx0cNsI7Ury8srrp5tud2roDceWkdkZ9S/VsGXby3eHrjMUhmbqe9aTI4gC5dmRFcQkwP1y6qFPK3Yqoh8/DC60VIpnz+n6zqZKNXJQRal4s72i3Mw/cbL03/jZ8zpjpzSnO7IKSWlk+tXQW9qDaR5d98fS7XPiE96V93J+lVuk/opDxvPc6IneclqalOOemqPy9LYe7cVsh6vOpzN4yYjy/ncjIBNweWEoJR/KASlnrYLoUPb86y+HYwvA//KDnrWhyxo3L9EOCJZXUsx57rKHpF5E6aCrqDAoRLpzi1ffkPHm2iFRbDGEHTAioqo/MxFhGlzYRzCmZ33W+UvY6f+VY4io8zOdF3elMs1oso4Ed5wfSkzpCLSdfYJFMvO/vTm69cmvOG5V5CDJTyCpuFSCvkAwvtySBkuVzQCrV9fvjx3hjpzTASMUmfFnySEQktMEiO92Uls2YmvS3cHNOIbmEGOXr2QYny7wb+tS77l9m0/6A7G01zrlaJ0l5jAbkzTXXEzJOBi2HV1pfaSMgW5jTTLMK7Gnu/l96BW3x75j6jDKwOe6MvNrr6QuqJcFLZd8WrLtLdu+wLftUbexHLl8Xk17dvBxOrbD7b2wqv4DBKeQJmqX6ULNIELVPI5FW+PkOb9YU3UmfZ4crwvMNEXT3tDVe6u746nk+tnB9c7mC/tnXMyRQoXjKbJ+llleiRzkQPJ0fvpO3sgVVCRE1wOrL7XMTN0po66OhkBhkpqHuW5i5NbMbSp623ZkaRlZPuBbw8nA8u3q61oM1lJgiARCLRKYiiQ9nKPkd6m0CjXM+cxXDw80SxkWcijkCfThXaToc8p4kJ1q9BUdNovV8DcLF/AIRIlFBPRSQm+fdNsNllKypxv/mxwGt6AzQp653gn47fBYxyiLfgs3y8y1Py0+gFwtFoj1qUraTZAb4g7sn3bC2Si4YxHb0yj1Wg1WsY9MNqNZ782WruJ1iMFX9D/nUQfuNOR7wxttQOdChF3GFpRURJDlpeUA+Uca8/x3gf+h4n9nYx1hkm0oikRh611SrD4VHPR5xQzxDtyhqmnZJhq1lwgVvUiN9LjgY53x0MR54GOfqo94CKoyomWFH86cIaO7x0Q2LGGhEJTpzFeYVEOI/fencFnFsfnjGaPpXKpJ5O30TjoTScyiRsPHa87HU+94J3r9B5xPOl1RrSXJmMyYXSFeZi+YziSp9ORl2ddTX779m+G6+ksJSL1CEz4kgod2RRKsDWa01N9D7rXLXOQ5qqb4GdR1A5R+1ez9etrZL5oPQ/N2fOXz0zYfv2sjdCz1q8ISavgd7w5S3lzvZL/z2oAzeU6SAWOmymR2r/pbMti5PZz/Od3X+VPkoXVLGyokmDZZ1xbA6dn+c54FNiu22nVajVr4mQFAN2M49q+69he52Ur3+MShJJUpwN+bmR9ZDEmN42ft4V3CGO7pfpwlQNXLTg7iO9B53/Af39sma8//e3PRvW/9YNL9UaeWulD0XL8vNUqb/tD2TiF/lWGvtT9eDKq/eFYVcvr1J8csgaYYOk1ERvxmNKbNDGAUXT0kGwMtEH75bZc98i+r5B7djckf57vdbI21q16qxyvYLfu+Z5kqrXPjzy6QEHZ/qI7VwV111Zm+bPRfvVb49XzRvvZ60b7lfEzqC7372iyqsq8/80LSsvoapeUwGA8fi9jxrzwuMfemRgP4crTrDLK3G/v9BlrJ93+TTcaVzD2oz/ujcGT6J88vnv6JmsNA2KJOaAkREBNBZiTCwF4miSUCRQBSO5WlKGzqsgbXeqWtajU/Le1W2UbvtdtYiQE5vpfVRb84sVzVf/Vu38MTEKdIfKiQfDwxp3ks5uy+JGchimLgbmWoS8MEcvybxkrMYIE4k05yJshbIRMgKUQCX/TbO5z/GZLMA/DapyB9lGSzNR2jjc1p0O+O/el/890qhTJfJ9mUVXUPtUuCiCJwA0ObyQgnc9z4AwuYVR9zAJFfu2gizm6YH6oS1R955FypupFK0iimaRe05Xhn2OC+RJF2UJbK4CfijBq+35ll8kLhmaUCsB0xB/9AvSA5IXQCAFMQBusMEkFutBU5RUsYIbA4MtURPQLASYDbfCT8YjIrOpDnpRkn/LsavTDUO80J0xHlu/bo57dC6aTvmv1bO9gmJ3/ptP81O85bkfnWjAR8j+VRanSYoIYphEOjQN32PUnEWaqE0QeIWWM98bTnevqvBS5A7YFlJUgX714cQpSb7I18d+8mWREvnmjdc3M+lXMAebS+NvG7xfg7dvHYSRQCEQiFJnTZMFghM7Gt/m0JiUryG/U1zkRxPFdnlluRsxUIy9yzmpESF1r/l8gkk6LVaBR4weQ5F8MmSah5iym4c25CMv4HoO8irmq6+OTFqiK9+dfen8Hsyv3SFq+dRJ+o5n6TnujkLk+Yq5aezdB1uwO3EABdfMr/wV8wXGsQGYo2/joYlvzd0OV7a3IerxBROZmcQFiEirw/I6SfK+PIOCCJo+fnVnP9vy8/Ts3gK1rT++D59vDrj/Yvcl/xAJaX/8N9DutCN9vlZKebyKkzRdU+roF6G/yijO1IUMnoGMgEFJCUCgwJSBcovAGhDRCbwxQ3w5OjrQWIBJVf/qn+djBU6v9aI8v/zcAAP//cv6oLIY7AAA= - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1604+OSKubeletDisk/line33.sh b/pkg/agent/testdata/AKSUbuntu1604+OSKubeletDisk/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+OSKubeletDisk/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+OSKubeletDisk/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1604+OSKubeletDisk/line70.sh b/pkg/agent/testdata/AKSUbuntu1604+OSKubeletDisk/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+OSKubeletDisk/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+OSKubeletDisk/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1604+OSKubeletDisk/line9.sh b/pkg/agent/testdata/AKSUbuntu1604+OSKubeletDisk/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+OSKubeletDisk/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+OSKubeletDisk/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1604+TempDisk+Containerd/CustomData b/pkg/agent/testdata/AKSUbuntu1604+TempDisk+Containerd/CustomData index 86bd56be6d7..02d2f899c04 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+TempDisk+Containerd/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1604+TempDisk+Containerd/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1604+TempDisk+Containerd/line33.sh b/pkg/agent/testdata/AKSUbuntu1604+TempDisk+Containerd/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+TempDisk+Containerd/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+TempDisk+Containerd/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1604+TempDisk+Containerd/line70.sh b/pkg/agent/testdata/AKSUbuntu1604+TempDisk+Containerd/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+TempDisk+Containerd/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+TempDisk+Containerd/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1604+TempDisk+Containerd/line9.sh b/pkg/agent/testdata/AKSUbuntu1604+TempDisk+Containerd/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+TempDisk+Containerd/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+TempDisk+Containerd/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1604+TempDiskExplicit/CustomData b/pkg/agent/testdata/AKSUbuntu1604+TempDiskExplicit/CustomData index c829a5bfe83..02773e87348 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+TempDiskExplicit/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1604+TempDiskExplicit/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1604+TempDiskExplicit/line33.sh b/pkg/agent/testdata/AKSUbuntu1604+TempDiskExplicit/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+TempDiskExplicit/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+TempDiskExplicit/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1604+TempDiskExplicit/line70.sh b/pkg/agent/testdata/AKSUbuntu1604+TempDiskExplicit/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+TempDiskExplicit/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+TempDiskExplicit/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1604+TempDiskExplicit/line9.sh b/pkg/agent/testdata/AKSUbuntu1604+TempDiskExplicit/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+TempDiskExplicit/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+TempDiskExplicit/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1604+TempDiskToggle/CustomData b/pkg/agent/testdata/AKSUbuntu1604+TempDiskToggle/CustomData index 86bd56be6d7..02d2f899c04 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+TempDiskToggle/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1604+TempDiskToggle/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/+x9+3fbNtLo7/4rsKxuYndDSXYcb+JW6aEl2uFaryWptPniXh6ahCTUFKkAoB/r6H+/Bw++qVfS3u8731n3NLbIwWAwGAwwL+iHv7VuUdi6dcn8YDjq6Y4x7Om/dRqH84jQ0F1A8BVQFwVA9cDJkQAZagM9B3F0cOBF4RTNYgw1f4HCCYH48Oj5AAAAvLk7g0DVgXoMVIP/uwBtoA7AO/YDlMaz1hsYw4mlmysl3yQov1sl/Ywxuncp7AYxoRB/iAglh0dA9Le48xEG6hK0IPVa5IlQuPDl7xaGXhR6KIDqUqBQ2RhIk0B8jzzY9FscB41ib/6NCI7b6vSLHzYZpQIZhH8CKvAetHx43wrjIAA//6yPLg8+WwLy9wM9vEc4ChcwpB3lenKhO9rYcCzd/KibcrKeS09WygHDAYCgxqOBHrq3AdRC36IupmANeeDrVwAfEQUN3TQd65Nl64Ou3XcsWzNt51Iz+gerTBps7IZk6WIY0g/xDI7dGUwnSre7rP2l5XRHw8uOkvBoSviAhSigKfj8mcmB/WHs6EPtoq/3Vgr4WwcoCvj9958AncOQQ7If6M2jKvB7wNC27iAOYdBaLFo0o8qZxzO4dGewBfnw/RKu3Rp1Kl2+B43n4gBXHPMUVYfV0y9N7Wq3UaWwuw3Kh1PszvYbk2jTKfe3YUSr3Pq3hJBPCOxFCxeF2cIc6vavI/OaNzWunEujr2eTzhdGCOlDhO98Of8Jp9yHO/Cy9X9vPvc+dMf3pze/t56ngTvrHP8EQvhIV4C9k8/aK8B+gxcvQOuHjIhOGLVeAqVRQ4NS4jaBPlBRqcNXvAtAyjhzn54gab0EdT0kbEpnnk2mMf545vQmGl853euc7HQ6QKE4hgooC0KFF2d/MS9q+XH2p/AjtxgS1qSaCGBIuA6SgqEmgrEODpMnEkSzoiA+uMtLFGT6hjy4S4egf0Pn7rbTOISPSwwaz9av2phT5VjGf+nO4GIFbn4Ex+12+yhrFUSeS1EUdhShlXJrWO0Lvewjctdy/x1j2MKQRDH2oLp0MT2urufkvcPaOEuXzjuNwykK/UVIgRpioEaAungGKVAt0DjE0PUDFN4Bdbqlr6OjtBOOe4qhHK0/BY3nascr8JVP8LEPvgrZel5iFFLQOF29PMoL3ufPoPGcR7oC6oyCxnOeravqYDO18ysKAhATmI6f0wimEeZMBlMUQKUoegXe19LfYjCsZabjAgJrejdCEk+nyEMwpKJjsnQ9CKKwRA+NgIehS2FG1TnA8EsMSXW4jBdlvrwCLqVwsaQonDFsUzcIwK3rcdQji/fSbDaVdctAytW/mZYocGBVszdExPEhOwR0tshJFNFNwqGOQeu/QxYkP3aXgj9jwlmnnGmg8ZwycPX9M1+kO3dKYjqma+qazU7X1uTy0uga+tB2eoZ17VhjrbtWJ4qxWAk94IEx7hYC4t5DH9DoHFSE5EDoGIqfvIXvoKkzdVEQYwhOTsEbcPKGCySD5kfs0riuK/hKB77cUPhhT5zXF5EPztrtSuOttCzuOK+/odNNWBmyKPyLsKoqmUcP4CuYYfhNlCfnuVLDMAql5JEH0AZtfubi56Mpoe5tYXPTqZc78+9k+/BD1VYDJ4Fa4ujxKbNhxAy3z05Pd2xUJEc0cpeU/S+hy3QU37beveHYantfA5pj7ueBG7oziH/PmLjTOJPT2QfbHjtjc/TbJ2di9q3sbF57NM+gO3VNEwpgNmMlBHNKlw4n5RsRaN6XGGF4fs4wnZ9zVOCmZiA3yk8Zvg0sz1D34NSNA5o3MW82j/hG2ZPrWzrbyJ29O8tZYMlMW/tNtVUYufUtk00K47G+a7pJeb6tv2jCN4z7r5jyDTz63kkfjnaf8QS2U222faLCKB3E/o1rObOWnD97CtaS/i3ML24HSp077C6+hQGkmftLSb1nu8G3jtsqk5usd6XkNHupjy5f1rvNmKXYqcyHProsbLtMEMcMfVdL91w0BYgMXIxCiEdYY6ftPgrjR6A0RlbZoPYgpo4PCe0orZjgFpm7GLaWd6jluSrFMaGqsEVabujNI0yyI2W89F0KHW/hdxTxt5q0EUCFc3C5I3bMCGR3nquy12iK2CFwaxdVWLmacqrYNieWrfecrsYsa3m+qX2/UsBX8OjiGTkqHIbWA9+6BJ6dAtUH7xlgOrKVkLOu1vQwVYrnrsm4x45cXc3p6qZt8Z4a2fA2A+dnvBsTGi26bjdjQs1pK1rSFqOLCPZEGCCAQtA4JPALaIPG4WHjuTux7NGA9cLH53RHk6G9Aio4Pjo6+gn4UWadQS9wMQT3Lg7dBexkLRl9TuMZrUDFOfg3CV1hWUZcq134Yc8YLsY+js6PQrjGwZKwjqFJVtx2jlfxeFFIXbZS/CKX08eTAC1Q6s3vjoa2Zgx1s+dM+sbAsJ2eORo7xlB4bMaa/aFTqxyyfnL6gUDqxAJ/6mEWB1Cl8bxDV9y0Ss6i7fY+rbgW2xG8xtOfrqkKAotNN8XgJfvvJnx5xHVW3q0PfBcuolDFMIhc/2CPWbkWGpapS4jZAkgl/3pyofd1O4knjE3jI5v8a/1Tfk6YhsYhpJBI+ZMqm3CEzTv4pNRh40K+Oxq2+MX+Ei1hSEgAZjDExAVqFFPQ2EIqOGmfvi20xvALUEP4ANTHN+13QPXdJwL+8brdBuodfNqOsLbbdExAJfHtH0BpdYd8Y5XBtJUCVNf34SMFCgOAHtUCOmSrvze0zguQxTl6WxP5qudbznWpjY2E/MlF3+hunTl3ifLszkw3hQeW6pGl0bzUetsJOnoIAY4ies7+2dZEDOe/Jqbu/NMaDdcMgvvAmn+QKCzTXmxZolis8XUwVTorgEILQgr+/pidP9WQAScC0u1zTxBb2PrQXq07hW5oUFL3tfPnBQiGlC25ynG4nhwmr/vTVGy1B2HJFlQljM280dXZOht2jbHWF6pyO21bG24mjyyb9JHW+OLq5bGAT/WhF/lQnFe2Cbw1zofCKhRIoMpgJMstvWvqdkdpHHouE0KJTTnarV0dmwoQrdbNTevm5uZm9afhUxg+RboGFzmaxbpyKfj5Z6CPLiX7KotKKDvFC6LYV855YFQzr7gUjia9lfJKvKcwdENqJCD6UBvajpG9J/Et8TBaUhSFCZQ1ubC6pjG2jdEwD+u6fpcLagq4bpR1jSzoYUi3NBTsSRsnMYkrHMVL0dTUrdHE7OrOlTmajFPIxIEogPqjrsaoT1/fL+ynJRQvPw4c+9NYz7MghHyXSYc/zNFAoBdjRJ84DRlUEtGz9O7ENOxPJXruCyg/GqY90fqObFSAMqtjLIE7a8aMo5hC270NYNaTOZrYumNrF/1sgEuMFi5+0u5dFLi3KED0ycpTNzaNgWZ+crSPmtHXLow+G46VY4FEYHluAGtbWl2trxeacLkc4+ge+RBfuN5dNJ0OIl+24zI6NkcfjZ5uOhda93p0eekMRj19IwLlHKxpu9rQyoQUI0jWN3ZM3TYN3dqERH9cRiEM6QYs+m/j0ZAp1Q1oejFOxHQdmt7EFLK7Ac0/EaUQb0DyT8O2dbMWhelS2GfH/5rmpmbr/EC9ueW/xtamxs6/xtZmBBexdwc3EuBcTLrX+nY6fsWIwm3EOL+ahq3vQtJ2dIKuIsaYQOFp9w0fhhTRJ/2RwpAkEz2xdGegDbUrvecYPX1oswWm/2brQys30TGBWCMEzcIMj9ETC2Zi6aajWZZxNczjyOnZmEAjJNQNPTiA1PVd6qZ9G0PL1oZd3RnottbTbG2Vak3Xv3AD1ghbd3GiPLWec6H1WQvTsa4naR8+IkzbjGJ6G8Whbw01m/dRbNEzLKZ+nNHEvhhNhj2HwSU9wkcviH04cAmF+BJHC4u6oe9iv3/BUem/dfuTHmOXZeumc2mOBg4jvqeZPad/sUo1kpi+j24c5PTR9YA7SMWcfdQmfVtaC7LZwn1Ei3jRzw3bjAPYjWK5sgfab8ZgMnDYiNIBmRN+YppkSzvp/ho+JZ3fvSVK9e1HiKUUKMxiEblm4jCsPhZzoDbpRNAByv1JTeBbpqUorU06q+UrYL0tsBsuoXF2wFTO8BEZPU7eEjSGV/yQbFwaXWY0miNb7tbcBV2f9bPeHq9PLLKcxGEkzkMbEopypgm3o66LbTeZVOmpSx9+NMzRcMD0f87EKppZaxHnYuYlq2u3JlUjbFO7ipEgIfXhRw5X52/ciZCcWJfnI7WRsgSonZK9SnNTQlOeGV+48BPfiJCZddOxDtfaydipQWUqdmhVMSRzTFpnqe2GOTcjNeyTbrfO7pEFL1oInSJZm6WobmKt7GdXxlbBpeNwHdx+WcFlDl/2tSuro6piSGCrICVKvJTy2R0aqQ+qLn/i+KQtkz0if4mjWwhusRNCOkUBhbjoRh6M2E5wUc6WUEOg5BspicW+iPw4gERl+3nTb+VhctkLOUqNMbcbSHkEyfN8XEdsT4ktMu5PrjjPO0Dhqr9mV1rcg0Z3aDgXxtDpGSYTHLFLsK4CRKh4nUyjYbZKgsGTaEogFSSlXKw8jaO+0f0k9YrnBsiLlLo8rCSpk/ygLLhtotxi5M+gkn7OpQYrP8xe7kEUDDaTxUM1616GUcj5Cl68KOFIzgNcYWa0/f8enfRQsZ8WuUVhC95SLjhApSB0KVDVFF6sE3l2lInRzOgN7qGfyllAgBpQLMQZ87c5yXVp/YvJxWRoTxxT7+uapXcahwG5dTAMoEsgUDFQZXgtnYpiA8nI47fN9mkyH7UQJ+2tECdbIU45xJq8diOcRRiFszTZF0sOgS8xxE8giTbdxhTEhAEiSkCOH6WUQYHVniMCEGEdAoIWywASCtzlEkeuNwc0Ag8RvnMxO8yDtENESAwJeEB0HsUUMJUfQAqDJxCHiJkYQQAQzbr6zDMtcRymO4hElZ8uwGWZxH4EghCoZIcWtTO+VVY2yosQRRiSQrRNCmFyVLH1vj4emfbW84nAY8MALiNM/QO5LDYH+Oticgo42BDir43iwUfoOTxuVRvjL22Bj9Dj5SzjiNCOWLBomSzYMbgcmb9qZg9o3a4+tpPYWcIPjZ3Uta7tWLapawN2et/GmSCaEYdGDryHISVA0a6tZtfSm2XOywcapmjqetSiGLoLFM4UsOZFcZusoYybuv3+QXICLeYC5kJ8OaVwNZ44w8TOYoMpaF5yh5ZOeI985Do+RvcQO3IVFIdfkAy++q5gCLHLE6DDKFSvxpNcjFFuxzxMzt6EkQ+BH0O2Kj8OAHVnMlSVHtKzoKdU0cORw0jf6MvPOmzJQwyNFkGRjfwU9Ktmdz84tjHQRxP7IJdHURlLZQxpGvd6Uv8aGsUUFxaOR4Om33r3Tp1G2IOq2PHYhwcX++uWCjgIIW2i5f1pEy0dCQw64Dh7znN63CBoyreMETmAs40Aggr5Sw2nqucGgZquQAYmDpUbz41idEBVhV6olKB17T7bckZarxDeRkR1PYruIVDVLzGCFPiRdwcxk/DDFMyR+zM4aYPXbd6pBKupdOs5vVH3Wjcdyx6N+Rn1aEMJXU5edqmak+p5GPXi5Sgc42iBiBdfcN5lVSxr+hJt1TBS/Xi5T3epFt/aBU0g90FfUWSym2yaRA0dcD2sLhDGEU6UfQFKZCrUA7G9lae5uB5u0SgKSCu6hzhwn279llRZTTLfCirWoBoTiFV3BkPaJHPAz4Fbm4pB8Pwz1Y3pfPfuWB9+9BByC0byYuoKHbRre8/15mxz4YYp+9tC/4ZXF+D1yR5I4CObXIglHkkK0/HfjoR9AO/enr1mG1Ji/YnaJseLMHQYrw8A8GIcAPU3MJ7Y4CXPVZtHhJ6/ffOPtxL5LyHpONI4fSFoc3iBx2OHz5CHmyh6QbiUMUW2cGknJfAlUEd1MscHlA0j/Uul3iKuFcP6hiR0l2QecUdhhiT3dINIFzvdCJBDuGZtsL10EYXZ8utxVZYu7UR7ySik/pveTVat0dc7dYcwoQzXH8A4XjaNzHxV3atEe+ZLt/N9D0aToS1cD6lS3b1zL4AudhZRHFJniaOlO+NRJWcauDOS0SP74o6hDLnA1hIJUTnHbTFf75jtAe1iSp5ISCCgUUYM6mqc/vgCXjZfgp9rwF+8ALcYund19iTvpIGAyog4abdrcW85GKwpiSIBhEtwXO61JuOvumnmdrFtG+fmDY+fiZLjUWEDXb/n1G3F6Rac7jY5eecVqlu3Mn/uLe/PdtjHdvdpoeWZI481Gzxaq4ODGaRjEVYeIs8YZ44ApvbETNloATvHuacL91EGczvH7dxz1Cl8WnYU6eR+mKMA8kI9xExG0Mgw8AN7XraXncahUMDE6gP1A1CSONo5EEd8no9/3modn71rnrw5bcrfrYWEE5ts6MGkhLuFQgrx1PXgL+4SqfciGNQ5aZ8cq+0TtX3MjsN/fAEqBi+bn9u/J0dQzfcxJIQ9kbcOGMmzSgkizw9CS4VJZeMXvmra9TWHa1ecWBaNlOdZD53G4SH6e1JQm64Tec5HS2VdpiQKZ7lcYTOiXD8VvIp/ZnBIVvSL/oWvhBkqGQUASxIAIkCuWP8VCCM6l/Wp6SiUXIUyjXEI2sX0J761A3UKyDyKAz9Z/47s3ZG9O7nenaR3oZVlfHSXUfN61sq6c8KIbT2UgOM2U9RtZlPNgeo9fgtRmYuMC1AIQXsNg1n3vN4S+JBCvEAhZO124rsgDNzClP3g9olbvcsoCnL2blG990ej68nY2Ydnjq1dFaZsp0Z97ULvd5QsttdMXJ9pKESVA1Q9t+OJS1eUYpRrHzJfvdoY+Po2ka7w9JW4wYSLNkOQIOQnBeCGvnA8BO4tDEguNJiMQARHcrEX/qClqrx3qIp82EJ1RIcNaDMEP9nnI5E7hAm38KsmWFgT8cqH1LIajQ1ARYcF19Yv0RQ0xajsvnURRZRQ7C4Zbdx5xMiqBxAWDT+XgCaAof8yxX5UGUgubJcIslBKi+g+UbXDyId9NnXFVOvNQr5Wv6WJ0fvJnrz95ZWoynb9vEixiQ0h9KGsY3J9/7tIT084EkslF7+nX/K0j9xxtxjKq6kQlhDpUiZwcc9st8XSxRAIoTSHuq1bzkfdtIzR8FxV2s12s62sgHLcPHnXbJdLnDZ7QK/T2CrNscMYXwbuTAF1T2tScItLtLRCeVA0t6DyfFkpNVhM/crgKTdW94Pem/TZmuuIpfZ+N0zFSFanJrT1fj+SjIF2pecGxj/vj4YXDXDxyXMp93QXlLlcbJGLm0v44HCyaqVeja9v0tmCbythct3WB9Rr4NPV4nS1NSnXMifdzaocspBG49BHvMIq6SZBs0qSrfPJDLwQylybvJC1XTOGHEDduZHn3uqO3beci9HItmxTG4+N4VVxo2CGSL7VFvDSBCasZK32z5egAblN9H8pWWIDT0v9paytzbEoAG5JsKiHLWVXFID2T60osDdNrmDcSRIs7l3cCtBtwrFW7p2qpuza2KQOqpCZ8e3iUpp/Teul+dcd5cx34enJ9K16+vrsrXp69o+36rvT6VR9/e6sDU/ewtdnr9tKyV/ClIZMnaqjwGE9yNoIbTx2jF794aZAyH4I64w+2TJrxeYvfynZTjzfJs3beqkX7e2tKnIuyqr2aCiFfnuLmhXgLpFM7DwH98cHdyj0z4Hw9R5Iw4CcH6iAceFceCXk4wMA5F/nB0mBsjxTcYd5hBF9OgebNLJMIGWny3Mgbj5otaoXG56fnr4+iEmBksSOSWfyQPgsz6VlC73zlD/5McryJEYgDCkSlRbNu7ekiaLW/XEuR3OxcBkvhIucX7mU14DsQ26BC7RZj3hGsv5VkKcyeaaqIXyk6hJHNOq4d0QtYCwAuq5IooixB9kum1s+q2yFhhRi4ekbRD48B0N4z2dJ/MhMXnnDphFOI+ELOvCikMJHynkr/5YTKme3POuS0bVTICYnxxeB8MCLMYYhTT7XgSQaT2QbffMm9xdrgT2X//7rfo8F/5+Vzjh9B0NREFbYOOzRtc4OBv/zpDvnyN8qobvL5U7SuKsMbpW8/83ylqryTMjEo7zf53y36lfZ8A4+nW+v4/1mUU0prrJyrYTWAeXOnAXzitvUk6FtDPTErySKKqXUZjtkGi4imQ0xP6g5mK9HVytL+Sutf+D/ZTlfRprzpfrg+Oxt8+x18/jkXfP4jK0S6i2Bqvrc0f22DdQ/ALMHvqn565M3J2cpBplZxjbWLPTTaRzu5i0phYwUUHogfGj60GInOmPQs9iGb5tGlzuQ9jfeZDIJWviEnSQoRh4/+GR23Bq9soWEVM+kOmZrgxr7eLc2UoS2Au9u5yU1n0Oj67DJe87P5UopAsvTSLnfTnpOKb8pIzCGlm7aVcJ5TZY9cgba8KovC147jed9wOXd37kE4UbBhcbOSz8qaOHOoOphyCvy3EBNqrtkvYDyI4+87dXyFoWqj7Dy47ps4G4SjAJZ8+Qwinmk/jaic7CNNu7f30pGEgvAEJAl9NAUQR+gsBgCUPb0bAoCummvSTmZAta92bMDmdBU18PaV/X3LJeC4onbuxC+Tl3UNbldlsxHmfDbgbYG3ZP0FVXcJtSkaFHJshtqY+vDyE6uE6rrdYBmYxdTJOKqO1z6v0Azfj0yb7H7Vf/rmh23Vf4KR1MUwO33/O+BZ3dddDWeZMWtY3PEt1aR0Ft+vMrcQ+tmpkBibn553mU6rzLTsnAELSWfvlPFB9W9y2XjrHORVPBV94c6mJpbZdaCpbeBpADrasrWoth4JWwxMzUXpXlLulFIcRSMAzeE+fh/w9SZ4WHq/5oYpt5LnLTDUVo3zEuM6u1VEbnKn7s2Zqdw7dy1++DkfSZY8hynonAalRb7W4udtYbG8CrNKVodHIhbkZn+GbghmkJCewgXAlADbWhc6pbdM8xO+eS6kG1IURYapXasoweMRD9iGyh0ISaGdzCPFrDVSNPLWk3WWwlQLIhCw1bONiqSkYLkhK9RxJW79Cfr+Tz7sw7RjuA59Eym/9Fu1yNL68NqmuYCwELkD1RVLRtVeTtqu8mkigygG6UhL3WTkckbpWAu5aiRxlJqWtwojaSa/V+94c0u5nWlSWa3FF+prr9AIQdY11nZiKlAFIzMkl23trdNdl7GshxTqqzL7LzaBtf6pxvlgB1M1820+pilH0kXnRbTiHhuALHm+7mEo25/wkehTewRv6zEdLRer5AWmS9pZ22ZmSk0hJsiVX24DKIntvk0n9xFcJCvmydffxZDMnrvv8rcgsaGK3Ky2P/XmQIaG0ms78iC3g49iTt1vqc3Et8WxlS8H+h7MMvriXLI0yuKvgctnmUIi5fn7IU1lS6ta3SjMIQejUqCpXV5xeRQ79oj0+maOr+aQ+tbncYh/96AKVCebxQpGP6NwsT8/5Ab5RVInoqLkYpvkmubik+LlzUV3wkndg9hTuSTHvrLCIV0ggMBl/hzgmiGwuYCeTgi0ZRGYYBCnuV0o7y6SS9ckheHr8Wy4O/5OsjSpGoJucLucp7ccZQQnaCZsZfNBxT60QNphpBKHORLMEh72IUIL8Iwj+f87enpa4ls5gYB3MAR+b4ykMV3UdC6UVYKUDYpgI2vxaplIOmK4PDFtZc/wT2A9tFB7SWOd/AJYOKen7bfnclbHcPIh6RwuePrszficscopmv8bq6H2D4i1gEDbS7hQlz1uEsD9ky0SG5/7EyslmV3ulqr37lHmMZukHhxR5UHk/KT7rD0RKlZktf6p07jUPJor2E9yO++KS1x3bT3Q5gN+yGZoCLK7TtREeG2TQhDn7z/2lirmrjmW0dCVZUO3QV8/7WkR/fCwThQJUg37b2w3MGnCpJr/dNmHJkKZ6t7HAXIeyppcJ5+I3KUdpkKhkddckTbZgKnau/911ZeeZNWeSG3ClfdkVYtu+spzcZ4NZ70eIVq+f6Gxoj7pBqyMH1kcU9+zcUNhbucn13u7ySvZst4Vb1tIS1jSBzTyYULafmDUp+I7lEM1BCI+LHwT4ElM8kaw49Gz9Ccnml81E2R73Ve9zBN8c0ZhBXz7w04bnNLQSZHA6XRtU0ndQ70+0530NuvUzBbxkkNfAuGFD/xjaFJ5onXSSnT1Wn8UniU8A9DKlLa22vYlFkxl2neddL31XgCRDHyK264onBW+DKlaiI1G7YYjVWu7KjJDlkzTQTgBTfzQ+8bJ6tSk5NNjixo+b75SWYB/K+ZBln7gxfoG1ku8fEUgd3v6E+KMTOdkkua4KMf8pr4tJjfjqLgDuUuQOHONQE0ZuY3oTD0eJpFGtQtX+AeEa6qwogCEi95DaUPXAroHBFA0QI2AblDy6UsQy+ovFL1wHHB2bvRPSSK+9W0hkmNgeq1iz6hDfO2HvfrdjtBThboT0B48gYEvvTt74LtG76agTu5xKxZT4sAhXd2pAVBj3872JCdGivhzu/bETaOdnmHggColnH1YTJeW1iXH32iOvLFgAWls0d/Yunt2Zm4Y+TeDZDvUrh+Sz5ERDMHZ6dHjEW134+Y93Fu9cGuEeIXL+TSmi1jqaoAW9bQ55fVlBfRzjL6MEfePCfc+ZH9wkZUU4RmDQzH1K1J364vaxJjKS6ao+oE7o6mwQegWzYPhJeRShFm6CxbsydWskXIYWQv2P5QM54cnKBHxv3CaWSOBgAR4EUYx0sK/bpQX3VjMIaXI8ccDZzuyDQnY1vvbfh6v123lFT95xBUROIhwndMqU5RCJXKVTl/qhDntcWlcZUj3zEunaGu98TFMslNLHsVVmSUNiv7Q0XYq3zZGXl1eSug+qz6Xce7HsR3JqS07BWgrItuVSB3XerF+7usD9UIZ0+8411FS0DIvFSqLMviLOtDzmNbCc9m3trUVs1uc92Y8rU+BJ7ZZWvCb1v6qsbitjY4KBXnVq7OzG2TvOjG/OT0hpbDvxHzt5odMvnalG0db8knuyuE5nPpuzIAUJkPGRJIOMqTc5PAgOvhupwCwWmXenOD2wtJPq8KlB+b2Q0VSt1jL6x97MPaxzHJP96XyaKeWdR9dV1vDpOLuc+BctxeyGK1fAp0OtZkqM2En8U86HwWs7rpstxKcuN/pnnDNP/PmCuhCuvq87KNceGTUUyXMc3uEwDqB5BeJsC3NVUNI/F1hcqPClDVhfuoMvsGvPlLbhk4yYnMUfGotubCgJCPTPN9TDqHuTsHlven7GFSO9vIhrv3VQag1QKKkrvQIL3MQPShiDsDc5T8vXOYe12g6mxnqs6+maqzzVSdlaiSIHjWaRwal1bnFfgpTcTINf/84+8r5QjUFA2lCOoLgmRpoc+vGlO5R19Fy07WDNCoWO+t1JZGJyXexRS2OoR1X9a9Ojj4QR9d/r8AAAD//2OpGGpAhQAA + H4sIAAAAAAAC/+y9eXfbOLIo/r8+BYatX2L3NCXZcTyJu5U+tEQ7HGsbkkonN+4fD01CMtoUqQCgl0n03d/Bwp3anO775t1zPWc6NlkoFAqFQqEW8Ie/tW9Q2L5xyW1jNO7rjjHq6x+7zYPbiNDQXUDwDVAXBUD1wPGhABlpQz0HcdhoeFE4Q/MYQ81foHBKID44/NoAAADv1p1DoOpAPQKqwf+7AB2gDsFb9gOU5letPzRGU0s3V0q+SVB+t0r6mWB071LYC2JCIX4fEUoODoHob3HnIwzUJWhD6rXJE6Fw4ct/2xh6UeihAKpLgUJlYyAtAvE98mDLb3McNIq922ciOOqosy9+2GKUCmQQ/gmowDvQ9uF9O4yDAPzyiz6+aHy2BOTvDT28RzgKFzCkXeVqeq472sRwLN38oJtysr6WnqyUBsMBgKDGo4EeujcB1ELfoi6mYA154Ns3AB8RBU3dNB3rk2Xrw549cCxbM23nQjMGjVUmDTZ2Q7J0MQzp+3gOJ+4cphOl2z3W/sJyeuPRRVdJeDQjfMBCFNAMfP7M5MB+P3H0kXY+0PsrBfytCxQF/P77z4DewpBDsh/o3UZV4HeAoW3fQRzCoL1YtGlGlXMbz+HSncM25MP3S7h2a9StdPkONL8WB7jimGeoOqy+fmFql7uNKoXdbVA+nGF3vt+YRJtuub8NI1rl1r8lhHxKYD9auCjMFuZIt38bm1e8qXHpXBgDPZt0vjBCSB8ifOfL+U845T7cgZft///6c/99b3J/cv17++sscOfdo59BCB/pCrB38llnBdi/4MUL0P4hI6IbRu2XQGnW0KCUuE2gD1RU6vAn3gUgZZy5v54gab8EdT0kbEpnnk2mMflw6vSnGl85vauc7HS7QKE4hgooC0KFF6d/MS9q+XH6p/AjtxgS1qSaCGBIuA6SgqEmgrEODpMnEkTzoiA+uMsLFGT6hjy4S4egf0Pn7qbbPICPSwyaX63ftAmnyrGM/9Kd4fkKXP8IjjqdzmHWKog8l6Io7CpCK+XWsDoQetlH5K7t/jvGsI0hiWLsQXXpYnpUXc/Je4e1cZYuve02D2Yo9BchBWqIgRoB6uI5pEC1QPMAQ9cPUHgH1NmWvg4P00447hmGcrT+DDS/VjtegW98go988E3I1tclRiEFzZPVy8O84H3+DJpf80hXQJ1T0PyaZ+uqOthM7fyGggDEBKbj5zSCWYQ5k8EMBVApil6B97X0txkMa5npuIDAmt6NkMSzGfIQDKnomCxdD4IoLNFDI+Bh6FKYUXUGMPwSQ1IdLuNFmS8/AZdSuFhSFM4ZtpkbBODG9TjqscV7abVayrplIOXq30xLFDiwqtkbIuL4kBkB3S1yEkV0k3CoE9D+vyELkh+7S8GfMeGsU8400PyaMnD1/TNfpDtnJTEd0zN1zWbWtTW9uDB6hj6ynb5hXTnWROut1YliLFZCD3hgjLuBgLj30Ac0OgMVIWkIHUPxk7fwHTRzZi4KYgzB8Ql4DY5fc4Fk0NzELo3rqoKvZPDlhsKNPWGvLyIfnHY6lcZbaVnccV4/o9NNWBmyKPyLsKoquY0ewDcwx/BZlCf2XKlhGIVS8sgD6IAOt7m4fTQj1L0pbG469XI2/05nH25UbT3gJFBLHD0+ZWcYMcOd05OTHRsVyRGN3CVl/5fQZTqKb9tvX3Nstb2vAc0x9/PQDd05xL9nTNxpnIl19t62J87EHH/85EzNgZXZ5rWmeQbdrWuaUACzGSshuKV06XBSnolA877ECMOzM4bp7IyjAtc1A7lWfs7wbWB5hroPZ24c0PwR83rziK+VPbm+pbON3Nm7s9wJLJlpa7+ptgojt54z2aQwHuu7ppuU59v6iyZ8w7j/iinfwKPvnfTRePcZT2C71WbbJyqM0kHs37iWM2vJ+bOnYC3pz2F+cTtQ6txhd/ENDCDN3F9K6j3bDb591FGZ3GS9KyWn2Ut9fPGy3m3GTordynzo44vCtssEccLQ97R0z0UzgMjQxSiEeIw1Zm0PUBg/AqU5tsoHag9i6viQ0K7Sjgluk1sXw/byDrU9V6U4JlQVZ5G2G3q3ESaZSRkvfZdCx1v4XUX8riZtBFDBDi53xMyMQHbnuSp7jWaIGYFbu6jCytWUU8W2ObVsve/0NHaylvZN7fuVAr6BRxfPyWHBGFoPfOMSeHoCVB+8Y4DpyFZCznpay8NUKdpd00mfmVw9zenppm3xnprZ8DYD52e8FxMaLXpuL2NCjbUVLWmb0UUEeyIMEEAhaB4Q+AV0QPPgoPm1N7Xs8ZD1wsfn9MbTkb0CKjg6PDz8GfhRdjqDXuBiCO5dHLoL2M1aMvqc5le0AhXn4N8kdIVlGXHtTuGHPWO4GPs4Oj8K4RoHS8I6hiZZcds5XsXjRSF12Urxi1xOH08DtECpN783HtmaMdLNvjMdGEPDdvrmeOIYI+GxmWj2+26tcsj6yekHAqkTC/yph1kYoErz6w5d8aNVYot2Ovu04lpsR/AaT3+6pioILDbdFIOX7H/X4ctDrrPybn3gu3ARhSqGQeT6jT1m5epNTVRFsJspXxxCCokQrZxbTJsYMswwmZ4PjJ5zpX/Kz1S5adtdIjZHEPN1nDsWKDxoUY8sjRSlJ4OdoKOHEOAoomfsP9uaiOH819TUnX9a49GaQXD/SusPEoVl2ostSxQL+VkHU6WzAihWGKTg74+ZbaOGDPhqeq4PdNvpDbiXgQmNPrJX6yycDQ1KqqR2/rwAwZC27uBTxdSqJ4cpsf1pKrbag7BEvVUJYzNv9HRnYhqjnjHRBmIZbqdta8PN5JFliz7SGj9PvTwW8Kk+9CIfir1wm8Bbk3yYpUKBBKoMRrLc0numbneV5oHnMiGU2JTD3drVsakA0W5fX7evr6+vV38aPoXhU6TbaZGjWawrl4JffgH6+EKyr7KohLJTvCCKfeWMB90085JL4XjaXyk/ifcUhm5IjQREH2kj2zGy9yS+IR5GS4qiMIGypudWzzQmtjEe5WFd1+9xQU0B142yrpEFPQzploaCPWnjxN99iaN4KZqaujWemj3duTTH00kKmTinBNBg3NMY9enr+4X9tITi5YehY3+a6HkWhJCO3AVMhz/K0UCgF2NEnzgNGVQSLbL03tQ07E8leu4LKD8Ypj3VBo5sVIAyq2MsgTtrxoyjmELbvQlg1pM5ntq6Y2vng2yAS4wWLn7S7l0UuDcoQPTJylM3MY2hZn5ytA+aMdDOjQEbjpVjgURgeW4Aa1taPW2gF5pwuZzg6B75EJ+73l00mw0jX7bjMjoxxx+Mvm4651rvanxx4QzHfX0jAuUMrGm72tDKhBQjSNY3dkzdNg3d2oREf1xGIQzpBiz6x8l4xJTqBjT9GCdiug5Nf2oK2d2A5p+IUog3IPmnYdu6WYvCdCkcMNOyprmp2To31ja3/NfE2tTY+dfE2ozgPPbu4EYCnPNp70rfTsdvGFG4jRjnN9Ow9V1I2o5O0FXEGBMovLi+4cOQIvqkP1IYkmSip5buDLWRdqn3HaOvj2y2wPSPtj6ychMdE4g1QtA8zPAYfbFgppZuOpplGZejPI6cno0JNEJC3dCDQ0hd36Vu2rcxsmxt1NOdoW5rfc3WVqnWdP1zN2CNsHUXJ8pT6zvn2oC1MB3rapr24SPCtM04pjdRHPrWSLN5H8UWfcNi6scZT+3z8XTUdxhc0iN89ILYh0OXUIgvcLSwqBv6LvYH5xyV/rE3mPYZuyxbN50Lczx0GPF9zew7g/NVqpHE9H1w4yCnj66G3Pkm5uyDNh3YMoNINlu4j2gRLwa5YZtxAHtRLFf2UPtoDKdDh40oHZA55RbTNFvaSfdX8Cnp/O4NUapvP0AspUBRGiuZxySMYfWxmF+zSSeCLlDuj2uCqjLlQWlv0lltXwHrzwK74RIaZwdMlewRy0m8AsIw2ZA1kjsj8APNVbHtprNNav7oow+GOR4NmSLOnXWK5521iHOB0dLxZ7cm1dPQpnYVa11C6qMPHK7OqbQTITn5Ks9HeljJslx2yugpzU0JTXlmfOGnTVyf4qC+bjrW4Vo7GTs1qEzFDq0qJ7ock9YdmXbDnJuRGvZJ30p3d/exFy3E4paszfIQN7FW9rMrY6vg0ju0Dm6/1M8yhy8G2qXVVVUxJLBVkBJtWsrr642M1BlUFyQ/Ou7IiH7kL3F0A8ENdkJIZyigEBd9hcMxU8nn5ZA4O5TnGynJ0XkR+XEAico21pbfzsPkQtQ5So0JN+BJeQTJ87zzXuwTyaFgMphecp53gcJ1cM32sLgHzd7IcM6NkdM3TCY4Ql2zrgJEqHidTKNhtkuCwTMlSiAVJKWEmzyN44HR+yT1iucGyIuUumSbJHOP/KAs+CFBucHIn0Ml/TuX/6n8MH+5B1Ew2EwW98evexlGIecrePGihCPZmLnCzGj77x6ddBWxnza5QWEb3lAuOEClIHQpUNUUXqwTacTJ7Fd2+gzuoZ/KWUCAGlAsxBnztznJdWn9i+n5dGRPHVMf6Jqld5sHAblxMAygSyBQMVBlDCWdimIDycijN63OSTIftRDHna0Qx1shTjjEmuRlI5xHGIXzNKMTSw6BLzHETyAJKdzEFMSEASJKQI4fpbwwgdW+RQQgwjoEBC2WASQUuMsljlzvFtAIPET4zsXMqgZph4iQGBLwgOhtFFPAVH4AKQyeQBwiZusHAUA06+ozT6fDcZjuIBJVfroAl2US+xEIQqCSHVrUzvhWWdkoL0IUYUgKIRUphImpYusDfTI27a32icBjwwAuI0z9hlwWm6O4dYEXBTQ2xHFrQzXwEXoOD07UBnJLW+Aj9HjNwiQitCsWLFomC3YCLsbmb5rZB1qvp0/sJECS8EMzbeNC69mOZZu6NjRGl1s5E0Rz4tDIgfcwpAQo2pXV6ll6q8x5+UDDFM1cj1oUQ3eBwrkC1rwobpM1lPEz52DQSCzQYsJXLo6TUwqXk6kzSg48bDAFzUvu0NIJ75GPXMfH6B5iR66C4vALksFX3yUMIXZ5lmsYherlZJoLJMntmMdC2Zsw8iHwY8hW5YchoO5cxoxSIz2LbEkVPRo7jPSNTvWsw7Y0Ymi0CIps5FbQb5rde+/YxlAfT+1GLlheGUtlDGmu7npS/xoaxRQXFo5Hg5bffvtWnUXYg6rY8dgfDy721y0V0AghbaHl/UkLLR0JDLrgKHvOEzfcIGjJt4wROYDTjQCCCvmPGs5Uzw0CNV2BDEwYlRvtRjE6oKpCL1TqjHr2gG05Y61fiGEioroeRfcQqOqXGEEK/Mi7g5hJ+EEK5sj9GRx3wKsO71SC1ZQz9Z3+uHelm45ljyfcRj3cUCeVk5ddSqOkeh5F/Xg5Dic4WiDixeecd1mpwpq+RFs1jFQ/Xu7TXarFt3ZBE8h90FcUmewmmyZRKAVcD6sLhHGEE2VfgBLh6HogtrfyXAbXw20aRQFpR/cQB+7Tjd+WKqtFbreCijWoxgRi1Z3DkLbILeB24NamYhA8yUh1Y3q7e3esDz96CPkJRvJi5godtGt7z/Vu2ebCD6bsdwv9G16eg1fHeyCBj2xyIZZ4JClMxz8fCfsDvH1z+optSMnpTxSwOF6EocN43QDAi3EA1I9gMrXBS56QdBsRevbm9T/eSOS/hqTryMPpC0Gbw7P4H7t8hjzcQtELwqWMKbKFS7spgS+BOq6TOT6gbBjpbyr1FnGtGNY3JKG7JLcR99hlSHJPN4h0sdONADmEa9YG20sXUZgtvz5XZenSTrSXDAfqH/VesmqNgd6tM8KEMlxvgHG8bBrZ8VV1LxPtma/Pzfc9HE9HtnA9pEp19869ALrYWURxSJ0ljpbunId3nFngzklGj+yLO4Yy5AJbW2S95DyoxaSsI7YHdIp5VyIzgIBmGTGoK2T54wt42XoJfqkBf/EC3GDo3tWdJ3knTQRURsRxp1OLe4thsKbuhQQQLsFRudeatK7qppnbxbZtnJs3PG4TJeZRYQNdv+fUbcXpFpzuNjl552WIW7cy/9Zb3p/usI/t7tNCy1NHmjUbPFqrRmMO6UTEd0fIMyaZI4CpPTFTNlrA7lHu6cJ9lFHV7lEn9xx1C38tu4p0cj/cogDyaizEjoygmWHgBntetpfd5oFQwMQaAPU9UJKA1hkQJj5Puj5rt49O37aOX5+05L/thYQTm2zowaROt41CCvHM9eCv7hKp9yIq0z3uHB+pnWO1c8TM4T++ABWDl63Pnd8TE1TzfQwJYU9kabmRPKvUmfFEHbRUmFQ2f+WrplNfWLZ2xYll0Ux5nvXQbR4coL8nVZPpOpF2PloqYib50QBaMJhZPIx4Jbym/PwZzusyQxM/bJKcYxofNFvfmgkn3bEyG+4OPil12Hgm1O5oeFIdxxMtYUhIAOYwxMQFahRT0NxCKjjunLwptMbwC1BD+ADUx9edt0D13ScC/vGq0wHqHXzajrC223RMQCXxzR9AafdGPPFcXjaxUoDq+j58pDyz5A/oUU2EKLv9kXVWgCzmMBbmquD3ZUc5cdJ38tSwYzYjx7gweoxwc2zLrBdeJlAfx5GF9aIz4c1iR8lMNACOKN/EACJA6lT/JzDPzp0EBjNVxKlrETwgeptMQuad2kM6c/XHNMYh6BQiWbuwwBlo5/qgq2QS10ocqGlARZW0q57b9cT9HMp/8JoQpixQZ4DcRnHgJ/udIxs4cjhObiqcZC6FFSID87swkBfpVvYZJ4yYqUUJOOoww6QDblxyC1Tv8TlEZS5hrjBDCDprxJV1z4tIgQ8pxAsUQtZuJykWhIEbmAozuHniXp5lFAU5/07RnBmMx1fTibMPzxxbu6yNue6DZGMQ9nmLt2a8JYz8BhWuhhi+BD83YoEbpi4yl4AQQh/6SiWQKWJ3udAgf9BWVU4QVIU4Fyo0umyMmyH4wTMXfvzeIHZNILsmGpsP92ZFIhuAis40bkm8RDPQEkOyB9Z5FFFCsbtktHHHJiOrHkCctrnNDFoAhv7LFPthZSC5kHIidNms/req7IpELaJ74XD1IQjcGxgUt9LNmlvJbQGL6D7ZHEeRDwf74qqWHO23jOTNOcraIaoqDQgXXJVXvrMVI54l9xHdwSfxaoajRXF9rRnpReDOgVLC3F1rjOyApUxLd5v98//ksvNhcNCiAWGieYECePiy9EJeyHUFn9LXz1pcru8/X7wZR8ua1PX975byfFhNIqtY+n39gifG5fwQxRyLmvp8CZHuagQu7iHuRYuliyEQgmGOdFu3nA+6aRnj0ZmqdFqdVkdZAeWodfy21SkXGG4OTV2lSS80xxVjwiRaAXVPa4oUiptTaW/i2So5oc7zZaXUYDH1S4MnJVq993p/OmBy3xUC/243TMUUg25NzsG7/UgyhtqlnhsY/3t/NPxIwqUoz6Xc011Q5qpVRLVCLhOPw8masXqbZn2T7hZ8WwmTB+z6TKca+HS1OD1tTVGKrNpxszqwLNbcPPARr29MuknQrJJylHyWGS9DNNdmlWVt14whB1B3XOTVCbpjDyznfDy2LdvUJhNjdFlU1+Dbt0KrLeClCUxYyVrtn8hGA3KTGD+lLLYNPC31l7K2NvmtALgl860etpT2VgDaP+etwN40641xJ8l8u3dxO0A3CcfauXeqmrJrY5M6qELK3PPFpTT/mtZPK1S6yqnvwpPj2Rv15NXpG/Xk9B9v1Lcns5n66u1pBx6/ga9OX3VKlgVXGjKntY4Ch/UgjRRtMnGMfr2JUSBkP4R13jjZMmvF5i9/JeBOPN8mzdt6qRft7a0qci4KT/doKIV+e4uaFeAukUx9PwP3R407FPpnQAThGtLXQs4aKmBcOBPuYvm4AYD87ayRXA8grXIeyYwwok9nYJNGlin27Gh1BsS9I+129VrRs5OTV42YFChJXEPpTDZEMOlMumCgd5YZbLkxygJORiAMKRK1aK27N6SFovZ9FujwosXCZbwQsUt+4VleA7I/cgtcoM16xHOS9a+CPJXJM1UN4SNVlziiUde9I2oBYwHQdUV2W4w9yHbZ3PJZZSs0pBCLEMww8uEZGMF7PkviR9Y6yPttjXAWCSd9w4tCCh8p5638XU6onN3yrEtG106BmJwcXwTChhdjDEOa/F0Hkmg8kQb67E3uL9YCey7//df9Hgv+f1c64/QdDEXJbGHjsMdXOjMM/vOkO+fe2Cqhu8vlTtK4qwxulbz/yfKWqvJMyMSjvMfzbLf7AWTDO/h0tv2mg2eLakpxlZVrJbQOKGdzFo5X/Ew9HdnGUE+8O6LsXEpttkOmcXySnSFuGzWG+Xp0tbKUv1D+B/6/LBnXSJNxVR8cnb5pnb5qHR2/bR2dslVCvSVQVZ9HZN50gPoHYOeBZzV/dfz6+DTFIFN+2caaxeS7zYPdvCWlWL4CSg+Ej0sfWcyiM4Z9i234tmn0uB9p/8ObzPJDC58wS4Ji5HHDJzvHrdErW0hI9UyqY7Y2qDkf79ZGitBW4N3PeUlV/MjoOWzyvubncqUUgaU1Uu63m9op5TdlBMbI0k27SjivWrXHzlAbXQ7klQDd5td9wOXN+7nKjWbBhcbspR8VtHDnUPUw5DXLbqAm9a+ykEv5kadE7NXyBoWqj7Dy47oyjV4SNgdZ88QYxTyF6iait2AbbdxXv5WMJBKGISBL6KEZgj5AYTH4pezp2RQE9NJek4JbBax7s2cHMtO0roe1r+pvOS9lKyXxi0JeUeqprkm6tWSi4JTfzbU1GyrJK1TFXV4tihaV9OeRNrHej+3kMq+6XodoPnExRUwjJZ/42PjJjQWa88vJeYvdP7SxrtlRR+WvcDRDAdz+lY098Oyuiy4n06z8f2KO+dYqKi3Kj1eZe2jdzBRIzM0vT4hP51WmwBdM0FJVwFtV/KG6d7k0yXUukgq+6v5QB1Nz79ZasPS+pBRgXbHvWhQbL2QulgzkojRvSC8KKY6CSeCGMJ/20zR1dvAw9X9NDVPvJ07a0Ti9WYHXftafV0XmTN7u2pg2yLVzzx6A43eZYEk7TkXhLCot9jcWs7VGxugyTfZcNRriTnKmf4ZuiGaQ0D7ChQDUUBsZF7pl9w2zW7ZcF7INKcpCs9SOdfSAkehHbAOFLsTE8A5uowVsN9O833aL9VYCFAui0LCdOxsVyUhBcsLXLOLKXYuW9XyW/VqHaEfwHHom0//odOqRpYW7NU1zYVgh8g1VVcuHqvw5avuRSRWpmddKU16pKAOU10rhuJSjRh6W0qPFtdJM7vv4V390vcvxutIkO7cUX6muv0AhB1jXWfkQU4EoHDJL57q1vW0652UsyzGlyrrsnFfb4Er/dK00mGG6bqbVxyzFULrotJhGxHMDiDXfZxujXDq9wZSPQpvaY36dk+lo/X4hXz1/6Qdry46ZQkO4KVLVh8sgemKbT+vJXQSN/M0i5NsvYkhG/903GeFvbrhELIvNf5sroLmRxPqOLOjt0JO4dex7eiPxTWFMxRvUvgezvMAthzy9xO170OJ5hrB4vdheWFPp0npGLwpD6NGoJFhaj5eyj/SePTadnqnzy4u0gdVtHvCvdsyA8vVakYLhXytMzP8/cq38BJKn4uq44pvkYrvi0+J1dsV3wondR5gT+aSH/jJCIZ3iQMAl/pwgmqOwtUAejkg0o1EYoJAnjl4rP12nV9LJa/vXYlnw93wdZJmntYRcYnd5m9wClxCdoJmzl60HFPrRA2mFkEoc5EswTHvYhQgvwjCP5+zNyckriWzuBgHcwBH5vjKQxXdR0L5WVgpQNimAja/FqmUg6Yrg8MW1l7fgHkDnsFGbIn4HnwAm7tlJ5+2pzBkPIx+SQur4q9PXInU8iukav5vrIbaPiHXAQFtLuBCJ5Ls0YM9EiyS3vDu12pbd7WntQfceYRq7QeLFHVceTMtPeqPSE6VmSV7pn7rNA8mjvYb1IL88VVriumnvhzAb9kMyQUWU23eiIsJtmxCGPnn3rblWNXHNt46EqioduQv47ltJj+6Fg3GgSpBu2nthuYNPFSRX+qfNODIVzlb3JAqQ91TS4Dz9RuQo7TIVDI+65Ii2zQRO1d67b+288ibt8kJuFy4DJe1adtdTmo3xcjLt86sDyhfrNMfcJ9WUN4aMLe7Jr7lRp3CT+leX+zvJT/NlvKpeg5PWlyWO6eQmnLQuTamvEPIoBmoIRPxY+KfAkh3JmqMPRt/QnL5pfNBNke91VvcwzUXPHQgrx7/X4KjDTwoyix8ozZ5tOqlzYDBwesP+fp2C+TJOLidpw5DiJ74xtMht4nVSynR1m78WHiX8w5CKSpbOGjZlp5iLtEAg6ftyMgXiloif+MEVhfPCp8yqGf9s2GI0VrnkriY7ZM00EYAX/Jgfes+crEqxZDY5stLw++YnmQXwP2YaZFEmXqBnslzi4ykCu38hI6mSz3RKLmmCj37ELytJb1mxoyi4Q7mbqbhzTQBN2PGbUBh6PM0iDeqWP58QEa6qwogCEi95cbsPXAroLSKAogVsAXKHlkt5P0hB5ZXKXI4Kzt6N7iFx64qaFpeqMVC9TtEntGHe1uN+1ekkyMkC/QkIj1+DwJe+/V2wPePDKNzJJWbNeloEKLyzIy0I+vzbfCNmNVbCnd+3I2wc7fIOBQFQLePy/XSytuI5P/pEdeSrtAtKZ4/+xNLbszORpX7vBsh3KVy/JR8gopnD05NDxqLar5PmfZxbfbBrhPjFi6RcZhlLVQXYsoY+v0WsvIh2ltGHW+Td5oQ7P7Jf2YhqqoOtoeGYujUd2PX1d2IsxUVzWJ3A3dE0+QB0y+aB8DJSKcIMnWVr9tRKtgg5jOwF2x9qxpODE/TIuF84i8zxECACvAjjeEmhXxfqq24Mxuhi7JjjodMbm+Z0Yuv9DR/X3HVLSdV/pUQoJxIPEb5jSnWGQqhUii3+VCHOa4sL4zJHvmNcOCNd74t6m+SKrL0KKzJKW5X9oSLsVb7sjLy6vBVQfVb90viuhvjOhJSWvQKUddGtCuSuS714saL1vhrh7It3vKtoCQi5Ld0hIStELet9zmNbCc9m3tr0rJrdd70x5Wt9CDw7l60Jv23pqxqL29qgUbo1oXKncW6b5EU35ienP7Ic/j3ajzU7ZPLRom0db8knuyuE5nPpuzIAUJkPGRJIOMqTc5PAgOvhupwCwWmXercGPy8k+bwqUH5sZVcHKXWPvbD2sQ9rH8ck/3hfJouLJkTdV8/1bmHy6YIzoBx1FuJ9IQU6HWsy1FbCz2IedD6LWd10nXglufF/p3nDNP9nzJVQhXX1ednGuPDJOKbLmGYXvQD1PUhveeHbmqqGkfhYqPKjAlR14T6q7HwDXv8l178c50TmsGiqrbnJJeQj03wfk+5B7jKY5f0Je5hUsDaz4e59xwxot4Gi5G6aSW+ZEX0o4jLXHCV/7x7kXheoOt2ZqtNnU3W6marTElUSBM+7zQPjwur+BH5OEzFyzT//+PtKOQQ1RUMpgvqCIFlaKCp1Ve7RV9GymzUDNFpXjV13uUExha0OYd2n8leNxg/6+OL/BAAA//8IyfRvvogAAA== - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1604+TempDiskToggle/line33.sh b/pkg/agent/testdata/AKSUbuntu1604+TempDiskToggle/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+TempDiskToggle/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+TempDiskToggle/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1604+TempDiskToggle/line70.sh b/pkg/agent/testdata/AKSUbuntu1604+TempDiskToggle/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+TempDiskToggle/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+TempDiskToggle/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1604+TempDiskToggle/line9.sh b/pkg/agent/testdata/AKSUbuntu1604+TempDiskToggle/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1604+TempDiskToggle/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1604+TempDiskToggle/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+ArtifactStreaming/CustomData b/pkg/agent/testdata/AKSUbuntu1804+ArtifactStreaming/CustomData index f2cdfad7f2a..e30472488d6 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+ArtifactStreaming/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+ArtifactStreaming/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+ArtifactStreaming/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+ArtifactStreaming/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+ArtifactStreaming/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+ArtifactStreaming/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+ArtifactStreaming/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+ArtifactStreaming/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+ArtifactStreaming/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+ArtifactStreaming/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+ArtifactStreaming/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+ArtifactStreaming/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+ArtifactStreaming/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+ArtifactStreaming/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd++GPU+runcshimv2/CustomData b/pkg/agent/testdata/AKSUbuntu1804+Containerd++GPU+runcshimv2/CustomData index 4cc23d06d5f..9a0a581e746 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd++GPU+runcshimv2/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd++GPU+runcshimv2/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd++GPU+runcshimv2/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd++GPU+runcshimv2/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd++GPU+runcshimv2/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd++GPU+runcshimv2/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd++GPU+runcshimv2/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd++GPU+runcshimv2/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd++GPU+runcshimv2/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd++GPU+runcshimv2/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd++GPU+runcshimv2/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd++GPU+runcshimv2/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd++GPU+runcshimv2/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd++GPU+runcshimv2/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Certsd/CustomData b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Certsd/CustomData index a2368c0a040..e4d69a445f3 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Certsd/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Certsd/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Certsd/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Certsd/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Certsd/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Certsd/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Certsd/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Certsd/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Certsd/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Certsd/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Certsd/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Certsd/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Certsd/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Certsd/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+ContainerdVersion/CustomData b/pkg/agent/testdata/AKSUbuntu1804+Containerd+ContainerdVersion/CustomData index 3d103dfe261..2da82f253d9 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+ContainerdVersion/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+ContainerdVersion/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+ContainerdVersion/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+ContainerdVersion/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+ContainerdVersion/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+ContainerdVersion/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+ContainerdVersion/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+ContainerdVersion/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+ContainerdVersion/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+ContainerdVersion/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+ContainerdVersion/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+ContainerdVersion/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+ContainerdVersion/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+ContainerdVersion/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPAddress+FQDN/CustomData b/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPAddress+FQDN/CustomData index ed9d5a36ff6..c466d50509a 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPAddress+FQDN/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPAddress+FQDN/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPAddress+FQDN/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPAddress+FQDN/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPAddress+FQDN/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPAddress+FQDN/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPAddress+FQDN/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPAddress+FQDN/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPAddress+FQDN/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPAddress+FQDN/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPAddress+FQDN/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPAddress+FQDN/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPAddress+FQDN/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPAddress+FQDN/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPMasqAgent/CustomData b/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPMasqAgent/CustomData index 3d103dfe261..2da82f253d9 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPMasqAgent/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPMasqAgent/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPMasqAgent/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPMasqAgent/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPMasqAgent/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPMasqAgent/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPMasqAgent/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPMasqAgent/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPMasqAgent/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPMasqAgent/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPMasqAgent/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPMasqAgent/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPMasqAgent/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+IPMasqAgent/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+Calico/CustomData b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+Calico/CustomData index 6976e51ff4c..535a76fbe20 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+Calico/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+Calico/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+Calico/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+Calico/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+Calico/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+Calico/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+Calico/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+Calico/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+Calico/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+Calico/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+Calico/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+Calico/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+Calico/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+Calico/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+FIPSEnabled/CustomData b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+FIPSEnabled/CustomData index 3d103dfe261..2da82f253d9 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+FIPSEnabled/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+FIPSEnabled/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+FIPSEnabled/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+FIPSEnabled/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+FIPSEnabled/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+FIPSEnabled/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+FIPSEnabled/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+FIPSEnabled/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+FIPSEnabled/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+FIPSEnabled/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+FIPSEnabled/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+FIPSEnabled/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+FIPSEnabled/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet+FIPSEnabled/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet/CustomData b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet/CustomData index 3d103dfe261..2da82f253d9 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Kubenet/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG+NoFabricManager/CustomData b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG+NoFabricManager/CustomData index 4cc23d06d5f..9a0a581e746 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG+NoFabricManager/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG+NoFabricManager/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/+x9+3fbNtLo7/4rsKxuYndDSXYcb+JW6aEl2uFaryWptPniXh6ahCTUFKkAoB/r6H+/Bw++qVfS3u8731n3NLbIwWAwGAwwL+iHv7VuUdi6dcn8YDjq6Y4x7Om/dRqH84jQ0F1A8BVQFwVA9cDJkQAZagM9B3F0cOBF4RTNYgw1f4HCCYH48Oj5AAAAvLk7g0DVgXoMVIP/uwBtoA7AO/YDlMaz1hsYw4mlmysl3yQov1sl/Ywxuncp7AYxoRB/iAglh0dA9Le48xEG6hK0IPVa5IlQuPDl7xaGXhR6KIDqUqBQ2RhIk0B8jzzY9FscB41ib/6NCI7b6vSLHzYZpQIZhH8CKvAetHx43wrjIAA//6yPLg8+WwLy9wM9vEc4ChcwpB3lenKhO9rYcCzd/KibcrKeS09WygHDAYCgxqOBHrq3AdRC36IupmANeeDrVwAfEQUN3TQd65Nl64Ou3XcsWzNt51Iz+gerTBps7IZk6WIY0g/xDI7dGUwnSre7rP2l5XRHw8uOkvBoSviAhSigKfj8mcmB/WHs6EPtoq/3Vgr4WwcoCvj9958AncOQQ7If6M2jKvB7wNC27iAOYdBaLFo0o8qZxzO4dGewBfnw/RKu3Rp1Kl2+B43n4gBXHPMUVYfV0y9N7Wq3UaWwuw3Kh1PszvYbk2jTKfe3YUSr3Pq3hJBPCOxFCxeF2cIc6vavI/OaNzWunEujr2eTzhdGCOlDhO98Of8Jp9yHO/Cy9X9vPvc+dMf3pze/t56ngTvrHP8EQvhIV4C9k8/aK8B+gxcvQOuHjIhOGLVeAqVRQ4NS4jaBPlBRqcNXvAtAyjhzn54gab0EdT0kbEpnnk2mMf545vQmGl853euc7HQ6QKE4hgooC0KFF2d/MS9q+XH2p/AjtxgS1qSaCGBIuA6SgqEmgrEODpMnEkSzoiA+uMtLFGT6hjy4S4egf0Pn7rbTOISPSwwaz9av2phT5VjGf+nO4GIFbn4Ex+12+yhrFUSeS1EUdhShlXJrWO0Lvewjctdy/x1j2MKQRDH2oLp0MT2urufkvcPaOEuXzjuNwykK/UVIgRpioEaAungGKVAt0DjE0PUDFN4Bdbqlr6OjtBOOe4qhHK0/BY3nascr8JVP8LEPvgrZel5iFFLQOF29PMoL3ufPoPGcR7oC6oyCxnOeravqYDO18ysKAhATmI6f0wimEeZMBlMUQKUoegXe19LfYjCsZabjAgJrejdCEk+nyEMwpKJjsnQ9CKKwRA+NgIehS2FG1TnA8EsMSXW4jBdlvrwCLqVwsaQonDFsUzcIwK3rcdQji/fSbDaVdctAytW/mZYocGBVszdExPEhOwR0tshJFNFNwqGOQeu/QxYkP3aXgj9jwlmnnGmg8ZwycPX9M1+kO3dKYjqma+qazU7X1uTy0uga+tB2eoZ17VhjrbtWJ4qxWAk94IEx7hYC4t5DH9DoHFSE5EDoGIqfvIXvoKkzdVEQYwhOTsEbcPKGCySD5kfs0riuK/hKB77cUPhhT5zXF5EPztrtSuOttCzuOK+/odNNWBmyKPyLsKoqmUcP4CuYYfhNlCfnuVLDMAql5JEH0AZtfubi56Mpoe5tYXPTqZc78+9k+/BD1VYDJ4Fa4ujxKbNhxAy3z05Pd2xUJEc0cpeU/S+hy3QU37beveHYantfA5pj7ueBG7oziH/PmLjTOJPT2QfbHjtjc/TbJ2di9q3sbF57NM+gO3VNEwpgNmMlBHNKlw4n5RsRaN6XGGF4fs4wnZ9zVOCmZiA3yk8Zvg0sz1D34NSNA5o3MW82j/hG2ZPrWzrbyJ29O8tZYMlMW/tNtVUYufUtk00K47G+a7pJeb6tv2jCN4z7r5jyDTz63kkfjnaf8QS2U222faLCKB3E/o1rObOWnD97CtaS/i3ML24HSp077C6+hQGkmftLSb1nu8G3jtsqk5usd6XkNHupjy5f1rvNmKXYqcyHProsbLtMEMcMfVdL91w0BYgMXIxCiEdYY6ftPgrjR6A0RlbZoPYgpo4PCe0orZjgFpm7GLaWd6jluSrFMaGqsEVabujNI0yyI2W89F0KHW/hdxTxt5q0EUCFc3C5I3bMCGR3nquy12iK2CFwaxdVWLmacqrYNieWrfecrsYsa3m+qX2/UsBX8OjiGTkqHIbWA9+6BJ6dAtUH7xlgOrKVkLOu1vQwVYrnrsm4x45cXc3p6qZt8Z4a2fA2A+dnvBsTGi26bjdjQs1pK1rSFqOLCPZEGCCAQtA4JPALaIPG4WHjuTux7NGA9cLH53RHk6G9Aio4Pjo6+gn4UWadQS9wMQT3Lg7dBexkLRl9TuMZrUDFOfg3CV1hWUZcq134Yc8YLsY+js6PQrjGwZKwjqFJVtx2jlfxeFFIXbZS/CKX08eTAC1Q6s3vjoa2Zgx1s+dM+sbAsJ2eORo7xlB4bMaa/aFTqxyyfnL6gUDqxAJ/6mEWB1Cl8bxDV9y0Ss6i7fY+rbgW2xG8xtOfrqkKAotNN8XgJfvvJnx5xHVW3q0PfBcuolDFMIhc/2CPWbkWGpapS4jZAkgl/3pyofd1O4knjE3jI5v8a/1Tfk6YhsYhpJBI+ZMqm3CEzTv4pNRh40K+Oxq2+MX+Ei1hSEgAZjDExAVqFFPQ2EIqOGmfvi20xvALUEP4ANTHN+13QPXdJwL+8brdBuodfNqOsLbbdExAJfHtH0BpdYd8Y5XBtJUCVNf34SMFCgOAHtUCOmSrvze0zguQxTl6WxP5qudbznWpjY2E/MlF3+hunTl3ifLszkw3hQeW6pGl0bzUetsJOnoIAY4ies7+2dZEDOe/Jqbu/NMaDdcMgvvAmn+QKCzTXmxZolis8XUwVTorgEILQgr+/pidP9WQAScC0u1zTxBb2PrQXq07hW5oUFL3tfPnBQiGlC25ynG4nhwmr/vTVGy1B2HJFlQljM280dXZOht2jbHWF6pyO21bG24mjyyb9JHW+OLq5bGAT/WhF/lQnFe2Cbw1zofCKhRIoMpgJMstvWvqdkdpHHouE0KJTTnarV0dmwoQrdbNTevm5uZm9afhUxg+RboGFzmaxbpyKfj5Z6CPLiX7KotKKDvFC6LYV855YFQzr7gUjia9lfJKvKcwdENqJCD6UBvajpG9J/Et8TBaUhSFCZQ1ubC6pjG2jdEwD+u6fpcLagq4bpR1jSzoYUi3NBTsSRsnMYkrHMVL0dTUrdHE7OrOlTmajFPIxIEogPqjrsaoT1/fL+ynJRQvPw4c+9NYz7MghHyXSYc/zNFAoBdjRJ84DRlUEtGz9O7ENOxPJXruCyg/GqY90fqObFSAMqtjLIE7a8aMo5hC270NYNaTOZrYumNrF/1sgEuMFi5+0u5dFLi3KED0ycpTNzaNgWZ+crSPmtHXLow+G46VY4FEYHluAGtbWl2trxeacLkc4+ge+RBfuN5dNJ0OIl+24zI6NkcfjZ5uOhda93p0eekMRj19IwLlHKxpu9rQyoQUI0jWN3ZM3TYN3dqERH9cRiEM6QYs+m/j0ZAp1Q1oejFOxHQdmt7EFLK7Ac0/EaUQb0DyT8O2dbMWhelS2GfH/5rmpmbr/EC9ueW/xtamxs6/xtZmBBexdwc3EuBcTLrX+nY6fsWIwm3EOL+ahq3vQtJ2dIKuIsaYQOFp9w0fhhTRJ/2RwpAkEz2xdGegDbUrvecYPX1oswWm/2brQys30TGBWCMEzcIMj9ETC2Zi6aajWZZxNczjyOnZmEAjJNQNPTiA1PVd6qZ9G0PL1oZd3RnottbTbG2Vak3Xv3AD1ghbd3GiPLWec6H1WQvTsa4naR8+IkzbjGJ6G8Whbw01m/dRbNEzLKZ+nNHEvhhNhj2HwSU9wkcviH04cAmF+BJHC4u6oe9iv3/BUem/dfuTHmOXZeumc2mOBg4jvqeZPad/sUo1kpi+j24c5PTR9YA7SMWcfdQmfVtaC7LZwn1Ei3jRzw3bjAPYjWK5sgfab8ZgMnDYiNIBmRN+YppkSzvp/ho+JZ3fvSVK9e1HiKUUKMxiEblm4jCsPhZzoDbpRNAByv1JTeBbpqUorU06q+UrYL0tsBsuoXF2wFTO8BEZPU7eEjSGV/yQbFwaXWY0miNb7tbcBV2f9bPeHq9PLLKcxGEkzkMbEopypgm3o66LbTeZVOmpSx9+NMzRcMD0f87EKppZaxHnYuYlq2u3JlUjbFO7ipEgIfXhRw5X52/ciZCcWJfnI7WRsgSonZK9SnNTQlOeGV+48BPfiJCZddOxDtfaydipQWUqdmhVMSRzTFpnqe2GOTcjNeyTbrfO7pEFL1oInSJZm6WobmKt7GdXxlbBpeNwHdx+WcFlDl/2tSuro6piSGCrICVKvJTy2R0aqQ+qLn/i+KQtkz0if4mjWwhusRNCOkUBhbjoRh6M2E5wUc6WUEOg5BspicW+iPw4gERl+3nTb+VhctkLOUqNMbcbSHkEyfN8XEdsT4ktMu5PrjjPO0Dhqr9mV1rcg0Z3aDgXxtDpGSYTHLFLsK4CRKh4nUyjYbZKgsGTaEogFSSlXKw8jaO+0f0k9YrnBsiLlLo8rCSpk/ygLLhtotxi5M+gkn7OpQYrP8xe7kEUDDaTxUM1616GUcj5Cl68KOFIzgNcYWa0/f8enfRQsZ8WuUVhC95SLjhApSB0KVDVFF6sE3l2lInRzOgN7qGfyllAgBpQLMQZ87c5yXVp/YvJxWRoTxxT7+uapXcahwG5dTAMoEsgUDFQZXgtnYpiA8nI47fN9mkyH7UQJ+2tECdbIU45xJq8diOcRRiFszTZF0sOgS8xxE8giTbdxhTEhAEiSkCOH6WUQYHVniMCEGEdAoIWywASCtzlEkeuNwc0Ag8RvnMxO8yDtENESAwJeEB0HsUUMJUfQAqDJxCHiJkYQQAQzbr6zDMtcRymO4hElZ8uwGWZxH4EghCoZIcWtTO+VVY2yosQRRiSQrRNCmFyVLH1vj4emfbW84nAY8MALiNM/QO5LDYH+Oticgo42BDir43iwUfoOTxuVRvjL22Bj9Dj5SzjiNCOWLBomSzYMbgcmb9qZg9o3a4+tpPYWcIPjZ3Uta7tWLapawN2et/GmSCaEYdGDryHISVA0a6tZtfSm2XOywcapmjqetSiGLoLFM4UsOZFcZusoYybuv3+QXICLeYC5kJ8OaVwNZ44w8TOYoMpaF5yh5ZOeI985Do+RvcQO3IVFIdfkAy++q5gCLHLE6DDKFSvxpNcjFFuxzxMzt6EkQ+BH0O2Kj8OAHVnMlSVHtKzoKdU0cORw0jf6MvPOmzJQwyNFkGRjfwU9Ktmdz84tjHQRxP7IJdHURlLZQxpGvd6Uv8aGsUUFxaOR4Om33r3Tp1G2IOq2PHYhwcX++uWCjgIIW2i5f1pEy0dCQw64Dh7znN63CBoyreMETmAs40Aggr5Sw2nqucGgZquQAYmDpUbz41idEBVhV6olKB17T7bckZarxDeRkR1PYruIVDVLzGCFPiRdwcxk/DDFMyR+zM4aYPXbd6pBKupdOs5vVH3Wjcdyx6N+Rn1aEMJXU5edqmak+p5GPXi5Sgc42iBiBdfcN5lVSxr+hJt1TBS/Xi5T3epFt/aBU0g90FfUWSym2yaRA0dcD2sLhDGEU6UfQFKZCrUA7G9lae5uB5u0SgKSCu6hzhwn279llRZTTLfCirWoBoTiFV3BkPaJHPAz4Fbm4pB8Pwz1Y3pfPfuWB9+9BByC0byYuoKHbRre8/15mxz4YYp+9tC/4ZXF+D1yR5I4CObXIglHkkK0/HfjoR9AO/enr1mG1Ji/YnaJseLMHQYrw8A8GIcAPU3MJ7Y4CXPVZtHhJ6/ffOPtxL5LyHpONI4fSFoc3iBx2OHz5CHmyh6QbiUMUW2cGknJfAlUEd1MscHlA0j/Uul3iKuFcP6hiR0l2QecUdhhiT3dINIFzvdCJBDuGZtsL10EYXZ8utxVZYu7UR7ySik/pveTVat0dc7dYcwoQzXH8A4XjaNzHxV3atEe+ZLt/N9D0aToS1cD6lS3b1zL4AudhZRHFJniaOlO+NRJWcauDOS0SP74o6hDLnA1hIJUTnHbTFf75jtAe1iSp5ISCCgUUYM6mqc/vgCXjZfgp9rwF+8ALcYund19iTvpIGAyog4abdrcW85GKwpiSIBhEtwXO61JuOvumnmdrFtG+fmDY+fiZLjUWEDXb/n1G3F6Rac7jY5eecVqlu3Mn/uLe/PdtjHdvdpoeWZI481Gzxaq4ODGaRjEVYeIs8YZ44ApvbETNloATvHuacL91EGczvH7dxz1Cl8WnYU6eR+mKMA8kI9xExG0Mgw8AN7XraXncahUMDE6gP1A1CSONo5EEd8no9/3modn71rnrw5bcrfrYWEE5ts6MGkhLuFQgrx1PXgL+4SqfciGNQ5aZ8cq+0TtX3MjsN/fAEqBi+bn9u/J0dQzfcxJIQ9kbcOGMmzSgkizw9CS4VJZeMXvmra9TWHa1ecWBaNlOdZD53G4SH6e1JQm64Tec5HS2VdpiQKZ7lcYTOiXD8VvIp/ZnBIVvSL/oWvhBkqGQUASxIAIkCuWP8VCCM6l/Wp6SiUXIUyjXEI2sX0J761A3UKyDyKAz9Z/47s3ZG9O7nenaR3oZVlfHSXUfN61sq6c8KIbT2UgOM2U9RtZlPNgeo9fgtRmYuMC1AIQXsNg1n3vN4S+JBCvEAhZO124rsgDNzClP3g9olbvcsoCnL2blG990ej68nY2Ydnjq1dFaZsp0Z97ULvd5QsttdMXJ9pKESVA1Q9t+OJS1eUYpRrHzJfvdoY+Po2ka7w9JW4wYSLNkOQIOQnBeCGvnA8BO4tDEguNJiMQARHcrEX/qClqrx3qIp82EJ1RIcNaDMEP9nnI5E7hAm38KsmWFgT8cqH1LIajQ1ARYcF19Yv0RQ0xajsvnURRZRQ7C4Zbdx5xMiqBxAWDT+XgCaAof8yxX5UGUgubJcIslBKi+g+UbXDyId9NnXFVOvNQr5Wv6WJ0fvJnrz95ZWoynb9vEixiQ0h9KGsY3J9/7tIT084EkslF7+nX/K0j9xxtxjKq6kQlhDpUiZwcc9st8XSxRAIoTSHuq1bzkfdtIzR8FxV2s12s62sgHLcPHnXbJdLnDZ7QK/T2CrNscMYXwbuTAF1T2tScItLtLRCeVA0t6DyfFkpNVhM/crgKTdW94Pem/TZmuuIpfZ+N0zFSFanJrT1fj+SjIF2pecGxj/vj4YXDXDxyXMp93QXlLlcbJGLm0v44HCyaqVeja9v0tmCbythct3WB9Rr4NPV4nS1NSnXMifdzaocspBG49BHvMIq6SZBs0qSrfPJDLwQylybvJC1XTOGHEDduZHn3uqO3beci9HItmxTG4+N4VVxo2CGSL7VFvDSBCasZK32z5egAblN9H8pWWIDT0v9paytzbEoAG5JsKiHLWVXFID2T60osDdNrmDcSRIs7l3cCtBtwrFW7p2qpuza2KQOqpCZ8e3iUpp/Teul+dcd5cx34enJ9K16+vrsrXp69o+36rvT6VR9/e6sDU/ewtdnr9tKyV/ClIZMnaqjwGE9yNoIbTx2jF794aZAyH4I64w+2TJrxeYvfynZTjzfJs3beqkX7e2tKnIuyqr2aCiFfnuLmhXgLpFM7DwH98cHdyj0z4Hw9R5Iw4CcH6iAceFceCXk4wMA5F/nB0mBsjxTcYd5hBF9OgebNLJMIGWny3Mgbj5otaoXG56fnr4+iEmBksSOSWfyQPgsz6VlC73zlD/5McryJEYgDCkSlRbNu7ekiaLW/XEuR3OxcBkvhIucX7mU14DsQ26BC7RZj3hGsv5VkKcyeaaqIXyk6hJHNOq4d0QtYCwAuq5IooixB9kum1s+q2yFhhRi4ekbRD48B0N4z2dJ/MhMXnnDphFOI+ELOvCikMJHynkr/5YTKme3POuS0bVTICYnxxeB8MCLMYYhTT7XgSQaT2QbffMm9xdrgT2X//7rfo8F/5+Vzjh9B0NREFbYOOzRtc4OBv/zpDvnyN8qobvL5U7SuKsMbpW8/83ylqryTMjEo7zf53y36lfZ8A4+nW+v4/1mUU0prrJyrYTWAeXOnAXzitvUk6FtDPTErySKKqXUZjtkGi4imQ0xP6g5mK9HVytL+Sutf+D/ZTlfRprzpfrg+Oxt8+x18/jkXfP4jK0S6i2Bqvrc0f22DdQ/ALMHvqn565M3J2cpBplZxjbWLPTTaRzu5i0phYwUUHogfGj60GInOmPQs9iGb5tGlzuQ9jfeZDIJWviEnSQoRh4/+GR23Bq9soWEVM+kOmZrgxr7eLc2UoS2Au9u5yU1n0Oj67DJe87P5UopAsvTSLnfTnpOKb8pIzCGlm7aVcJ5TZY9cgba8KovC147jed9wOXd37kE4UbBhcbOSz8qaOHOoOphyCvy3EBNqrtkvYDyI4+87dXyFoWqj7Dy47ps4G4SjAJZ8+Qwinmk/jaic7CNNu7f30pGEgvAEJAl9NAUQR+gsBgCUPb0bAoCummvSTmZAta92bMDmdBU18PaV/X3LJeC4onbuxC+Tl3UNbldlsxHmfDbgbYG3ZP0FVXcJtSkaFHJshtqY+vDyE6uE6rrdYBmYxdTJOKqO1z6v0Azfj0yb7H7Vf/rmh23Vf4KR1MUwO33/O+BZ3dddDWeZMWtY3PEt1aR0Ft+vMrcQ+tmpkBibn553mU6rzLTsnAELSWfvlPFB9W9y2XjrHORVPBV94c6mJpbZdaCpbeBpADrasrWoth4JWwxMzUXpXlLulFIcRSMAzeE+fh/w9SZ4WHq/5oYpt5LnLTDUVo3zEuM6u1VEbnKn7s2Zqdw7dy1++DkfSZY8hynonAalRb7W4udtYbG8CrNKVodHIhbkZn+GbghmkJCewgXAlADbWhc6pbdM8xO+eS6kG1IURYapXasoweMRD9iGyh0ISaGdzCPFrDVSNPLWk3WWwlQLIhCw1bONiqSkYLkhK9RxJW79Cfr+Tz7sw7RjuA59Eym/9Fu1yNL68NqmuYCwELkD1RVLRtVeTtqu8mkigygG6UhL3WTkckbpWAu5aiRxlJqWtwojaSa/V+94c0u5nWlSWa3FF+prr9AIQdY11nZiKlAFIzMkl23trdNdl7GshxTqqzL7LzaBtf6pxvlgB1M1820+pilH0kXnRbTiHhuALHm+7mEo25/wkehTewRv6zEdLRer5AWmS9pZ22ZmSk0hJsiVX24DKIntvk0n9xFcJCvmydffxZDMnrvv8rcgsaGK3Ky2P/XmQIaG0ms78iC3g49iTt1vqc3Et8WxlS8H+h7MMvriXLI0yuKvgctnmUIi5fn7IU1lS6ta3SjMIQejUqCpXV5xeRQ79oj0+maOr+aQ+tbncYh/96AKVCebxQpGP6NwsT8/5Ab5RVInoqLkYpvkmubik+LlzUV3wkndg9hTuSTHvrLCIV0ggMBl/hzgmiGwuYCeTgi0ZRGYYBCnuV0o7y6SS9ckheHr8Wy4O/5OsjSpGoJucLucp7ccZQQnaCZsZfNBxT60QNphpBKHORLMEh72IUIL8Iwj+f87enpa4ls5gYB3MAR+b4ykMV3UdC6UVYKUDYpgI2vxaplIOmK4PDFtZc/wT2A9tFB7SWOd/AJYOKen7bfnclbHcPIh6RwuePrszficscopmv8bq6H2D4i1gEDbS7hQlz1uEsD9ky0SG5/7EyslmV3ulqr37lHmMZukHhxR5UHk/KT7rD0RKlZktf6p07jUPJor2E9yO++KS1x3bT3Q5gN+yGZoCLK7TtREeG2TQhDn7z/2lirmrjmW0dCVZUO3QV8/7WkR/fCwThQJUg37b2w3MGnCpJr/dNmHJkKZ6t7HAXIeyppcJ5+I3KUdpkKhkddckTbZgKnau/911ZeeZNWeSG3ClfdkVYtu+spzcZ4NZ70eIVq+f6Gxoj7pBqyMH1kcU9+zcUNhbucn13u7ySvZst4Vb1tIS1jSBzTyYULafmDUp+I7lEM1BCI+LHwT4ElM8kaw49Gz9Ccnml81E2R73Ve9zBN8c0ZhBXz7w04bnNLQSZHA6XRtU0ndQ70+0530NuvUzBbxkkNfAuGFD/xjaFJ5onXSSnT1Wn8UniU8A9DKlLa22vYlFkxl2neddL31XgCRDHyK264onBW+DKlaiI1G7YYjVWu7KjJDlkzTQTgBTfzQ+8bJ6tSk5NNjixo+b75SWYB/K+ZBln7gxfoG1ku8fEUgd3v6E+KMTOdkkua4KMf8pr4tJjfjqLgDuUuQOHONQE0ZuY3oTD0eJpFGtQtX+AeEa6qwogCEi95DaUPXAroHBFA0QI2AblDy6UsQy+ovFL1wHHB2bvRPSSK+9W0hkmNgeq1iz6hDfO2HvfrdjtBThboT0B48gYEvvTt74LtG76agTu5xKxZT4sAhXd2pAVBj3872JCdGivhzu/bETaOdnmHggColnH1YTJeW1iXH32iOvLFgAWls0d/Yunt2Zm4Y+TeDZDvUrh+Sz5ERDMHZ6dHjEW134+Y93Fu9cGuEeIXL+TSmi1jqaoAW9bQ55fVlBfRzjL6MEfePCfc+ZH9wkZUU4RmDQzH1K1J364vaxJjKS6ao+oE7o6mwQegWzYPhJeRShFm6CxbsydWskXIYWQv2P5QM54cnKBHxv3CaWSOBgAR4EUYx0sK/bpQX3VjMIaXI8ccDZzuyDQnY1vvbfh6v123lFT95xBUROIhwndMqU5RCJXKVTl/qhDntcWlcZUj3zEunaGu98TFMslNLHsVVmSUNiv7Q0XYq3zZGXl1eSug+qz6Xce7HsR3JqS07BWgrItuVSB3XerF+7usD9UIZ0+8411FS0DIvFSqLMviLOtDzmNbCc9m3trUVs1uc92Y8rU+BJ7ZZWvCb1v6qsbitjY4KBXnVq7OzG2TvOjG/OT0hpbDvxHzt5odMvnalG0db8knuyuE5nPpuzIAUJkPGRJIOMqTc5PAgOvhupwCwWmXenOD2wtJPq8KlB+b2Q0VSt1jL6x97MPaxzHJP96XyaKeWdR9dV1vDpOLuc+BctxeyGK1fAp0OtZkqM2En8U86HwWs7rpstxKcuN/pnnDNP/PmCuhCuvq87KNceGTUUyXMc3uEwDqB5BeJsC3NVUNI/F1hcqPClDVhfuoMvsGvPlLbhk4yYnMUfGotubCgJCPTPN9TDqHuTsHlven7GFSO9vIhrv3VQag1QKKkrvQIL3MQPShiDsDc5T8vXOYe12g6mxnqs6+maqzzVSdlaiSIHjWaRwal1bnFfgpTcTINf/84+8r5QjUFA2lCOoLgmRpoc+vGlO5R19Fy07WDNCoWO+t1JZGJyXexRS2OoR1X9a9Ojj4QR9d/r8AAAD//2OpGGpAhQAA + H4sIAAAAAAAC/+y9eXfbOLIo/r8+BYatX2L3NCXZcTyJu5U+tEQ7HGsbkkonN+4fD01CMtoUqQCgl0n03d/Bwp3anO775t1zPWc6NlkoFAqFQqEW8Ie/tW9Q2L5xyW1jNO7rjjHq6x+7zYPbiNDQXUDwDVAXBUD1wPGhABlpQz0HcdhoeFE4Q/MYQ81foHBKID44/NoAAADv1p1DoOpAPQKqwf+7AB2gDsFb9gOU5letPzRGU0s3V0q+SVB+t0r6mWB071LYC2JCIX4fEUoODoHob3HnIwzUJWhD6rXJE6Fw4ct/2xh6UeihAKpLgUJlYyAtAvE98mDLb3McNIq922ciOOqosy9+2GKUCmQQ/gmowDvQ9uF9O4yDAPzyiz6+aHy2BOTvDT28RzgKFzCkXeVqeq472sRwLN38oJtysr6WnqyUBsMBgKDGo4EeujcB1ELfoi6mYA154Ns3AB8RBU3dNB3rk2Xrw549cCxbM23nQjMGjVUmDTZ2Q7J0MQzp+3gOJ+4cphOl2z3W/sJyeuPRRVdJeDQjfMBCFNAMfP7M5MB+P3H0kXY+0PsrBfytCxQF/P77z4DewpBDsh/o3UZV4HeAoW3fQRzCoL1YtGlGlXMbz+HSncM25MP3S7h2a9StdPkONL8WB7jimGeoOqy+fmFql7uNKoXdbVA+nGF3vt+YRJtuub8NI1rl1r8lhHxKYD9auCjMFuZIt38bm1e8qXHpXBgDPZt0vjBCSB8ifOfL+U845T7cgZft///6c/99b3J/cv17++sscOfdo59BCB/pCrB38llnBdi/4MUL0P4hI6IbRu2XQGnW0KCUuE2gD1RU6vAn3gUgZZy5v54gab8EdT0kbEpnnk2mMflw6vSnGl85vauc7HS7QKE4hgooC0KFF6d/MS9q+XH6p/AjtxgS1qSaCGBIuA6SgqEmgrEODpMnEkTzoiA+uMsLFGT6hjy4S4egf0Pn7qbbPICPSwyaX63ftAmnyrGM/9Kd4fkKXP8IjjqdzmHWKog8l6Io7CpCK+XWsDoQetlH5K7t/jvGsI0hiWLsQXXpYnpUXc/Je4e1cZYuve02D2Yo9BchBWqIgRoB6uI5pEC1QPMAQ9cPUHgH1NmWvg4P00447hmGcrT+DDS/VjtegW98go988E3I1tclRiEFzZPVy8O84H3+DJpf80hXQJ1T0PyaZ+uqOthM7fyGggDEBKbj5zSCWYQ5k8EMBVApil6B97X0txkMa5npuIDAmt6NkMSzGfIQDKnomCxdD4IoLNFDI+Bh6FKYUXUGMPwSQ1IdLuNFmS8/AZdSuFhSFM4ZtpkbBODG9TjqscV7abVayrplIOXq30xLFDiwqtkbIuL4kBkB3S1yEkV0k3CoE9D+vyELkh+7S8GfMeGsU8400PyaMnD1/TNfpDtnJTEd0zN1zWbWtTW9uDB6hj6ynb5hXTnWROut1YliLFZCD3hgjLuBgLj30Ac0OgMVIWkIHUPxk7fwHTRzZi4KYgzB8Ql4DY5fc4Fk0NzELo3rqoKvZPDlhsKNPWGvLyIfnHY6lcZbaVnccV4/o9NNWBmyKPyLsKoquY0ewDcwx/BZlCf2XKlhGIVS8sgD6IAOt7m4fTQj1L0pbG469XI2/05nH25UbT3gJFBLHD0+ZWcYMcOd05OTHRsVyRGN3CVl/5fQZTqKb9tvX3Nstb2vAc0x9/PQDd05xL9nTNxpnIl19t62J87EHH/85EzNgZXZ5rWmeQbdrWuaUACzGSshuKV06XBSnolA877ECMOzM4bp7IyjAtc1A7lWfs7wbWB5hroPZ24c0PwR83rziK+VPbm+pbON3Nm7s9wJLJlpa7+ptgojt54z2aQwHuu7ppuU59v6iyZ8w7j/iinfwKPvnfTRePcZT2C71WbbJyqM0kHs37iWM2vJ+bOnYC3pz2F+cTtQ6txhd/ENDCDN3F9K6j3bDb591FGZ3GS9KyWn2Ut9fPGy3m3GTordynzo44vCtssEccLQ97R0z0UzgMjQxSiEeIw1Zm0PUBg/AqU5tsoHag9i6viQ0K7Sjgluk1sXw/byDrU9V6U4JlQVZ5G2G3q3ESaZSRkvfZdCx1v4XUX8riZtBFDBDi53xMyMQHbnuSp7jWaIGYFbu6jCytWUU8W2ObVsve/0NHaylvZN7fuVAr6BRxfPyWHBGFoPfOMSeHoCVB+8Y4DpyFZCznpay8NUKdpd00mfmVw9zenppm3xnprZ8DYD52e8FxMaLXpuL2NCjbUVLWmb0UUEeyIMEEAhaB4Q+AV0QPPgoPm1N7Xs8ZD1wsfn9MbTkb0CKjg6PDz8GfhRdjqDXuBiCO5dHLoL2M1aMvqc5le0AhXn4N8kdIVlGXHtTuGHPWO4GPs4Oj8K4RoHS8I6hiZZcds5XsXjRSF12Urxi1xOH08DtECpN783HtmaMdLNvjMdGEPDdvrmeOIYI+GxmWj2+26tcsj6yekHAqkTC/yph1kYoErz6w5d8aNVYot2Ovu04lpsR/AaT3+6pioILDbdFIOX7H/X4ctDrrPybn3gu3ARhSqGQeT6jT1m5epNTVRFsJspXxxCCokQrZxbTJsYMswwmZ4PjJ5zpX/Kz1S5adtdIjZHEPN1nDsWKDxoUY8sjRSlJ4OdoKOHEOAoomfsP9uaiOH819TUnX9a49GaQXD/SusPEoVl2ostSxQL+VkHU6WzAihWGKTg74+ZbaOGDPhqeq4PdNvpDbiXgQmNPrJX6yycDQ1KqqR2/rwAwZC27uBTxdSqJ4cpsf1pKrbag7BEvVUJYzNv9HRnYhqjnjHRBmIZbqdta8PN5JFliz7SGj9PvTwW8Kk+9CIfir1wm8Bbk3yYpUKBBKoMRrLc0numbneV5oHnMiGU2JTD3drVsakA0W5fX7evr6+vV38aPoXhU6TbaZGjWawrl4JffgH6+EKyr7KohLJTvCCKfeWMB90085JL4XjaXyk/ifcUhm5IjQREH2kj2zGy9yS+IR5GS4qiMIGypudWzzQmtjEe5WFd1+9xQU0B142yrpEFPQzploaCPWnjxN99iaN4KZqaujWemj3duTTH00kKmTinBNBg3NMY9enr+4X9tITi5YehY3+a6HkWhJCO3AVMhz/K0UCgF2NEnzgNGVQSLbL03tQ07E8leu4LKD8Ypj3VBo5sVIAyq2MsgTtrxoyjmELbvQlg1pM5ntq6Y2vng2yAS4wWLn7S7l0UuDcoQPTJylM3MY2hZn5ytA+aMdDOjQEbjpVjgURgeW4Aa1taPW2gF5pwuZzg6B75EJ+73l00mw0jX7bjMjoxxx+Mvm4651rvanxx4QzHfX0jAuUMrGm72tDKhBQjSNY3dkzdNg3d2oREf1xGIQzpBiz6x8l4xJTqBjT9GCdiug5Nf2oK2d2A5p+IUog3IPmnYdu6WYvCdCkcMNOyprmp2To31ja3/NfE2tTY+dfE2ozgPPbu4EYCnPNp70rfTsdvGFG4jRjnN9Ow9V1I2o5O0FXEGBMovLi+4cOQIvqkP1IYkmSip5buDLWRdqn3HaOvj2y2wPSPtj6ychMdE4g1QtA8zPAYfbFgppZuOpplGZejPI6cno0JNEJC3dCDQ0hd36Vu2rcxsmxt1NOdoW5rfc3WVqnWdP1zN2CNsHUXJ8pT6zvn2oC1MB3rapr24SPCtM04pjdRHPrWSLN5H8UWfcNi6scZT+3z8XTUdxhc0iN89ILYh0OXUIgvcLSwqBv6LvYH5xyV/rE3mPYZuyxbN50Lczx0GPF9zew7g/NVqpHE9H1w4yCnj66G3Pkm5uyDNh3YMoNINlu4j2gRLwa5YZtxAHtRLFf2UPtoDKdDh40oHZA55RbTNFvaSfdX8Cnp/O4NUapvP0AspUBRGiuZxySMYfWxmF+zSSeCLlDuj2uCqjLlQWlv0lltXwHrzwK74RIaZwdMlewRy0m8AsIw2ZA1kjsj8APNVbHtprNNav7oow+GOR4NmSLOnXWK5521iHOB0dLxZ7cm1dPQpnYVa11C6qMPHK7OqbQTITn5Ks9HeljJslx2yugpzU0JTXlmfOGnTVyf4qC+bjrW4Vo7GTs1qEzFDq0qJ7ock9YdmXbDnJuRGvZJ30p3d/exFy3E4paszfIQN7FW9rMrY6vg0ju0Dm6/1M8yhy8G2qXVVVUxJLBVkBJtWsrr642M1BlUFyQ/Ou7IiH7kL3F0A8ENdkJIZyigEBd9hcMxU8nn5ZA4O5TnGynJ0XkR+XEAico21pbfzsPkQtQ5So0JN+BJeQTJ87zzXuwTyaFgMphecp53gcJ1cM32sLgHzd7IcM6NkdM3TCY4Ql2zrgJEqHidTKNhtkuCwTMlSiAVJKWEmzyN44HR+yT1iucGyIuUumSbJHOP/KAs+CFBucHIn0Ml/TuX/6n8MH+5B1Ew2EwW98evexlGIecrePGihCPZmLnCzGj77x6ddBWxnza5QWEb3lAuOEClIHQpUNUUXqwTacTJ7Fd2+gzuoZ/KWUCAGlAsxBnztznJdWn9i+n5dGRPHVMf6Jqld5sHAblxMAygSyBQMVBlDCWdimIDycijN63OSTIftRDHna0Qx1shTjjEmuRlI5xHGIXzNKMTSw6BLzHETyAJKdzEFMSEASJKQI4fpbwwgdW+RQQgwjoEBC2WASQUuMsljlzvFtAIPET4zsXMqgZph4iQGBLwgOhtFFPAVH4AKQyeQBwiZusHAUA06+ozT6fDcZjuIBJVfroAl2US+xEIQqCSHVrUzvhWWdkoL0IUYUgKIRUphImpYusDfTI27a32icBjwwAuI0z9hlwWm6O4dYEXBTQ2xHFrQzXwEXoOD07UBnJLW+Aj9HjNwiQitCsWLFomC3YCLsbmb5rZB1qvp0/sJECS8EMzbeNC69mOZZu6NjRGl1s5E0Rz4tDIgfcwpAQo2pXV6ll6q8x5+UDDFM1cj1oUQ3eBwrkC1rwobpM1lPEz52DQSCzQYsJXLo6TUwqXk6kzSg48bDAFzUvu0NIJ75GPXMfH6B5iR66C4vALksFX3yUMIXZ5lmsYherlZJoLJMntmMdC2Zsw8iHwY8hW5YchoO5cxoxSIz2LbEkVPRo7jPSNTvWsw7Y0Ymi0CIps5FbQb5rde+/YxlAfT+1GLlheGUtlDGmu7npS/xoaxRQXFo5Hg5bffvtWnUXYg6rY8dgfDy721y0V0AghbaHl/UkLLR0JDLrgKHvOEzfcIGjJt4wROYDTjQCCCvmPGs5Uzw0CNV2BDEwYlRvtRjE6oKpCL1TqjHr2gG05Y61fiGEioroeRfcQqOqXGEEK/Mi7g5hJ+EEK5sj9GRx3wKsO71SC1ZQz9Z3+uHelm45ljyfcRj3cUCeVk5ddSqOkeh5F/Xg5Dic4WiDixeecd1mpwpq+RFs1jFQ/Xu7TXarFt3ZBE8h90FcUmewmmyZRKAVcD6sLhHGEE2VfgBLh6HogtrfyXAbXw20aRQFpR/cQB+7Tjd+WKqtFbreCijWoxgRi1Z3DkLbILeB24NamYhA8yUh1Y3q7e3esDz96CPkJRvJi5godtGt7z/Vu2ebCD6bsdwv9G16eg1fHeyCBj2xyIZZ4JClMxz8fCfsDvH1z+optSMnpTxSwOF6EocN43QDAi3EA1I9gMrXBS56QdBsRevbm9T/eSOS/hqTryMPpC0Gbw7P4H7t8hjzcQtELwqWMKbKFS7spgS+BOq6TOT6gbBjpbyr1FnGtGNY3JKG7JLcR99hlSHJPN4h0sdONADmEa9YG20sXUZgtvz5XZenSTrSXDAfqH/VesmqNgd6tM8KEMlxvgHG8bBrZ8VV1LxPtma/Pzfc9HE9HtnA9pEp19869ALrYWURxSJ0ljpbunId3nFngzklGj+yLO4Yy5AJbW2S95DyoxaSsI7YHdIp5VyIzgIBmGTGoK2T54wt42XoJfqkBf/EC3GDo3tWdJ3knTQRURsRxp1OLe4thsKbuhQQQLsFRudeatK7qppnbxbZtnJs3PG4TJeZRYQNdv+fUbcXpFpzuNjl552WIW7cy/9Zb3p/usI/t7tNCy1NHmjUbPFqrRmMO6UTEd0fIMyaZI4CpPTFTNlrA7lHu6cJ9lFHV7lEn9xx1C38tu4p0cj/cogDyaizEjoygmWHgBntetpfd5oFQwMQaAPU9UJKA1hkQJj5Puj5rt49O37aOX5+05L/thYQTm2zowaROt41CCvHM9eCv7hKp9yIq0z3uHB+pnWO1c8TM4T++ABWDl63Pnd8TE1TzfQwJYU9kabmRPKvUmfFEHbRUmFQ2f+WrplNfWLZ2xYll0Ux5nvXQbR4coL8nVZPpOpF2PloqYib50QBaMJhZPIx4Jbym/PwZzusyQxM/bJKcYxofNFvfmgkn3bEyG+4OPil12Hgm1O5oeFIdxxMtYUhIAOYwxMQFahRT0NxCKjjunLwptMbwC1BD+ADUx9edt0D13ScC/vGq0wHqHXzajrC223RMQCXxzR9AafdGPPFcXjaxUoDq+j58pDyz5A/oUU2EKLv9kXVWgCzmMBbmquD3ZUc5cdJ38tSwYzYjx7gweoxwc2zLrBdeJlAfx5GF9aIz4c1iR8lMNACOKN/EACJA6lT/JzDPzp0EBjNVxKlrETwgeptMQuad2kM6c/XHNMYh6BQiWbuwwBlo5/qgq2QS10ocqGlARZW0q57b9cT9HMp/8JoQpixQZ4DcRnHgJ/udIxs4cjhObiqcZC6FFSID87swkBfpVvYZJ4yYqUUJOOoww6QDblxyC1Tv8TlEZS5hrjBDCDprxJV1z4tIgQ8pxAsUQtZuJykWhIEbmAozuHniXp5lFAU5/07RnBmMx1fTibMPzxxbu6yNue6DZGMQ9nmLt2a8JYz8BhWuhhi+BD83YoEbpi4yl4AQQh/6SiWQKWJ3udAgf9BWVU4QVIU4Fyo0umyMmyH4wTMXfvzeIHZNILsmGpsP92ZFIhuAis40bkm8RDPQEkOyB9Z5FFFCsbtktHHHJiOrHkCctrnNDFoAhv7LFPthZSC5kHIidNms/req7IpELaJ74XD1IQjcGxgUt9LNmlvJbQGL6D7ZHEeRDwf74qqWHO23jOTNOcraIaoqDQgXXJVXvrMVI54l9xHdwSfxaoajRXF9rRnpReDOgVLC3F1rjOyApUxLd5v98//ksvNhcNCiAWGieYECePiy9EJeyHUFn9LXz1pcru8/X7wZR8ua1PX975byfFhNIqtY+n39gifG5fwQxRyLmvp8CZHuagQu7iHuRYuliyEQgmGOdFu3nA+6aRnj0ZmqdFqdVkdZAeWodfy21SkXGG4OTV2lSS80xxVjwiRaAXVPa4oUiptTaW/i2So5oc7zZaXUYDH1S4MnJVq993p/OmBy3xUC/243TMUUg25NzsG7/UgyhtqlnhsY/3t/NPxIwqUoz6Xc011Q5qpVRLVCLhOPw8masXqbZn2T7hZ8WwmTB+z6TKca+HS1OD1tTVGKrNpxszqwLNbcPPARr29MuknQrJJylHyWGS9DNNdmlWVt14whB1B3XOTVCbpjDyznfDy2LdvUJhNjdFlU1+Dbt0KrLeClCUxYyVrtn8hGA3KTGD+lLLYNPC31l7K2NvmtALgl860etpT2VgDaP+etwN40641xJ8l8u3dxO0A3CcfauXeqmrJrY5M6qELK3PPFpTT/mtZPK1S6yqnvwpPj2Rv15NXpG/Xk9B9v1Lcns5n66u1pBx6/ga9OX3VKlgVXGjKntY4Ch/UgjRRtMnGMfr2JUSBkP4R13jjZMmvF5i9/JeBOPN8mzdt6qRft7a0qci4KT/doKIV+e4uaFeAukUx9PwP3R407FPpnQAThGtLXQs4aKmBcOBPuYvm4AYD87ayRXA8grXIeyYwwok9nYJNGlin27Gh1BsS9I+129VrRs5OTV42YFChJXEPpTDZEMOlMumCgd5YZbLkxygJORiAMKRK1aK27N6SFovZ9FujwosXCZbwQsUt+4VleA7I/cgtcoM16xHOS9a+CPJXJM1UN4SNVlziiUde9I2oBYwHQdUV2W4w9yHbZ3PJZZSs0pBCLEMww8uEZGMF7PkviR9Y6yPttjXAWCSd9w4tCCh8p5638XU6onN3yrEtG106BmJwcXwTChhdjDEOa/F0Hkmg8kQb67E3uL9YCey7//df9Hgv+f1c64/QdDEXJbGHjsMdXOjMM/vOkO+fe2Cqhu8vlTtK4qwxulbz/yfKWqvJMyMSjvMfzbLf7AWTDO/h0tv2mg2eLakpxlZVrJbQOKGdzFo5X/Ew9HdnGUE+8O6LsXEpttkOmcXySnSFuGzWG+Xp0tbKUv1D+B/6/LBnXSJNxVR8cnb5pnb5qHR2/bR2dslVCvSVQVZ9HZN50gPoHYOeBZzV/dfz6+DTFIFN+2caaxeS7zYPdvCWlWL4CSg+Ej0sfWcyiM4Z9i234tmn0uB9p/8ObzPJDC58wS4Ji5HHDJzvHrdErW0hI9UyqY7Y2qDkf79ZGitBW4N3PeUlV/MjoOWzyvubncqUUgaU1Uu63m9op5TdlBMbI0k27SjivWrXHzlAbXQ7klQDd5td9wOXN+7nKjWbBhcbspR8VtHDnUPUw5DXLbqAm9a+ykEv5kadE7NXyBoWqj7Dy47oyjV4SNgdZ88QYxTyF6iait2AbbdxXv5WMJBKGISBL6KEZgj5AYTH4pezp2RQE9NJek4JbBax7s2cHMtO0roe1r+pvOS9lKyXxi0JeUeqprkm6tWSi4JTfzbU1GyrJK1TFXV4tihaV9OeRNrHej+3kMq+6XodoPnExRUwjJZ/42PjJjQWa88vJeYvdP7SxrtlRR+WvcDRDAdz+lY098Oyuiy4n06z8f2KO+dYqKi3Kj1eZe2jdzBRIzM0vT4hP51WmwBdM0FJVwFtV/KG6d7k0yXUukgq+6v5QB1Nz79ZasPS+pBRgXbHvWhQbL2QulgzkojRvSC8KKY6CSeCGMJ/20zR1dvAw9X9NDVPvJ07a0Ti9WYHXftafV0XmTN7u2pg2yLVzzx6A43eZYEk7TkXhLCot9jcWs7VGxugyTfZcNRriTnKmf4ZuiGaQ0D7ChQDUUBsZF7pl9w2zW7ZcF7INKcpCs9SOdfSAkehHbAOFLsTE8A5uowVsN9O833aL9VYCFAui0LCdOxsVyUhBcsLXLOLKXYuW9XyW/VqHaEfwHHom0//odOqRpYW7NU1zYVgh8g1VVcuHqvw5avuRSRWpmddKU16pKAOU10rhuJSjRh6W0qPFtdJM7vv4V390vcvxutIkO7cUX6muv0AhB1jXWfkQU4EoHDJL57q1vW0652UsyzGlyrrsnFfb4Er/dK00mGG6bqbVxyzFULrotJhGxHMDiDXfZxujXDq9wZSPQpvaY36dk+lo/X4hXz1/6Qdry46ZQkO4KVLVh8sgemKbT+vJXQSN/M0i5NsvYkhG/903GeFvbrhELIvNf5sroLmRxPqOLOjt0JO4dex7eiPxTWFMxRvUvgezvMAthzy9xO170OJ5hrB4vdheWFPp0npGLwpD6NGoJFhaj5eyj/SePTadnqnzy4u0gdVtHvCvdsyA8vVakYLhXytMzP8/cq38BJKn4uq44pvkYrvi0+J1dsV3wondR5gT+aSH/jJCIZ3iQMAl/pwgmqOwtUAejkg0o1EYoJAnjl4rP12nV9LJa/vXYlnw93wdZJmntYRcYnd5m9wClxCdoJmzl60HFPrRA2mFkEoc5EswTHvYhQgvwjCP5+zNyckriWzuBgHcwBH5vjKQxXdR0L5WVgpQNimAja/FqmUg6Yrg8MW1l7fgHkDnsFGbIn4HnwAm7tlJ5+2pzBkPIx+SQur4q9PXInU8iukav5vrIbaPiHXAQFtLuBCJ5Ls0YM9EiyS3vDu12pbd7WntQfceYRq7QeLFHVceTMtPeqPSE6VmSV7pn7rNA8mjvYb1IL88VVriumnvhzAb9kMyQUWU23eiIsJtmxCGPnn3rblWNXHNt46EqioduQv47ltJj+6Fg3GgSpBu2nthuYNPFSRX+qfNODIVzlb3JAqQ91TS4Dz9RuQo7TIVDI+65Ii2zQRO1d67b+288ibt8kJuFy4DJe1adtdTmo3xcjLt86sDyhfrNMfcJ9WUN4aMLe7Jr7lRp3CT+leX+zvJT/NlvKpeg5PWlyWO6eQmnLQuTamvEPIoBmoIRPxY+KfAkh3JmqMPRt/QnL5pfNBNke91VvcwzUXPHQgrx7/X4KjDTwoyix8ozZ5tOqlzYDBwesP+fp2C+TJOLidpw5DiJ74xtMht4nVSynR1m78WHiX8w5CKSpbOGjZlp5iLtEAg6ftyMgXiloif+MEVhfPCp8yqGf9s2GI0VrnkriY7ZM00EYAX/Jgfes+crEqxZDY5stLw++YnmQXwP2YaZFEmXqBnslzi4ykCu38hI6mSz3RKLmmCj37ELytJb1mxoyi4Q7mbqbhzTQBN2PGbUBh6PM0iDeqWP58QEa6qwogCEi95cbsPXAroLSKAogVsAXKHlkt5P0hB5ZXKXI4Kzt6N7iFx64qaFpeqMVC9TtEntGHe1uN+1ekkyMkC/QkIj1+DwJe+/V2wPePDKNzJJWbNeloEKLyzIy0I+vzbfCNmNVbCnd+3I2wc7fIOBQFQLePy/XSytuI5P/pEdeSrtAtKZ4/+xNLbszORpX7vBsh3KVy/JR8gopnD05NDxqLar5PmfZxbfbBrhPjFi6RcZhlLVQXYsoY+v0WsvIh2ltGHW+Td5oQ7P7Jf2YhqqoOtoeGYujUd2PX1d2IsxUVzWJ3A3dE0+QB0y+aB8DJSKcIMnWVr9tRKtgg5jOwF2x9qxpODE/TIuF84i8zxECACvAjjeEmhXxfqq24Mxuhi7JjjodMbm+Z0Yuv9DR/X3HVLSdV/pUQoJxIPEb5jSnWGQqhUii3+VCHOa4sL4zJHvmNcOCNd74t6m+SKrL0KKzJKW5X9oSLsVb7sjLy6vBVQfVb90viuhvjOhJSWvQKUddGtCuSuS714saL1vhrh7It3vKtoCQi5Ld0hIStELet9zmNbCc9m3tr0rJrdd70x5Wt9CDw7l60Jv23pqxqL29qgUbo1oXKncW6b5EU35ienP7Ic/j3ajzU7ZPLRom0db8knuyuE5nPpuzIAUJkPGRJIOMqTc5PAgOvhupwCwWmXercGPy8k+bwqUH5sZVcHKXWPvbD2sQ9rH8ck/3hfJouLJkTdV8/1bmHy6YIzoBx1FuJ9IQU6HWsy1FbCz2IedD6LWd10nXglufF/p3nDNP9nzJVQhXX1ednGuPDJOKbLmGYXvQD1PUhveeHbmqqGkfhYqPKjAlR14T6q7HwDXv8l178c50TmsGiqrbnJJeQj03wfk+5B7jKY5f0Je5hUsDaz4e59xwxot4Gi5G6aSW+ZEX0o4jLXHCV/7x7kXheoOt2ZqtNnU3W6marTElUSBM+7zQPjwur+BH5OEzFyzT//+PtKOQQ1RUMpgvqCIFlaKCp1Ve7RV9GymzUDNFpXjV13uUExha0OYd2n8leNxg/6+OL/BAAA//8IyfRvvogAAA== - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG+NoFabricManager/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG+NoFabricManager/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG+NoFabricManager/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG+NoFabricManager/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG+NoFabricManager/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG+NoFabricManager/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG+NoFabricManager/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG+NoFabricManager/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG+NoFabricManager/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG+NoFabricManager/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG+NoFabricManager/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG+NoFabricManager/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG/CustomData b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG/CustomData index 4cc23d06d5f..9a0a581e746 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MIG/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MotD/CustomData b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MotD/CustomData index 6b215154861..b7331362120 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MotD/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MotD/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MotD/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MotD/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MotD/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MotD/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MotD/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MotD/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MotD/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MotD/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MotD/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MotD/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+MotD/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+MotD/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+NSeriesSku/CustomData b/pkg/agent/testdata/AKSUbuntu1804+Containerd+NSeriesSku/CustomData index 5960c9b6894..56586bf0400 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+NSeriesSku/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+NSeriesSku/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+NSeriesSku/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+NSeriesSku/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+NSeriesSku/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+NSeriesSku/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+NSeriesSku/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+NSeriesSku/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+NSeriesSku/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+NSeriesSku/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+NSeriesSku/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+NSeriesSku/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+NSeriesSku/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+NSeriesSku/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+PrivateACR/CustomData b/pkg/agent/testdata/AKSUbuntu1804+Containerd+PrivateACR/CustomData index 3d103dfe261..2da82f253d9 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+PrivateACR/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+PrivateACR/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+PrivateACR/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+PrivateACR/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+PrivateACR/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+PrivateACR/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+PrivateACR/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+PrivateACR/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+PrivateACR/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+PrivateACR/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+PrivateACR/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+PrivateACR/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+PrivateACR/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+PrivateACR/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Teleport/CustomData b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Teleport/CustomData index 3d103dfe261..2da82f253d9 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Teleport/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Teleport/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Teleport/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Teleport/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Teleport/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Teleport/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Teleport/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Teleport/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Teleport/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Teleport/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Teleport/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Teleport/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+Teleport/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+Teleport/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+runcshimv2/CustomData b/pkg/agent/testdata/AKSUbuntu1804+Containerd+runcshimv2/CustomData index 6b215154861..b7331362120 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+runcshimv2/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+runcshimv2/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+runcshimv2/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+runcshimv2/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+runcshimv2/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+runcshimv2/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+runcshimv2/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+runcshimv2/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+runcshimv2/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+runcshimv2/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+Containerd+runcshimv2/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+Containerd+runcshimv2/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Containerd+runcshimv2/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Containerd+runcshimv2/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+CustomCATrust/CustomData b/pkg/agent/testdata/AKSUbuntu1804+CustomCATrust/CustomData index 6b215154861..b7331362120 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+CustomCATrust/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+CustomCATrust/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+CustomCATrust/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+CustomCATrust/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+CustomCATrust/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+CustomCATrust/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+CustomCATrust/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+CustomCATrust/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+CustomCATrust/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+CustomCATrust/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+CustomCATrust/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+CustomCATrust/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+CustomCATrust/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+CustomCATrust/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=false/CustomData b/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=false/CustomData index 3d103dfe261..2da82f253d9 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=false/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=false/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=false/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=false/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=false/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=false/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=false/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=false/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=false/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=false/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=false/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=false/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=false/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=false/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=true/CustomData b/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=true/CustomData index 3d103dfe261..2da82f253d9 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=true/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=true/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/9xcfVujSLb/P5/iDMOMOiNJiLbt2EvvYII217xdIPb0tV0eDJXISCANhd2u5n72+1RRQEGIre3s3Nl1n342oU6dl995qVNVZL7/rnXlBa0rJ75uaIZhmx9MSxt0rb5tWqph2Seq3lf2gY51+6NJz9aHumVb+kAbTSzlVTpyovc1+71qdd/lIwfpyLtRv2e/V/v6cPKbeqoNLeV1OmBofU01tRqCw5RAHVu2PjQttd/Pmf6SDvVG3TPNWBvttEvDvdH7YX+k9opxuTR+pn2ooemUaIgShC4f3isNcxh1GEiD0fEHOq2vmwVOHQbUwLRPx6cbRB9wHNZsY7B1R0NL1Yea0VsnYcAZk2F3fZBBd3ZoEoKhPjzNx/baxdiaVnsMtLPJsUbCYjiy7JPRZNhT9hhU+uC0ZtpeMa2vWTxSe/tlLw5O7fGEU3Xv1ZqpXauO7mCdztCJjuukm9GjocsZdbhGea4Zpj4a2vrwXO3rPWWPQdkd6ut278u5o8fGqGf3tOMaos460fjs1FZ7PZZwDL2RoXIu0QxjZCj7DJ40UzlD6MTDLIZ6Y2N0rLGnTOPRxDomVhLrhunQK8736li3Tc041wyeQK4l6A1Nuz8anU3GjKxTS6b+z8TQ1omz4FAttT4XDtocRTUJD2RusBroB0yR83e9qm8P1gNrTfDrNpdE66NMcndiWqOBbWqq0X1n90YDVR+aqW2HjMHpeLI+/3CPGzR0Ell8Zhzurw9X7Tt8xdFo53pXs8f9yak+LDE6KIj04cnINkYDuzsyjMnY0nrKIUsH8/S3jXJ+aa/TcBJ+kYsq3VP1fuGdX7j6PRn3VEsrhrLMMTUS+Oc6zSuza+hji/rJ0NRewUlutzkhpJxOxqeG2tM4Ck6N8cQ4ZQEvtzt5kpCCYGjEDYrcZvh3ddNWTVM/HdrGaGTZ4/eKLMtrYzR+xpox0E2iqSLLjO1YpaWrOxp/oESKLPOcx+P+B3usmub7kUGT7UQ/VWS5krj5GjJiaSHLWUVLy9ha+Mjy6xLBaKwZqkUwTEuDLGfVyzJqBn+BRgoWTUrTUrtn9qlm2aoxsK3RmTZU5GwJrZIMNev9yDhjtkxSxoqcrahVcnNyPNQse2xoJ/pvikwW1Twpjyd6P6tlMlkXU1Deq2O7a2gkXFIwslWJH9GH5uTkRO/q2pBGxJltjtWupshklaLUltbXxiPD6pXKpiJnda4YzwI+Hc4MMSz9RO2S9crQ1AFZJTM+ipzVuBoixkyRSWlLGx/LGpMg/+2D3VUJbueaYSlyVthYZpAhzbBMRT7ImxOmtql1CahW37SPRyPLtAx1nC+n2m9aN8v7PDoOMgf3dPNY7Wu2PrbU475mKjIpa2nNNCamRTisB1dW3Hq6SWbZpvlOkV9nEW/oA9X4YA/1rq2PuaIqv2aRrw9NzbBsfdAzbUMzLRKiJPqMCdFkaI3sgTo87Ws21UmRX+8/dd6J3rc0I5/H0qhHgNA2zDshBa8i7+Cp8yryXnPBa2jEF7ah/fdEN7Se0slK1HBEi4J6qpkMmE5Wm8yhOjbfjfJqyDeN7SwzxoZ+TgbJ+klaARKVnaxckYd8uHba+1na5O36QDXPGFM21jW0nja0dLWfFttebU/czjKQtDPVVqfTPoBGo2hFaFNFtGHav4bKGHlOUCWrvy0rnfZhlYJbfN+r5kDptH95lMme0pHbj1LsK52sdm+geKV05AwV1odkQZ73p5pxThKZZKN+oneJL4yRlRZQSz1VOvJeo+HNYOYFLrQQnoKE75YIZrs+SIGzQCD8JEXIR06MBJCWkRdgkD4lHobO25aLbltB4vvwAPMILUH6BFvNrTeAr1HQAAAYmYq4HYcRBimi7Fs5NzLH+XwDWwsHT6+3xfYutP6xrffsvn6mKdvTMEJhvPOg95Tt5k87O2JrF5wduIdUBRwmyyWKtp2LziU4F3uXO28AffEwrLZ2mOTM7c/UIA+WZwuGB8ARSC5sCVs7DeTHiGqCptchCBXRQYhhFiaBKzRmXqMxOZ4MrYk9Mu2hOtAUIf0uNAaqQYKqGGAPihHaLVaHyUOhQZcvugMtCIpnQoPtfZRWEkctP5w6Pt003yRXaIr9RrqQp6PkuRtOb1DUQF+WBE3aqJ0rgnhftHUZ4kfKSijRaabFSwluPddzmIDcTXJT3mvKkpzNHJ7rPV3NWOsD9VSzzXdqJjJ/wEurm0PCPFPzfCWJ9xsYr3HhDLM+jLWKreTRV0QrwmIaNRfeNArjcIab03DRcm5i8k+aL5NClQrbginpeNJuNy2T3UFPEaYkygK4OYybXghREoBEEvPW89EcuSBJ0QIkKUBYug5jDJL02cPXUhDD0nOPWssonLbkVhC3lh4hXoQJCeu7JVKuvMDdjaOp0gqXuDVfJrtujJXWIki/hEvshUGsRITusZnOlBIWs7MHJQ65kSwO1uxMA67OwABhhdm29Fz28RYytY8ylfOHTIEjXhsKlNAgPXZX7b7T7J5uKK1bJ2pNnek1ajlkXjS99m5R3GqQflkdkgaNI47CEBO6dEJDO9eGFtkTnp7SFivj54fzlvPPJEKtQR4LKvne1L5gFMREm2Y3iXG4MKeRt8QtdIsCHLca3YnRJ/vb8cRSWnixbE2TyLdvUXQVxqgZJrhB1waeIoyceJ3C0E510zI+sFY3be9pTSL0rWkYzLx5885Z+NBoRAhHd9OFa3sze+Z4fhKh7R24p9WMjHkoVkT5DXx2PGzHPkJLRey8AewtUJhgRdx7A/G1N8Pw44+VD5TFLIzAAy8AcTtGn0AGkTHdeQNuSEnIH2MHYvZBEO9/XQmE11WEnBt4eICPObU3gwsQPZDQp5wfXHJLUfZHy7H2BU0TjFz4KIi/fhTIRCIlflMijRBOogDk/GFe07M/ajyIBRD56MyjH90w4FaBzWJXtajbseejAP/ngP9HIcrDFcR+GN4kyxwlHhmZQ4agFGLHt3msIjQNI1cR9+nUGDsRpuOKuO06GMHPP8RpQ/H52vMR4ChBJaAy6SDlXDPIJKqi0iaQECEbwJsmUYSCDVILdLe3eUKQOF13dkCaIxBL1m0OfsEidJyLS9MiRIqZu/ssy0i8Ild43NfMgZu9nCfLo5CkNuSp9Cw1w+hrQMZoGgZuLJCUrMvIILRj7OD4r5CTJCX/OhmZozVH2MZOdOX4fo4SdiL7MaRScopUEvlZOqauFu+52asMcGEDdBxtBT4nAgn/c0ZJiLSnQMdx+0b4MmcdtElY+yDNYrN/CyL9HBbKvAWRW+2h8/ZHucSHqHUB4t/hOwXacFmnDE0dB5cYlQi4DHypZ+1ZFC7sCM29GEd3NmkxbdJKvNDjZNYs9F0Ukbz3onQLmoEk7PwnhgWBDZZkG80HBYOBdKkMZCnt0kC839jSrUgYcS3hy8KIY/SHh9GVFzjR3VejiJE9EkiMYung62owZTLW44mbVImpssBKWG2IrfKccnjRsJFmFZm1QUODbnPElAKwLBI2uXEtDms5fz0eS0j+0SH5jLD8amjWhOfjIVqZsCFi6bZr5vnFPog+eeLaTyam8bnP4vNVKeZ4Xl8tZDxxOdQuaKCJmTS4vMxLWX0V41m9sIzlPUntGper9Bde5CjBLIzKbn7Ew4VX9yjp0rlFLjsAoZv9qR8mruQFHpYIbdykFJQ2PS09+US8n/FZCSBSCuI1hnz7Of1hznTre210ssXB/ngY/BntIaVELkgeCC2iXssVCgWLbOBC5S2Do7FqxHcxRospJtFKu/Xndd8Q305J4c/WhW/tt3M1wHXQIgykCPmh4z5lAtMbRKbKn9C257LJfiWJC9GSFITS0pmTSu6X5vweJlHg+GSSlOQTvimdCpfFOFz+2/mLKP1nOuvZqLpe7Fz56N8OWKb3XxPbtMIQU56H60vBpAknpSD9dQC5RVHshYE9x1mYYRRjEMRtehU2g60f4o/BFgjirwI8ALtkO4cHuEaOC1IA8o4AigKCKAuNVaOIXi0gMaAGrlkq5mtlHuR2G17BXhvE1B5DS6+ZTUu1JqYi/r1RX+rkcpGDt1A5iBdlKaVt+uG8UQBcFgBSgEgfUoGZ9W0yTMPEd+ld3hVKj5H4Q7CSJxi03gy+g5pzJZA7xNLOK84YFKSZIj9JfErtwtVdwWKzLrw3emlKUndwpdqbcbr4XoylJPBwDJI0I3sDSXJKF7+CKDdjFN16UyRUFC6vBZBZKsokxDeBGS6XPJhrle9JbBgt48PsRotbFHXDxdLh7jWya19VEbfTTkSGB5gmGCQXhJ8F0lrLOyXS45y0s4n04oJ0eDnvFUuH/MnxSmBteqnhI6mE3Jw9xwD4uemF8xb5H8nDLAXPIRV+7c2vUYzP0zRWxG39xFTyTUcqYyXkqouUiTTrPKK6eF9muqrTPo+1VcMNPweknPbQ1fhmboUnfG89PjtNb6VZcpPv+Z19J3/U0w2ta42MD1mhXdy4XgTSEsTScNqEJ/G1C+J9aWSVV/K1rCMxdNBug7PE0hxhyBRmLIh6KyX9zFRb/ZQKCpekM3WWmB5nZPOYcY+sGuXz3zcNAHopTqYoBD9mQelakgQ4l8FPWGnc5c0cJLY9J5ZKDkncMJoi+tBFs+KuhOx6iCF+OL2J6eMMDimE3vJmfnQ0Sm9uj44UnkvouwVi0l31kqjxtYWLGi2/oUvU+rL0Ji2abP9AAK/gwD4Sro1VY45wdzxRo+l1HmFONL1WxO0kbXsXOw1uj3lPBnd3VzQjHfLlYF8gAioj0YI8X9+LpnmUDjfW1lk2unCzUVp7vFg1Bgf7fIklqmwXqu/wQutlyhuktbka58UGO6GZRMUhfBpo7CyHnkPILDPY+VuE5uiLsvWP5s8fW+m/o+bP4lYJtmL6CpT/JeDzk3Odobr0tIFfBzMvAtHWD+exjUM7vfWuqIud+IbmUXFfkg6k1KSiDJ3SNdEPe8OdBkdIF2aLv0oSfjiBH6zmD3tDdvpH4jbTK+sqmJTA3TyV0v0eh4Ed48gL5oq4Db9/Ip1P0bhJkhPNgfCIsbNYAtDim6m0EtZIR0sUOSTbdJeQMgVqCFkNpk8EudnZWyexnPiGoAOpWIJlDSONINlHt8gHEPRgFkYLqoDjr9MOUBw7c5QKJYuojzByj0D8aQPfsedS2vaGcatufOs+B+wIxPzzLg/OEYjct90MjiMQ2afd3HzCg33c5aw9ArH4spuZdgQi+7SbW5BRjj13N1c7e2h57irNEe4oWbzn4oKegd6vvx6yEu/LUbxqklmNonAKpLgJ8J1CASrXA778ce3NNWmA7PjGW9rpi1a2G3mkly/6bFLZv6RH5KF7p4jbxakdSO9AGCDsuA52juh9t0Cb6WUUfrkD4ScBhGuMl0etlnzwS7Pzar/J/r+1YLNaXhBjJ5iivztLT2K7CKXT7shSuyO1ZZZzXKp9i6nUkMLWrFkSRGIS6WpIIiLYak7DxTLBqImdedz3YgwPsHCW2zHy0RRvN+na8EC3NtuCeeMtT5dJjwKmEzN8X3gDgifs7OxctC+bt46fIGi1QJg5foyEfCYFKqXcKt0ocDoKnH9YZ2rfJFfIR9imrXMwt6cowt7MmzoY2VGIaXT/xzqOgVDvu6jGdxeXpMvlPUeXy5tYYqwkhqfE8JQ4PKUMT2EHHiB1Za2vGC8hXUkHTuQFKBpF9JWtvhckXypLVBhnKylbJMOYNsuVtzdJr/zwUEfAv8S5TrX+Hud6Z1A+L/aqfXgD3Tr+2JneOHPUYw3bxOhX7KAtwb18JK04Y6QABDGJ/Jp2BAhXECIUJz5WxHvSE3DvgKR1MB1tVM4neD1T8FO005T7r09MszDBywQr4jYJiCwiicvSazWiWkpSjjvmTjbU4Lolbwa1HgVBHJnlfWucuCFgN5gB04p0uL9/It1tyv/3T/DZibNRugiW9VzrC7PdQsbwFchw0P4WphS6tOAnS9KZGOmLxRWPLlOXK/QEphSwgtgpP8m2iYK4J7CzFvpTVkVgr8uUyfvhZxR1nZhL3vswpttJsie9OKKvSR9dbpHPPiE+umTJ9v1JGEH6hvMucYiYCwcvBvmw2d4HJ3BBiOTD9r5AHjp+HIKLZl6AXLLxIXUhDMjKSRfM3bTlFLO3q72YlkocZjxSuaa38Hwn8u/oDqrTzgR1Os32fhNG+BpFn70Y1TFqMhSahQkse6lw4GY4/mfnrtAggw+C8DM3u8jqGhD2mu0Ugtu9Zvs5CDCn8QhQFl8Lfuq7Snpnu5PMvSyYVqxAC003ryR63CQs8qBYNT8Kt+RJdk7wURB26AoRJH5tKeEDbn1u3TtkdSWvEszvPXwdJrgX4lKUZozpqSVyYStufWy2WvOt0gbxiXYnV0mAk2bEMS7Erh63mrN4w/zMdj7VWR1nxPG/POVLBaYMSJb0ZVj/qELBfnqUnbyYyvZOo/HSyBTSLfYGj/D6Ci6aOYmPcw+8WHZTvGcQr5qsnsfnncdjJMXRd3Bx6hYr2xvlS9G3qFDqq0qyiGpEM9oylUaEnZ2KkssI3XphEvf/RGVrZZaUrqXglSeLwW1We0lLcV9G++LXS1IbuTucuuD8WdkWxPvbLAcK9vn9d72setD+SJnVQvkvCePH02pzrb7910TJxWXm4XXEbzdi/CR8c2xzo/LKPEh87KnR9LpSm1NTvYUzR1Z4jMYJ6ezSCt0A+P73T7SFWJsNsyhc0KFpGGCHLNs64RE3QZ9Bt/zswrtsLqoczjukEwhCTNNhN1MZXzt4Nz11ZU+ewqyxHjUVkzKP1Smysch9rcBtkEGjokbOS0rZU8vYS1R6YcF6brEaTPqWbtP/oMPTovpbK9SzBeUbwbQkbS4Hz0I7S/ynpv3T1M5+dFJqwDZvpLMejJ0KFKcEndr+i91r/cW6r3Sr4s3gsdoL6IsXY7b7mJMdxzWCgr6fl7AIsb1PmO+yNpKXBbIuDP6Izu+RPovTQnn5sshxE0CKipWZ3qpyoysBCp3gxx/zNSj/TTtRSKA3U/VDFXaNzQct32IiQ/+rtv05drHVikTnqtFwXPcsPe4bhi7qO1eoetfVV4+1vm1ahj485c7o0ncWPBBEnkCAv/3tbyCI2Y/nh6OeZlMCU4C3UPzavfP2x/p3MtjhIwShi8An+kBJQrqRj5Dj3pFVJkYB3iWr87UXzMle3XHXXx8pt23sXtF1yYw6CTiEdS3iZrMpFAe29Nys1spqUtQQEcfUPF7tive8IquaS9E6biXtua1uhBbhLXqJexEIazq9wMNPh6JVFdvKweCVqxDt/knKVcU+Sbn/H90y1dKI+P6d1h9rhqmNThr/FwAA//+Ej9uW4E8AAA== + H4sIAAAAAAAC/9xcfXubRrb/X5/ilNLabo0kZMdxnCVbLGGFa71dQE5zHS8PFiOZGoECIydeW/ez32eGAQaEHDtuc7P1PnlWYs6cl995mTMzqD/+0Lj0gsalE1/VNMOwzfempfXbVs82LdWw7BNV7yn7QMfaveG4Y+sD3bItva8Nx5byIhk50Xua/U612m+zkYNk5O2w17HfqT19MP5d7WoDS3mZDBhaT1NNrYLgMCFQR5atD0xL7fUypq+Soc6wfaoZa6OtZmG4M3w36A3VTj4uF8ZPtfcVNK0CDVGC0GXDe4VhDqMWA6k/PH5Pp/V0M8epxYDqm3Z31N0g+oDjsGYbg609HFiqPtCMzjoJA84YD9rrgwy600OTEAz0QTcb22vmY2ta7THQTsfHGgmLwdCyT4bjQUfZY1Dp/W7FtL18Wk+zeKT29ote7Hft0ZhTde/Fmqltq4ruYJ3O0ImO66Sb0aOhyxl1uEZ5phmmPhzY+uBM7ekdZY9B2R7o63bvy5mjR8awY3e04wqi1jrR6LRrq50OSziG3tBQOZdohjE0lH0GT5KpnCF04mEaQ52RMTzW2FOm8XBsHRMriXWDZOgF53t1pNumZpxpBk8gVxJ0BqbdGw5PxyNG1qokU/9nbGjrxGlwqJZanQsHTY6inIQHMjdYDvQDpsjZ207ZtwfrgbUm+GWTS6L1USa5PTatYd82NdVov7U7w76qD8zEtkPGoDsar88/3OMGDZ1EFp8Zh/vrw2X7Dl9wNNqZ3tbsUW/c1QcFRgc5kT44GdrGsG+3h4YxHllaRzlk6WB2f98o51VznYaT8ErOq3RH1Xu5d15x9Xs86qiWlg+lmWNqJPDPdJpXZtvQRxb1k6GpnZyT3GxyQkg5HY+6htrROApOjdHY6LKAl5utLElIQTA04gZFbjL827ppq6apdwe2MRxa9uidIsvy2hiNn5Fm9HWTaKrIMmM7Umnpag9H7ymRIss859Go994eqab5bmjQZDvRu4oslxI3W0OGLC1kOa1oSRlbCx9ZflkgGI40Q7UIhklpkOW0ellGxeArqCVg0aQ0LbV9anc1y1aNvm0NT7WBIqdLaJlkoFnvhsYps2WcMFbkdEUtk5vj44Fm2SNDO9F/V2SyqGZJeTzWe2ktk8m6mIDyTh3ZbUMj4ZKAka5K/Ig+MMcnJ3pb1wY0Ik5tc6S2NUUmqxSltrSeNhoaVqdQNhU5rXP5eBrwyXBqiGHpJ2qbrFeGpvbJKpnyUeS0xlUQMWaKTEpb0vhY1ogE+e/v7bZKcDvTDEuR08LGMoMMaYZlKvJB1pwwtU2tTUC1eqZ9PBxapmWoo2w51X7X2mneZ9FxkDq4o5vHak+z9ZGlHvc0U5FJWUtqpjE2LcJhPbjS4tbRTTLLNs23ivwyjXhD76vGe3ugt219xBVV+SWLfH1gaoZl6/2OaRuaaZEQJdFnjIkmA2to99VBt6fZVCdFfrn/2Hknes/SjGweS6MOAULbMO+EFLySvIPHzivJe8kFr6ERX9iG9t9j3dA6SistUYMhLQpqVzMZMK20NpkDdWS+HWbVkG8am2lmjAz9jAyS9ZO0AiQqW2m5Ig/5cG0199O0ydr1vmqeMqZsrG1oHW1g6WovKbadyp64mWYgaWfKrU6reQC1Wt6K0KaKaMO0fwmlMfKcoEpWf1tWWs3DMgW3+L5Tzb7Sar56kMme0pKbD1LsK620dm+geKG05BQV1oekQZ71p5pxRhKZZKN+oreJL4yhlRRQS+0qLXmvVvOmMPUCFxoIT0DCtwsE010fpMCZIxB+kSLkIydGAkiLyAswSB+XHobWm4aLbhrB0vfhHmYRWoD0EbbqW68BX6GgBgAwNBVxOw4jDFJE2TcybmSO8+katuYOnlxti81daPxrW+/YPf1UU7YnYYTCeOde7yjb9V92dsTGLjg7cAeJCjhcLhYo2nbOWxfgnO9d7LwG9NnDsNraYZJTtz9RgyxYniwY7gFHILmwJWzt1JAfI6oJmlyFIJREByGGabgMXKE29Wq18fF4YI3toWkP1L6mCMl3odZXDRJU+QB7kI/QbrE8TB4KNbp80R1oTpA/E2ps76M0lnHU8MOJ49NN8/XyEk2wX0sW8mSUPHfDyTWKaujzgqBJG7UzRRDv8rYuRfxIWQkFOs20eCnBjed6DhOQuUmuy3t1WZLTmYMzvaOrKWu9r3Y123yrpiKzB7y0qjkkzFM1z1aSeLeB8RoXzjDr/Ugr2UoefUG0IswnUX3uTaIwDqe4PgnnDec6Jv+k2WKZq1JimzMlHU/S7SZlst3vKMKERFkA14dx3QshWgYgkcS88Xw0Qy5IUjQHSQoQlq7CGIMkffLwlRTEsPDco8YiCicNuRHEjYVHiOfhkoT17QIpl17g7sbRRGmEC9yYLZa7boyVxjxIvoQL7IVBrESE7qGZzoQS5rPTBwUOmZEsDtbsTAKuysAAYYXZtvBc9vEGUrWPUpWzh0yBI14bCpRQIz12W22/1eyObiiNGydqTJzJFWo4ZF40ufJuUNyokX5ZHZAGjSOOwhATumRCTTvTBhbZE3a7tMVK+fnhrOH8exmhRj+LBZV8r2ufMQpiok29vYxxODcnkbfADXSDAhw3au2x0SP729HYUhp4vmhMlpFv36DoMoxRPVziGl0beIowcuJ1CkPr6qZlvGetbtLe05pE6BuTMJh6s/qtM/ehVosQjm4nc9f2pvbU8fxlhLZ34I5WMzLmoVgR5dfwyfGwHfsILRSx9RqwN0fhEivi3muIr7wphp9/Ln2gLKZhBB54AYjbMfoIMoiM6c5rcENKQv4YOxDTD4J499tKILwuI+Rcw/09fMiovSmcg+iBhD5m/OCCW4rSP1qOtc9ossTIhQ+C+NsHgUwkUuLXBdII4WUUgJw9zGp6+keNBzEHIhudevSjGwbcKrBZ7KoSdTv2fBTgvw/4fxaiPFxB7Ifh9XKRocQjI3PIEJRC7Pg2j1WEJmHkKuI+nRpjJ8J0XBG3XQcj+PWnOGkoPl15PgIcLVEBqFQ6SBnXFDKJqqg0CSREyAbwJssoQsEGqTm629s8IUicrjs7IM0QiAXrNge/YBE6zsWFaREixczdfZJlJF6RKzzsa+bAzV7OkuVBSBIbslR6kpph9CUgYzQJAzcWSEpWZWQQ2jF2cPw95CRJye8nIzO0Zgjb2IkuHd/PUMJOZD+EVEJOkVpGfpqOiavFO272KgVc2AAdR1uCz4lAwv+eUhIi7THQcdy+Er7UWQdNEtY+SNPY7N2ASD+HuTJvQORWe2i9+Vku8CFqnYP4T/hBgSZcVClDU8fBBUYFAi4Dn+tZexqFcztCMy/G0a1NWkybtBLP9DiZNQ19F0Uk770o2YKmIAk7f8ewILDBgmyj+aBgMJAulYEsJV0aiHcbW7oVCSOuJXxeGHGM/vQwuvQCJ7r9YhQxsgcCiVEsHHxVDqZUxno8cZNKMVUUWAqrDbFVnFMMLxo20rQkszJoaNBtjphCABZFwiY3rsVhJecvx2MByT87JJ8Qll8MzYrwfDhESxM2RCzddk09P98H0SePXPvJxCQ+91l8vijEHM/ri4WMJy6G2jkNNDGVBhcXWSmrrmI8q2eWsawnqVzjMpW+40WOEkzDqOjmBzyce3WPki6cG+SyAxC62Z/44dKVvMDDEqGN65SC0ianpScfifdTPisBREpBvMaQbz6lP8yYbv2oDU+2ONgfDoNv0R5SSuSC5IHQIOo1XCFXMM8GLlTeMDhqq1p8G2M0n2ASrbRbf1r3DfHNhBT+dF342n47UwNcB83DQIqQHzruYyYwvUFkqnyDtj2TTfYryzgXLUlBKC2cGankfmHOH+EyChyfTJKW2YSvSqfcZTEOF/9x/iJKf0tnPRlV14udSx/9xwHL9P4+sU0qDDHlabg+F0yacFIC0vcDyA2KYi8M7BlOwwyjGIMgbtOrsCls/RR/CLZAEH8T4B7YJdsZ3MMVclyQApB3BFAUEERZqK1qefRqAYkBNXDNQjFfK/MgN5vwAvaaICb2GFpyzWxaqjU2FfGftepSJxeLHLyB0kG8KEsJbd0PZ7Uc4KIAkAJE+pASzKxvk2ESLn2X3uVdouQYiT8EK3iCQetN4QeoOFcCuUUsbb3gjEFBkinyo8Qn1C5c3uYsNuvCe6OTpCR1B1eqvSmni+/FWFoGHo5BkqZkbyBJTuHiVxDleoyiG2+ChJLCxbUAUktFmYT4JjDDxYIHc63yPYoNo2V8mN1ofoOidjhfONy9RnrtqyridtKJyHAPkyUGyQXhV4G01vJOgfQ4I21tIj0/Jx1exnvF0iF7crwSWJteaPhIKiE3Y88xAH5ucuG8Rf5H8jBNwTNIhF95sysU47MkjRVxWz8xlWzTkchYCZnqImUiTVsPqC7eFZmuqrTPYm1Vc8NPASmnHXQ5up5Z4QnfW49Ou8mtNEtu8j27s29ljzq6obWtofE+LbTza9eLQFqAWBhOmvBlfOWCeFcYWWWVfC3rSAwdNJvgLLA0QxhShRkLot5KST4z1Va/JILCBelMnQWmxxnpPGbcA6tG8fz3dQ2AXoqTKQrBj1lQuJYkAc5l8CNWGndxPQOJbc+JpZJDEjeMJog+dNE0vyshux5iiB9OrmP6OIVDCqGzuJ4dHQ2Tm9ujI4XnEvpujph0W74kqn1p4aJGy6/pErW+LL1OiibbPxDASziwj4RrbVWbIdwejdVocpVFmBNNrhRxe5m0vfOdGrfHvCODu7srmpEO+XKwLxABpZFoTp6v70WTPEqGa2vrLBudu+korT1erBr9g32+xBJVtnPVd3ih1TLlDdKaXI3zYoOd0Iyj/BA+CTR2lkPPIWSWGez8LUIz9FnZ+lf91w+N5N9R/VdxqwBbPn0Fyv8S8PnJmc5QXnqawK+DqReBaOuHs9jGoZ3cepfUxU58TfMovy9JBhJqUlEGTuGa6Ke9wU6NI6QLs8VfJQk/ncBPVv2nvQE7/SNxm+qVdhVMSuBunkrp/ojDwI5x5AUzRdyGPz6Szidv3CTJiWZAeMTYmS8AaPFNVVoJa6TDBYockm26S0iZAhWErAbTJ4Jcb+2tk1hOfE3QgUQswbKCkUaQ7KEb5AMIejANozlVwPHXafsojp0ZSoSSRdRHGLlHIP6yge/Icyltc8O4VTW+dZcBdgRi9nmXB+cIRO7bbgrHEYjs025mPuHBPu5y1h6BmH/ZTU07ApF92s0sSClHnrubqZ0+tDx3leQId5Qs3nFxQc9A79ZfD1mJd8UoXtXJrFpeOAVS3AT4QaEAFesBX/649uaKNEB2fO0t7ORFK9uNPNLL5302qeyfkyPy0L1VxO381A6ktyD0EXZcBztH9L5boM30Igo/34LwiwDCFcaLo0ZDPnhVb73Yr7P/b8zZrIYXxNgJJuifzsKT2C5CaTVbstRsSU2Z5RyXal9jKjUktzVtlgSRmES6GpKICLbqk3C+WGJUx84s7nkxhnuYO4vtGPlogrfrdG24p1ubbcG89hbdxbJDAdOJGb4vvAbBE3Z2ds6bF/Ubx18iaDRAmDp+jIRsJgUqodwq3ChwOgqcf1hnal8vL5GPsE1b52BmT1CEvak3cTCyoxDT6P7bOo6BUO27qMJ35xeky+U9R5fL61hirCSGp8TwlDg8pRRPYQfuIXFl0Vd3Rb12d1dCspr2ncgLUDSM6GtbPS9Yfi4tU2GcrqZsoQxj2jCX3uAk/fL9fRUB/yLnOtX6u5zr3UHxzNgr9+I1dOP4I2dy7cxQhzVtY6NXsoO2BXfykbTijJECEMRl5Fe0JEC4ghCheOljRbwjfQH3HkhSC5PRWumMgtczcUCCdpJ2//WRaRYu8WKJFXGbBEUalcRtydUaUS0hKcYecykbqnEdkzeFSo+CIA7N4t41XrohYDeYAtOKdLl/fCQdbsL/j4/wyYnTUboQFvVc6w3THUPK8AXIcND8GqYUuqToLxekOzGSl4tLHl0kLlfoKUwhYAWxVXySbhUFcU9g5y3056yKwF6ZKZL3wk8oajsxl8B3YUy3lGRfen5EX5U+utgin31CfHTBEu7HkzCC5C3nXeIQMRMOXgzyYb25D07gghDJh819gTx0/DgEF029ALlk80NqQxiQ1ZMumrtJ2ymmb1h7MS2XOEx5JHJNb+75TuTf0l1Uq5kKarXqzf06DPEVij55MapiVGco1HMTWPZS4cDNcPxPzm2uQQofBOEnbnae1RUg7NWbCQQ3e/XmUxBgTuMRoCy+FPzUd6X0TncoqXtZMK1YkRbqblZJ9LhOWGRBsap/EG7Ik/Ss4IMg7NBVIlj6laWED7j1uVXvkVWVvFIwv/PwVbjEnRAXojRlTE8ukQtbceNDvdGYbRU2iY+0e3m5DPCyHnGMc7Grh63mLN4wP7WdT3VWxxlx/JenfKHAFAFJk74I659VKNjPj9LTF1PZ3qnVnhuZQrLN3uARXl/BRVNn6ePMA8+WXRfvGMSrOqvn8Vnr4RhJcPQdnJ+8xcr2RvlS9DUqFHqrgiyiGtGMtk2FEWFnp6TkIkI3XriMe99Q2UqZBaUrKXjlyWJwk9Ze0lLcFdE+/+2C1EbuHqcqOH9VtgXx7ibNgZx9dgdeLasatD9TZrlQ/iVh/HBaba7VN39NlJxfpB5eR/xmI8aPwjfDNjMqq8z9pY89NZpclWpzYqo3d2bICo/RaEk6u6RC1wB+/OMjbSHWZsM0Cud0aBIG2CHLtk54xHXQp9AuPjv3LurzMoezFukEghDTdNhNVcZXDt5NTl7Zk8cwq61HTcmk1GNVimwscl8qcBtk0KiokPOcUvbYMvYclZ5ZsJ5arPrjnqXb9D/q8Lio/toK9WRB2UYwKUmby8GT0E4T/7Fp/zi10x+eFBqwzRvptAdjpwL5KUGrsv9id1vfWfeVbFW8KTxUewF99mLMdh8zsuO4QpDT97ISFiG29wmzXdZG8qJA1oXBn9H5PdBncVooz18WOW4CSFG+MtObVW50JUCuE/z8c7YGZb9rJwoJ9HaqeqjErrb5oOVrTGTof9G2b2MXW61IdK5qNcd1T5Mjv0Hoop5zicr3XT31WOvZpmXogy53Rpe8t+CBIPIEAvzjH/8AQUx/QD8YdjSbEpgCvIH8F++tNz9Xv5fBDiAhCF0EPtEHChKSjXyEHPeWrDIxCvAuWZ2vvGBG9uqOu/4KSbFtY3eLrktmVEnAIaxrEdfrdSE/tKXnZpVWlpOigog4puLxale84xVZVVyMVnEraM9tdSM0D2/Qc9yLQFjT6RkefjwUjbLYRgYGr1yJaPcbKVcW+yjl/n90S1WriIgT35mVguGkp3YfjgWOYs0iMvZ4Wyg1bwV90CjJ2AQtT7P7lyhSkvEYRb6BHkV//vhW6400w9SGJ7X/CwAA//+ee/h8tFEAAA== @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=true/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=true/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=true/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=true/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=true/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=true/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=true/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=true/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=true/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=true/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=true/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+Disable1804SystemdResolved=true/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+DisableCustomData/CustomData b/pkg/agent/testdata/AKSUbuntu1804+DisableCustomData/CustomData index 6b215154861..b7331362120 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+DisableCustomData/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+DisableCustomData/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+DisableCustomData/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+DisableCustomData/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+DisableCustomData/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+DisableCustomData/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+DisableCustomData/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+DisableCustomData/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+DisableCustomData/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+DisableCustomData/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+DisableCustomData/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+DisableCustomData/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+DisableCustomData/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+DisableCustomData/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+HTTPProxy/CustomData b/pkg/agent/testdata/AKSUbuntu1804+HTTPProxy/CustomData index 6b215154861..b7331362120 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+HTTPProxy/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+HTTPProxy/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+HTTPProxy/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+HTTPProxy/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+HTTPProxy/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+HTTPProxy/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+HTTPProxy/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+HTTPProxy/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+HTTPProxy/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+HTTPProxy/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+HTTPProxy/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+HTTPProxy/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+HTTPProxy/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+HTTPProxy/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+KubeletClientTLSBootstrapping/CustomData b/pkg/agent/testdata/AKSUbuntu1804+KubeletClientTLSBootstrapping/CustomData index 31d228d0b6f..75dcd0f3822 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+KubeletClientTLSBootstrapping/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+KubeletClientTLSBootstrapping/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+KubeletClientTLSBootstrapping/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+KubeletClientTLSBootstrapping/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+KubeletClientTLSBootstrapping/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+KubeletClientTLSBootstrapping/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+KubeletClientTLSBootstrapping/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+KubeletClientTLSBootstrapping/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+KubeletClientTLSBootstrapping/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+KubeletClientTLSBootstrapping/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+KubeletClientTLSBootstrapping/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+KubeletClientTLSBootstrapping/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+KubeletClientTLSBootstrapping/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+KubeletClientTLSBootstrapping/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+NoArtifactStreaming/CustomData b/pkg/agent/testdata/AKSUbuntu1804+NoArtifactStreaming/CustomData index f2cdfad7f2a..e30472488d6 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+NoArtifactStreaming/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+NoArtifactStreaming/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+NoArtifactStreaming/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+NoArtifactStreaming/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+NoArtifactStreaming/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+NoArtifactStreaming/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+NoArtifactStreaming/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+NoArtifactStreaming/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+NoArtifactStreaming/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+NoArtifactStreaming/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+NoArtifactStreaming/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+NoArtifactStreaming/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+NoArtifactStreaming/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+NoArtifactStreaming/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+NoneCNI/CustomData b/pkg/agent/testdata/AKSUbuntu1804+NoneCNI/CustomData index a2368c0a040..e4d69a445f3 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+NoneCNI/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+NoneCNI/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+NoneCNI/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+NoneCNI/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+NoneCNI/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+NoneCNI/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+NoneCNI/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+NoneCNI/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+NoneCNI/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+NoneCNI/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+NoneCNI/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+NoneCNI/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+NoneCNI/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+NoneCNI/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804+krustlet/CustomData b/pkg/agent/testdata/AKSUbuntu1804+krustlet/CustomData index f5f0a18423a..16eae0aacf9 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+krustlet/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804+krustlet/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804+krustlet/line33.sh b/pkg/agent/testdata/AKSUbuntu1804+krustlet/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+krustlet/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+krustlet/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804+krustlet/line70.sh b/pkg/agent/testdata/AKSUbuntu1804+krustlet/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+krustlet/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+krustlet/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804+krustlet/line9.sh b/pkg/agent/testdata/AKSUbuntu1804+krustlet/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804+krustlet/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804+krustlet/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+CustomKubeImageandBinaries/CustomData b/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+CustomKubeImageandBinaries/CustomData index 1c2cf2701f5..cac11ce6a0d 100644 --- a/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+CustomKubeImageandBinaries/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+CustomKubeImageandBinaries/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+CustomKubeImageandBinaries/line33.sh b/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+CustomKubeImageandBinaries/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+CustomKubeImageandBinaries/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+CustomKubeImageandBinaries/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+CustomKubeImageandBinaries/line70.sh b/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+CustomKubeImageandBinaries/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+CustomKubeImageandBinaries/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+CustomKubeImageandBinaries/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+CustomKubeImageandBinaries/line9.sh b/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+CustomKubeImageandBinaries/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+CustomKubeImageandBinaries/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+CustomKubeImageandBinaries/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+NoCustomKubeImageandBinaries/CustomData b/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+NoCustomKubeImageandBinaries/CustomData index f47e5ae8aae..342791406ab 100644 --- a/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+NoCustomKubeImageandBinaries/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+NoCustomKubeImageandBinaries/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+NoCustomKubeImageandBinaries/line33.sh b/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+NoCustomKubeImageandBinaries/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+NoCustomKubeImageandBinaries/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+NoCustomKubeImageandBinaries/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+NoCustomKubeImageandBinaries/line70.sh b/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+NoCustomKubeImageandBinaries/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+NoCustomKubeImageandBinaries/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+NoCustomKubeImageandBinaries/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+NoCustomKubeImageandBinaries/line9.sh b/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+NoCustomKubeImageandBinaries/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+NoCustomKubeImageandBinaries/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804ARM64Containerd+NoCustomKubeImageandBinaries/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu1804Containerd+RuncVersion/CustomData b/pkg/agent/testdata/AKSUbuntu1804Containerd+RuncVersion/CustomData index 3d103dfe261..2da82f253d9 100644 --- a/pkg/agent/testdata/AKSUbuntu1804Containerd+RuncVersion/CustomData +++ b/pkg/agent/testdata/AKSUbuntu1804Containerd+RuncVersion/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/9xcfVujSLb/P5/iDMOMOiNJiLbt2EvvYII217xdIPb0tV0eDJXISCANhd2u5n72+1RRQEGIre3s3Nl1n342oU6dl995qVNVZL7/rnXlBa0rJ75uaIZhmx9MSxt0rb5tWqph2Seq3lf2gY51+6NJz9aHumVb+kAbTSzlVTpyovc1+71qdd/lIwfpyLtRv2e/V/v6cPKbeqoNLeV1OmBofU01tRqCw5RAHVu2PjQttd/Pmf6SDvVG3TPNWBvttEvDvdH7YX+k9opxuTR+pn2ooemUaIgShC4f3isNcxh1GEiD0fEHOq2vmwVOHQbUwLRPx6cbRB9wHNZsY7B1R0NL1Yea0VsnYcAZk2F3fZBBd3ZoEoKhPjzNx/baxdiaVnsMtLPJsUbCYjiy7JPRZNhT9hhU+uC0ZtpeMa2vWTxSe/tlLw5O7fGEU3Xv1ZqpXauO7mCdztCJjuukm9GjocsZdbhGea4Zpj4a2vrwXO3rPWWPQdkd6ut278u5o8fGqGf3tOMaos460fjs1FZ7PZZwDL2RoXIu0QxjZCj7DJ40UzlD6MTDLIZ6Y2N0rLGnTOPRxDomVhLrhunQK8736li3Tc041wyeQK4l6A1Nuz8anU3GjKxTS6b+z8TQ1omz4FAttT4XDtocRTUJD2RusBroB0yR83e9qm8P1gNrTfDrNpdE66NMcndiWqOBbWqq0X1n90YDVR+aqW2HjMHpeLI+/3CPGzR0Ell8Zhzurw9X7Tt8xdFo53pXs8f9yak+LDE6KIj04cnINkYDuzsyjMnY0nrKIUsH8/S3jXJ+aa/TcBJ+kYsq3VP1fuGdX7j6PRn3VEsrhrLMMTUS+Oc6zSuza+hji/rJ0NRewUlutzkhpJxOxqeG2tM4Ck6N8cQ4ZQEvtzt5kpCCYGjEDYrcZvh3ddNWTVM/HdrGaGTZ4/eKLMtrYzR+xpox0E2iqSLLjO1YpaWrOxp/oESKLPOcx+P+B3usmub7kUGT7UQ/VWS5krj5GjJiaSHLWUVLy9ha+Mjy6xLBaKwZqkUwTEuDLGfVyzJqBn+BRgoWTUrTUrtn9qlm2aoxsK3RmTZU5GwJrZIMNev9yDhjtkxSxoqcrahVcnNyPNQse2xoJ/pvikwW1Twpjyd6P6tlMlkXU1Deq2O7a2gkXFIwslWJH9GH5uTkRO/q2pBGxJltjtWupshklaLUltbXxiPD6pXKpiJnda4YzwI+Hc4MMSz9RO2S9crQ1AFZJTM+ipzVuBoixkyRSWlLGx/LGpMg/+2D3VUJbueaYSlyVthYZpAhzbBMRT7ImxOmtql1CahW37SPRyPLtAx1nC+n2m9aN8v7PDoOMgf3dPNY7Wu2PrbU475mKjIpa2nNNCamRTisB1dW3Hq6SWbZpvlOkV9nEW/oA9X4YA/1rq2PuaIqv2aRrw9NzbBsfdAzbUMzLRKiJPqMCdFkaI3sgTo87Ws21UmRX+8/dd6J3rc0I5/H0qhHgNA2zDshBa8i7+Cp8yryXnPBa2jEF7ah/fdEN7Se0slK1HBEi4J6qpkMmE5Wm8yhOjbfjfJqyDeN7SwzxoZ+TgbJ+klaARKVnaxckYd8uHba+1na5O36QDXPGFM21jW0nja0dLWfFttebU/czjKQtDPVVqfTPoBGo2hFaFNFtGHav4bKGHlOUCWrvy0rnfZhlYJbfN+r5kDptH95lMme0pHbj1LsK52sdm+geKV05AwV1odkQZ73p5pxThKZZKN+oneJL4yRlRZQSz1VOvJeo+HNYOYFLrQQnoKE75YIZrs+SIGzQCD8JEXIR06MBJCWkRdgkD4lHobO25aLbltB4vvwAPMILUH6BFvNrTeAr1HQAAAYmYq4HYcRBimi7Fs5NzLH+XwDWwsHT6+3xfYutP6xrffsvn6mKdvTMEJhvPOg95Tt5k87O2JrF5wduIdUBRwmyyWKtp2LziU4F3uXO28AffEwrLZ2mOTM7c/UIA+WZwuGB8ARSC5sCVs7DeTHiGqCptchCBXRQYhhFiaBKzRmXqMxOZ4MrYk9Mu2hOtAUIf0uNAaqQYKqGGAPihHaLVaHyUOhQZcvugMtCIpnQoPtfZRWEkctP5w6Pt003yRXaIr9RrqQp6PkuRtOb1DUQF+WBE3aqJ0rgnhftHUZ4kfKSijRaabFSwluPddzmIDcTXJT3mvKkpzNHJ7rPV3NWOsD9VSzzXdqJjJ/wEurm0PCPFPzfCWJ9xsYr3HhDLM+jLWKreTRV0QrwmIaNRfeNArjcIab03DRcm5i8k+aL5NClQrbginpeNJuNy2T3UFPEaYkygK4OYybXghREoBEEvPW89EcuSBJ0QIkKUBYug5jDJL02cPXUhDD0nOPWssonLbkVhC3lh4hXoQJCeu7JVKuvMDdjaOp0gqXuDVfJrtujJXWIki/hEvshUGsRITusZnOlBIWs7MHJQ65kSwO1uxMA67OwABhhdm29Fz28RYytY8ylfOHTIEjXhsKlNAgPXZX7b7T7J5uKK1bJ2pNnek1ajlkXjS99m5R3GqQflkdkgaNI47CEBO6dEJDO9eGFtkTnp7SFivj54fzlvPPJEKtQR4LKvne1L5gFMREm2Y3iXG4MKeRt8QtdIsCHLca3YnRJ/vb8cRSWnixbE2TyLdvUXQVxqgZJrhB1waeIoyceJ3C0E510zI+sFY3be9pTSL0rWkYzLx5885Z+NBoRAhHd9OFa3sze+Z4fhKh7R24p9WMjHkoVkT5DXx2PGzHPkJLRey8AewtUJhgRdx7A/G1N8Pw44+VD5TFLIzAAy8AcTtGn0AGkTHdeQNuSEnIH2MHYvZBEO9/XQmE11WEnBt4eICPObU3gwsQPZDQp5wfXHJLUfZHy7H2BU0TjFz4KIi/fhTIRCIlflMijRBOogDk/GFe07M/ajyIBRD56MyjH90w4FaBzWJXtajbseejAP/ngP9HIcrDFcR+GN4kyxwlHhmZQ4agFGLHt3msIjQNI1cR9+nUGDsRpuOKuO06GMHPP8RpQ/H52vMR4ChBJaAy6SDlXDPIJKqi0iaQECEbwJsmUYSCDVILdLe3eUKQOF13dkCaIxBL1m0OfsEidJyLS9MiRIqZu/ssy0i8Ild43NfMgZu9nCfLo5CkNuSp9Cw1w+hrQMZoGgZuLJCUrMvIILRj7OD4r5CTJCX/OhmZozVH2MZOdOX4fo4SdiL7MaRScopUEvlZOqauFu+52asMcGEDdBxtBT4nAgn/c0ZJiLSnQMdx+0b4MmcdtElY+yDNYrN/CyL9HBbKvAWRW+2h8/ZHucSHqHUB4t/hOwXacFmnDE0dB5cYlQi4DHypZ+1ZFC7sCM29GEd3NmkxbdJKvNDjZNYs9F0Ukbz3onQLmoEk7PwnhgWBDZZkG80HBYOBdKkMZCnt0kC839jSrUgYcS3hy8KIY/SHh9GVFzjR3VejiJE9EkiMYung62owZTLW44mbVImpssBKWG2IrfKccnjRsJFmFZm1QUODbnPElAKwLBI2uXEtDms5fz0eS0j+0SH5jLD8amjWhOfjIVqZsCFi6bZr5vnFPog+eeLaTyam8bnP4vNVKeZ4Xl8tZDxxOdQuaKCJmTS4vMxLWX0V41m9sIzlPUntGper9Bde5CjBLIzKbn7Ew4VX9yjp0rlFLjsAoZv9qR8mruQFHpYIbdykFJQ2PS09+US8n/FZCSBSCuI1hnz7Of1hznTre210ssXB/ngY/BntIaVELkgeCC2iXssVCgWLbOBC5S2Do7FqxHcxRospJtFKu/Xndd8Q305J4c/WhW/tt3M1wHXQIgykCPmh4z5lAtMbRKbKn9C257LJfiWJC9GSFITS0pmTSu6X5vweJlHg+GSSlOQTvimdCpfFOFz+2/mLKP1nOuvZqLpe7Fz56N8OWKb3XxPbtMIQU56H60vBpAknpSD9dQC5RVHshYE9x1mYYRRjEMRtehU2g60f4o/BFgjirwI8ALtkO4cHuEaOC1IA8o4AigKCKAuNVaOIXi0gMaAGrlkq5mtlHuR2G17BXhvE1B5DS6+ZTUu1JqYi/r1RX+rkcpGDt1A5iBdlKaVt+uG8UQBcFgBSgEgfUoGZ9W0yTMPEd+ld3hVKj5H4Q7CSJxi03gy+g5pzJZA7xNLOK84YFKSZIj9JfErtwtVdwWKzLrw3emlKUndwpdqbcbr4XoylJPBwDJI0I3sDSXJKF7+CKDdjFN16UyRUFC6vBZBZKsokxDeBGS6XPJhrle9JbBgt48PsRotbFHXDxdLh7jWya19VEbfTTkSGB5gmGCQXhJ8F0lrLOyXS45y0s4n04oJ0eDnvFUuH/MnxSmBteqnhI6mE3Jw9xwD4uemF8xb5H8nDLAXPIRV+7c2vUYzP0zRWxG39xFTyTUcqYyXkqouUiTTrPKK6eF9muqrTPo+1VcMNPweknPbQ1fhmboUnfG89PjtNb6VZcpPv+Z19J3/U0w2ta42MD1mhXdy4XgTSEsTScNqEJ/G1C+J9aWSVV/K1rCMxdNBug7PE0hxhyBRmLIh6KyX9zFRb/ZQKCpekM3WWmB5nZPOYcY+sGuXz3zcNAHopTqYoBD9mQelakgQ4l8FPWGnc5c0cJLY9J5ZKDkncMJoi+tBFs+KuhOx6iCF+OL2J6eMMDimE3vJmfnQ0Sm9uj44UnkvouwVi0l31kqjxtYWLGi2/oUvU+rL0Ji2abP9AAK/gwD4Sro1VY45wdzxRo+l1HmFONL1WxO0kbXsXOw1uj3lPBnd3VzQjHfLlYF8gAioj0YI8X9+LpnmUDjfW1lk2unCzUVp7vFg1Bgf7fIklqmwXqu/wQutlyhuktbka58UGO6GZRMUhfBpo7CyHnkPILDPY+VuE5uiLsvWP5s8fW+m/o+bP4lYJtmL6CpT/JeDzk3Odobr0tIFfBzMvAtHWD+exjUM7vfWuqIud+IbmUXFfkg6k1KSiDJ3SNdEPe8OdBkdIF2aLv0oSfjiBH6zmD3tDdvpH4jbTK+sqmJTA3TyV0v0eh4Ed48gL5oq4Db9/Ip1P0bhJkhPNgfCIsbNYAtDim6m0EtZIR0sUOSTbdJeQMgVqCFkNpk8EudnZWyexnPiGoAOpWIJlDSONINlHt8gHEPRgFkYLqoDjr9MOUBw7c5QKJYuojzByj0D8aQPfsedS2vaGcatufOs+B+wIxPzzLg/OEYjct90MjiMQ2afd3HzCg33c5aw9ArH4spuZdgQi+7SbW5BRjj13N1c7e2h57irNEe4oWbzn4oKegd6vvx6yEu/LUbxqklmNonAKpLgJ8J1CASrXA778ce3NNWmA7PjGW9rpi1a2G3mkly/6bFLZv6RH5KF7p4jbxakdSO9AGCDsuA52juh9t0Cb6WUUfrkD4ScBhGuMl0etlnzwS7Pzar/J/r+1YLNaXhBjJ5iivztLT2K7CKXT7shSuyO1ZZZzXKp9i6nUkMLWrFkSRGIS6WpIIiLYak7DxTLBqImdedz3YgwPsHCW2zHy0RRvN+na8EC3NtuCeeMtT5dJjwKmEzN8X3gDgifs7OxctC+bt46fIGi1QJg5foyEfCYFKqXcKt0ocDoKnH9YZ2rfJFfIR9imrXMwt6cowt7MmzoY2VGIaXT/xzqOgVDvu6jGdxeXpMvlPUeXy5tYYqwkhqfE8JQ4PKUMT2EHHiB1Za2vGC8hXUkHTuQFKBpF9JWtvhckXypLVBhnKylbJMOYNsuVtzdJr/zwUEfAv8S5TrX+Hud6Z1A+L/aqfXgD3Tr+2JneOHPUYw3bxOhX7KAtwb18JK04Y6QABDGJ/Jp2BAhXECIUJz5WxHvSE3DvgKR1MB1tVM4neD1T8FO005T7r09MszDBywQr4jYJiCwiicvSazWiWkpSjjvmTjbU4Lolbwa1HgVBHJnlfWucuCFgN5gB04p0uL9/It1tyv/3T/DZibNRugiW9VzrC7PdQsbwFchw0P4WphS6tOAnS9KZGOmLxRWPLlOXK/QEphSwgtgpP8m2iYK4J7CzFvpTVkVgr8uUyfvhZxR1nZhL3vswpttJsie9OKKvSR9dbpHPPiE+umTJ9v1JGEH6hvMucYiYCwcvBvmw2d4HJ3BBiOTD9r5AHjp+HIKLZl6AXLLxIXUhDMjKSRfM3bTlFLO3q72YlkocZjxSuaa38Hwn8u/oDqrTzgR1Os32fhNG+BpFn70Y1TFqMhSahQkse6lw4GY4/mfnrtAggw+C8DM3u8jqGhD2mu0Ugtu9Zvs5CDCn8QhQFl8Lfuq7Snpnu5PMvSyYVqxAC003ryR63CQs8qBYNT8Kt+RJdk7wURB26AoRJH5tKeEDbn1u3TtkdSWvEszvPXwdJrgX4lKUZozpqSVyYStufWy2WvOt0gbxiXYnV0mAk2bEMS7Erh63mrN4w/zMdj7VWR1nxPG/POVLBaYMSJb0ZVj/qELBfnqUnbyYyvZOo/HSyBTSLfYGj/D6Ci6aOYmPcw+8WHZTvGcQr5qsnsfnncdjJMXRd3Bx6hYr2xvlS9G3qFDqq0qyiGpEM9oylUaEnZ2KkssI3XphEvf/RGVrZZaUrqXglSeLwW1We0lLcV9G++LXS1IbuTucuuD8WdkWxPvbLAcK9vn9d72setD+SJnVQvkvCePH02pzrb7910TJxWXm4XXEbzdi/CR8c2xzo/LKPEh87KnR9LpSm1NTvYUzR1Z4jMYJ6ezSCt0A+P73T7SFWJsNsyhc0KFpGGCHLNs64RE3QZ9Bt/zswrtsLqoczjukEwhCTNNhN1MZXzt4Nz11ZU+ewqyxHjUVkzKP1Smysch9rcBtkEGjokbOS0rZU8vYS1R6YcF6brEaTPqWbtP/oMPTovpbK9SzBeUbwbQkbS4Hz0I7S/ynpv3T1M5+dFJqwDZvpLMejJ0KFKcEndr+i91r/cW6r3Sr4s3gsdoL6IsXY7b7mJMdxzWCgr6fl7AIsb1PmO+yNpKXBbIuDP6Izu+RPovTQnn5sshxE0CKipWZ3qpyoysBCp3gxx/zNSj/TTtRSKA3U/VDFXaNzQct32IiQ/+rtv05drHVikTnqtFwXPcsPe4bhi7qO1eoetfVV4+1vm1ahj485c7o0ncWPBBEnkCAv/3tbyCI2Y/nh6OeZlMCU4C3UPzavfP2x/p3MtjhIwShi8An+kBJQrqRj5Dj3pFVJkYB3iWr87UXzMle3XHXXx8pt23sXtF1yYw6CTiEdS3iZrMpFAe29Nys1spqUtQQEcfUPF7tive8IquaS9E6biXtua1uhBbhLXqJexEIazq9wMNPh6JVFdvKweCVqxDt/knKVcU+Sbn/H90y1dKI+P6d1h9rhqmNThr/FwAA//+Ej9uW4E8AAA== + H4sIAAAAAAAC/9xcfXubRrb/X5/ilNLabo0kZMdxnCVbLGGFa71dQE5zHS8PFiOZGoECIydeW/ez32eGAQaEHDtuc7P1PnlWYs6cl995mTMzqD/+0Lj0gsalE1/VNMOwzfempfXbVs82LdWw7BNV7yn7QMfaveG4Y+sD3bItva8Nx5byIhk50Xua/U612m+zkYNk5O2w17HfqT19MP5d7WoDS3mZDBhaT1NNrYLgMCFQR5atD0xL7fUypq+Soc6wfaoZa6OtZmG4M3w36A3VTj4uF8ZPtfcVNK0CDVGC0GXDe4VhDqMWA6k/PH5Pp/V0M8epxYDqm3Z31N0g+oDjsGYbg609HFiqPtCMzjoJA84YD9rrgwy600OTEAz0QTcb22vmY2ta7THQTsfHGgmLwdCyT4bjQUfZY1Dp/W7FtL18Wk+zeKT29ote7Hft0ZhTde/Fmqltq4ruYJ3O0ImO66Sb0aOhyxl1uEZ5phmmPhzY+uBM7ekdZY9B2R7o63bvy5mjR8awY3e04wqi1jrR6LRrq50OSziG3tBQOZdohjE0lH0GT5KpnCF04mEaQ52RMTzW2FOm8XBsHRMriXWDZOgF53t1pNumZpxpBk8gVxJ0BqbdGw5PxyNG1qokU/9nbGjrxGlwqJZanQsHTY6inIQHMjdYDvQDpsjZ207ZtwfrgbUm+GWTS6L1USa5PTatYd82NdVov7U7w76qD8zEtkPGoDsar88/3OMGDZ1EFp8Zh/vrw2X7Dl9wNNqZ3tbsUW/c1QcFRgc5kT44GdrGsG+3h4YxHllaRzlk6WB2f98o51VznYaT8ErOq3RH1Xu5d15x9Xs86qiWlg+lmWNqJPDPdJpXZtvQRxb1k6GpnZyT3GxyQkg5HY+6htrROApOjdHY6LKAl5utLElIQTA04gZFbjL827ppq6apdwe2MRxa9uidIsvy2hiNn5Fm9HWTaKrIMmM7Umnpag9H7ymRIss859Go994eqab5bmjQZDvRu4oslxI3W0OGLC1kOa1oSRlbCx9ZflkgGI40Q7UIhklpkOW0ellGxeArqCVg0aQ0LbV9anc1y1aNvm0NT7WBIqdLaJlkoFnvhsYps2WcMFbkdEUtk5vj44Fm2SNDO9F/V2SyqGZJeTzWe2ktk8m6mIDyTh3ZbUMj4ZKAka5K/Ig+MMcnJ3pb1wY0Ik5tc6S2NUUmqxSltrSeNhoaVqdQNhU5rXP5eBrwyXBqiGHpJ2qbrFeGpvbJKpnyUeS0xlUQMWaKTEpb0vhY1ogE+e/v7bZKcDvTDEuR08LGMoMMaYZlKvJB1pwwtU2tTUC1eqZ9PBxapmWoo2w51X7X2mneZ9FxkDq4o5vHak+z9ZGlHvc0U5FJWUtqpjE2LcJhPbjS4tbRTTLLNs23ivwyjXhD76vGe3ugt219xBVV+SWLfH1gaoZl6/2OaRuaaZEQJdFnjIkmA2to99VBt6fZVCdFfrn/2Hknes/SjGweS6MOAULbMO+EFLySvIPHzivJe8kFr6ERX9iG9t9j3dA6SistUYMhLQpqVzMZMK20NpkDdWS+HWbVkG8am2lmjAz9jAyS9ZO0AiQqW2m5Ig/5cG0199O0ydr1vmqeMqZsrG1oHW1g6WovKbadyp64mWYgaWfKrU6reQC1Wt6K0KaKaMO0fwmlMfKcoEpWf1tWWs3DMgW3+L5Tzb7Sar56kMme0pKbD1LsK620dm+geKG05BQV1oekQZ71p5pxRhKZZKN+oreJL4yhlRRQS+0qLXmvVvOmMPUCFxoIT0DCtwsE010fpMCZIxB+kSLkIydGAkiLyAswSB+XHobWm4aLbhrB0vfhHmYRWoD0EbbqW68BX6GgBgAwNBVxOw4jDFJE2TcybmSO8+katuYOnlxti81daPxrW+/YPf1UU7YnYYTCeOde7yjb9V92dsTGLjg7cAeJCjhcLhYo2nbOWxfgnO9d7LwG9NnDsNraYZJTtz9RgyxYniwY7gFHILmwJWzt1JAfI6oJmlyFIJREByGGabgMXKE29Wq18fF4YI3toWkP1L6mCMl3odZXDRJU+QB7kI/QbrE8TB4KNbp80R1oTpA/E2ps76M0lnHU8MOJ49NN8/XyEk2wX0sW8mSUPHfDyTWKaujzgqBJG7UzRRDv8rYuRfxIWQkFOs20eCnBjed6DhOQuUmuy3t1WZLTmYMzvaOrKWu9r3Y123yrpiKzB7y0qjkkzFM1z1aSeLeB8RoXzjDr/Ugr2UoefUG0IswnUX3uTaIwDqe4PgnnDec6Jv+k2WKZq1JimzMlHU/S7SZlst3vKMKERFkA14dx3QshWgYgkcS88Xw0Qy5IUjQHSQoQlq7CGIMkffLwlRTEsPDco8YiCicNuRHEjYVHiOfhkoT17QIpl17g7sbRRGmEC9yYLZa7boyVxjxIvoQL7IVBrESE7qGZzoQS5rPTBwUOmZEsDtbsTAKuysAAYYXZtvBc9vEGUrWPUpWzh0yBI14bCpRQIz12W22/1eyObiiNGydqTJzJFWo4ZF40ufJuUNyokX5ZHZAGjSOOwhATumRCTTvTBhbZE3a7tMVK+fnhrOH8exmhRj+LBZV8r2ufMQpiok29vYxxODcnkbfADXSDAhw3au2x0SP729HYUhp4vmhMlpFv36DoMoxRPVziGl0beIowcuJ1CkPr6qZlvGetbtLe05pE6BuTMJh6s/qtM/ehVosQjm4nc9f2pvbU8fxlhLZ34I5WMzLmoVgR5dfwyfGwHfsILRSx9RqwN0fhEivi3muIr7wphp9/Ln2gLKZhBB54AYjbMfoIMoiM6c5rcENKQv4YOxDTD4J499tKILwuI+Rcw/09fMiovSmcg+iBhD5m/OCCW4rSP1qOtc9ossTIhQ+C+NsHgUwkUuLXBdII4WUUgJw9zGp6+keNBzEHIhudevSjGwbcKrBZ7KoSdTv2fBTgvw/4fxaiPFxB7Ifh9XKRocQjI3PIEJRC7Pg2j1WEJmHkKuI+nRpjJ8J0XBG3XQcj+PWnOGkoPl15PgIcLVEBqFQ6SBnXFDKJqqg0CSREyAbwJssoQsEGqTm629s8IUicrjs7IM0QiAXrNge/YBE6zsWFaREixczdfZJlJF6RKzzsa+bAzV7OkuVBSBIbslR6kpph9CUgYzQJAzcWSEpWZWQQ2jF2cPw95CRJye8nIzO0Zgjb2IkuHd/PUMJOZD+EVEJOkVpGfpqOiavFO272KgVc2AAdR1uCz4lAwv+eUhIi7THQcdy+Er7UWQdNEtY+SNPY7N2ASD+HuTJvQORWe2i9+Vku8CFqnYP4T/hBgSZcVClDU8fBBUYFAi4Dn+tZexqFcztCMy/G0a1NWkybtBLP9DiZNQ19F0Uk770o2YKmIAk7f8ewILDBgmyj+aBgMJAulYEsJV0aiHcbW7oVCSOuJXxeGHGM/vQwuvQCJ7r9YhQxsgcCiVEsHHxVDqZUxno8cZNKMVUUWAqrDbFVnFMMLxo20rQkszJoaNBtjphCABZFwiY3rsVhJecvx2MByT87JJ8Qll8MzYrwfDhESxM2RCzddk09P98H0SePXPvJxCQ+91l8vijEHM/ri4WMJy6G2jkNNDGVBhcXWSmrrmI8q2eWsawnqVzjMpW+40WOEkzDqOjmBzyce3WPki6cG+SyAxC62Z/44dKVvMDDEqGN65SC0ianpScfifdTPisBREpBvMaQbz6lP8yYbv2oDU+2ONgfDoNv0R5SSuSC5IHQIOo1XCFXMM8GLlTeMDhqq1p8G2M0n2ASrbRbf1r3DfHNhBT+dF342n47UwNcB83DQIqQHzruYyYwvUFkqnyDtj2TTfYryzgXLUlBKC2cGankfmHOH+EyChyfTJKW2YSvSqfcZTEOF/9x/iJKf0tnPRlV14udSx/9xwHL9P4+sU0qDDHlabg+F0yacFIC0vcDyA2KYi8M7BlOwwyjGIMgbtOrsCls/RR/CLZAEH8T4B7YJdsZ3MMVclyQApB3BFAUEERZqK1qefRqAYkBNXDNQjFfK/MgN5vwAvaaICb2GFpyzWxaqjU2FfGftepSJxeLHLyB0kG8KEsJbd0PZ7Uc4KIAkAJE+pASzKxvk2ESLn2X3uVdouQYiT8EK3iCQetN4QeoOFcCuUUsbb3gjEFBkinyo8Qn1C5c3uYsNuvCe6OTpCR1B1eqvSmni+/FWFoGHo5BkqZkbyBJTuHiVxDleoyiG2+ChJLCxbUAUktFmYT4JjDDxYIHc63yPYoNo2V8mN1ofoOidjhfONy9RnrtqyridtKJyHAPkyUGyQXhV4G01vJOgfQ4I21tIj0/Jx1exnvF0iF7crwSWJteaPhIKiE3Y88xAH5ucuG8Rf5H8jBNwTNIhF95sysU47MkjRVxWz8xlWzTkchYCZnqImUiTVsPqC7eFZmuqrTPYm1Vc8NPASmnHXQ5up5Z4QnfW49Ou8mtNEtu8j27s29ljzq6obWtofE+LbTza9eLQFqAWBhOmvBlfOWCeFcYWWWVfC3rSAwdNJvgLLA0QxhShRkLot5KST4z1Va/JILCBelMnQWmxxnpPGbcA6tG8fz3dQ2AXoqTKQrBj1lQuJYkAc5l8CNWGndxPQOJbc+JpZJDEjeMJog+dNE0vyshux5iiB9OrmP6OIVDCqGzuJ4dHQ2Tm9ujI4XnEvpujph0W74kqn1p4aJGy6/pErW+LL1OiibbPxDASziwj4RrbVWbIdwejdVocpVFmBNNrhRxe5m0vfOdGrfHvCODu7srmpEO+XKwLxABpZFoTp6v70WTPEqGa2vrLBudu+korT1erBr9g32+xBJVtnPVd3ih1TLlDdKaXI3zYoOd0Iyj/BA+CTR2lkPPIWSWGez8LUIz9FnZ+lf91w+N5N9R/VdxqwBbPn0Fyv8S8PnJmc5QXnqawK+DqReBaOuHs9jGoZ3cepfUxU58TfMovy9JBhJqUlEGTuGa6Ke9wU6NI6QLs8VfJQk/ncBPVv2nvQE7/SNxm+qVdhVMSuBunkrp/ojDwI5x5AUzRdyGPz6Szidv3CTJiWZAeMTYmS8AaPFNVVoJa6TDBYockm26S0iZAhWErAbTJ4Jcb+2tk1hOfE3QgUQswbKCkUaQ7KEb5AMIejANozlVwPHXafsojp0ZSoSSRdRHGLlHIP6yge/Icyltc8O4VTW+dZcBdgRi9nmXB+cIRO7bbgrHEYjs025mPuHBPu5y1h6BmH/ZTU07ApF92s0sSClHnrubqZ0+tDx3leQId5Qs3nFxQc9A79ZfD1mJd8UoXtXJrFpeOAVS3AT4QaEAFesBX/649uaKNEB2fO0t7ORFK9uNPNLL5302qeyfkyPy0L1VxO381A6ktyD0EXZcBztH9L5boM30Igo/34LwiwDCFcaLo0ZDPnhVb73Yr7P/b8zZrIYXxNgJJuifzsKT2C5CaTVbstRsSU2Z5RyXal9jKjUktzVtlgSRmES6GpKICLbqk3C+WGJUx84s7nkxhnuYO4vtGPlogrfrdG24p1ubbcG89hbdxbJDAdOJGb4vvAbBE3Z2ds6bF/Ubx18iaDRAmDp+jIRsJgUqodwq3ChwOgqcf1hnal8vL5GPsE1b52BmT1CEvak3cTCyoxDT6P7bOo6BUO27qMJ35xeky+U9R5fL61hirCSGp8TwlDg8pRRPYQfuIXFl0Vd3Rb12d1dCspr2ncgLUDSM6GtbPS9Yfi4tU2GcrqZsoQxj2jCX3uAk/fL9fRUB/yLnOtX6u5zr3UHxzNgr9+I1dOP4I2dy7cxQhzVtY6NXsoO2BXfykbTijJECEMRl5Fe0JEC4ghCheOljRbwjfQH3HkhSC5PRWumMgtczcUCCdpJ2//WRaRYu8WKJFXGbBEUalcRtydUaUS0hKcYecykbqnEdkzeFSo+CIA7N4t41XrohYDeYAtOKdLl/fCQdbsL/j4/wyYnTUboQFvVc6w3THUPK8AXIcND8GqYUuqToLxekOzGSl4tLHl0kLlfoKUwhYAWxVXySbhUFcU9g5y3056yKwF6ZKZL3wk8oajsxl8B3YUy3lGRfen5EX5U+utgin31CfHTBEu7HkzCC5C3nXeIQMRMOXgzyYb25D07gghDJh819gTx0/DgEF029ALlk80NqQxiQ1ZMumrtJ2ymmb1h7MS2XOEx5JHJNb+75TuTf0l1Uq5kKarXqzf06DPEVij55MapiVGco1HMTWPZS4cDNcPxPzm2uQQofBOEnbnae1RUg7NWbCQQ3e/XmUxBgTuMRoCy+FPzUd6X0TncoqXtZMK1YkRbqblZJ9LhOWGRBsap/EG7Ik/Ss4IMg7NBVIlj6laWED7j1uVXvkVWVvFIwv/PwVbjEnRAXojRlTE8ukQtbceNDvdGYbRU2iY+0e3m5DPCyHnGMc7Grh63mLN4wP7WdT3VWxxlx/JenfKHAFAFJk74I659VKNjPj9LTF1PZ3qnVnhuZQrLN3uARXl/BRVNn6ePMA8+WXRfvGMSrOqvn8Vnr4RhJcPQdnJ+8xcr2RvlS9DUqFHqrgiyiGtGMtk2FEWFnp6TkIkI3XriMe99Q2UqZBaUrKXjlyWJwk9Ze0lLcFdE+/+2C1EbuHqcqOH9VtgXx7ibNgZx9dgdeLasatD9TZrlQ/iVh/HBaba7VN39NlJxfpB5eR/xmI8aPwjfDNjMqq8z9pY89NZpclWpzYqo3d2bICo/RaEk6u6RC1wB+/OMjbSHWZsM0Cud0aBIG2CHLtk54xHXQp9AuPjv3LurzMoezFukEghDTdNhNVcZXDt5NTl7Zk8cwq61HTcmk1GNVimwscl8qcBtk0KiokPOcUvbYMvYclZ5ZsJ5arPrjnqXb9D/q8Lio/toK9WRB2UYwKUmby8GT0E4T/7Fp/zi10x+eFBqwzRvptAdjpwL5KUGrsv9id1vfWfeVbFW8KTxUewF99mLMdh8zsuO4QpDT97ISFiG29wmzXdZG8qJA1oXBn9H5PdBncVooz18WOW4CSFG+MtObVW50JUCuE/z8c7YGZb9rJwoJ9HaqeqjErrb5oOVrTGTof9G2b2MXW61IdK5qNcd1T5Mjv0Hoop5zicr3XT31WOvZpmXogy53Rpe8t+CBIPIEAvzjH/8AQUx/QD8YdjSbEpgCvIH8F++tNz9Xv5fBDiAhCF0EPtEHChKSjXyEHPeWrDIxCvAuWZ2vvGBG9uqOu/4KSbFtY3eLrktmVEnAIaxrEdfrdSE/tKXnZpVWlpOigog4puLxale84xVZVVyMVnEraM9tdSM0D2/Qc9yLQFjT6RkefjwUjbLYRgYGr1yJaPcbKVcW+yjl/n90S1WriIgT35mVguGkp3YfjgWOYs0iMvZ4Wyg1bwV90CjJ2AQtT7P7lyhSkvEYRb6BHkV//vhW6400w9SGJ7X/CwAA//+ee/h8tFEAAA== @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu1804Containerd+RuncVersion/line33.sh b/pkg/agent/testdata/AKSUbuntu1804Containerd+RuncVersion/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu1804Containerd+RuncVersion/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu1804Containerd+RuncVersion/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu1804Containerd+RuncVersion/line70.sh b/pkg/agent/testdata/AKSUbuntu1804Containerd+RuncVersion/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu1804Containerd+RuncVersion/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu1804Containerd+RuncVersion/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu1804Containerd+RuncVersion/line9.sh b/pkg/agent/testdata/AKSUbuntu1804Containerd+RuncVersion/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu1804Containerd+RuncVersion/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu1804Containerd+RuncVersion/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+China/CustomData b/pkg/agent/testdata/AKSUbuntu2204+China/CustomData index 03e9718c450..b0176ad3797 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+China/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+China/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+China/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+China/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+China/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+China/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+China/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+China/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+China/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+China/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+China/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+China/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+China/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+China/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG+ArtifactStreaming/CustomData b/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG+ArtifactStreaming/CustomData index c90c02fde90..5514ef1f580 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG+ArtifactStreaming/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG+ArtifactStreaming/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG+ArtifactStreaming/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG+ArtifactStreaming/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG+ArtifactStreaming/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG+ArtifactStreaming/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG+ArtifactStreaming/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG+ArtifactStreaming/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG+ArtifactStreaming/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG+ArtifactStreaming/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG+ArtifactStreaming/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG+ArtifactStreaming/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG+ArtifactStreaming/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG+ArtifactStreaming/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG/CustomData b/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG/CustomData index a655ee0f988..78c1b56373a 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/9xcfVujSLb/P5/iDMOMOiNJiLbt2EvvYII217xdIPb0tV0eDJXISCANhd2u5n72+1RRQEGIre3s3Nl1n342oU6dl995qVNVZL7/rnXlBa0rJ75uaIZhmx9MSxt0rb5tWqph2Seq3lf2gY51+6NJz9aHumVb+kAbTSzlVTpyovc1+71qdd/lIwfpyLtRv2e/V/v6cPKbeqoNLeV1OmBofU01tRqCw5RAHVu2PjQttd/Pmf6SDvVG3TPNWBvttEvDvdH7YX+k9opxuTR+pn2ooemUaIgShC4f3isNcxh1GEiD0fEHOq2vmwVOHQbUwLRPx6cbRB9wHNZsY7B1R0NL1Yea0VsnYcAZk2F3fZBBd3ZoEoKhPjzNx/baxdiaVnsMtLPJsUbCYjiy7JPRZNhT9hhU+uC0ZtpeMa2vWTxSe/tlLw5O7fGEU3Xv1ZqpXauO7mCdztCJjuukm9GjocsZdbhGea4Zpj4a2vrwXO3rPWWPQdkd6ut278u5o8fGqGf3tOMaos460fjs1FZ7PZZwDL2RoXIu0QxjZCj7DJ40UzlD6MTDLIZ6Y2N0rLGnTOPRxDomVhLrhunQK8736li3Tc041wyeQK4l6A1Nuz8anU3GjKxTS6b+z8TQ1omz4FAttT4XDtocRTUJD2RusBroB0yR83e9qm8P1gNrTfDrNpdE66NMcndiWqOBbWqq0X1n90YDVR+aqW2HjMHpeLI+/3CPGzR0Ell8Zhzurw9X7Tt8xdFo53pXs8f9yak+LDE6KIj04cnINkYDuzsyjMnY0nrKIUsH8/S3jXJ+aa/TcBJ+kYsq3VP1fuGdX7j6PRn3VEsrhrLMMTUS+Oc6zSuza+hji/rJ0NRewUlutzkhpJxOxqeG2tM4Ck6N8cQ4ZQEvtzt5kpCCYGjEDYrcZvh3ddNWTVM/HdrGaGTZ4/eKLMtrYzR+xpox0E2iqSLLjO1YpaWrOxp/oESKLPOcx+P+B3usmub7kUGT7UQ/VWS5krj5GjJiaSHLWUVLy9ha+Mjy6xLBaKwZqkUwTEuDLGfVyzJqBn+BRgoWTUrTUrtn9qlm2aoxsK3RmTZU5GwJrZIMNev9yDhjtkxSxoqcrahVcnNyPNQse2xoJ/pvikwW1Twpjyd6P6tlMlkXU1Deq2O7a2gkXFIwslWJH9GH5uTkRO/q2pBGxJltjtWupshklaLUltbXxiPD6pXKpiJnda4YzwI+Hc4MMSz9RO2S9crQ1AFZJTM+ipzVuBoixkyRSWlLGx/LGpMg/+2D3VUJbueaYSlyVthYZpAhzbBMRT7ImxOmtql1CahW37SPRyPLtAx1nC+n2m9aN8v7PDoOMgf3dPNY7Wu2PrbU475mKjIpa2nNNCamRTisB1dW3Hq6SWbZpvlOkV9nEW/oA9X4YA/1rq2PuaIqv2aRrw9NzbBsfdAzbUMzLRKiJPqMCdFkaI3sgTo87Ws21UmRX+8/dd6J3rc0I5/H0qhHgNA2zDshBa8i7+Cp8yryXnPBa2jEF7ah/fdEN7Se0slK1HBEi4J6qpkMmE5Wm8yhOjbfjfJqyDeN7SwzxoZ+TgbJ+klaARKVnaxckYd8uHba+1na5O36QDXPGFM21jW0nja0dLWfFttebU/czjKQtDPVVqfTPoBGo2hFaFNFtGHav4bKGHlOUCWrvy0rnfZhlYJbfN+r5kDptH95lMme0pHbj1LsK52sdm+geKV05AwV1odkQZ73p5pxThKZZKN+oneJL4yRlRZQSz1VOvJeo+HNYOYFLrQQnoKE75YIZrs+SIGzQCD8JEXIR06MBJCWkRdgkD4lHobO25aLbltB4vvwAPMILUH6BFvNrTeAr1HQAAAYmYq4HYcRBimi7Fs5NzLH+XwDWwsHT6+3xfYutP6xrffsvn6mKdvTMEJhvPOg95Tt5k87O2JrF5wduIdUBRwmyyWKtp2LziU4F3uXO28AffEwrLZ2mOTM7c/UIA+WZwuGB8ARSC5sCVs7DeTHiGqCptchCBXRQYhhFiaBKzRmXqMxOZ4MrYk9Mu2hOtAUIf0uNAaqQYKqGGAPihHaLVaHyUOhQZcvugMtCIpnQoPtfZRWEkctP5w6Pt003yRXaIr9RrqQp6PkuRtOb1DUQF+WBE3aqJ0rgnhftHUZ4kfKSijRaabFSwluPddzmIDcTXJT3mvKkpzNHJ7rPV3NWOsD9VSzzXdqJjJ/wEurm0PCPFPzfCWJ9xsYr3HhDLM+jLWKreTRV0QrwmIaNRfeNArjcIab03DRcm5i8k+aL5NClQrbginpeNJuNy2T3UFPEaYkygK4OYybXghREoBEEvPW89EcuSBJ0QIkKUBYug5jDJL02cPXUhDD0nOPWssonLbkVhC3lh4hXoQJCeu7JVKuvMDdjaOp0gqXuDVfJrtujJXWIki/hEvshUGsRITusZnOlBIWs7MHJQ65kSwO1uxMA67OwABhhdm29Fz28RYytY8ylfOHTIEjXhsKlNAgPXZX7b7T7J5uKK1bJ2pNnek1ajlkXjS99m5R3GqQflkdkgaNI47CEBO6dEJDO9eGFtkTnp7SFivj54fzlvPPJEKtQR4LKvne1L5gFMREm2Y3iXG4MKeRt8QtdIsCHLca3YnRJ/vb8cRSWnixbE2TyLdvUXQVxqgZJrhB1waeIoyceJ3C0E510zI+sFY3be9pTSL0rWkYzLx5885Z+NBoRAhHd9OFa3sze+Z4fhKh7R24p9WMjHkoVkT5DXx2PGzHPkJLRey8AewtUJhgRdx7A/G1N8Pw44+VD5TFLIzAAy8AcTtGn0AGkTHdeQNuSEnIH2MHYvZBEO9/XQmE11WEnBt4eICPObU3gwsQPZDQp5wfXHJLUfZHy7H2BU0TjFz4KIi/fhTIRCIlflMijRBOogDk/GFe07M/ajyIBRD56MyjH90w4FaBzWJXtajbseejAP/ngP9HIcrDFcR+GN4kyxwlHhmZQ4agFGLHt3msIjQNI1cR9+nUGDsRpuOKuO06GMHPP8RpQ/H52vMR4ChBJaAy6SDlXDPIJKqi0iaQECEbwJsmUYSCDVILdLe3eUKQOF13dkCaIxBL1m0OfsEidJyLS9MiRIqZu/ssy0i8Ild43NfMgZu9nCfLo5CkNuSp9Cw1w+hrQMZoGgZuLJCUrMvIILRj7OD4r5CTJCX/OhmZozVH2MZOdOX4fo4SdiL7MaRScopUEvlZOqauFu+52asMcGEDdBxtBT4nAgn/c0ZJiLSnQMdx+0b4MmcdtElY+yDNYrN/CyL9HBbKvAWRW+2h8/ZHucSHqHUB4t/hOwXacFmnDE0dB5cYlQi4DHypZ+1ZFC7sCM29GEd3NmkxbdJKvNDjZNYs9F0Ukbz3onQLmoEk7PwnhgWBDZZkG80HBYOBdKkMZCnt0kC839jSrUgYcS3hy8KIY/SHh9GVFzjR3VejiJE9EkiMYung62owZTLW44mbVImpssBKWG2IrfKccnjRsJFmFZm1QUODbnPElAKwLBI2uXEtDms5fz0eS0j+0SH5jLD8amjWhOfjIVqZsCFi6bZr5vnFPog+eeLaTyam8bnP4vNVKeZ4Xl8tZDxxOdQuaKCJmTS4vMxLWX0V41m9sIzlPUntGper9Bde5CjBLIzKbn7Ew4VX9yjp0rlFLjsAoZv9qR8mruQFHpYIbdykFJQ2PS09+US8n/FZCSBSCuI1hnz7Of1hznTre210ssXB/ngY/BntIaVELkgeCC2iXssVCgWLbOBC5S2Do7FqxHcxRospJtFKu/Xndd8Q305J4c/WhW/tt3M1wHXQIgykCPmh4z5lAtMbRKbKn9C257LJfiWJC9GSFITS0pmTSu6X5vweJlHg+GSSlOQTvimdCpfFOFz+2/mLKP1nOuvZqLpe7Fz56N8OWKb3XxPbtMIQU56H60vBpAknpSD9dQC5RVHshYE9x1mYYRRjEMRtehU2g60f4o/BFgjirwI8ALtkO4cHuEaOC1IA8o4AigKCKAuNVaOIXi0gMaAGrlkq5mtlHuR2G17BXhvE1B5DS6+ZTUu1JqYi/r1RX+rkcpGDt1A5iBdlKaVt+uG8UQBcFgBSgEgfUoGZ9W0yTMPEd+ld3hVKj5H4Q7CSJxi03gy+g5pzJZA7xNLOK84YFKSZIj9JfErtwtVdwWKzLrw3emlKUndwpdqbcbr4XoylJPBwDJI0I3sDSXJKF7+CKDdjFN16UyRUFC6vBZBZKsokxDeBGS6XPJhrle9JbBgt48PsRotbFHXDxdLh7jWya19VEbfTTkSGB5gmGCQXhJ8F0lrLOyXS45y0s4n04oJ0eDnvFUuH/MnxSmBteqnhI6mE3Jw9xwD4uemF8xb5H8nDLAXPIRV+7c2vUYzP0zRWxG39xFTyTUcqYyXkqouUiTTrPKK6eF9muqrTPo+1VcMNPweknPbQ1fhmboUnfG89PjtNb6VZcpPv+Z19J3/U0w2ta42MD1mhXdy4XgTSEsTScNqEJ/G1C+J9aWSVV/K1rCMxdNBug7PE0hxhyBRmLIh6KyX9zFRb/ZQKCpekM3WWmB5nZPOYcY+sGuXz3zcNAHopTqYoBD9mQelakgQ4l8FPWGnc5c0cJLY9J5ZKDkncMJoi+tBFs+KuhOx6iCF+OL2J6eMMDimE3vJmfnQ0Sm9uj44UnkvouwVi0l31kqjxtYWLGi2/oUvU+rL0Ji2abP9AAK/gwD4Sro1VY45wdzxRo+l1HmFONL1WxO0kbXsXOw1uj3lPBnd3VzQjHfLlYF8gAioj0YI8X9+LpnmUDjfW1lk2unCzUVp7vFg1Bgf7fIklqmwXqu/wQutlyhuktbka58UGO6GZRMUhfBpo7CyHnkPILDPY+VuE5uiLsvWP5s8fW+m/o+bP4lYJtmL6CpT/JeDzk3Odobr0tIFfBzMvAtHWD+exjUM7vfWuqIud+IbmUXFfkg6k1KSiDJ3SNdEPe8OdBkdIF2aLv0oSfjiBH6zmD3tDdvpH4jbTK+sqmJTA3TyV0v0eh4Ed48gL5oq4Db9/Ip1P0bhJkhPNgfCIsbNYAtDim6m0EtZIR0sUOSTbdJeQMgVqCFkNpk8EudnZWyexnPiGoAOpWIJlDSONINlHt8gHEPRgFkYLqoDjr9MOUBw7c5QKJYuojzByj0D8aQPfsedS2vaGcatufOs+B+wIxPzzLg/OEYjct90MjiMQ2afd3HzCg33c5aw9ArH4spuZdgQi+7SbW5BRjj13N1c7e2h57irNEe4oWbzn4oKegd6vvx6yEu/LUbxqklmNonAKpLgJ8J1CASrXA778ce3NNWmA7PjGW9rpi1a2G3mkly/6bFLZv6RH5KF7p4jbxakdSO9AGCDsuA52juh9t0Cb6WUUfrkD4ScBhGuMl0etlnzwS7Pzar/J/r+1YLNaXhBjJ5iivztLT2K7CKXT7shSuyO1ZZZzXKp9i6nUkMLWrFkSRGIS6WpIIiLYak7DxTLBqImdedz3YgwPsHCW2zHy0RRvN+na8EC3NtuCeeMtT5dJjwKmEzN8X3gDgifs7OxctC+bt46fIGi1QJg5foyEfCYFKqXcKt0ocDoKnH9YZ2rfJFfIR9imrXMwt6cowt7MmzoY2VGIaXT/xzqOgVDvu6jGdxeXpMvlPUeXy5tYYqwkhqfE8JQ4PKUMT2EHHiB1Za2vGC8hXUkHTuQFKBpF9JWtvhckXypLVBhnKylbJMOYNsuVtzdJr/zwUEfAv8S5TrX+Hud6Z1A+L/aqfXgD3Tr+2JneOHPUYw3bxOhX7KAtwb18JK04Y6QABDGJ/Jp2BAhXECIUJz5WxHvSE3DvgKR1MB1tVM4neD1T8FO005T7r09MszDBywQr4jYJiCwiicvSazWiWkpSjjvmTjbU4Lolbwa1HgVBHJnlfWucuCFgN5gB04p0uL9/It1tyv/3T/DZibNRugiW9VzrC7PdQsbwFchw0P4WphS6tOAnS9KZGOmLxRWPLlOXK/QEphSwgtgpP8m2iYK4J7CzFvpTVkVgr8uUyfvhZxR1nZhL3vswpttJsie9OKKvSR9dbpHPPiE+umTJ9v1JGEH6hvMucYiYCwcvBvmw2d4HJ3BBiOTD9r5AHjp+HIKLZl6AXLLxIXUhDMjKSRfM3bTlFLO3q72YlkocZjxSuaa38Hwn8u/oDqrTzgR1Os32fhNG+BpFn70Y1TFqMhSahQkse6lw4GY4/mfnrtAggw+C8DM3u8jqGhD2mu0Ugtu9Zvs5CDCn8QhQFl8Lfuq7Snpnu5PMvSyYVqxAC003ryR63CQs8qBYNT8Kt+RJdk7wURB26AoRJH5tKeEDbn1u3TtkdSWvEszvPXwdJrgX4lKUZozpqSVyYStufWy2WvOt0gbxiXYnV0mAk2bEMS7Erh63mrN4w/zMdj7VWR1nxPG/POVLBaYMSJb0ZVj/qELBfnqUnbyYyvZOo/HSyBTSLfYGj/D6Ci6aOYmPcw+8WHZTvGcQr5qsnsfnncdjJMXRd3Bx6hYr2xvlS9G3qFDqq0qyiGpEM9oylUaEnZ2KkssI3XphEvf/RGVrZZaUrqXglSeLwW1We0lLcV9G++LXS1IbuTucuuD8WdkWxPvbLAcK9vn9d72setD+SJnVQvkvCePH02pzrb7910TJxWXm4XXEbzdi/CR8c2xzo/LKPEh87KnR9LpSm1NTvYUzR1Z4jMYJ6ezSCt0A+P73T7SFWJsNsyhc0KFpGGCHLNs64RE3QZ9Bt/zswrtsLqoczjukEwhCTNNhN1MZXzt4Nz11ZU+ewqyxHjUVkzKP1Smysch9rcBtkEGjokbOS0rZU8vYS1R6YcF6brEaTPqWbtP/oMPTovpbK9SzBeUbwbQkbS4Hz0I7S/ynpv3T1M5+dFJqwDZvpLMejJ0KFKcEndr+i91r/cW6r3Sr4s3gsdoL6IsXY7b7mJMdxzWCgr6fl7AIsb1PmO+yNpKXBbIuDP6Izu+RPovTQnn5sshxE0CKipWZ3qpyoysBCp3gxx/zNSj/TTtRSKA3U/VDFXaNzQct32IiQ/+rtv05drHVikTnqtFwXPcsPe4bhi7qO1eoetfVV4+1vm1ahj485c7o0ncWPBBEnkCAv/3tbyCI2Y/nh6OeZlMCU4C3UPzavfP2x/p3MtjhIwShi8An+kBJQrqRj5Dj3pFVJkYB3iWr87UXzMle3XHXXx8pt23sXtF1yYw6CTiEdS3iZrMpFAe29Nys1spqUtQQEcfUPF7tive8IquaS9E6biXtua1uhBbhLXqJexEIazq9wMNPh6JVFdvKweCVqxDt/knKVcU+Sbn/H90y1dKI+P6d1h9rhqmNThr/FwAA//+Ej9uW4E8AAA== + H4sIAAAAAAAC/9xcfXubRrb/X5/ilNLabo0kZMdxnCVbLGGFa71dQE5zHS8PFiOZGoECIydeW/ez32eGAQaEHDtuc7P1PnlWYs6cl995mTMzqD/+0Lj0gsalE1/VNMOwzfempfXbVs82LdWw7BNV7yn7QMfaveG4Y+sD3bItva8Nx5byIhk50Xua/U612m+zkYNk5O2w17HfqT19MP5d7WoDS3mZDBhaT1NNrYLgMCFQR5atD0xL7fUypq+Soc6wfaoZa6OtZmG4M3w36A3VTj4uF8ZPtfcVNK0CDVGC0GXDe4VhDqMWA6k/PH5Pp/V0M8epxYDqm3Z31N0g+oDjsGYbg609HFiqPtCMzjoJA84YD9rrgwy600OTEAz0QTcb22vmY2ta7THQTsfHGgmLwdCyT4bjQUfZY1Dp/W7FtL18Wk+zeKT29ote7Hft0ZhTde/Fmqltq4ruYJ3O0ImO66Sb0aOhyxl1uEZ5phmmPhzY+uBM7ekdZY9B2R7o63bvy5mjR8awY3e04wqi1jrR6LRrq50OSziG3tBQOZdohjE0lH0GT5KpnCF04mEaQ52RMTzW2FOm8XBsHRMriXWDZOgF53t1pNumZpxpBk8gVxJ0BqbdGw5PxyNG1qokU/9nbGjrxGlwqJZanQsHTY6inIQHMjdYDvQDpsjZ207ZtwfrgbUm+GWTS6L1USa5PTatYd82NdVov7U7w76qD8zEtkPGoDsar88/3OMGDZ1EFp8Zh/vrw2X7Dl9wNNqZ3tbsUW/c1QcFRgc5kT44GdrGsG+3h4YxHllaRzlk6WB2f98o51VznYaT8ErOq3RH1Xu5d15x9Xs86qiWlg+lmWNqJPDPdJpXZtvQRxb1k6GpnZyT3GxyQkg5HY+6htrROApOjdHY6LKAl5utLElIQTA04gZFbjL827ppq6apdwe2MRxa9uidIsvy2hiNn5Fm9HWTaKrIMmM7Umnpag9H7ymRIss859Go994eqab5bmjQZDvRu4oslxI3W0OGLC1kOa1oSRlbCx9ZflkgGI40Q7UIhklpkOW0ellGxeArqCVg0aQ0LbV9anc1y1aNvm0NT7WBIqdLaJlkoFnvhsYps2WcMFbkdEUtk5vj44Fm2SNDO9F/V2SyqGZJeTzWe2ktk8m6mIDyTh3ZbUMj4ZKAka5K/Ig+MMcnJ3pb1wY0Ik5tc6S2NUUmqxSltrSeNhoaVqdQNhU5rXP5eBrwyXBqiGHpJ2qbrFeGpvbJKpnyUeS0xlUQMWaKTEpb0vhY1ogE+e/v7bZKcDvTDEuR08LGMoMMaYZlKvJB1pwwtU2tTUC1eqZ9PBxapmWoo2w51X7X2mneZ9FxkDq4o5vHak+z9ZGlHvc0U5FJWUtqpjE2LcJhPbjS4tbRTTLLNs23ivwyjXhD76vGe3ugt219xBVV+SWLfH1gaoZl6/2OaRuaaZEQJdFnjIkmA2to99VBt6fZVCdFfrn/2Hknes/SjGweS6MOAULbMO+EFLySvIPHzivJe8kFr6ERX9iG9t9j3dA6SistUYMhLQpqVzMZMK20NpkDdWS+HWbVkG8am2lmjAz9jAyS9ZO0AiQqW2m5Ig/5cG0199O0ydr1vmqeMqZsrG1oHW1g6WovKbadyp64mWYgaWfKrU6reQC1Wt6K0KaKaMO0fwmlMfKcoEpWf1tWWs3DMgW3+L5Tzb7Sar56kMme0pKbD1LsK620dm+geKG05BQV1oekQZ71p5pxRhKZZKN+oreJL4yhlRRQS+0qLXmvVvOmMPUCFxoIT0DCtwsE010fpMCZIxB+kSLkIydGAkiLyAswSB+XHobWm4aLbhrB0vfhHmYRWoD0EbbqW68BX6GgBgAwNBVxOw4jDFJE2TcybmSO8+katuYOnlxti81daPxrW+/YPf1UU7YnYYTCeOde7yjb9V92dsTGLjg7cAeJCjhcLhYo2nbOWxfgnO9d7LwG9NnDsNraYZJTtz9RgyxYniwY7gFHILmwJWzt1JAfI6oJmlyFIJREByGGabgMXKE29Wq18fF4YI3toWkP1L6mCMl3odZXDRJU+QB7kI/QbrE8TB4KNbp80R1oTpA/E2ps76M0lnHU8MOJ49NN8/XyEk2wX0sW8mSUPHfDyTWKaujzgqBJG7UzRRDv8rYuRfxIWQkFOs20eCnBjed6DhOQuUmuy3t1WZLTmYMzvaOrKWu9r3Y123yrpiKzB7y0qjkkzFM1z1aSeLeB8RoXzjDr/Ugr2UoefUG0IswnUX3uTaIwDqe4PgnnDec6Jv+k2WKZq1JimzMlHU/S7SZlst3vKMKERFkA14dx3QshWgYgkcS88Xw0Qy5IUjQHSQoQlq7CGIMkffLwlRTEsPDco8YiCicNuRHEjYVHiOfhkoT17QIpl17g7sbRRGmEC9yYLZa7boyVxjxIvoQL7IVBrESE7qGZzoQS5rPTBwUOmZEsDtbsTAKuysAAYYXZtvBc9vEGUrWPUpWzh0yBI14bCpRQIz12W22/1eyObiiNGydqTJzJFWo4ZF40ufJuUNyokX5ZHZAGjSOOwhATumRCTTvTBhbZE3a7tMVK+fnhrOH8exmhRj+LBZV8r2ufMQpiok29vYxxODcnkbfADXSDAhw3au2x0SP729HYUhp4vmhMlpFv36DoMoxRPVziGl0beIowcuJ1CkPr6qZlvGetbtLe05pE6BuTMJh6s/qtM/ehVosQjm4nc9f2pvbU8fxlhLZ34I5WMzLmoVgR5dfwyfGwHfsILRSx9RqwN0fhEivi3muIr7wphp9/Ln2gLKZhBB54AYjbMfoIMoiM6c5rcENKQv4YOxDTD4J499tKILwuI+Rcw/09fMiovSmcg+iBhD5m/OCCW4rSP1qOtc9ossTIhQ+C+NsHgUwkUuLXBdII4WUUgJw9zGp6+keNBzEHIhudevSjGwbcKrBZ7KoSdTv2fBTgvw/4fxaiPFxB7Ifh9XKRocQjI3PIEJRC7Pg2j1WEJmHkKuI+nRpjJ8J0XBG3XQcj+PWnOGkoPl15PgIcLVEBqFQ6SBnXFDKJqqg0CSREyAbwJssoQsEGqTm629s8IUicrjs7IM0QiAXrNge/YBE6zsWFaREixczdfZJlJF6RKzzsa+bAzV7OkuVBSBIbslR6kpph9CUgYzQJAzcWSEpWZWQQ2jF2cPw95CRJye8nIzO0Zgjb2IkuHd/PUMJOZD+EVEJOkVpGfpqOiavFO272KgVc2AAdR1uCz4lAwv+eUhIi7THQcdy+Er7UWQdNEtY+SNPY7N2ASD+HuTJvQORWe2i9+Vku8CFqnYP4T/hBgSZcVClDU8fBBUYFAi4Dn+tZexqFcztCMy/G0a1NWkybtBLP9DiZNQ19F0Uk770o2YKmIAk7f8ewILDBgmyj+aBgMJAulYEsJV0aiHcbW7oVCSOuJXxeGHGM/vQwuvQCJ7r9YhQxsgcCiVEsHHxVDqZUxno8cZNKMVUUWAqrDbFVnFMMLxo20rQkszJoaNBtjphCABZFwiY3rsVhJecvx2MByT87JJ8Qll8MzYrwfDhESxM2RCzddk09P98H0SePXPvJxCQ+91l8vijEHM/ri4WMJy6G2jkNNDGVBhcXWSmrrmI8q2eWsawnqVzjMpW+40WOEkzDqOjmBzyce3WPki6cG+SyAxC62Z/44dKVvMDDEqGN65SC0ianpScfifdTPisBREpBvMaQbz6lP8yYbv2oDU+2ONgfDoNv0R5SSuSC5IHQIOo1XCFXMM8GLlTeMDhqq1p8G2M0n2ASrbRbf1r3DfHNhBT+dF342n47UwNcB83DQIqQHzruYyYwvUFkqnyDtj2TTfYryzgXLUlBKC2cGankfmHOH+EyChyfTJKW2YSvSqfcZTEOF/9x/iJKf0tnPRlV14udSx/9xwHL9P4+sU0qDDHlabg+F0yacFIC0vcDyA2KYi8M7BlOwwyjGIMgbtOrsCls/RR/CLZAEH8T4B7YJdsZ3MMVclyQApB3BFAUEERZqK1qefRqAYkBNXDNQjFfK/MgN5vwAvaaICb2GFpyzWxaqjU2FfGftepSJxeLHLyB0kG8KEsJbd0PZ7Uc4KIAkAJE+pASzKxvk2ESLn2X3uVdouQYiT8EK3iCQetN4QeoOFcCuUUsbb3gjEFBkinyo8Qn1C5c3uYsNuvCe6OTpCR1B1eqvSmni+/FWFoGHo5BkqZkbyBJTuHiVxDleoyiG2+ChJLCxbUAUktFmYT4JjDDxYIHc63yPYoNo2V8mN1ofoOidjhfONy9RnrtqyridtKJyHAPkyUGyQXhV4G01vJOgfQ4I21tIj0/Jx1exnvF0iF7crwSWJteaPhIKiE3Y88xAH5ucuG8Rf5H8jBNwTNIhF95sysU47MkjRVxWz8xlWzTkchYCZnqImUiTVsPqC7eFZmuqrTPYm1Vc8NPASmnHXQ5up5Z4QnfW49Ou8mtNEtu8j27s29ljzq6obWtofE+LbTza9eLQFqAWBhOmvBlfOWCeFcYWWWVfC3rSAwdNJvgLLA0QxhShRkLot5KST4z1Va/JILCBelMnQWmxxnpPGbcA6tG8fz3dQ2AXoqTKQrBj1lQuJYkAc5l8CNWGndxPQOJbc+JpZJDEjeMJog+dNE0vyshux5iiB9OrmP6OIVDCqGzuJ4dHQ2Tm9ujI4XnEvpujph0W74kqn1p4aJGy6/pErW+LL1OiibbPxDASziwj4RrbVWbIdwejdVocpVFmBNNrhRxe5m0vfOdGrfHvCODu7srmpEO+XKwLxABpZFoTp6v70WTPEqGa2vrLBudu+korT1erBr9g32+xBJVtnPVd3ih1TLlDdKaXI3zYoOd0Iyj/BA+CTR2lkPPIWSWGez8LUIz9FnZ+lf91w+N5N9R/VdxqwBbPn0Fyv8S8PnJmc5QXnqawK+DqReBaOuHs9jGoZ3cepfUxU58TfMovy9JBhJqUlEGTuGa6Ke9wU6NI6QLs8VfJQk/ncBPVv2nvQE7/SNxm+qVdhVMSuBunkrp/ojDwI5x5AUzRdyGPz6Szidv3CTJiWZAeMTYmS8AaPFNVVoJa6TDBYockm26S0iZAhWErAbTJ4Jcb+2tk1hOfE3QgUQswbKCkUaQ7KEb5AMIejANozlVwPHXafsojp0ZSoSSRdRHGLlHIP6yge/Icyltc8O4VTW+dZcBdgRi9nmXB+cIRO7bbgrHEYjs025mPuHBPu5y1h6BmH/ZTU07ApF92s0sSClHnrubqZ0+tDx3leQId5Qs3nFxQc9A79ZfD1mJd8UoXtXJrFpeOAVS3AT4QaEAFesBX/649uaKNEB2fO0t7ORFK9uNPNLL5302qeyfkyPy0L1VxO381A6ktyD0EXZcBztH9L5boM30Igo/34LwiwDCFcaLo0ZDPnhVb73Yr7P/b8zZrIYXxNgJJuifzsKT2C5CaTVbstRsSU2Z5RyXal9jKjUktzVtlgSRmES6GpKICLbqk3C+WGJUx84s7nkxhnuYO4vtGPlogrfrdG24p1ubbcG89hbdxbJDAdOJGb4vvAbBE3Z2ds6bF/Ubx18iaDRAmDp+jIRsJgUqodwq3ChwOgqcf1hnal8vL5GPsE1b52BmT1CEvak3cTCyoxDT6P7bOo6BUO27qMJ35xeky+U9R5fL61hirCSGp8TwlDg8pRRPYQfuIXFl0Vd3Rb12d1dCspr2ncgLUDSM6GtbPS9Yfi4tU2GcrqZsoQxj2jCX3uAk/fL9fRUB/yLnOtX6u5zr3UHxzNgr9+I1dOP4I2dy7cxQhzVtY6NXsoO2BXfykbTijJECEMRl5Fe0JEC4ghCheOljRbwjfQH3HkhSC5PRWumMgtczcUCCdpJ2//WRaRYu8WKJFXGbBEUalcRtydUaUS0hKcYecykbqnEdkzeFSo+CIA7N4t41XrohYDeYAtOKdLl/fCQdbsL/j4/wyYnTUboQFvVc6w3THUPK8AXIcND8GqYUuqToLxekOzGSl4tLHl0kLlfoKUwhYAWxVXySbhUFcU9g5y3056yKwF6ZKZL3wk8oajsxl8B3YUy3lGRfen5EX5U+utgin31CfHTBEu7HkzCC5C3nXeIQMRMOXgzyYb25D07gghDJh819gTx0/DgEF029ALlk80NqQxiQ1ZMumrtJ2ymmb1h7MS2XOEx5JHJNb+75TuTf0l1Uq5kKarXqzf06DPEVij55MapiVGco1HMTWPZS4cDNcPxPzm2uQQofBOEnbnae1RUg7NWbCQQ3e/XmUxBgTuMRoCy+FPzUd6X0TncoqXtZMK1YkRbqblZJ9LhOWGRBsap/EG7Ik/Ss4IMg7NBVIlj6laWED7j1uVXvkVWVvFIwv/PwVbjEnRAXojRlTE8ukQtbceNDvdGYbRU2iY+0e3m5DPCyHnGMc7Grh63mLN4wP7WdT3VWxxlx/JenfKHAFAFJk74I659VKNjPj9LTF1PZ3qnVnhuZQrLN3uARXl/BRVNn6ePMA8+WXRfvGMSrOqvn8Vnr4RhJcPQdnJ+8xcr2RvlS9DUqFHqrgiyiGtGMtk2FEWFnp6TkIkI3XriMe99Q2UqZBaUrKXjlyWJwk9Ze0lLcFdE+/+2C1EbuHqcqOH9VtgXx7ibNgZx9dgdeLasatD9TZrlQ/iVh/HBaba7VN39NlJxfpB5eR/xmI8aPwjfDNjMqq8z9pY89NZpclWpzYqo3d2bICo/RaEk6u6RC1wB+/OMjbSHWZsM0Cud0aBIG2CHLtk54xHXQp9AuPjv3LurzMoezFukEghDTdNhNVcZXDt5NTl7Zk8cwq61HTcmk1GNVimwscl8qcBtk0KiokPOcUvbYMvYclZ5ZsJ5arPrjnqXb9D/q8Lio/toK9WRB2UYwKUmby8GT0E4T/7Fp/zi10x+eFBqwzRvptAdjpwL5KUGrsv9id1vfWfeVbFW8KTxUewF99mLMdh8zsuO4QpDT97ISFiG29wmzXdZG8qJA1oXBn9H5PdBncVooz18WOW4CSFG+MtObVW50JUCuE/z8c7YGZb9rJwoJ9HaqeqjErrb5oOVrTGTof9G2b2MXW61IdK5qNcd1T5Mjv0Hoop5zicr3XT31WOvZpmXogy53Rpe8t+CBIPIEAvzjH/8AQUx/QD8YdjSbEpgCvIH8F++tNz9Xv5fBDiAhCF0EPtEHChKSjXyEHPeWrDIxCvAuWZ2vvGBG9uqOu/4KSbFtY3eLrktmVEnAIaxrEdfrdSE/tKXnZpVWlpOigog4puLxale84xVZVVyMVnEraM9tdSM0D2/Qc9yLQFjT6RkefjwUjbLYRgYGr1yJaPcbKVcW+yjl/n90S1WriIgT35mVguGkp3YfjgWOYs0iMvZ4Wyg1bwV90CjJ2AQtT7P7lyhSkvEYRb6BHkV//vhW6400w9SGJ7X/CwAA//+ee/h8tFEAAA== @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+Containerd+MIG/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+CustomCloud+ootcredentialprovider/CustomData b/pkg/agent/testdata/AKSUbuntu2204+CustomCloud+ootcredentialprovider/CustomData index cca32ac8b4a..605f566396f 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+CustomCloud+ootcredentialprovider/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+CustomCloud+ootcredentialprovider/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+CustomCloud+ootcredentialprovider/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+CustomCloud+ootcredentialprovider/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+CustomCloud+ootcredentialprovider/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+CustomCloud+ootcredentialprovider/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+CustomCloud+ootcredentialprovider/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+CustomCloud+ootcredentialprovider/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+CustomCloud+ootcredentialprovider/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+CustomCloud+ootcredentialprovider/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+CustomCloud+ootcredentialprovider/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+CustomCloud+ootcredentialprovider/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+CustomCloud+ootcredentialprovider/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+CustomCloud+ootcredentialprovider/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+CustomCloud/CustomData b/pkg/agent/testdata/AKSUbuntu2204+CustomCloud/CustomData index 87962539084..504268759af 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+CustomCloud/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+CustomCloud/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+CustomCloud/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+CustomCloud/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+CustomCloud/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+CustomCloud/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+CustomCloud/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+CustomCloud/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+CustomCloud/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+CustomCloud/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+CustomCloud/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+CustomCloud/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+CustomCloud/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+CustomCloud/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+CustomLinuxOSConfig/CustomData b/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+CustomLinuxOSConfig/CustomData index 9fc1da1ade8..7eb34f62848 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+CustomLinuxOSConfig/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+CustomLinuxOSConfig/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+CustomLinuxOSConfig/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+CustomLinuxOSConfig/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+CustomLinuxOSConfig/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+CustomLinuxOSConfig/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+CustomLinuxOSConfig/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+CustomLinuxOSConfig/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+CustomLinuxOSConfig/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+CustomLinuxOSConfig/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+CustomLinuxOSConfig/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+CustomLinuxOSConfig/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+CustomLinuxOSConfig/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+CustomLinuxOSConfig/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+SerializeImagePulls/CustomData b/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+SerializeImagePulls/CustomData index 9fc1da1ade8..7eb34f62848 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+SerializeImagePulls/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+SerializeImagePulls/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/+x9+3fbNtLo7/4rsKxuYndDSXYcb+JW6aEl2uFaryWptPniXh6ahCTUFKkAoB/r6H+/Bw++qVfS3u8731n3NLbIwWAwGAwwL+iHv7VuUdi6dcn8YDjq6Y4x7Om/dRqH84jQ0F1A8BVQFwVA9cDJkQAZagM9B3F0cOBF4RTNYgw1f4HCCYH48Oj5AAAAvLk7g0DVgXoMVIP/uwBtoA7AO/YDlMaz1hsYw4mlmysl3yQov1sl/Ywxuncp7AYxoRB/iAglh0dA9Le48xEG6hK0IPVa5IlQuPDl7xaGXhR6KIDqUqBQ2RhIk0B8jzzY9FscB41ib/6NCI7b6vSLHzYZpQIZhH8CKvAetHx43wrjIAA//6yPLg8+WwLy9wM9vEc4ChcwpB3lenKhO9rYcCzd/KibcrKeS09WygHDAYCgxqOBHrq3AdRC36IupmANeeDrVwAfEQUN3TQd65Nl64Ou3XcsWzNt51Iz+gerTBps7IZk6WIY0g/xDI7dGUwnSre7rP2l5XRHw8uOkvBoSviAhSigKfj8mcmB/WHs6EPtoq/3Vgr4WwcoCvj9958AncOQQ7If6M2jKvB7wNC27iAOYdBaLFo0o8qZxzO4dGewBfnw/RKu3Rp1Kl2+B43n4gBXHPMUVYfV0y9N7Wq3UaWwuw3Kh1PszvYbk2jTKfe3YUSr3Pq3hJBPCOxFCxeF2cIc6vavI/OaNzWunEujr2eTzhdGCOlDhO98Of8Jp9yHO/Cy9X9vPvc+dMf3pze/t56ngTvrHP8EQvhIV4C9k8/aK8B+gxcvQOuHjIhOGLVeAqVRQ4NS4jaBPlBRqcNXvAtAyjhzn54gab0EdT0kbEpnnk2mMf545vQmGl853euc7HQ6QKE4hgooC0KFF2d/MS9q+XH2p/AjtxgS1qSaCGBIuA6SgqEmgrEODpMnEkSzoiA+uMtLFGT6hjy4S4egf0Pn7rbTOISPSwwaz9av2phT5VjGf+nO4GIFbn4Ex+12+yhrFUSeS1EUdhShlXJrWO0Lvewjctdy/x1j2MKQRDH2oLp0MT2urufkvcPaOEuXzjuNwykK/UVIgRpioEaAungGKVAt0DjE0PUDFN4Bdbqlr6OjtBOOe4qhHK0/BY3nascr8JVP8LEPvgrZel5iFFLQOF29PMoL3ufPoPGcR7oC6oyCxnOeravqYDO18ysKAhATmI6f0wimEeZMBlMUQKUoegXe19LfYjCsZabjAgJrejdCEk+nyEMwpKJjsnQ9CKKwRA+NgIehS2FG1TnA8EsMSXW4jBdlvrwCLqVwsaQonDFsUzcIwK3rcdQji/fSbDaVdctAytW/mZYocGBVszdExPEhOwR0tshJFNFNwqGOQeu/QxYkP3aXgj9jwlmnnGmg8ZwycPX9M1+kO3dKYjqma+qazU7X1uTy0uga+tB2eoZ17VhjrbtWJ4qxWAk94IEx7hYC4t5DH9DoHFSE5EDoGIqfvIXvoKkzdVEQYwhOTsEbcPKGCySD5kfs0riuK/hKB77cUPhhT5zXF5EPztrtSuOttCzuOK+/odNNWBmyKPyLsKoqmUcP4CuYYfhNlCfnuVLDMAql5JEH0AZtfubi56Mpoe5tYXPTqZc78+9k+/BD1VYDJ4Fa4ujxKbNhxAy3z05Pd2xUJEc0cpeU/S+hy3QU37beveHYantfA5pj7ueBG7oziH/PmLjTOJPT2QfbHjtjc/TbJ2di9q3sbF57NM+gO3VNEwpgNmMlBHNKlw4n5RsRaN6XGGF4fs4wnZ9zVOCmZiA3yk8Zvg0sz1D34NSNA5o3MW82j/hG2ZPrWzrbyJ29O8tZYMlMW/tNtVUYufUtk00K47G+a7pJeb6tv2jCN4z7r5jyDTz63kkfjnaf8QS2U222faLCKB3E/o1rObOWnD97CtaS/i3ML24HSp077C6+hQGkmftLSb1nu8G3jtsqk5usd6XkNHupjy5f1rvNmKXYqcyHProsbLtMEMcMfVdL91w0BYgMXIxCiEdYY6ftPgrjR6A0RlbZoPYgpo4PCe0orZjgFpm7GLaWd6jluSrFMaGqsEVabujNI0yyI2W89F0KHW/hdxTxt5q0EUCFc3C5I3bMCGR3nquy12iK2CFwaxdVWLmacqrYNieWrfecrsYsa3m+qX2/UsBX8OjiGTkqHIbWA9+6BJ6dAtUH7xlgOrKVkLOu1vQwVYrnrsm4x45cXc3p6qZt8Z4a2fA2A+dnvBsTGi26bjdjQs1pK1rSFqOLCPZEGCCAQtA4JPALaIPG4WHjuTux7NGA9cLH53RHk6G9Aio4Pjo6+gn4UWadQS9wMQT3Lg7dBexkLRl9TuMZrUDFOfg3CV1hWUZcq134Yc8YLsY+js6PQrjGwZKwjqFJVtx2jlfxeFFIXbZS/CKX08eTAC1Q6s3vjoa2Zgx1s+dM+sbAsJ2eORo7xlB4bMaa/aFTqxyyfnL6gUDqxAJ/6mEWB1Cl8bxDV9y0Ss6i7fY+rbgW2xG8xtOfrqkKAotNN8XgJfvvJnx5xHVW3q0PfBcuolDFMIhc/2CPWbkWGpapS4jZAkgl/3pyofd1O4knjE3jI5v8a/1Tfk6YhsYhpJBI+ZMqm3CEzTv4pNRh40K+Oxq2+MX+Ei1hSEgAZjDExAVqFFPQ2EIqOGmfvi20xvALUEP4ANTHN+13QPXdJwL+8brdBuodfNqOsLbbdExAJfHtH0BpdYd8Y5XBtJUCVNf34SMFCgOAHtUCOmSrvze0zguQxTl6WxP5qudbznWpjY2E/MlF3+hunTl3ifLszkw3hQeW6pGl0bzUetsJOnoIAY4ies7+2dZEDOe/Jqbu/NMaDdcMgvvAmn+QKCzTXmxZolis8XUwVTorgEILQgr+/pidP9WQAScC0u1zTxBb2PrQXq07hW5oUFL3tfPnBQiGlC25ynG4nhwmr/vTVGy1B2HJFlQljM280dXZOht2jbHWF6pyO21bG24mjyyb9JHW+OLq5bGAT/WhF/lQnFe2Cbw1zofCKhRIoMpgJMstvWvqdkdpHHouE0KJTTnarV0dmwoQrdbNTevm5uZm9afhUxg+RboGFzmaxbpyKfj5Z6CPLiX7KotKKDvFC6LYV855YFQzr7gUjia9lfJKvKcwdENqJCD6UBvajpG9J/Et8TBaUhSFCZQ1ubC6pjG2jdEwD+u6fpcLagq4bpR1jSzoYUi3NBTsSRsnMYkrHMVL0dTUrdHE7OrOlTmajFPIxIEogPqjrsaoT1/fL+ynJRQvPw4c+9NYz7MghHyXSYc/zNFAoBdjRJ84DRlUEtGz9O7ENOxPJXruCyg/GqY90fqObFSAMqtjLIE7a8aMo5hC270NYNaTOZrYumNrF/1sgEuMFi5+0u5dFLi3KED0ycpTNzaNgWZ+crSPmtHXLow+G46VY4FEYHluAGtbWl2trxeacLkc4+ge+RBfuN5dNJ0OIl+24zI6NkcfjZ5uOhda93p0eekMRj19IwLlHKxpu9rQyoQUI0jWN3ZM3TYN3dqERH9cRiEM6QYs+m/j0ZAp1Q1oejFOxHQdmt7EFLK7Ac0/EaUQb0DyT8O2dbMWhelS2GfH/5rmpmbr/EC9ueW/xtamxs6/xtZmBBexdwc3EuBcTLrX+nY6fsWIwm3EOL+ahq3vQtJ2dIKuIsaYQOFp9w0fhhTRJ/2RwpAkEz2xdGegDbUrvecYPX1oswWm/2brQys30TGBWCMEzcIMj9ETC2Zi6aajWZZxNczjyOnZmEAjJNQNPTiA1PVd6qZ9G0PL1oZd3RnottbTbG2Vak3Xv3AD1ghbd3GiPLWec6H1WQvTsa4naR8+IkzbjGJ6G8Whbw01m/dRbNEzLKZ+nNHEvhhNhj2HwSU9wkcviH04cAmF+BJHC4u6oe9iv3/BUem/dfuTHmOXZeumc2mOBg4jvqeZPad/sUo1kpi+j24c5PTR9YA7SMWcfdQmfVtaC7LZwn1Ei3jRzw3bjAPYjWK5sgfab8ZgMnDYiNIBmRN+YppkSzvp/ho+JZ3fvSVK9e1HiKUUKMxiEblm4jCsPhZzoDbpRNAByv1JTeBbpqUorU06q+UrYL0tsBsuoXF2wFTO8BEZPU7eEjSGV/yQbFwaXWY0miNb7tbcBV2f9bPeHq9PLLKcxGEkzkMbEopypgm3o66LbTeZVOmpSx9+NMzRcMD0f87EKppZaxHnYuYlq2u3JlUjbFO7ipEgIfXhRw5X52/ciZCcWJfnI7WRsgSonZK9SnNTQlOeGV+48BPfiJCZddOxDtfaydipQWUqdmhVMSRzTFpnqe2GOTcjNeyTbrfO7pEFL1oInSJZm6WobmKt7GdXxlbBpeNwHdx+WcFlDl/2tSuro6piSGCrICVKvJTy2R0aqQ+qLn/i+KQtkz0if4mjWwhusRNCOkUBhbjoRh6M2E5wUc6WUEOg5BspicW+iPw4gERl+3nTb+VhctkLOUqNMbcbSHkEyfN8XEdsT4ktMu5PrjjPO0Dhqr9mV1rcg0Z3aDgXxtDpGSYTHLFLsK4CRKh4nUyjYbZKgsGTaEogFSSlXKw8jaO+0f0k9YrnBsiLlLo8rCSpk/ygLLhtotxi5M+gkn7OpQYrP8xe7kEUDDaTxUM1616GUcj5Cl68KOFIzgNcYWa0/f8enfRQsZ8WuUVhC95SLjhApSB0KVDVFF6sE3l2lInRzOgN7qGfyllAgBpQLMQZ87c5yXVp/YvJxWRoTxxT7+uapXcahwG5dTAMoEsgUDFQZXgtnYpiA8nI47fN9mkyH7UQJ+2tECdbIU45xJq8diOcRRiFszTZF0sOgS8xxE8giTbdxhTEhAEiSkCOH6WUQYHVniMCEGEdAoIWywASCtzlEkeuNwc0Ag8RvnMxO8yDtENESAwJeEB0HsUUMJUfQAqDJxCHiJkYQQAQzbr6zDMtcRymO4hElZ8uwGWZxH4EghCoZIcWtTO+VVY2yosQRRiSQrRNCmFyVLH1vj4emfbW84nAY8MALiNM/QO5LDYH+Oticgo42BDir43iwUfoOTxuVRvjL22Bj9Dj5SzjiNCOWLBomSzYMbgcmb9qZg9o3a4+tpPYWcIPjZ3Uta7tWLapawN2et/GmSCaEYdGDryHISVA0a6tZtfSm2XOywcapmjqetSiGLoLFM4UsOZFcZusoYybuv3+QXICLeYC5kJ8OaVwNZ44w8TOYoMpaF5yh5ZOeI985Do+RvcQO3IVFIdfkAy++q5gCLHLE6DDKFSvxpNcjFFuxzxMzt6EkQ+BH0O2Kj8OAHVnMlSVHtKzoKdU0cORw0jf6MvPOmzJQwyNFkGRjfwU9Ktmdz84tjHQRxP7IJdHURlLZQxpGvd6Uv8aGsUUFxaOR4Om33r3Tp1G2IOq2PHYhwcX++uWCjgIIW2i5f1pEy0dCQw64Dh7znN63CBoyreMETmAs40Aggr5Sw2nqucGgZquQAYmDpUbz41idEBVhV6olKB17T7bckZarxDeRkR1PYruIVDVLzGCFPiRdwcxk/DDFMyR+zM4aYPXbd6pBKupdOs5vVH3Wjcdyx6N+Rn1aEMJXU5edqmak+p5GPXi5Sgc42iBiBdfcN5lVSxr+hJt1TBS/Xi5T3epFt/aBU0g90FfUWSym2yaRA0dcD2sLhDGEU6UfQFKZCrUA7G9lae5uB5u0SgKSCu6hzhwn279llRZTTLfCirWoBoTiFV3BkPaJHPAz4Fbm4pB8Pwz1Y3pfPfuWB9+9BByC0byYuoKHbRre8/15mxz4YYp+9tC/4ZXF+D1yR5I4CObXIglHkkK0/HfjoR9AO/enr1mG1Ji/YnaJseLMHQYrw8A8GIcAPU3MJ7Y4CXPVZtHhJ6/ffOPtxL5LyHpONI4fSFoc3iBx2OHz5CHmyh6QbiUMUW2cGknJfAlUEd1MscHlA0j/Uul3iKuFcP6hiR0l2QecUdhhiT3dINIFzvdCJBDuGZtsL10EYXZ8utxVZYu7UR7ySik/pveTVat0dc7dYcwoQzXH8A4XjaNzHxV3atEe+ZLt/N9D0aToS1cD6lS3b1zL4AudhZRHFJniaOlO+NRJWcauDOS0SP74o6hDLnA1hIJUTnHbTFf75jtAe1iSp5ISCCgUUYM6mqc/vgCXjZfgp9rwF+8ALcYund19iTvpIGAyog4abdrcW85GKwpiSIBhEtwXO61JuOvumnmdrFtG+fmDY+fiZLjUWEDXb/n1G3F6Rac7jY5eecVqlu3Mn/uLe/PdtjHdvdpoeWZI481Gzxaq4ODGaRjEVYeIs8YZ44ApvbETNloATvHuacL91EGczvH7dxz1Cl8WnYU6eR+mKMA8kI9xExG0Mgw8AN7XraXncahUMDE6gP1A1CSONo5EEd8no9/3modn71rnrw5bcrfrYWEE5ts6MGkhLuFQgrx1PXgL+4SqfciGNQ5aZ8cq+0TtX3MjsN/fAEqBi+bn9u/J0dQzfcxJIQ9kbcOGMmzSgkizw9CS4VJZeMXvmra9TWHa1ecWBaNlOdZD53G4SH6e1JQm64Tec5HS2VdpiQKZ7lcYTOiXD8VvIp/ZnBIVvSL/oWvhBkqGQUASxIAIkCuWP8VCCM6l/Wp6SiUXIUyjXEI2sX0J761A3UKyDyKAz9Z/47s3ZG9O7nenaR3oZVlfHSXUfN61sq6c8KIbT2UgOM2U9RtZlPNgeo9fgtRmYuMC1AIQXsNg1n3vN4S+JBCvEAhZO124rsgDNzClP3g9olbvcsoCnL2blG990ej68nY2Ydnjq1dFaZsp0Z97ULvd5QsttdMXJ9pKESVA1Q9t+OJS1eUYpRrHzJfvdoY+Po2ka7w9JW4wYSLNkOQIOQnBeCGvnA8BO4tDEguNJiMQARHcrEX/qClqrx3qIp82EJ1RIcNaDMEP9nnI5E7hAm38KsmWFgT8cqH1LIajQ1ARYcF19Yv0RQ0xajsvnURRZRQ7C4Zbdx5xMiqBxAWDT+XgCaAof8yxX5UGUgubJcIslBKi+g+UbXDyId9NnXFVOvNQr5Wv6WJ0fvJnrz95ZWoynb9vEixiQ0h9KGsY3J9/7tIT084EkslF7+nX/K0j9xxtxjKq6kQlhDpUiZwcc9st8XSxRAIoTSHuq1bzkfdtIzR8FxV2s12s62sgHLcPHnXbJdLnDZ7QK/T2CrNscMYXwbuTAF1T2tScItLtLRCeVA0t6DyfFkpNVhM/crgKTdW94Pem/TZmuuIpfZ+N0zFSFanJrT1fj+SjIF2pecGxj/vj4YXDXDxyXMp93QXlLlcbJGLm0v44HCyaqVeja9v0tmCbythct3WB9Rr4NPV4nS1NSnXMifdzaocspBG49BHvMIq6SZBs0qSrfPJDLwQylybvJC1XTOGHEDduZHn3uqO3beci9HItmxTG4+N4VVxo2CGSL7VFvDSBCasZK32z5egAblN9H8pWWIDT0v9paytzbEoAG5JsKiHLWVXFID2T60osDdNrmDcSRIs7l3cCtBtwrFW7p2qpuza2KQOqpCZ8e3iUpp/Teul+dcd5cx34enJ9K16+vrsrXp69o+36rvT6VR9/e6sDU/ewtdnr9tKyV/ClIZMnaqjwGE9yNoIbTx2jF794aZAyH4I64w+2TJrxeYvfynZTjzfJs3beqkX7e2tKnIuyqr2aCiFfnuLmhXgLpFM7DwH98cHdyj0z4Hw9R5Iw4CcH6iAceFceCXk4wMA5F/nB0mBsjxTcYd5hBF9OgebNLJMIGWny3Mgbj5otaoXG56fnr4+iEmBksSOSWfyQPgsz6VlC73zlD/5McryJEYgDCkSlRbNu7ekiaLW/XEuR3OxcBkvhIucX7mU14DsQ26BC7RZj3hGsv5VkKcyeaaqIXyk6hJHNOq4d0QtYCwAuq5IooixB9kum1s+q2yFhhRi4ekbRD48B0N4z2dJ/MhMXnnDphFOI+ELOvCikMJHynkr/5YTKme3POuS0bVTICYnxxeB8MCLMYYhTT7XgSQaT2QbffMm9xdrgT2X//7rfo8F/5+Vzjh9B0NREFbYOOzRtc4OBv/zpDvnyN8qobvL5U7SuKsMbpW8/83ylqryTMjEo7zf53y36lfZ8A4+nW+v4/1mUU0prrJyrYTWAeXOnAXzitvUk6FtDPTErySKKqXUZjtkGi4imQ0xP6g5mK9HVytL+Sutf+D/ZTlfRprzpfrg+Oxt8+x18/jkXfP4jK0S6i2Bqvrc0f22DdQ/ALMHvqn565M3J2cpBplZxjbWLPTTaRzu5i0phYwUUHogfGj60GInOmPQs9iGb5tGlzuQ9jfeZDIJWviEnSQoRh4/+GR23Bq9soWEVM+kOmZrgxr7eLc2UoS2Au9u5yU1n0Oj67DJe87P5UopAsvTSLnfTnpOKb8pIzCGlm7aVcJ5TZY9cgba8KovC147jed9wOXd37kE4UbBhcbOSz8qaOHOoOphyCvy3EBNqrtkvYDyI4+87dXyFoWqj7Dy47ps4G4SjAJZ8+Qwinmk/jaic7CNNu7f30pGEgvAEJAl9NAUQR+gsBgCUPb0bAoCummvSTmZAta92bMDmdBU18PaV/X3LJeC4onbuxC+Tl3UNbldlsxHmfDbgbYG3ZP0FVXcJtSkaFHJshtqY+vDyE6uE6rrdYBmYxdTJOKqO1z6v0Azfj0yb7H7Vf/rmh23Vf4KR1MUwO33/O+BZ3dddDWeZMWtY3PEt1aR0Ft+vMrcQ+tmpkBibn553mU6rzLTsnAELSWfvlPFB9W9y2XjrHORVPBV94c6mJpbZdaCpbeBpADrasrWoth4JWwxMzUXpXlLulFIcRSMAzeE+fh/w9SZ4WHq/5oYpt5LnLTDUVo3zEuM6u1VEbnKn7s2Zqdw7dy1++DkfSZY8hynonAalRb7W4udtYbG8CrNKVodHIhbkZn+GbghmkJCewgXAlADbWhc6pbdM8xO+eS6kG1IURYapXasoweMRD9iGyh0ISaGdzCPFrDVSNPLWk3WWwlQLIhCw1bONiqSkYLkhK9RxJW79Cfr+Tz7sw7RjuA59Eym/9Fu1yNL68NqmuYCwELkD1RVLRtVeTtqu8mkigygG6UhL3WTkckbpWAu5aiRxlJqWtwojaSa/V+94c0u5nWlSWa3FF+prr9AIQdY11nZiKlAFIzMkl23trdNdl7GshxTqqzL7LzaBtf6pxvlgB1M1820+pilH0kXnRbTiHhuALHm+7mEo25/wkehTewRv6zEdLRer5AWmS9pZ22ZmSk0hJsiVX24DKIntvk0n9xFcJCvmydffxZDMnrvv8rcgsaGK3Ky2P/XmQIaG0ms78iC3g49iTt1vqc3Et8WxlS8H+h7MMvriXLI0yuKvgctnmUIi5fn7IU1lS6ta3SjMIQejUqCpXV5xeRQ79oj0+maOr+aQ+tbncYh/96AKVCebxQpGP6NwsT8/5Ab5RVInoqLkYpvkmubik+LlzUV3wkndg9hTuSTHvrLCIV0ggMBl/hzgmiGwuYCeTgi0ZRGYYBCnuV0o7y6SS9ckheHr8Wy4O/5OsjSpGoJucLucp7ccZQQnaCZsZfNBxT60QNphpBKHORLMEh72IUIL8Iwj+f87enpa4ls5gYB3MAR+b4ykMV3UdC6UVYKUDYpgI2vxaplIOmK4PDFtZc/wT2A9tFB7SWOd/AJYOKen7bfnclbHcPIh6RwuePrszficscopmv8bq6H2D4i1gEDbS7hQlz1uEsD9ky0SG5/7EyslmV3ulqr37lHmMZukHhxR5UHk/KT7rD0RKlZktf6p07jUPJor2E9yO++KS1x3bT3Q5gN+yGZoCLK7TtREeG2TQhDn7z/2lirmrjmW0dCVZUO3QV8/7WkR/fCwThQJUg37b2w3MGnCpJr/dNmHJkKZ6t7HAXIeyppcJ5+I3KUdpkKhkddckTbZgKnau/911ZeeZNWeSG3ClfdkVYtu+spzcZ4NZ70eIVq+f6Gxoj7pBqyMH1kcU9+zcUNhbucn13u7ySvZst4Vb1tIS1jSBzTyYULafmDUp+I7lEM1BCI+LHwT4ElM8kaw49Gz9Ccnml81E2R73Ve9zBN8c0ZhBXz7w04bnNLQSZHA6XRtU0ndQ70+0530NuvUzBbxkkNfAuGFD/xjaFJ5onXSSnT1Wn8UniU8A9DKlLa22vYlFkxl2neddL31XgCRDHyK264onBW+DKlaiI1G7YYjVWu7KjJDlkzTQTgBTfzQ+8bJ6tSk5NNjixo+b75SWYB/K+ZBln7gxfoG1ku8fEUgd3v6E+KMTOdkkua4KMf8pr4tJjfjqLgDuUuQOHONQE0ZuY3oTD0eJpFGtQtX+AeEa6qwogCEi95DaUPXAroHBFA0QI2AblDy6UsQy+ovFL1wHHB2bvRPSSK+9W0hkmNgeq1iz6hDfO2HvfrdjtBThboT0B48gYEvvTt74LtG76agTu5xKxZT4sAhXd2pAVBj3872JCdGivhzu/bETaOdnmHggColnH1YTJeW1iXH32iOvLFgAWls0d/Yunt2Zm4Y+TeDZDvUrh+Sz5ERDMHZ6dHjEW134+Y93Fu9cGuEeIXL+TSmi1jqaoAW9bQ55fVlBfRzjL6MEfePCfc+ZH9wkZUU4RmDQzH1K1J364vaxJjKS6ao+oE7o6mwQegWzYPhJeRShFm6CxbsydWskXIYWQv2P5QM54cnKBHxv3CaWSOBgAR4EUYx0sK/bpQX3VjMIaXI8ccDZzuyDQnY1vvbfh6v123lFT95xBUROIhwndMqU5RCJXKVTl/qhDntcWlcZUj3zEunaGu98TFMslNLHsVVmSUNiv7Q0XYq3zZGXl1eSug+qz6Xce7HsR3JqS07BWgrItuVSB3XerF+7usD9UIZ0+8411FS0DIvFSqLMviLOtDzmNbCc9m3trUVs1uc92Y8rU+BJ7ZZWvCb1v6qsbitjY4KBXnVq7OzG2TvOjG/OT0hpbDvxHzt5odMvnalG0db8knuyuE5nPpuzIAUJkPGRJIOMqTc5PAgOvhupwCwWmXenOD2wtJPq8KlB+b2Q0VSt1jL6x97MPaxzHJP96XyaKeWdR9dV1vDpOLuc+BctxeyGK1fAp0OtZkqM2En8U86HwWs7rpstxKcuN/pnnDNP/PmCuhCuvq87KNceGTUUyXMc3uEwDqB5BeJsC3NVUNI/F1hcqPClDVhfuoMvsGvPlLbhk4yYnMUfGotubCgJCPTPN9TDqHuTsHlven7GFSO9vIhrv3VQag1QKKkrvQIL3MQPShiDsDc5T8vXOYe12g6mxnqs6+maqzzVSdlaiSIHjWaRwal1bnFfgpTcTINf/84+8r5QjUFA2lCOoLgmRpoc+vGlO5R19Fy07WDNCoWO+t1JZGJyXexRS2OoR1X9a9Ojj4QR9d/r8AAAD//2OpGGpAhQAA + H4sIAAAAAAAC/+y9eXfbOLIo/r8+BYatX2L3NCXZcTyJu5U+tEQ7HGsbkkonN+4fD01CMtoUqQCgl0n03d/Bwp3anO775t1zPWc6NlkoFAqFQqEW8Ie/tW9Q2L5xyW1jNO7rjjHq6x+7zYPbiNDQXUDwDVAXBUD1wPGhABlpQz0HcdhoeFE4Q/MYQ81foHBKID44/NoAAADv1p1DoOpAPQKqwf+7AB2gDsFb9gOU5letPzRGU0s3V0q+SVB+t0r6mWB071LYC2JCIX4fEUoODoHob3HnIwzUJWhD6rXJE6Fw4ct/2xh6UeihAKpLgUJlYyAtAvE98mDLb3McNIq922ciOOqosy9+2GKUCmQQ/gmowDvQ9uF9O4yDAPzyiz6+aHy2BOTvDT28RzgKFzCkXeVqeq472sRwLN38oJtysr6WnqyUBsMBgKDGo4EeujcB1ELfoi6mYA154Ns3AB8RBU3dNB3rk2Xrw549cCxbM23nQjMGjVUmDTZ2Q7J0MQzp+3gOJ+4cphOl2z3W/sJyeuPRRVdJeDQjfMBCFNAMfP7M5MB+P3H0kXY+0PsrBfytCxQF/P77z4DewpBDsh/o3UZV4HeAoW3fQRzCoL1YtGlGlXMbz+HSncM25MP3S7h2a9StdPkONL8WB7jimGeoOqy+fmFql7uNKoXdbVA+nGF3vt+YRJtuub8NI1rl1r8lhHxKYD9auCjMFuZIt38bm1e8qXHpXBgDPZt0vjBCSB8ifOfL+U845T7cgZft///6c/99b3J/cv17++sscOfdo59BCB/pCrB38llnBdi/4MUL0P4hI6IbRu2XQGnW0KCUuE2gD1RU6vAn3gUgZZy5v54gab8EdT0kbEpnnk2mMflw6vSnGl85vauc7HS7QKE4hgooC0KFF6d/MS9q+XH6p/AjtxgS1qSaCGBIuA6SgqEmgrEODpMnEkTzoiA+uMsLFGT6hjy4S4egf0Pn7qbbPICPSwyaX63ftAmnyrGM/9Kd4fkKXP8IjjqdzmHWKog8l6Io7CpCK+XWsDoQetlH5K7t/jvGsI0hiWLsQXXpYnpUXc/Je4e1cZYuve02D2Yo9BchBWqIgRoB6uI5pEC1QPMAQ9cPUHgH1NmWvg4P00447hmGcrT+DDS/VjtegW98go988E3I1tclRiEFzZPVy8O84H3+DJpf80hXQJ1T0PyaZ+uqOthM7fyGggDEBKbj5zSCWYQ5k8EMBVApil6B97X0txkMa5npuIDAmt6NkMSzGfIQDKnomCxdD4IoLNFDI+Bh6FKYUXUGMPwSQ1IdLuNFmS8/AZdSuFhSFM4ZtpkbBODG9TjqscV7abVayrplIOXq30xLFDiwqtkbIuL4kBkB3S1yEkV0k3CoE9D+vyELkh+7S8GfMeGsU8400PyaMnD1/TNfpDtnJTEd0zN1zWbWtTW9uDB6hj6ynb5hXTnWROut1YliLFZCD3hgjLuBgLj30Ac0OgMVIWkIHUPxk7fwHTRzZi4KYgzB8Ql4DY5fc4Fk0NzELo3rqoKvZPDlhsKNPWGvLyIfnHY6lcZbaVnccV4/o9NNWBmyKPyLsKoquY0ewDcwx/BZlCf2XKlhGIVS8sgD6IAOt7m4fTQj1L0pbG469XI2/05nH25UbT3gJFBLHD0+ZWcYMcOd05OTHRsVyRGN3CVl/5fQZTqKb9tvX3Nstb2vAc0x9/PQDd05xL9nTNxpnIl19t62J87EHH/85EzNgZXZ5rWmeQbdrWuaUACzGSshuKV06XBSnolA877ECMOzM4bp7IyjAtc1A7lWfs7wbWB5hroPZ24c0PwR83rziK+VPbm+pbON3Nm7s9wJLJlpa7+ptgojt54z2aQwHuu7ppuU59v6iyZ8w7j/iinfwKPvnfTRePcZT2C71WbbJyqM0kHs37iWM2vJ+bOnYC3pz2F+cTtQ6txhd/ENDCDN3F9K6j3bDb591FGZ3GS9KyWn2Ut9fPGy3m3GTordynzo44vCtssEccLQ97R0z0UzgMjQxSiEeIw1Zm0PUBg/AqU5tsoHag9i6viQ0K7Sjgluk1sXw/byDrU9V6U4JlQVZ5G2G3q3ESaZSRkvfZdCx1v4XUX8riZtBFDBDi53xMyMQHbnuSp7jWaIGYFbu6jCytWUU8W2ObVsve/0NHaylvZN7fuVAr6BRxfPyWHBGFoPfOMSeHoCVB+8Y4DpyFZCznpay8NUKdpd00mfmVw9zenppm3xnprZ8DYD52e8FxMaLXpuL2NCjbUVLWmb0UUEeyIMEEAhaB4Q+AV0QPPgoPm1N7Xs8ZD1wsfn9MbTkb0CKjg6PDz8GfhRdjqDXuBiCO5dHLoL2M1aMvqc5le0AhXn4N8kdIVlGXHtTuGHPWO4GPs4Oj8K4RoHS8I6hiZZcds5XsXjRSF12Urxi1xOH08DtECpN783HtmaMdLNvjMdGEPDdvrmeOIYI+GxmWj2+26tcsj6yekHAqkTC/yph1kYoErz6w5d8aNVYot2Ovu04lpsR/AaT3+6pioILDbdFIOX7H/X4ctDrrPybn3gu3ARhSqGQeT6jT1m5epNTVRFsJspXxxCCokQrZxbTJsYMswwmZ4PjJ5zpX/Kz1S5adtdIjZHEPN1nDsWKDxoUY8sjRSlJ4OdoKOHEOAoomfsP9uaiOH819TUnX9a49GaQXD/SusPEoVl2ostSxQL+VkHU6WzAihWGKTg74+ZbaOGDPhqeq4PdNvpDbiXgQmNPrJX6yycDQ1KqqR2/rwAwZC27uBTxdSqJ4cpsf1pKrbag7BEvVUJYzNv9HRnYhqjnjHRBmIZbqdta8PN5JFliz7SGj9PvTwW8Kk+9CIfir1wm8Bbk3yYpUKBBKoMRrLc0numbneV5oHnMiGU2JTD3drVsakA0W5fX7evr6+vV38aPoXhU6TbaZGjWawrl4JffgH6+EKyr7KohLJTvCCKfeWMB90085JL4XjaXyk/ifcUhm5IjQREH2kj2zGy9yS+IR5GS4qiMIGypudWzzQmtjEe5WFd1+9xQU0B142yrpEFPQzploaCPWnjxN99iaN4KZqaujWemj3duTTH00kKmTinBNBg3NMY9enr+4X9tITi5YehY3+a6HkWhJCO3AVMhz/K0UCgF2NEnzgNGVQSLbL03tQ07E8leu4LKD8Ypj3VBo5sVIAyq2MsgTtrxoyjmELbvQlg1pM5ntq6Y2vng2yAS4wWLn7S7l0UuDcoQPTJylM3MY2hZn5ytA+aMdDOjQEbjpVjgURgeW4Aa1taPW2gF5pwuZzg6B75EJ+73l00mw0jX7bjMjoxxx+Mvm4651rvanxx4QzHfX0jAuUMrGm72tDKhBQjSNY3dkzdNg3d2oREf1xGIQzpBiz6x8l4xJTqBjT9GCdiug5Nf2oK2d2A5p+IUog3IPmnYdu6WYvCdCkcMNOyprmp2To31ja3/NfE2tTY+dfE2ozgPPbu4EYCnPNp70rfTsdvGFG4jRjnN9Ow9V1I2o5O0FXEGBMovLi+4cOQIvqkP1IYkmSip5buDLWRdqn3HaOvj2y2wPSPtj6ychMdE4g1QtA8zPAYfbFgppZuOpplGZejPI6cno0JNEJC3dCDQ0hd36Vu2rcxsmxt1NOdoW5rfc3WVqnWdP1zN2CNsHUXJ8pT6zvn2oC1MB3rapr24SPCtM04pjdRHPrWSLN5H8UWfcNi6scZT+3z8XTUdxhc0iN89ILYh0OXUIgvcLSwqBv6LvYH5xyV/rE3mPYZuyxbN50Lczx0GPF9zew7g/NVqpHE9H1w4yCnj66G3Pkm5uyDNh3YMoNINlu4j2gRLwa5YZtxAHtRLFf2UPtoDKdDh40oHZA55RbTNFvaSfdX8Cnp/O4NUapvP0AspUBRGiuZxySMYfWxmF+zSSeCLlDuj2uCqjLlQWlv0lltXwHrzwK74RIaZwdMlewRy0m8AsIw2ZA1kjsj8APNVbHtprNNav7oow+GOR4NmSLOnXWK5521iHOB0dLxZ7cm1dPQpnYVa11C6qMPHK7OqbQTITn5Ks9HeljJslx2yugpzU0JTXlmfOGnTVyf4qC+bjrW4Vo7GTs1qEzFDq0qJ7ock9YdmXbDnJuRGvZJ30p3d/exFy3E4paszfIQN7FW9rMrY6vg0ju0Dm6/1M8yhy8G2qXVVVUxJLBVkBJtWsrr642M1BlUFyQ/Ou7IiH7kL3F0A8ENdkJIZyigEBd9hcMxU8nn5ZA4O5TnGynJ0XkR+XEAico21pbfzsPkQtQ5So0JN+BJeQTJ87zzXuwTyaFgMphecp53gcJ1cM32sLgHzd7IcM6NkdM3TCY4Ql2zrgJEqHidTKNhtkuCwTMlSiAVJKWEmzyN44HR+yT1iucGyIuUumSbJHOP/KAs+CFBucHIn0Ml/TuX/6n8MH+5B1Ew2EwW98evexlGIecrePGihCPZmLnCzGj77x6ddBWxnza5QWEb3lAuOEClIHQpUNUUXqwTacTJ7Fd2+gzuoZ/KWUCAGlAsxBnztznJdWn9i+n5dGRPHVMf6Jqld5sHAblxMAygSyBQMVBlDCWdimIDycijN63OSTIftRDHna0Qx1shTjjEmuRlI5xHGIXzNKMTSw6BLzHETyAJKdzEFMSEASJKQI4fpbwwgdW+RQQgwjoEBC2WASQUuMsljlzvFtAIPET4zsXMqgZph4iQGBLwgOhtFFPAVH4AKQyeQBwiZusHAUA06+ozT6fDcZjuIBJVfroAl2US+xEIQqCSHVrUzvhWWdkoL0IUYUgKIRUphImpYusDfTI27a32icBjwwAuI0z9hlwWm6O4dYEXBTQ2xHFrQzXwEXoOD07UBnJLW+Aj9HjNwiQitCsWLFomC3YCLsbmb5rZB1qvp0/sJECS8EMzbeNC69mOZZu6NjRGl1s5E0Rz4tDIgfcwpAQo2pXV6ll6q8x5+UDDFM1cj1oUQ3eBwrkC1rwobpM1lPEz52DQSCzQYsJXLo6TUwqXk6kzSg48bDAFzUvu0NIJ75GPXMfH6B5iR66C4vALksFX3yUMIXZ5lmsYherlZJoLJMntmMdC2Zsw8iHwY8hW5YchoO5cxoxSIz2LbEkVPRo7jPSNTvWsw7Y0Ymi0CIps5FbQb5rde+/YxlAfT+1GLlheGUtlDGmu7npS/xoaxRQXFo5Hg5bffvtWnUXYg6rY8dgfDy721y0V0AghbaHl/UkLLR0JDLrgKHvOEzfcIGjJt4wROYDTjQCCCvmPGs5Uzw0CNV2BDEwYlRvtRjE6oKpCL1TqjHr2gG05Y61fiGEioroeRfcQqOqXGEEK/Mi7g5hJ+EEK5sj9GRx3wKsO71SC1ZQz9Z3+uHelm45ljyfcRj3cUCeVk5ddSqOkeh5F/Xg5Dic4WiDixeecd1mpwpq+RFs1jFQ/Xu7TXarFt3ZBE8h90FcUmewmmyZRKAVcD6sLhHGEE2VfgBLh6HogtrfyXAbXw20aRQFpR/cQB+7Tjd+WKqtFbreCijWoxgRi1Z3DkLbILeB24NamYhA8yUh1Y3q7e3esDz96CPkJRvJi5godtGt7z/Vu2ebCD6bsdwv9G16eg1fHeyCBj2xyIZZ4JClMxz8fCfsDvH1z+optSMnpTxSwOF6EocN43QDAi3EA1I9gMrXBS56QdBsRevbm9T/eSOS/hqTryMPpC0Gbw7P4H7t8hjzcQtELwqWMKbKFS7spgS+BOq6TOT6gbBjpbyr1FnGtGNY3JKG7JLcR99hlSHJPN4h0sdONADmEa9YG20sXUZgtvz5XZenSTrSXDAfqH/VesmqNgd6tM8KEMlxvgHG8bBrZ8VV1LxPtma/Pzfc9HE9HtnA9pEp19869ALrYWURxSJ0ljpbunId3nFngzklGj+yLO4Yy5AJbW2S95DyoxaSsI7YHdIp5VyIzgIBmGTGoK2T54wt42XoJfqkBf/EC3GDo3tWdJ3knTQRURsRxp1OLe4thsKbuhQQQLsFRudeatK7qppnbxbZtnJs3PG4TJeZRYQNdv+fUbcXpFpzuNjl552WIW7cy/9Zb3p/usI/t7tNCy1NHmjUbPFqrRmMO6UTEd0fIMyaZI4CpPTFTNlrA7lHu6cJ9lFHV7lEn9xx1C38tu4p0cj/cogDyaizEjoygmWHgBntetpfd5oFQwMQaAPU9UJKA1hkQJj5Puj5rt49O37aOX5+05L/thYQTm2zowaROt41CCvHM9eCv7hKp9yIq0z3uHB+pnWO1c8TM4T++ABWDl63Pnd8TE1TzfQwJYU9kabmRPKvUmfFEHbRUmFQ2f+WrplNfWLZ2xYll0Ux5nvXQbR4coL8nVZPpOpF2PloqYib50QBaMJhZPIx4Jbym/PwZzusyQxM/bJKcYxofNFvfmgkn3bEyG+4OPil12Hgm1O5oeFIdxxMtYUhIAOYwxMQFahRT0NxCKjjunLwptMbwC1BD+ADUx9edt0D13ScC/vGq0wHqHXzajrC223RMQCXxzR9AafdGPPFcXjaxUoDq+j58pDyz5A/oUU2EKLv9kXVWgCzmMBbmquD3ZUc5cdJ38tSwYzYjx7gweoxwc2zLrBdeJlAfx5GF9aIz4c1iR8lMNACOKN/EACJA6lT/JzDPzp0EBjNVxKlrETwgeptMQuad2kM6c/XHNMYh6BQiWbuwwBlo5/qgq2QS10ocqGlARZW0q57b9cT9HMp/8JoQpixQZ4DcRnHgJ/udIxs4cjhObiqcZC6FFSID87swkBfpVvYZJ4yYqUUJOOoww6QDblxyC1Tv8TlEZS5hrjBDCDprxJV1z4tIgQ8pxAsUQtZuJykWhIEbmAozuHniXp5lFAU5/07RnBmMx1fTibMPzxxbu6yNue6DZGMQ9nmLt2a8JYz8BhWuhhi+BD83YoEbpi4yl4AQQh/6SiWQKWJ3udAgf9BWVU4QVIU4Fyo0umyMmyH4wTMXfvzeIHZNILsmGpsP92ZFIhuAis40bkm8RDPQEkOyB9Z5FFFCsbtktHHHJiOrHkCctrnNDFoAhv7LFPthZSC5kHIidNms/req7IpELaJ74XD1IQjcGxgUt9LNmlvJbQGL6D7ZHEeRDwf74qqWHO23jOTNOcraIaoqDQgXXJVXvrMVI54l9xHdwSfxaoajRXF9rRnpReDOgVLC3F1rjOyApUxLd5v98//ksvNhcNCiAWGieYECePiy9EJeyHUFn9LXz1pcru8/X7wZR8ua1PX975byfFhNIqtY+n39gifG5fwQxRyLmvp8CZHuagQu7iHuRYuliyEQgmGOdFu3nA+6aRnj0ZmqdFqdVkdZAeWodfy21SkXGG4OTV2lSS80xxVjwiRaAXVPa4oUiptTaW/i2So5oc7zZaXUYDH1S4MnJVq993p/OmBy3xUC/243TMUUg25NzsG7/UgyhtqlnhsY/3t/NPxIwqUoz6Xc011Q5qpVRLVCLhOPw8masXqbZn2T7hZ8WwmTB+z6TKca+HS1OD1tTVGKrNpxszqwLNbcPPARr29MuknQrJJylHyWGS9DNNdmlWVt14whB1B3XOTVCbpjDyznfDy2LdvUJhNjdFlU1+Dbt0KrLeClCUxYyVrtn8hGA3KTGD+lLLYNPC31l7K2NvmtALgl860etpT2VgDaP+etwN40641xJ8l8u3dxO0A3CcfauXeqmrJrY5M6qELK3PPFpTT/mtZPK1S6yqnvwpPj2Rv15NXpG/Xk9B9v1Lcns5n66u1pBx6/ga9OX3VKlgVXGjKntY4Ch/UgjRRtMnGMfr2JUSBkP4R13jjZMmvF5i9/JeBOPN8mzdt6qRft7a0qci4KT/doKIV+e4uaFeAukUx9PwP3R407FPpnQAThGtLXQs4aKmBcOBPuYvm4AYD87ayRXA8grXIeyYwwok9nYJNGlin27Gh1BsS9I+129VrRs5OTV42YFChJXEPpTDZEMOlMumCgd5YZbLkxygJORiAMKRK1aK27N6SFovZ9FujwosXCZbwQsUt+4VleA7I/cgtcoM16xHOS9a+CPJXJM1UN4SNVlziiUde9I2oBYwHQdUV2W4w9yHbZ3PJZZSs0pBCLEMww8uEZGMF7PkviR9Y6yPttjXAWCSd9w4tCCh8p5638XU6onN3yrEtG106BmJwcXwTChhdjDEOa/F0Hkmg8kQb67E3uL9YCey7//df9Hgv+f1c64/QdDEXJbGHjsMdXOjMM/vOkO+fe2Cqhu8vlTtK4qwxulbz/yfKWqvJMyMSjvMfzbLf7AWTDO/h0tv2mg2eLakpxlZVrJbQOKGdzFo5X/Ew9HdnGUE+8O6LsXEpttkOmcXySnSFuGzWG+Xp0tbKUv1D+B/6/LBnXSJNxVR8cnb5pnb5qHR2/bR2dslVCvSVQVZ9HZN50gPoHYOeBZzV/dfz6+DTFIFN+2caaxeS7zYPdvCWlWL4CSg+Ej0sfWcyiM4Z9i234tmn0uB9p/8ObzPJDC58wS4Ji5HHDJzvHrdErW0hI9UyqY7Y2qDkf79ZGitBW4N3PeUlV/MjoOWzyvubncqUUgaU1Uu63m9op5TdlBMbI0k27SjivWrXHzlAbXQ7klQDd5td9wOXN+7nKjWbBhcbspR8VtHDnUPUw5DXLbqAm9a+ykEv5kadE7NXyBoWqj7Dy47oyjV4SNgdZ88QYxTyF6iait2AbbdxXv5WMJBKGISBL6KEZgj5AYTH4pezp2RQE9NJek4JbBax7s2cHMtO0roe1r+pvOS9lKyXxi0JeUeqprkm6tWSi4JTfzbU1GyrJK1TFXV4tihaV9OeRNrHej+3kMq+6XodoPnExRUwjJZ/42PjJjQWa88vJeYvdP7SxrtlRR+WvcDRDAdz+lY098Oyuiy4n06z8f2KO+dYqKi3Kj1eZe2jdzBRIzM0vT4hP51WmwBdM0FJVwFtV/KG6d7k0yXUukgq+6v5QB1Nz79ZasPS+pBRgXbHvWhQbL2QulgzkojRvSC8KKY6CSeCGMJ/20zR1dvAw9X9NDVPvJ07a0Ti9WYHXftafV0XmTN7u2pg2yLVzzx6A43eZYEk7TkXhLCot9jcWs7VGxugyTfZcNRriTnKmf4ZuiGaQ0D7ChQDUUBsZF7pl9w2zW7ZcF7INKcpCs9SOdfSAkehHbAOFLsTE8A5uowVsN9O833aL9VYCFAui0LCdOxsVyUhBcsLXLOLKXYuW9XyW/VqHaEfwHHom0//odOqRpYW7NU1zYVgh8g1VVcuHqvw5avuRSRWpmddKU16pKAOU10rhuJSjRh6W0qPFtdJM7vv4V390vcvxutIkO7cUX6muv0AhB1jXWfkQU4EoHDJL57q1vW0652UsyzGlyrrsnFfb4Er/dK00mGG6bqbVxyzFULrotJhGxHMDiDXfZxujXDq9wZSPQpvaY36dk+lo/X4hXz1/6Qdry46ZQkO4KVLVh8sgemKbT+vJXQSN/M0i5NsvYkhG/903GeFvbrhELIvNf5sroLmRxPqOLOjt0JO4dex7eiPxTWFMxRvUvgezvMAthzy9xO170OJ5hrB4vdheWFPp0npGLwpD6NGoJFhaj5eyj/SePTadnqnzy4u0gdVtHvCvdsyA8vVakYLhXytMzP8/cq38BJKn4uq44pvkYrvi0+J1dsV3wondR5gT+aSH/jJCIZ3iQMAl/pwgmqOwtUAejkg0o1EYoJAnjl4rP12nV9LJa/vXYlnw93wdZJmntYRcYnd5m9wClxCdoJmzl60HFPrRA2mFkEoc5EswTHvYhQgvwjCP5+zNyckriWzuBgHcwBH5vjKQxXdR0L5WVgpQNimAja/FqmUg6Yrg8MW1l7fgHkDnsFGbIn4HnwAm7tlJ5+2pzBkPIx+SQur4q9PXInU8iukav5vrIbaPiHXAQFtLuBCJ5Ls0YM9EiyS3vDu12pbd7WntQfceYRq7QeLFHVceTMtPeqPSE6VmSV7pn7rNA8mjvYb1IL88VVriumnvhzAb9kMyQUWU23eiIsJtmxCGPnn3rblWNXHNt46EqioduQv47ltJj+6Fg3GgSpBu2nthuYNPFSRX+qfNODIVzlb3JAqQ91TS4Dz9RuQo7TIVDI+65Ii2zQRO1d67b+288ibt8kJuFy4DJe1adtdTmo3xcjLt86sDyhfrNMfcJ9WUN4aMLe7Jr7lRp3CT+leX+zvJT/NlvKpeg5PWlyWO6eQmnLQuTamvEPIoBmoIRPxY+KfAkh3JmqMPRt/QnL5pfNBNke91VvcwzUXPHQgrx7/X4KjDTwoyix8ozZ5tOqlzYDBwesP+fp2C+TJOLidpw5DiJ74xtMht4nVSynR1m78WHiX8w5CKSpbOGjZlp5iLtEAg6ftyMgXiloif+MEVhfPCp8yqGf9s2GI0VrnkriY7ZM00EYAX/Jgfes+crEqxZDY5stLw++YnmQXwP2YaZFEmXqBnslzi4ykCu38hI6mSz3RKLmmCj37ELytJb1mxoyi4Q7mbqbhzTQBN2PGbUBh6PM0iDeqWP58QEa6qwogCEi95cbsPXAroLSKAogVsAXKHlkt5P0hB5ZXKXI4Kzt6N7iFx64qaFpeqMVC9TtEntGHe1uN+1ekkyMkC/QkIj1+DwJe+/V2wPePDKNzJJWbNeloEKLyzIy0I+vzbfCNmNVbCnd+3I2wc7fIOBQFQLePy/XSytuI5P/pEdeSrtAtKZ4/+xNLbszORpX7vBsh3KVy/JR8gopnD05NDxqLar5PmfZxbfbBrhPjFi6RcZhlLVQXYsoY+v0WsvIh2ltGHW+Td5oQ7P7Jf2YhqqoOtoeGYujUd2PX1d2IsxUVzWJ3A3dE0+QB0y+aB8DJSKcIMnWVr9tRKtgg5jOwF2x9qxpODE/TIuF84i8zxECACvAjjeEmhXxfqq24Mxuhi7JjjodMbm+Z0Yuv9DR/X3HVLSdV/pUQoJxIPEb5jSnWGQqhUii3+VCHOa4sL4zJHvmNcOCNd74t6m+SKrL0KKzJKW5X9oSLsVb7sjLy6vBVQfVb90viuhvjOhJSWvQKUddGtCuSuS714saL1vhrh7It3vKtoCQi5Ld0hIStELet9zmNbCc9m3tr0rJrdd70x5Wt9CDw7l60Jv23pqxqL29qgUbo1oXKncW6b5EU35ienP7Ic/j3ajzU7ZPLRom0db8knuyuE5nPpuzIAUJkPGRJIOMqTc5PAgOvhupwCwWmXercGPy8k+bwqUH5sZVcHKXWPvbD2sQ9rH8ck/3hfJouLJkTdV8/1bmHy6YIzoBx1FuJ9IQU6HWsy1FbCz2IedD6LWd10nXglufF/p3nDNP9nzJVQhXX1ednGuPDJOKbLmGYXvQD1PUhveeHbmqqGkfhYqPKjAlR14T6q7HwDXv8l178c50TmsGiqrbnJJeQj03wfk+5B7jKY5f0Je5hUsDaz4e59xwxot4Gi5G6aSW+ZEX0o4jLXHCV/7x7kXheoOt2ZqtNnU3W6marTElUSBM+7zQPjwur+BH5OEzFyzT//+PtKOQQ1RUMpgvqCIFlaKCp1Ve7RV9GymzUDNFpXjV13uUExha0OYd2n8leNxg/6+OL/BAAA//8IyfRvvogAAA== - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+SerializeImagePulls/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+SerializeImagePulls/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+SerializeImagePulls/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+SerializeImagePulls/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+SerializeImagePulls/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+SerializeImagePulls/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+SerializeImagePulls/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+SerializeImagePulls/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+SerializeImagePulls/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+SerializeImagePulls/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+SerializeImagePulls/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+CustomKubeletConfig+SerializeImagePulls/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation+CustomKubeletConfig/CustomData b/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation+CustomKubeletConfig/CustomData index 9fc1da1ade8..7eb34f62848 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation+CustomKubeletConfig/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation+CustomKubeletConfig/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation+CustomKubeletConfig/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation+CustomKubeletConfig/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation+CustomKubeletConfig/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation+CustomKubeletConfig/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation+CustomKubeletConfig/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation+CustomKubeletConfig/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation+CustomKubeletConfig/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation+CustomKubeletConfig/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation+CustomKubeletConfig/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation+CustomKubeletConfig/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation+CustomKubeletConfig/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation+CustomKubeletConfig/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation/CustomData b/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation/CustomData index 8ae61c8505d..ababf5cac87 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+DisableKubeletServingCertificateRotation/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOff/CustomData b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOff/CustomData index 03e9718c450..b0176ad3797 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOff/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOff/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/+x9+3fbNtLo7/4rsKxuYndDSXYcb+JW6aEl2uFaryWptPniXh6ahCTUFKkAoB/r6H+/Bw++qVfS3u8731n3NLbIwWAwGAwwL+iHv7VuUdi6dcn8YDjq6Y4x7Om/dRqH84jQ0F1A8BVQFwVA9cDJkQAZagM9B3F0cOBF4RTNYgw1f4HCCYH48Oj5AAAAvLk7g0DVgXoMVIP/uwBtoA7AO/YDlMaz1hsYw4mlmysl3yQov1sl/Ywxuncp7AYxoRB/iAglh0dA9Le48xEG6hK0IPVa5IlQuPDl7xaGXhR6KIDqUqBQ2RhIk0B8jzzY9FscB41ib/6NCI7b6vSLHzYZpQIZhH8CKvAetHx43wrjIAA//6yPLg8+WwLy9wM9vEc4ChcwpB3lenKhO9rYcCzd/KibcrKeS09WygHDAYCgxqOBHrq3AdRC36IupmANeeDrVwAfEQUN3TQd65Nl64Ou3XcsWzNt51Iz+gerTBps7IZk6WIY0g/xDI7dGUwnSre7rP2l5XRHw8uOkvBoSviAhSigKfj8mcmB/WHs6EPtoq/3Vgr4WwcoCvj9958AncOQQ7If6M2jKvB7wNC27iAOYdBaLFo0o8qZxzO4dGewBfnw/RKu3Rp1Kl2+B43n4gBXHPMUVYfV0y9N7Wq3UaWwuw3Kh1PszvYbk2jTKfe3YUSr3Pq3hJBPCOxFCxeF2cIc6vavI/OaNzWunEujr2eTzhdGCOlDhO98Of8Jp9yHO/Cy9X9vPvc+dMf3pze/t56ngTvrHP8EQvhIV4C9k8/aK8B+gxcvQOuHjIhOGLVeAqVRQ4NS4jaBPlBRqcNXvAtAyjhzn54gab0EdT0kbEpnnk2mMf545vQmGl853euc7HQ6QKE4hgooC0KFF2d/MS9q+XH2p/AjtxgS1qSaCGBIuA6SgqEmgrEODpMnEkSzoiA+uMtLFGT6hjy4S4egf0Pn7rbTOISPSwwaz9av2phT5VjGf+nO4GIFbn4Ex+12+yhrFUSeS1EUdhShlXJrWO0Lvewjctdy/x1j2MKQRDH2oLp0MT2urufkvcPaOEuXzjuNwykK/UVIgRpioEaAungGKVAt0DjE0PUDFN4Bdbqlr6OjtBOOe4qhHK0/BY3nascr8JVP8LEPvgrZel5iFFLQOF29PMoL3ufPoPGcR7oC6oyCxnOeravqYDO18ysKAhATmI6f0wimEeZMBlMUQKUoegXe19LfYjCsZabjAgJrejdCEk+nyEMwpKJjsnQ9CKKwRA+NgIehS2FG1TnA8EsMSXW4jBdlvrwCLqVwsaQonDFsUzcIwK3rcdQji/fSbDaVdctAytW/mZYocGBVszdExPEhOwR0tshJFNFNwqGOQeu/QxYkP3aXgj9jwlmnnGmg8ZwycPX9M1+kO3dKYjqma+qazU7X1uTy0uga+tB2eoZ17VhjrbtWJ4qxWAk94IEx7hYC4t5DH9DoHFSE5EDoGIqfvIXvoKkzdVEQYwhOTsEbcPKGCySD5kfs0riuK/hKB77cUPhhT5zXF5EPztrtSuOttCzuOK+/odNNWBmyKPyLsKoqmUcP4CuYYfhNlCfnuVLDMAql5JEH0AZtfubi56Mpoe5tYXPTqZc78+9k+/BD1VYDJ4Fa4ujxKbNhxAy3z05Pd2xUJEc0cpeU/S+hy3QU37beveHYantfA5pj7ueBG7oziH/PmLjTOJPT2QfbHjtjc/TbJ2di9q3sbF57NM+gO3VNEwpgNmMlBHNKlw4n5RsRaN6XGGF4fs4wnZ9zVOCmZiA3yk8Zvg0sz1D34NSNA5o3MW82j/hG2ZPrWzrbyJ29O8tZYMlMW/tNtVUYufUtk00K47G+a7pJeb6tv2jCN4z7r5jyDTz63kkfjnaf8QS2U222faLCKB3E/o1rObOWnD97CtaS/i3ML24HSp077C6+hQGkmftLSb1nu8G3jtsqk5usd6XkNHupjy5f1rvNmKXYqcyHProsbLtMEMcMfVdL91w0BYgMXIxCiEdYY6ftPgrjR6A0RlbZoPYgpo4PCe0orZjgFpm7GLaWd6jluSrFMaGqsEVabujNI0yyI2W89F0KHW/hdxTxt5q0EUCFc3C5I3bMCGR3nquy12iK2CFwaxdVWLmacqrYNieWrfecrsYsa3m+qX2/UsBX8OjiGTkqHIbWA9+6BJ6dAtUH7xlgOrKVkLOu1vQwVYrnrsm4x45cXc3p6qZt8Z4a2fA2A+dnvBsTGi26bjdjQs1pK1rSFqOLCPZEGCCAQtA4JPALaIPG4WHjuTux7NGA9cLH53RHk6G9Aio4Pjo6+gn4UWadQS9wMQT3Lg7dBexkLRl9TuMZrUDFOfg3CV1hWUZcq134Yc8YLsY+js6PQrjGwZKwjqFJVtx2jlfxeFFIXbZS/CKX08eTAC1Q6s3vjoa2Zgx1s+dM+sbAsJ2eORo7xlB4bMaa/aFTqxyyfnL6gUDqxAJ/6mEWB1Cl8bxDV9y0Ss6i7fY+rbgW2xG8xtOfrqkKAotNN8XgJfvvJnx5xHVW3q0PfBcuolDFMIhc/2CPWbkWGpapS4jZAkgl/3pyofd1O4knjE3jI5v8a/1Tfk6YhsYhpJBI+ZMqm3CEzTv4pNRh40K+Oxq2+MX+Ei1hSEgAZjDExAVqFFPQ2EIqOGmfvi20xvALUEP4ANTHN+13QPXdJwL+8brdBuodfNqOsLbbdExAJfHtH0BpdYd8Y5XBtJUCVNf34SMFCgOAHtUCOmSrvze0zguQxTl6WxP5qudbznWpjY2E/MlF3+hunTl3ifLszkw3hQeW6pGl0bzUetsJOnoIAY4ies7+2dZEDOe/Jqbu/NMaDdcMgvvAmn+QKCzTXmxZolis8XUwVTorgEILQgr+/pidP9WQAScC0u1zTxBb2PrQXq07hW5oUFL3tfPnBQiGlC25ynG4nhwmr/vTVGy1B2HJFlQljM280dXZOht2jbHWF6pyO21bG24mjyyb9JHW+OLq5bGAT/WhF/lQnFe2Cbw1zofCKhRIoMpgJMstvWvqdkdpHHouE0KJTTnarV0dmwoQrdbNTevm5uZm9afhUxg+RboGFzmaxbpyKfj5Z6CPLiX7KotKKDvFC6LYV855YFQzr7gUjia9lfJKvKcwdENqJCD6UBvajpG9J/Et8TBaUhSFCZQ1ubC6pjG2jdEwD+u6fpcLagq4bpR1jSzoYUi3NBTsSRsnMYkrHMVL0dTUrdHE7OrOlTmajFPIxIEogPqjrsaoT1/fL+ynJRQvPw4c+9NYz7MghHyXSYc/zNFAoBdjRJ84DRlUEtGz9O7ENOxPJXruCyg/GqY90fqObFSAMqtjLIE7a8aMo5hC270NYNaTOZrYumNrF/1sgEuMFi5+0u5dFLi3KED0ycpTNzaNgWZ+crSPmtHXLow+G46VY4FEYHluAGtbWl2trxeacLkc4+ge+RBfuN5dNJ0OIl+24zI6NkcfjZ5uOhda93p0eekMRj19IwLlHKxpu9rQyoQUI0jWN3ZM3TYN3dqERH9cRiEM6QYs+m/j0ZAp1Q1oejFOxHQdmt7EFLK7Ac0/EaUQb0DyT8O2dbMWhelS2GfH/5rmpmbr/EC9ueW/xtamxs6/xtZmBBexdwc3EuBcTLrX+nY6fsWIwm3EOL+ahq3vQtJ2dIKuIsaYQOFp9w0fhhTRJ/2RwpAkEz2xdGegDbUrvecYPX1oswWm/2brQys30TGBWCMEzcIMj9ETC2Zi6aajWZZxNczjyOnZmEAjJNQNPTiA1PVd6qZ9G0PL1oZd3RnottbTbG2Vak3Xv3AD1ghbd3GiPLWec6H1WQvTsa4naR8+IkzbjGJ6G8Whbw01m/dRbNEzLKZ+nNHEvhhNhj2HwSU9wkcviH04cAmF+BJHC4u6oe9iv3/BUem/dfuTHmOXZeumc2mOBg4jvqeZPad/sUo1kpi+j24c5PTR9YA7SMWcfdQmfVtaC7LZwn1Ei3jRzw3bjAPYjWK5sgfab8ZgMnDYiNIBmRN+YppkSzvp/ho+JZ3fvSVK9e1HiKUUKMxiEblm4jCsPhZzoDbpRNAByv1JTeBbpqUorU06q+UrYL0tsBsuoXF2wFTO8BEZPU7eEjSGV/yQbFwaXWY0miNb7tbcBV2f9bPeHq9PLLKcxGEkzkMbEopypgm3o66LbTeZVOmpSx9+NMzRcMD0f87EKppZaxHnYuYlq2u3JlUjbFO7ipEgIfXhRw5X52/ciZCcWJfnI7WRsgSonZK9SnNTQlOeGV+48BPfiJCZddOxDtfaydipQWUqdmhVMSRzTFpnqe2GOTcjNeyTbrfO7pEFL1oInSJZm6WobmKt7GdXxlbBpeNwHdx+WcFlDl/2tSuro6piSGCrICVKvJTy2R0aqQ+qLn/i+KQtkz0if4mjWwhusRNCOkUBhbjoRh6M2E5wUc6WUEOg5BspicW+iPw4gERl+3nTb+VhctkLOUqNMbcbSHkEyfN8XEdsT4ktMu5PrjjPO0Dhqr9mV1rcg0Z3aDgXxtDpGSYTHLFLsK4CRKh4nUyjYbZKgsGTaEogFSSlXKw8jaO+0f0k9YrnBsiLlLo8rCSpk/ygLLhtotxi5M+gkn7OpQYrP8xe7kEUDDaTxUM1616GUcj5Cl68KOFIzgNcYWa0/f8enfRQsZ8WuUVhC95SLjhApSB0KVDVFF6sE3l2lInRzOgN7qGfyllAgBpQLMQZ87c5yXVp/YvJxWRoTxxT7+uapXcahwG5dTAMoEsgUDFQZXgtnYpiA8nI47fN9mkyH7UQJ+2tECdbIU45xJq8diOcRRiFszTZF0sOgS8xxE8giTbdxhTEhAEiSkCOH6WUQYHVniMCEGEdAoIWywASCtzlEkeuNwc0Ag8RvnMxO8yDtENESAwJeEB0HsUUMJUfQAqDJxCHiJkYQQAQzbr6zDMtcRymO4hElZ8uwGWZxH4EghCoZIcWtTO+VVY2yosQRRiSQrRNCmFyVLH1vj4emfbW84nAY8MALiNM/QO5LDYH+Oticgo42BDir43iwUfoOTxuVRvjL22Bj9Dj5SzjiNCOWLBomSzYMbgcmb9qZg9o3a4+tpPYWcIPjZ3Uta7tWLapawN2et/GmSCaEYdGDryHISVA0a6tZtfSm2XOywcapmjqetSiGLoLFM4UsOZFcZusoYybuv3+QXICLeYC5kJ8OaVwNZ44w8TOYoMpaF5yh5ZOeI985Do+RvcQO3IVFIdfkAy++q5gCLHLE6DDKFSvxpNcjFFuxzxMzt6EkQ+BH0O2Kj8OAHVnMlSVHtKzoKdU0cORw0jf6MvPOmzJQwyNFkGRjfwU9Ktmdz84tjHQRxP7IJdHURlLZQxpGvd6Uv8aGsUUFxaOR4Om33r3Tp1G2IOq2PHYhwcX++uWCjgIIW2i5f1pEy0dCQw64Dh7znN63CBoyreMETmAs40Aggr5Sw2nqucGgZquQAYmDpUbz41idEBVhV6olKB17T7bckZarxDeRkR1PYruIVDVLzGCFPiRdwcxk/DDFMyR+zM4aYPXbd6pBKupdOs5vVH3Wjcdyx6N+Rn1aEMJXU5edqmak+p5GPXi5Sgc42iBiBdfcN5lVSxr+hJt1TBS/Xi5T3epFt/aBU0g90FfUWSym2yaRA0dcD2sLhDGEU6UfQFKZCrUA7G9lae5uB5u0SgKSCu6hzhwn279llRZTTLfCirWoBoTiFV3BkPaJHPAz4Fbm4pB8Pwz1Y3pfPfuWB9+9BByC0byYuoKHbRre8/15mxz4YYp+9tC/4ZXF+D1yR5I4CObXIglHkkK0/HfjoR9AO/enr1mG1Ji/YnaJseLMHQYrw8A8GIcAPU3MJ7Y4CXPVZtHhJ6/ffOPtxL5LyHpONI4fSFoc3iBx2OHz5CHmyh6QbiUMUW2cGknJfAlUEd1MscHlA0j/Uul3iKuFcP6hiR0l2QecUdhhiT3dINIFzvdCJBDuGZtsL10EYXZ8utxVZYu7UR7ySik/pveTVat0dc7dYcwoQzXH8A4XjaNzHxV3atEe+ZLt/N9D0aToS1cD6lS3b1zL4AudhZRHFJniaOlO+NRJWcauDOS0SP74o6hDLnA1hIJUTnHbTFf75jtAe1iSp5ISCCgUUYM6mqc/vgCXjZfgp9rwF+8ALcYund19iTvpIGAyog4abdrcW85GKwpiSIBhEtwXO61JuOvumnmdrFtG+fmDY+fiZLjUWEDXb/n1G3F6Rac7jY5eecVqlu3Mn/uLe/PdtjHdvdpoeWZI481Gzxaq4ODGaRjEVYeIs8YZ44ApvbETNloATvHuacL91EGczvH7dxz1Cl8WnYU6eR+mKMA8kI9xExG0Mgw8AN7XraXncahUMDE6gP1A1CSONo5EEd8no9/3modn71rnrw5bcrfrYWEE5ts6MGkhLuFQgrx1PXgL+4SqfciGNQ5aZ8cq+0TtX3MjsN/fAEqBi+bn9u/J0dQzfcxJIQ9kbcOGMmzSgkizw9CS4VJZeMXvmra9TWHa1ecWBaNlOdZD53G4SH6e1JQm64Tec5HS2VdpiQKZ7lcYTOiXD8VvIp/ZnBIVvSL/oWvhBkqGQUASxIAIkCuWP8VCCM6l/Wp6SiUXIUyjXEI2sX0J761A3UKyDyKAz9Z/47s3ZG9O7nenaR3oZVlfHSXUfN61sq6c8KIbT2UgOM2U9RtZlPNgeo9fgtRmYuMC1AIQXsNg1n3vN4S+JBCvEAhZO124rsgDNzClP3g9olbvcsoCnL2blG990ej68nY2Ydnjq1dFaZsp0Z97ULvd5QsttdMXJ9pKESVA1Q9t+OJS1eUYpRrHzJfvdoY+Po2ka7w9JW4wYSLNkOQIOQnBeCGvnA8BO4tDEguNJiMQARHcrEX/qClqrx3qIp82EJ1RIcNaDMEP9nnI5E7hAm38KsmWFgT8cqH1LIajQ1ARYcF19Yv0RQ0xajsvnURRZRQ7C4Zbdx5xMiqBxAWDT+XgCaAof8yxX5UGUgubJcIslBKi+g+UbXDyId9NnXFVOvNQr5Wv6WJ0fvJnrz95ZWoynb9vEixiQ0h9KGsY3J9/7tIT084EkslF7+nX/K0j9xxtxjKq6kQlhDpUiZwcc9st8XSxRAIoTSHuq1bzkfdtIzR8FxV2s12s62sgHLcPHnXbJdLnDZ7QK/T2CrNscMYXwbuTAF1T2tScItLtLRCeVA0t6DyfFkpNVhM/crgKTdW94Pem/TZmuuIpfZ+N0zFSFanJrT1fj+SjIF2pecGxj/vj4YXDXDxyXMp93QXlLlcbJGLm0v44HCyaqVeja9v0tmCbythct3WB9Rr4NPV4nS1NSnXMifdzaocspBG49BHvMIq6SZBs0qSrfPJDLwQylybvJC1XTOGHEDduZHn3uqO3beci9HItmxTG4+N4VVxo2CGSL7VFvDSBCasZK32z5egAblN9H8pWWIDT0v9paytzbEoAG5JsKiHLWVXFID2T60osDdNrmDcSRIs7l3cCtBtwrFW7p2qpuza2KQOqpCZ8e3iUpp/Teul+dcd5cx34enJ9K16+vrsrXp69o+36rvT6VR9/e6sDU/ewtdnr9tKyV/ClIZMnaqjwGE9yNoIbTx2jF794aZAyH4I64w+2TJrxeYvfynZTjzfJs3beqkX7e2tKnIuyqr2aCiFfnuLmhXgLpFM7DwH98cHdyj0z4Hw9R5Iw4CcH6iAceFceCXk4wMA5F/nB0mBsjxTcYd5hBF9OgebNLJMIGWny3Mgbj5otaoXG56fnr4+iEmBksSOSWfyQPgsz6VlC73zlD/5McryJEYgDCkSlRbNu7ekiaLW/XEuR3OxcBkvhIucX7mU14DsQ26BC7RZj3hGsv5VkKcyeaaqIXyk6hJHNOq4d0QtYCwAuq5IooixB9kum1s+q2yFhhRi4ekbRD48B0N4z2dJ/MhMXnnDphFOI+ELOvCikMJHynkr/5YTKme3POuS0bVTICYnxxeB8MCLMYYhTT7XgSQaT2QbffMm9xdrgT2X//7rfo8F/5+Vzjh9B0NREFbYOOzRtc4OBv/zpDvnyN8qobvL5U7SuKsMbpW8/83ylqryTMjEo7zf53y36lfZ8A4+nW+v4/1mUU0prrJyrYTWAeXOnAXzitvUk6FtDPTErySKKqXUZjtkGi4imQ0xP6g5mK9HVytL+Sutf+D/ZTlfRprzpfrg+Oxt8+x18/jkXfP4jK0S6i2Bqvrc0f22DdQ/ALMHvqn565M3J2cpBplZxjbWLPTTaRzu5i0phYwUUHogfGj60GInOmPQs9iGb5tGlzuQ9jfeZDIJWviEnSQoRh4/+GR23Bq9soWEVM+kOmZrgxr7eLc2UoS2Au9u5yU1n0Oj67DJe87P5UopAsvTSLnfTnpOKb8pIzCGlm7aVcJ5TZY9cgba8KovC147jed9wOXd37kE4UbBhcbOSz8qaOHOoOphyCvy3EBNqrtkvYDyI4+87dXyFoWqj7Dy47ps4G4SjAJZ8+Qwinmk/jaic7CNNu7f30pGEgvAEJAl9NAUQR+gsBgCUPb0bAoCummvSTmZAta92bMDmdBU18PaV/X3LJeC4onbuxC+Tl3UNbldlsxHmfDbgbYG3ZP0FVXcJtSkaFHJshtqY+vDyE6uE6rrdYBmYxdTJOKqO1z6v0Azfj0yb7H7Vf/rmh23Vf4KR1MUwO33/O+BZ3dddDWeZMWtY3PEt1aR0Ft+vMrcQ+tmpkBibn553mU6rzLTsnAELSWfvlPFB9W9y2XjrHORVPBV94c6mJpbZdaCpbeBpADrasrWoth4JWwxMzUXpXlLulFIcRSMAzeE+fh/w9SZ4WHq/5oYpt5LnLTDUVo3zEuM6u1VEbnKn7s2Zqdw7dy1++DkfSZY8hynonAalRb7W4udtYbG8CrNKVodHIhbkZn+GbghmkJCewgXAlADbWhc6pbdM8xO+eS6kG1IURYapXasoweMRD9iGyh0ISaGdzCPFrDVSNPLWk3WWwlQLIhCw1bONiqSkYLkhK9RxJW79Cfr+Tz7sw7RjuA59Eym/9Fu1yNL68NqmuYCwELkD1RVLRtVeTtqu8mkigygG6UhL3WTkckbpWAu5aiRxlJqWtwojaSa/V+94c0u5nWlSWa3FF+prr9AIQdY11nZiKlAFIzMkl23trdNdl7GshxTqqzL7LzaBtf6pxvlgB1M1820+pilH0kXnRbTiHhuALHm+7mEo25/wkehTewRv6zEdLRer5AWmS9pZ22ZmSk0hJsiVX24DKIntvk0n9xFcJCvmydffxZDMnrvv8rcgsaGK3Ky2P/XmQIaG0ms78iC3g49iTt1vqc3Et8WxlS8H+h7MMvriXLI0yuKvgctnmUIi5fn7IU1lS6ta3SjMIQejUqCpXV5xeRQ79oj0+maOr+aQ+tbncYh/96AKVCebxQpGP6NwsT8/5Ab5RVInoqLkYpvkmubik+LlzUV3wkndg9hTuSTHvrLCIV0ggMBl/hzgmiGwuYCeTgi0ZRGYYBCnuV0o7y6SS9ckheHr8Wy4O/5OsjSpGoJucLucp7ccZQQnaCZsZfNBxT60QNphpBKHORLMEh72IUIL8Iwj+f87enpa4ls5gYB3MAR+b4ykMV3UdC6UVYKUDYpgI2vxaplIOmK4PDFtZc/wT2A9tFB7SWOd/AJYOKen7bfnclbHcPIh6RwuePrszficscopmv8bq6H2D4i1gEDbS7hQlz1uEsD9ky0SG5/7EyslmV3ulqr37lHmMZukHhxR5UHk/KT7rD0RKlZktf6p07jUPJor2E9yO++KS1x3bT3Q5gN+yGZoCLK7TtREeG2TQhDn7z/2lirmrjmW0dCVZUO3QV8/7WkR/fCwThQJUg37b2w3MGnCpJr/dNmHJkKZ6t7HAXIeyppcJ5+I3KUdpkKhkddckTbZgKnau/911ZeeZNWeSG3ClfdkVYtu+spzcZ4NZ70eIVq+f6Gxoj7pBqyMH1kcU9+zcUNhbucn13u7ySvZst4Vb1tIS1jSBzTyYULafmDUp+I7lEM1BCI+LHwT4ElM8kaw49Gz9Ccnml81E2R73Ve9zBN8c0ZhBXz7w04bnNLQSZHA6XRtU0ndQ70+0530NuvUzBbxkkNfAuGFD/xjaFJ5onXSSnT1Wn8UniU8A9DKlLa22vYlFkxl2neddL31XgCRDHyK264onBW+DKlaiI1G7YYjVWu7KjJDlkzTQTgBTfzQ+8bJ6tSk5NNjixo+b75SWYB/K+ZBln7gxfoG1ku8fEUgd3v6E+KMTOdkkua4KMf8pr4tJjfjqLgDuUuQOHONQE0ZuY3oTD0eJpFGtQtX+AeEa6qwogCEi95DaUPXAroHBFA0QI2AblDy6UsQy+ovFL1wHHB2bvRPSSK+9W0hkmNgeq1iz6hDfO2HvfrdjtBThboT0B48gYEvvTt74LtG76agTu5xKxZT4sAhXd2pAVBj3872JCdGivhzu/bETaOdnmHggColnH1YTJeW1iXH32iOvLFgAWls0d/Yunt2Zm4Y+TeDZDvUrh+Sz5ERDMHZ6dHjEW134+Y93Fu9cGuEeIXL+TSmi1jqaoAW9bQ55fVlBfRzjL6MEfePCfc+ZH9wkZUU4RmDQzH1K1J364vaxJjKS6ao+oE7o6mwQegWzYPhJeRShFm6CxbsydWskXIYWQv2P5QM54cnKBHxv3CaWSOBgAR4EUYx0sK/bpQX3VjMIaXI8ccDZzuyDQnY1vvbfh6v123lFT95xBUROIhwndMqU5RCJXKVTl/qhDntcWlcZUj3zEunaGu98TFMslNLHsVVmSUNiv7Q0XYq3zZGXl1eSug+qz6Xce7HsR3JqS07BWgrItuVSB3XerF+7usD9UIZ0+8411FS0DIvFSqLMviLOtDzmNbCc9m3trUVs1uc92Y8rU+BJ7ZZWvCb1v6qsbitjY4KBXnVq7OzG2TvOjG/OT0hpbDvxHzt5odMvnalG0db8knuyuE5nPpuzIAUJkPGRJIOMqTc5PAgOvhupwCwWmXenOD2wtJPq8KlB+b2Q0VSt1jL6x97MPaxzHJP96XyaKeWdR9dV1vDpOLuc+BctxeyGK1fAp0OtZkqM2En8U86HwWs7rpstxKcuN/pnnDNP/PmCuhCuvq87KNceGTUUyXMc3uEwDqB5BeJsC3NVUNI/F1hcqPClDVhfuoMvsGvPlLbhk4yYnMUfGotubCgJCPTPN9TDqHuTsHlven7GFSO9vIhrv3VQag1QKKkrvQIL3MQPShiDsDc5T8vXOYe12g6mxnqs6+maqzzVSdlaiSIHjWaRwal1bnFfgpTcTINf/84+8r5QjUFA2lCOoLgmRpoc+vGlO5R19Fy07WDNCoWO+t1JZGJyXexRS2OoR1X9a9Ojj4QR9d/r8AAAD//2OpGGpAhQAA + H4sIAAAAAAAC/+y9eXfbOLIo/r8+BYatX2L3NCXZcTyJu5U+tEQ7HGsbkkonN+4fD01CMtoUqQCgl0n03d/Bwp3anO775t1zPWc6NlkoFAqFQqEW8Ie/tW9Q2L5xyW1jNO7rjjHq6x+7zYPbiNDQXUDwDVAXBUD1wPGhABlpQz0HcdhoeFE4Q/MYQ81foHBKID44/NoAAADv1p1DoOpAPQKqwf+7AB2gDsFb9gOU5letPzRGU0s3V0q+SVB+t0r6mWB071LYC2JCIX4fEUoODoHob3HnIwzUJWhD6rXJE6Fw4ct/2xh6UeihAKpLgUJlYyAtAvE98mDLb3McNIq922ciOOqosy9+2GKUCmQQ/gmowDvQ9uF9O4yDAPzyiz6+aHy2BOTvDT28RzgKFzCkXeVqeq472sRwLN38oJtysr6WnqyUBsMBgKDGo4EeujcB1ELfoi6mYA154Ns3AB8RBU3dNB3rk2Xrw549cCxbM23nQjMGjVUmDTZ2Q7J0MQzp+3gOJ+4cphOl2z3W/sJyeuPRRVdJeDQjfMBCFNAMfP7M5MB+P3H0kXY+0PsrBfytCxQF/P77z4DewpBDsh/o3UZV4HeAoW3fQRzCoL1YtGlGlXMbz+HSncM25MP3S7h2a9StdPkONL8WB7jimGeoOqy+fmFql7uNKoXdbVA+nGF3vt+YRJtuub8NI1rl1r8lhHxKYD9auCjMFuZIt38bm1e8qXHpXBgDPZt0vjBCSB8ifOfL+U845T7cgZft///6c/99b3J/cv17++sscOfdo59BCB/pCrB38llnBdi/4MUL0P4hI6IbRu2XQGnW0KCUuE2gD1RU6vAn3gUgZZy5v54gab8EdT0kbEpnnk2mMflw6vSnGl85vauc7HS7QKE4hgooC0KFF6d/MS9q+XH6p/AjtxgS1qSaCGBIuA6SgqEmgrEODpMnEkTzoiA+uMsLFGT6hjy4S4egf0Pn7qbbPICPSwyaX63ftAmnyrGM/9Kd4fkKXP8IjjqdzmHWKog8l6Io7CpCK+XWsDoQetlH5K7t/jvGsI0hiWLsQXXpYnpUXc/Je4e1cZYuve02D2Yo9BchBWqIgRoB6uI5pEC1QPMAQ9cPUHgH1NmWvg4P00447hmGcrT+DDS/VjtegW98go988E3I1tclRiEFzZPVy8O84H3+DJpf80hXQJ1T0PyaZ+uqOthM7fyGggDEBKbj5zSCWYQ5k8EMBVApil6B97X0txkMa5npuIDAmt6NkMSzGfIQDKnomCxdD4IoLNFDI+Bh6FKYUXUGMPwSQ1IdLuNFmS8/AZdSuFhSFM4ZtpkbBODG9TjqscV7abVayrplIOXq30xLFDiwqtkbIuL4kBkB3S1yEkV0k3CoE9D+vyELkh+7S8GfMeGsU8400PyaMnD1/TNfpDtnJTEd0zN1zWbWtTW9uDB6hj6ynb5hXTnWROut1YliLFZCD3hgjLuBgLj30Ac0OgMVIWkIHUPxk7fwHTRzZi4KYgzB8Ql4DY5fc4Fk0NzELo3rqoKvZPDlhsKNPWGvLyIfnHY6lcZbaVnccV4/o9NNWBmyKPyLsKoquY0ewDcwx/BZlCf2XKlhGIVS8sgD6IAOt7m4fTQj1L0pbG469XI2/05nH25UbT3gJFBLHD0+ZWcYMcOd05OTHRsVyRGN3CVl/5fQZTqKb9tvX3Nstb2vAc0x9/PQDd05xL9nTNxpnIl19t62J87EHH/85EzNgZXZ5rWmeQbdrWuaUACzGSshuKV06XBSnolA877ECMOzM4bp7IyjAtc1A7lWfs7wbWB5hroPZ24c0PwR83rziK+VPbm+pbON3Nm7s9wJLJlpa7+ptgojt54z2aQwHuu7ppuU59v6iyZ8w7j/iinfwKPvnfTRePcZT2C71WbbJyqM0kHs37iWM2vJ+bOnYC3pz2F+cTtQ6txhd/ENDCDN3F9K6j3bDb591FGZ3GS9KyWn2Ut9fPGy3m3GTordynzo44vCtssEccLQ97R0z0UzgMjQxSiEeIw1Zm0PUBg/AqU5tsoHag9i6viQ0K7Sjgluk1sXw/byDrU9V6U4JlQVZ5G2G3q3ESaZSRkvfZdCx1v4XUX8riZtBFDBDi53xMyMQHbnuSp7jWaIGYFbu6jCytWUU8W2ObVsve/0NHaylvZN7fuVAr6BRxfPyWHBGFoPfOMSeHoCVB+8Y4DpyFZCznpay8NUKdpd00mfmVw9zenppm3xnprZ8DYD52e8FxMaLXpuL2NCjbUVLWmb0UUEeyIMEEAhaB4Q+AV0QPPgoPm1N7Xs8ZD1wsfn9MbTkb0CKjg6PDz8GfhRdjqDXuBiCO5dHLoL2M1aMvqc5le0AhXn4N8kdIVlGXHtTuGHPWO4GPs4Oj8K4RoHS8I6hiZZcds5XsXjRSF12Urxi1xOH08DtECpN783HtmaMdLNvjMdGEPDdvrmeOIYI+GxmWj2+26tcsj6yekHAqkTC/yph1kYoErz6w5d8aNVYot2Ovu04lpsR/AaT3+6pioILDbdFIOX7H/X4ctDrrPybn3gu3ARhSqGQeT6jT1m5epNTVRFsJspXxxCCokQrZxbTJsYMswwmZ4PjJ5zpX/Kz1S5adtdIjZHEPN1nDsWKDxoUY8sjRSlJ4OdoKOHEOAoomfsP9uaiOH819TUnX9a49GaQXD/SusPEoVl2ostSxQL+VkHU6WzAihWGKTg74+ZbaOGDPhqeq4PdNvpDbiXgQmNPrJX6yycDQ1KqqR2/rwAwZC27uBTxdSqJ4cpsf1pKrbag7BEvVUJYzNv9HRnYhqjnjHRBmIZbqdta8PN5JFliz7SGj9PvTwW8Kk+9CIfir1wm8Bbk3yYpUKBBKoMRrLc0numbneV5oHnMiGU2JTD3drVsakA0W5fX7evr6+vV38aPoXhU6TbaZGjWawrl4JffgH6+EKyr7KohLJTvCCKfeWMB90085JL4XjaXyk/ifcUhm5IjQREH2kj2zGy9yS+IR5GS4qiMIGypudWzzQmtjEe5WFd1+9xQU0B142yrpEFPQzploaCPWnjxN99iaN4KZqaujWemj3duTTH00kKmTinBNBg3NMY9enr+4X9tITi5YehY3+a6HkWhJCO3AVMhz/K0UCgF2NEnzgNGVQSLbL03tQ07E8leu4LKD8Ypj3VBo5sVIAyq2MsgTtrxoyjmELbvQlg1pM5ntq6Y2vng2yAS4wWLn7S7l0UuDcoQPTJylM3MY2hZn5ytA+aMdDOjQEbjpVjgURgeW4Aa1taPW2gF5pwuZzg6B75EJ+73l00mw0jX7bjMjoxxx+Mvm4651rvanxx4QzHfX0jAuUMrGm72tDKhBQjSNY3dkzdNg3d2oREf1xGIQzpBiz6x8l4xJTqBjT9GCdiug5Nf2oK2d2A5p+IUog3IPmnYdu6WYvCdCkcMNOyprmp2To31ja3/NfE2tTY+dfE2ozgPPbu4EYCnPNp70rfTsdvGFG4jRjnN9Ow9V1I2o5O0FXEGBMovLi+4cOQIvqkP1IYkmSip5buDLWRdqn3HaOvj2y2wPSPtj6ychMdE4g1QtA8zPAYfbFgppZuOpplGZejPI6cno0JNEJC3dCDQ0hd36Vu2rcxsmxt1NOdoW5rfc3WVqnWdP1zN2CNsHUXJ8pT6zvn2oC1MB3rapr24SPCtM04pjdRHPrWSLN5H8UWfcNi6scZT+3z8XTUdxhc0iN89ILYh0OXUIgvcLSwqBv6LvYH5xyV/rE3mPYZuyxbN50Lczx0GPF9zew7g/NVqpHE9H1w4yCnj66G3Pkm5uyDNh3YMoNINlu4j2gRLwa5YZtxAHtRLFf2UPtoDKdDh40oHZA55RbTNFvaSfdX8Cnp/O4NUapvP0AspUBRGiuZxySMYfWxmF+zSSeCLlDuj2uCqjLlQWlv0lltXwHrzwK74RIaZwdMlewRy0m8AsIw2ZA1kjsj8APNVbHtprNNav7oow+GOR4NmSLOnXWK5521iHOB0dLxZ7cm1dPQpnYVa11C6qMPHK7OqbQTITn5Ks9HeljJslx2yugpzU0JTXlmfOGnTVyf4qC+bjrW4Vo7GTs1qEzFDq0qJ7ock9YdmXbDnJuRGvZJ30p3d/exFy3E4paszfIQN7FW9rMrY6vg0ju0Dm6/1M8yhy8G2qXVVVUxJLBVkBJtWsrr642M1BlUFyQ/Ou7IiH7kL3F0A8ENdkJIZyigEBd9hcMxU8nn5ZA4O5TnGynJ0XkR+XEAico21pbfzsPkQtQ5So0JN+BJeQTJ87zzXuwTyaFgMphecp53gcJ1cM32sLgHzd7IcM6NkdM3TCY4Ql2zrgJEqHidTKNhtkuCwTMlSiAVJKWEmzyN44HR+yT1iucGyIuUumSbJHOP/KAs+CFBucHIn0Ml/TuX/6n8MH+5B1Ew2EwW98evexlGIecrePGihCPZmLnCzGj77x6ddBWxnza5QWEb3lAuOEClIHQpUNUUXqwTacTJ7Fd2+gzuoZ/KWUCAGlAsxBnztznJdWn9i+n5dGRPHVMf6Jqld5sHAblxMAygSyBQMVBlDCWdimIDycijN63OSTIftRDHna0Qx1shTjjEmuRlI5xHGIXzNKMTSw6BLzHETyAJKdzEFMSEASJKQI4fpbwwgdW+RQQgwjoEBC2WASQUuMsljlzvFtAIPET4zsXMqgZph4iQGBLwgOhtFFPAVH4AKQyeQBwiZusHAUA06+ozT6fDcZjuIBJVfroAl2US+xEIQqCSHVrUzvhWWdkoL0IUYUgKIRUphImpYusDfTI27a32icBjwwAuI0z9hlwWm6O4dYEXBTQ2xHFrQzXwEXoOD07UBnJLW+Aj9HjNwiQitCsWLFomC3YCLsbmb5rZB1qvp0/sJECS8EMzbeNC69mOZZu6NjRGl1s5E0Rz4tDIgfcwpAQo2pXV6ll6q8x5+UDDFM1cj1oUQ3eBwrkC1rwobpM1lPEz52DQSCzQYsJXLo6TUwqXk6kzSg48bDAFzUvu0NIJ75GPXMfH6B5iR66C4vALksFX3yUMIXZ5lmsYherlZJoLJMntmMdC2Zsw8iHwY8hW5YchoO5cxoxSIz2LbEkVPRo7jPSNTvWsw7Y0Ymi0CIps5FbQb5rde+/YxlAfT+1GLlheGUtlDGmu7npS/xoaxRQXFo5Hg5bffvtWnUXYg6rY8dgfDy721y0V0AghbaHl/UkLLR0JDLrgKHvOEzfcIGjJt4wROYDTjQCCCvmPGs5Uzw0CNV2BDEwYlRvtRjE6oKpCL1TqjHr2gG05Y61fiGEioroeRfcQqOqXGEEK/Mi7g5hJ+EEK5sj9GRx3wKsO71SC1ZQz9Z3+uHelm45ljyfcRj3cUCeVk5ddSqOkeh5F/Xg5Dic4WiDixeecd1mpwpq+RFs1jFQ/Xu7TXarFt3ZBE8h90FcUmewmmyZRKAVcD6sLhHGEE2VfgBLh6HogtrfyXAbXw20aRQFpR/cQB+7Tjd+WKqtFbreCijWoxgRi1Z3DkLbILeB24NamYhA8yUh1Y3q7e3esDz96CPkJRvJi5godtGt7z/Vu2ebCD6bsdwv9G16eg1fHeyCBj2xyIZZ4JClMxz8fCfsDvH1z+optSMnpTxSwOF6EocN43QDAi3EA1I9gMrXBS56QdBsRevbm9T/eSOS/hqTryMPpC0Gbw7P4H7t8hjzcQtELwqWMKbKFS7spgS+BOq6TOT6gbBjpbyr1FnGtGNY3JKG7JLcR99hlSHJPN4h0sdONADmEa9YG20sXUZgtvz5XZenSTrSXDAfqH/VesmqNgd6tM8KEMlxvgHG8bBrZ8VV1LxPtma/Pzfc9HE9HtnA9pEp19869ALrYWURxSJ0ljpbunId3nFngzklGj+yLO4Yy5AJbW2S95DyoxaSsI7YHdIp5VyIzgIBmGTGoK2T54wt42XoJfqkBf/EC3GDo3tWdJ3knTQRURsRxp1OLe4thsKbuhQQQLsFRudeatK7qppnbxbZtnJs3PG4TJeZRYQNdv+fUbcXpFpzuNjl552WIW7cy/9Zb3p/usI/t7tNCy1NHmjUbPFqrRmMO6UTEd0fIMyaZI4CpPTFTNlrA7lHu6cJ9lFHV7lEn9xx1C38tu4p0cj/cogDyaizEjoygmWHgBntetpfd5oFQwMQaAPU9UJKA1hkQJj5Puj5rt49O37aOX5+05L/thYQTm2zowaROt41CCvHM9eCv7hKp9yIq0z3uHB+pnWO1c8TM4T++ABWDl63Pnd8TE1TzfQwJYU9kabmRPKvUmfFEHbRUmFQ2f+WrplNfWLZ2xYll0Ux5nvXQbR4coL8nVZPpOpF2PloqYib50QBaMJhZPIx4Jbym/PwZzusyQxM/bJKcYxofNFvfmgkn3bEyG+4OPil12Hgm1O5oeFIdxxMtYUhIAOYwxMQFahRT0NxCKjjunLwptMbwC1BD+ADUx9edt0D13ScC/vGq0wHqHXzajrC223RMQCXxzR9AafdGPPFcXjaxUoDq+j58pDyz5A/oUU2EKLv9kXVWgCzmMBbmquD3ZUc5cdJ38tSwYzYjx7gweoxwc2zLrBdeJlAfx5GF9aIz4c1iR8lMNACOKN/EACJA6lT/JzDPzp0EBjNVxKlrETwgeptMQuad2kM6c/XHNMYh6BQiWbuwwBlo5/qgq2QS10ocqGlARZW0q57b9cT9HMp/8JoQpixQZ4DcRnHgJ/udIxs4cjhObiqcZC6FFSID87swkBfpVvYZJ4yYqUUJOOoww6QDblxyC1Tv8TlEZS5hrjBDCDprxJV1z4tIgQ8pxAsUQtZuJykWhIEbmAozuHniXp5lFAU5/07RnBmMx1fTibMPzxxbu6yNue6DZGMQ9nmLt2a8JYz8BhWuhhi+BD83YoEbpi4yl4AQQh/6SiWQKWJ3udAgf9BWVU4QVIU4Fyo0umyMmyH4wTMXfvzeIHZNILsmGpsP92ZFIhuAis40bkm8RDPQEkOyB9Z5FFFCsbtktHHHJiOrHkCctrnNDFoAhv7LFPthZSC5kHIidNms/req7IpELaJ74XD1IQjcGxgUt9LNmlvJbQGL6D7ZHEeRDwf74qqWHO23jOTNOcraIaoqDQgXXJVXvrMVI54l9xHdwSfxaoajRXF9rRnpReDOgVLC3F1rjOyApUxLd5v98//ksvNhcNCiAWGieYECePiy9EJeyHUFn9LXz1pcru8/X7wZR8ua1PX975byfFhNIqtY+n39gifG5fwQxRyLmvp8CZHuagQu7iHuRYuliyEQgmGOdFu3nA+6aRnj0ZmqdFqdVkdZAeWodfy21SkXGG4OTV2lSS80xxVjwiRaAXVPa4oUiptTaW/i2So5oc7zZaXUYDH1S4MnJVq993p/OmBy3xUC/243TMUUg25NzsG7/UgyhtqlnhsY/3t/NPxIwqUoz6Xc011Q5qpVRLVCLhOPw8masXqbZn2T7hZ8WwmTB+z6TKca+HS1OD1tTVGKrNpxszqwLNbcPPARr29MuknQrJJylHyWGS9DNNdmlWVt14whB1B3XOTVCbpjDyznfDy2LdvUJhNjdFlU1+Dbt0KrLeClCUxYyVrtn8hGA3KTGD+lLLYNPC31l7K2NvmtALgl860etpT2VgDaP+etwN40641xJ8l8u3dxO0A3CcfauXeqmrJrY5M6qELK3PPFpTT/mtZPK1S6yqnvwpPj2Rv15NXpG/Xk9B9v1Lcns5n66u1pBx6/ga9OX3VKlgVXGjKntY4Ch/UgjRRtMnGMfr2JUSBkP4R13jjZMmvF5i9/JeBOPN8mzdt6qRft7a0qci4KT/doKIV+e4uaFeAukUx9PwP3R407FPpnQAThGtLXQs4aKmBcOBPuYvm4AYD87ayRXA8grXIeyYwwok9nYJNGlin27Gh1BsS9I+129VrRs5OTV42YFChJXEPpTDZEMOlMumCgd5YZbLkxygJORiAMKRK1aK27N6SFovZ9FujwosXCZbwQsUt+4VleA7I/cgtcoM16xHOS9a+CPJXJM1UN4SNVlziiUde9I2oBYwHQdUV2W4w9yHbZ3PJZZSs0pBCLEMww8uEZGMF7PkviR9Y6yPttjXAWCSd9w4tCCh8p5638XU6onN3yrEtG106BmJwcXwTChhdjDEOa/F0Hkmg8kQb67E3uL9YCey7//df9Hgv+f1c64/QdDEXJbGHjsMdXOjMM/vOkO+fe2Cqhu8vlTtK4qwxulbz/yfKWqvJMyMSjvMfzbLf7AWTDO/h0tv2mg2eLakpxlZVrJbQOKGdzFo5X/Ew9HdnGUE+8O6LsXEpttkOmcXySnSFuGzWG+Xp0tbKUv1D+B/6/LBnXSJNxVR8cnb5pnb5qHR2/bR2dslVCvSVQVZ9HZN50gPoHYOeBZzV/dfz6+DTFIFN+2caaxeS7zYPdvCWlWL4CSg+Ej0sfWcyiM4Z9i234tmn0uB9p/8ObzPJDC58wS4Ji5HHDJzvHrdErW0hI9UyqY7Y2qDkf79ZGitBW4N3PeUlV/MjoOWzyvubncqUUgaU1Uu63m9op5TdlBMbI0k27SjivWrXHzlAbXQ7klQDd5td9wOXN+7nKjWbBhcbspR8VtHDnUPUw5DXLbqAm9a+ykEv5kadE7NXyBoWqj7Dy47oyjV4SNgdZ88QYxTyF6iait2AbbdxXv5WMJBKGISBL6KEZgj5AYTH4pezp2RQE9NJek4JbBax7s2cHMtO0roe1r+pvOS9lKyXxi0JeUeqprkm6tWSi4JTfzbU1GyrJK1TFXV4tihaV9OeRNrHej+3kMq+6XodoPnExRUwjJZ/42PjJjQWa88vJeYvdP7SxrtlRR+WvcDRDAdz+lY098Oyuiy4n06z8f2KO+dYqKi3Kj1eZe2jdzBRIzM0vT4hP51WmwBdM0FJVwFtV/KG6d7k0yXUukgq+6v5QB1Nz79ZasPS+pBRgXbHvWhQbL2QulgzkojRvSC8KKY6CSeCGMJ/20zR1dvAw9X9NDVPvJ07a0Ti9WYHXftafV0XmTN7u2pg2yLVzzx6A43eZYEk7TkXhLCot9jcWs7VGxugyTfZcNRriTnKmf4ZuiGaQ0D7ChQDUUBsZF7pl9w2zW7ZcF7INKcpCs9SOdfSAkehHbAOFLsTE8A5uowVsN9O833aL9VYCFAui0LCdOxsVyUhBcsLXLOLKXYuW9XyW/VqHaEfwHHom0//odOqRpYW7NU1zYVgh8g1VVcuHqvw5avuRSRWpmddKU16pKAOU10rhuJSjRh6W0qPFtdJM7vv4V390vcvxutIkO7cUX6muv0AhB1jXWfkQU4EoHDJL57q1vW0652UsyzGlyrrsnFfb4Er/dK00mGG6bqbVxyzFULrotJhGxHMDiDXfZxujXDq9wZSPQpvaY36dk+lo/X4hXz1/6Qdry46ZQkO4KVLVh8sgemKbT+vJXQSN/M0i5NsvYkhG/903GeFvbrhELIvNf5sroLmRxPqOLOjt0JO4dex7eiPxTWFMxRvUvgezvMAthzy9xO170OJ5hrB4vdheWFPp0npGLwpD6NGoJFhaj5eyj/SePTadnqnzy4u0gdVtHvCvdsyA8vVakYLhXytMzP8/cq38BJKn4uq44pvkYrvi0+J1dsV3wondR5gT+aSH/jJCIZ3iQMAl/pwgmqOwtUAejkg0o1EYoJAnjl4rP12nV9LJa/vXYlnw93wdZJmntYRcYnd5m9wClxCdoJmzl60HFPrRA2mFkEoc5EswTHvYhQgvwjCP5+zNyckriWzuBgHcwBH5vjKQxXdR0L5WVgpQNimAja/FqmUg6Yrg8MW1l7fgHkDnsFGbIn4HnwAm7tlJ5+2pzBkPIx+SQur4q9PXInU8iukav5vrIbaPiHXAQFtLuBCJ5Ls0YM9EiyS3vDu12pbd7WntQfceYRq7QeLFHVceTMtPeqPSE6VmSV7pn7rNA8mjvYb1IL88VVriumnvhzAb9kMyQUWU23eiIsJtmxCGPnn3rblWNXHNt46EqioduQv47ltJj+6Fg3GgSpBu2nthuYNPFSRX+qfNODIVzlb3JAqQ91TS4Dz9RuQo7TIVDI+65Ii2zQRO1d67b+288ibt8kJuFy4DJe1adtdTmo3xcjLt86sDyhfrNMfcJ9WUN4aMLe7Jr7lRp3CT+leX+zvJT/NlvKpeg5PWlyWO6eQmnLQuTamvEPIoBmoIRPxY+KfAkh3JmqMPRt/QnL5pfNBNke91VvcwzUXPHQgrx7/X4KjDTwoyix8ozZ5tOqlzYDBwesP+fp2C+TJOLidpw5DiJ74xtMht4nVSynR1m78WHiX8w5CKSpbOGjZlp5iLtEAg6ftyMgXiloif+MEVhfPCp8yqGf9s2GI0VrnkriY7ZM00EYAX/Jgfes+crEqxZDY5stLw++YnmQXwP2YaZFEmXqBnslzi4ykCu38hI6mSz3RKLmmCj37ELytJb1mxoyi4Q7mbqbhzTQBN2PGbUBh6PM0iDeqWP58QEa6qwogCEi95cbsPXAroLSKAogVsAXKHlkt5P0hB5ZXKXI4Kzt6N7iFx64qaFpeqMVC9TtEntGHe1uN+1ekkyMkC/QkIj1+DwJe+/V2wPePDKNzJJWbNeloEKLyzIy0I+vzbfCNmNVbCnd+3I2wc7fIOBQFQLePy/XSytuI5P/pEdeSrtAtKZ4/+xNLbszORpX7vBsh3KVy/JR8gopnD05NDxqLar5PmfZxbfbBrhPjFi6RcZhlLVQXYsoY+v0WsvIh2ltGHW+Td5oQ7P7Jf2YhqqoOtoeGYujUd2PX1d2IsxUVzWJ3A3dE0+QB0y+aB8DJSKcIMnWVr9tRKtgg5jOwF2x9qxpODE/TIuF84i8zxECACvAjjeEmhXxfqq24Mxuhi7JjjodMbm+Z0Yuv9DR/X3HVLSdV/pUQoJxIPEb5jSnWGQqhUii3+VCHOa4sL4zJHvmNcOCNd74t6m+SKrL0KKzJKW5X9oSLsVb7sjLy6vBVQfVb90viuhvjOhJSWvQKUddGtCuSuS714saL1vhrh7It3vKtoCQi5Ld0hIStELet9zmNbCc9m3tr0rJrdd70x5Wt9CDw7l60Jv23pqxqL29qgUbo1oXKncW6b5EU35ienP7Ic/j3ajzU7ZPLRom0db8knuyuE5nPpuzIAUJkPGRJIOMqTc5PAgOvhupwCwWmXercGPy8k+bwqUH5sZVcHKXWPvbD2sQ9rH8ck/3hfJouLJkTdV8/1bmHy6YIzoBx1FuJ9IQU6HWsy1FbCz2IedD6LWd10nXglufF/p3nDNP9nzJVQhXX1ednGuPDJOKbLmGYXvQD1PUhveeHbmqqGkfhYqPKjAlR14T6q7HwDXv8l178c50TmsGiqrbnJJeQj03wfk+5B7jKY5f0Je5hUsDaz4e59xwxot4Gi5G6aSW+ZEX0o4jLXHCV/7x7kXheoOt2ZqtNnU3W6marTElUSBM+7zQPjwur+BH5OEzFyzT//+PtKOQQ1RUMpgvqCIFlaKCp1Ve7RV9GymzUDNFpXjV13uUExha0OYd2n8leNxg/6+OL/BAAA//8IyfRvvogAAA== - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOff/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOff/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOff/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOff/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOff/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOff/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOff/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOff/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOff/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOff/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOff/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOff/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithFilterTable/CustomData b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithFilterTable/CustomData index 03e9718c450..b0176ad3797 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithFilterTable/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithFilterTable/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/9xcfVujSLb/P5/iDMOMOiNJiLbt2EvvYII217xdIPb0tV0eDJXISCANhd2u5n72+1RRQEGIre3s3Nl1n342oU6dl995qVNVZL7/rnXlBa0rJ75uaIZhmx9MSxt0rb5tWqph2Seq3lf2gY51+6NJz9aHumVb+kAbTSzlVTpyovc1+71qdd/lIwfpyLtRv2e/V/v6cPKbeqoNLeV1OmBofU01tRqCw5RAHVu2PjQttd/Pmf6SDvVG3TPNWBvttEvDvdH7YX+k9opxuTR+pn2ooemUaIgShC4f3isNcxh1GEiD0fEHOq2vmwVOHQbUwLRPx6cbRB9wHNZsY7B1R0NL1Yea0VsnYcAZk2F3fZBBd3ZoEoKhPjzNx/baxdiaVnsMtLPJsUbCYjiy7JPRZNhT9hhU+uC0ZtpeMa2vWTxSe/tlLw5O7fGEU3Xv1ZqpXauO7mCdztCJjuukm9GjocsZdbhGea4Zpj4a2vrwXO3rPWWPQdkd6ut278u5o8fGqGf3tOMaos460fjs1FZ7PZZwDL2RoXIu0QxjZCj7DJ40UzlD6MTDLIZ6Y2N0rLGnTOPRxDomVhLrhunQK8736li3Tc041wyeQK4l6A1Nuz8anU3GjKxTS6b+z8TQ1omz4FAttT4XDtocRTUJD2RusBroB0yR83e9qm8P1gNrTfDrNpdE66NMcndiWqOBbWqq0X1n90YDVR+aqW2HjMHpeLI+/3CPGzR0Ell8Zhzurw9X7Tt8xdFo53pXs8f9yak+LDE6KIj04cnINkYDuzsyjMnY0nrKIUsH8/S3jXJ+aa/TcBJ+kYsq3VP1fuGdX7j6PRn3VEsrhrLMMTUS+Oc6zSuza+hji/rJ0NRewUlutzkhpJxOxqeG2tM4Ck6N8cQ4ZQEvtzt5kpCCYGjEDYrcZvh3ddNWTVM/HdrGaGTZ4/eKLMtrYzR+xpox0E2iqSLLjO1YpaWrOxp/oESKLPOcx+P+B3usmub7kUGT7UQ/VWS5krj5GjJiaSHLWUVLy9ha+Mjy6xLBaKwZqkUwTEuDLGfVyzJqBn+BRgoWTUrTUrtn9qlm2aoxsK3RmTZU5GwJrZIMNev9yDhjtkxSxoqcrahVcnNyPNQse2xoJ/pvikwW1Twpjyd6P6tlMlkXU1Deq2O7a2gkXFIwslWJH9GH5uTkRO/q2pBGxJltjtWupshklaLUltbXxiPD6pXKpiJnda4YzwI+Hc4MMSz9RO2S9crQ1AFZJTM+ipzVuBoixkyRSWlLGx/LGpMg/+2D3VUJbueaYSlyVthYZpAhzbBMRT7ImxOmtql1CahW37SPRyPLtAx1nC+n2m9aN8v7PDoOMgf3dPNY7Wu2PrbU475mKjIpa2nNNCamRTisB1dW3Hq6SWbZpvlOkV9nEW/oA9X4YA/1rq2PuaIqv2aRrw9NzbBsfdAzbUMzLRKiJPqMCdFkaI3sgTo87Ws21UmRX+8/dd6J3rc0I5/H0qhHgNA2zDshBa8i7+Cp8yryXnPBa2jEF7ah/fdEN7Se0slK1HBEi4J6qpkMmE5Wm8yhOjbfjfJqyDeN7SwzxoZ+TgbJ+klaARKVnaxckYd8uHba+1na5O36QDXPGFM21jW0nja0dLWfFttebU/czjKQtDPVVqfTPoBGo2hFaFNFtGHav4bKGHlOUCWrvy0rnfZhlYJbfN+r5kDptH95lMme0pHbj1LsK52sdm+geKV05AwV1odkQZ73p5pxThKZZKN+oneJL4yRlRZQSz1VOvJeo+HNYOYFLrQQnoKE75YIZrs+SIGzQCD8JEXIR06MBJCWkRdgkD4lHobO25aLbltB4vvwAPMILUH6BFvNrTeAr1HQAAAYmYq4HYcRBimi7Fs5NzLH+XwDWwsHT6+3xfYutP6xrffsvn6mKdvTMEJhvPOg95Tt5k87O2JrF5wduIdUBRwmyyWKtp2LziU4F3uXO28AffEwrLZ2mOTM7c/UIA+WZwuGB8ARSC5sCVs7DeTHiGqCptchCBXRQYhhFiaBKzRmXqMxOZ4MrYk9Mu2hOtAUIf0uNAaqQYKqGGAPihHaLVaHyUOhQZcvugMtCIpnQoPtfZRWEkctP5w6Pt003yRXaIr9RrqQp6PkuRtOb1DUQF+WBE3aqJ0rgnhftHUZ4kfKSijRaabFSwluPddzmIDcTXJT3mvKkpzNHJ7rPV3NWOsD9VSzzXdqJjJ/wEurm0PCPFPzfCWJ9xsYr3HhDLM+jLWKreTRV0QrwmIaNRfeNArjcIab03DRcm5i8k+aL5NClQrbginpeNJuNy2T3UFPEaYkygK4OYybXghREoBEEvPW89EcuSBJ0QIkKUBYug5jDJL02cPXUhDD0nOPWssonLbkVhC3lh4hXoQJCeu7JVKuvMDdjaOp0gqXuDVfJrtujJXWIki/hEvshUGsRITusZnOlBIWs7MHJQ65kSwO1uxMA67OwABhhdm29Fz28RYytY8ylfOHTIEjXhsKlNAgPXZX7b7T7J5uKK1bJ2pNnek1ajlkXjS99m5R3GqQflkdkgaNI47CEBO6dEJDO9eGFtkTnp7SFivj54fzlvPPJEKtQR4LKvne1L5gFMREm2Y3iXG4MKeRt8QtdIsCHLca3YnRJ/vb8cRSWnixbE2TyLdvUXQVxqgZJrhB1waeIoyceJ3C0E510zI+sFY3be9pTSL0rWkYzLx5885Z+NBoRAhHd9OFa3sze+Z4fhKh7R24p9WMjHkoVkT5DXx2PGzHPkJLRey8AewtUJhgRdx7A/G1N8Pw44+VD5TFLIzAAy8AcTtGn0AGkTHdeQNuSEnIH2MHYvZBEO9/XQmE11WEnBt4eICPObU3gwsQPZDQp5wfXHJLUfZHy7H2BU0TjFz4KIi/fhTIRCIlflMijRBOogDk/GFe07M/ajyIBRD56MyjH90w4FaBzWJXtajbseejAP/ngP9HIcrDFcR+GN4kyxwlHhmZQ4agFGLHt3msIjQNI1cR9+nUGDsRpuOKuO06GMHPP8RpQ/H52vMR4ChBJaAy6SDlXDPIJKqi0iaQECEbwJsmUYSCDVILdLe3eUKQOF13dkCaIxBL1m0OfsEidJyLS9MiRIqZu/ssy0i8Ild43NfMgZu9nCfLo5CkNuSp9Cw1w+hrQMZoGgZuLJCUrMvIILRj7OD4r5CTJCX/OhmZozVH2MZOdOX4fo4SdiL7MaRScopUEvlZOqauFu+52asMcGEDdBxtBT4nAgn/c0ZJiLSnQMdx+0b4MmcdtElY+yDNYrN/CyL9HBbKvAWRW+2h8/ZHucSHqHUB4t/hOwXacFmnDE0dB5cYlQi4DHypZ+1ZFC7sCM29GEd3NmkxbdJKvNDjZNYs9F0Ukbz3onQLmoEk7PwnhgWBDZZkG80HBYOBdKkMZCnt0kC839jSrUgYcS3hy8KIY/SHh9GVFzjR3VejiJE9EkiMYung62owZTLW44mbVImpssBKWG2IrfKccnjRsJFmFZm1QUODbnPElAKwLBI2uXEtDms5fz0eS0j+0SH5jLD8amjWhOfjIVqZsCFi6bZr5vnFPog+eeLaTyam8bnP4vNVKeZ4Xl8tZDxxOdQuaKCJmTS4vMxLWX0V41m9sIzlPUntGper9Bde5CjBLIzKbn7Ew4VX9yjp0rlFLjsAoZv9qR8mruQFHpYIbdykFJQ2PS09+US8n/FZCSBSCuI1hnz7Of1hznTre210ssXB/ngY/BntIaVELkgeCC2iXssVCgWLbOBC5S2Do7FqxHcxRospJtFKu/Xndd8Q305J4c/WhW/tt3M1wHXQIgykCPmh4z5lAtMbRKbKn9C257LJfiWJC9GSFITS0pmTSu6X5vweJlHg+GSSlOQTvimdCpfFOFz+2/mLKP1nOuvZqLpe7Fz56N8OWKb3XxPbtMIQU56H60vBpAknpSD9dQC5RVHshYE9x1mYYRRjEMRtehU2g60f4o/BFgjirwI8ALtkO4cHuEaOC1IA8o4AigKCKAuNVaOIXi0gMaAGrlkq5mtlHuR2G17BXhvE1B5DS6+ZTUu1JqYi/r1RX+rkcpGDt1A5iBdlKaVt+uG8UQBcFgBSgEgfUoGZ9W0yTMPEd+ld3hVKj5H4Q7CSJxi03gy+g5pzJZA7xNLOK84YFKSZIj9JfErtwtVdwWKzLrw3emlKUndwpdqbcbr4XoylJPBwDJI0I3sDSXJKF7+CKDdjFN16UyRUFC6vBZBZKsokxDeBGS6XPJhrle9JbBgt48PsRotbFHXDxdLh7jWya19VEbfTTkSGB5gmGCQXhJ8F0lrLOyXS45y0s4n04oJ0eDnvFUuH/MnxSmBteqnhI6mE3Jw9xwD4uemF8xb5H8nDLAXPIRV+7c2vUYzP0zRWxG39xFTyTUcqYyXkqouUiTTrPKK6eF9muqrTPo+1VcMNPweknPbQ1fhmboUnfG89PjtNb6VZcpPv+Z19J3/U0w2ta42MD1mhXdy4XgTSEsTScNqEJ/G1C+J9aWSVV/K1rCMxdNBug7PE0hxhyBRmLIh6KyX9zFRb/ZQKCpekM3WWmB5nZPOYcY+sGuXz3zcNAHopTqYoBD9mQelakgQ4l8FPWGnc5c0cJLY9J5ZKDkncMJoi+tBFs+KuhOx6iCF+OL2J6eMMDimE3vJmfnQ0Sm9uj44UnkvouwVi0l31kqjxtYWLGi2/oUvU+rL0Ji2abP9AAK/gwD4Sro1VY45wdzxRo+l1HmFONL1WxO0kbXsXOw1uj3lPBnd3VzQjHfLlYF8gAioj0YI8X9+LpnmUDjfW1lk2unCzUVp7vFg1Bgf7fIklqmwXqu/wQutlyhuktbka58UGO6GZRMUhfBpo7CyHnkPILDPY+VuE5uiLsvWP5s8fW+m/o+bP4lYJtmL6CpT/JeDzk3Odobr0tIFfBzMvAtHWD+exjUM7vfWuqIud+IbmUXFfkg6k1KSiDJ3SNdEPe8OdBkdIF2aLv0oSfjiBH6zmD3tDdvpH4jbTK+sqmJTA3TyV0v0eh4Ed48gL5oq4Db9/Ip1P0bhJkhPNgfCIsbNYAtDim6m0EtZIR0sUOSTbdJeQMgVqCFkNpk8EudnZWyexnPiGoAOpWIJlDSONINlHt8gHEPRgFkYLqoDjr9MOUBw7c5QKJYuojzByj0D8aQPfsedS2vaGcatufOs+B+wIxPzzLg/OEYjct90MjiMQ2afd3HzCg33c5aw9ArH4spuZdgQi+7SbW5BRjj13N1c7e2h57irNEe4oWbzn4oKegd6vvx6yEu/LUbxqklmNonAKpLgJ8J1CASrXA778ce3NNWmA7PjGW9rpi1a2G3mkly/6bFLZv6RH5KF7p4jbxakdSO9AGCDsuA52juh9t0Cb6WUUfrkD4ScBhGuMl0etlnzwS7Pzar/J/r+1YLNaXhBjJ5iivztLT2K7CKXT7shSuyO1ZZZzXKp9i6nUkMLWrFkSRGIS6WpIIiLYak7DxTLBqImdedz3YgwPsHCW2zHy0RRvN+na8EC3NtuCeeMtT5dJjwKmEzN8X3gDgifs7OxctC+bt46fIGi1QJg5foyEfCYFKqXcKt0ocDoKnH9YZ2rfJFfIR9imrXMwt6cowt7MmzoY2VGIaXT/xzqOgVDvu6jGdxeXpMvlPUeXy5tYYqwkhqfE8JQ4PKUMT2EHHiB1Za2vGC8hXUkHTuQFKBpF9JWtvhckXypLVBhnKylbJMOYNsuVtzdJr/zwUEfAv8S5TrX+Hud6Z1A+L/aqfXgD3Tr+2JneOHPUYw3bxOhX7KAtwb18JK04Y6QABDGJ/Jp2BAhXECIUJz5WxHvSE3DvgKR1MB1tVM4neD1T8FO005T7r09MszDBywQr4jYJiCwiicvSazWiWkpSjjvmTjbU4Lolbwa1HgVBHJnlfWucuCFgN5gB04p0uL9/It1tyv/3T/DZibNRugiW9VzrC7PdQsbwFchw0P4WphS6tOAnS9KZGOmLxRWPLlOXK/QEphSwgtgpP8m2iYK4J7CzFvpTVkVgr8uUyfvhZxR1nZhL3vswpttJsie9OKKvSR9dbpHPPiE+umTJ9v1JGEH6hvMucYiYCwcvBvmw2d4HJ3BBiOTD9r5AHjp+HIKLZl6AXLLxIXUhDMjKSRfM3bTlFLO3q72YlkocZjxSuaa38Hwn8u/oDqrTzgR1Os32fhNG+BpFn70Y1TFqMhSahQkse6lw4GY4/mfnrtAggw+C8DM3u8jqGhD2mu0Ugtu9Zvs5CDCn8QhQFl8Lfuq7Snpnu5PMvSyYVqxAC003ryR63CQs8qBYNT8Kt+RJdk7wURB26AoRJH5tKeEDbn1u3TtkdSWvEszvPXwdJrgX4lKUZozpqSVyYStufWy2WvOt0gbxiXYnV0mAk2bEMS7Erh63mrN4w/zMdj7VWR1nxPG/POVLBaYMSJb0ZVj/qELBfnqUnbyYyvZOo/HSyBTSLfYGj/D6Ci6aOYmPcw+8WHZTvGcQr5qsnsfnncdjJMXRd3Bx6hYr2xvlS9G3qFDqq0qyiGpEM9oylUaEnZ2KkssI3XphEvf/RGVrZZaUrqXglSeLwW1We0lLcV9G++LXS1IbuTucuuD8WdkWxPvbLAcK9vn9d72setD+SJnVQvkvCePH02pzrb7910TJxWXm4XXEbzdi/CR8c2xzo/LKPEh87KnR9LpSm1NTvYUzR1Z4jMYJ6ezSCt0A+P73T7SFWJsNsyhc0KFpGGCHLNs64RE3QZ9Bt/zswrtsLqoczjukEwhCTNNhN1MZXzt4Nz11ZU+ewqyxHjUVkzKP1Smysch9rcBtkEGjokbOS0rZU8vYS1R6YcF6brEaTPqWbtP/oMPTovpbK9SzBeUbwbQkbS4Hz0I7S/ynpv3T1M5+dFJqwDZvpLMejJ0KFKcEndr+i91r/cW6r3Sr4s3gsdoL6IsXY7b7mJMdxzWCgr6fl7AIsb1PmO+yNpKXBbIuDP6Izu+RPovTQnn5sshxE0CKipWZ3qpyoysBCp3gxx/zNSj/TTtRSKA3U/VDFXaNzQct32IiQ/+rtv05drHVikTnqtFwXPcsPe4bhi7qO1eoetfVV4+1vm1ahj485c7o0ncWPBBEnkCAv/3tbyCI2Y/nh6OeZlMCU4C3UPzavfP2x/p3MtjhIwShi8An+kBJQrqRj5Dj3pFVJkYB3iWr87UXzMle3XHXXx8pt23sXtF1yYw6CTiEdS3iZrMpFAe29Nys1spqUtQQEcfUPF7tive8IquaS9E6biXtua1uhBbhLXqJexEIazq9wMNPh6JVFdvKweCVqxDt/knKVcU+Sbn/H90y1dKI+P6d1h9rhqmNThr/FwAA//+Ej9uW4E8AAA== + H4sIAAAAAAAC/9xcfXubRrb/X5/ilNLabo0kZMdxnCVbLGGFa71dQE5zHS8PFiOZGoECIydeW/ez32eGAQaEHDtuc7P1PnlWYs6cl995mTMzqD/+0Lj0gsalE1/VNMOwzfempfXbVs82LdWw7BNV7yn7QMfaveG4Y+sD3bItva8Nx5byIhk50Xua/U612m+zkYNk5O2w17HfqT19MP5d7WoDS3mZDBhaT1NNrYLgMCFQR5atD0xL7fUypq+Soc6wfaoZa6OtZmG4M3w36A3VTj4uF8ZPtfcVNK0CDVGC0GXDe4VhDqMWA6k/PH5Pp/V0M8epxYDqm3Z31N0g+oDjsGYbg609HFiqPtCMzjoJA84YD9rrgwy600OTEAz0QTcb22vmY2ta7THQTsfHGgmLwdCyT4bjQUfZY1Dp/W7FtL18Wk+zeKT29ote7Hft0ZhTde/Fmqltq4ruYJ3O0ImO66Sb0aOhyxl1uEZ5phmmPhzY+uBM7ekdZY9B2R7o63bvy5mjR8awY3e04wqi1jrR6LRrq50OSziG3tBQOZdohjE0lH0GT5KpnCF04mEaQ52RMTzW2FOm8XBsHRMriXWDZOgF53t1pNumZpxpBk8gVxJ0BqbdGw5PxyNG1qokU/9nbGjrxGlwqJZanQsHTY6inIQHMjdYDvQDpsjZ207ZtwfrgbUm+GWTS6L1USa5PTatYd82NdVov7U7w76qD8zEtkPGoDsar88/3OMGDZ1EFp8Zh/vrw2X7Dl9wNNqZ3tbsUW/c1QcFRgc5kT44GdrGsG+3h4YxHllaRzlk6WB2f98o51VznYaT8ErOq3RH1Xu5d15x9Xs86qiWlg+lmWNqJPDPdJpXZtvQRxb1k6GpnZyT3GxyQkg5HY+6htrROApOjdHY6LKAl5utLElIQTA04gZFbjL827ppq6apdwe2MRxa9uidIsvy2hiNn5Fm9HWTaKrIMmM7Umnpag9H7ymRIss859Go994eqab5bmjQZDvRu4oslxI3W0OGLC1kOa1oSRlbCx9ZflkgGI40Q7UIhklpkOW0ellGxeArqCVg0aQ0LbV9anc1y1aNvm0NT7WBIqdLaJlkoFnvhsYps2WcMFbkdEUtk5vj44Fm2SNDO9F/V2SyqGZJeTzWe2ktk8m6mIDyTh3ZbUMj4ZKAka5K/Ig+MMcnJ3pb1wY0Ik5tc6S2NUUmqxSltrSeNhoaVqdQNhU5rXP5eBrwyXBqiGHpJ2qbrFeGpvbJKpnyUeS0xlUQMWaKTEpb0vhY1ogE+e/v7bZKcDvTDEuR08LGMoMMaYZlKvJB1pwwtU2tTUC1eqZ9PBxapmWoo2w51X7X2mneZ9FxkDq4o5vHak+z9ZGlHvc0U5FJWUtqpjE2LcJhPbjS4tbRTTLLNs23ivwyjXhD76vGe3ugt219xBVV+SWLfH1gaoZl6/2OaRuaaZEQJdFnjIkmA2to99VBt6fZVCdFfrn/2Hknes/SjGweS6MOAULbMO+EFLySvIPHzivJe8kFr6ERX9iG9t9j3dA6SistUYMhLQpqVzMZMK20NpkDdWS+HWbVkG8am2lmjAz9jAyS9ZO0AiQqW2m5Ig/5cG0199O0ydr1vmqeMqZsrG1oHW1g6WovKbadyp64mWYgaWfKrU6reQC1Wt6K0KaKaMO0fwmlMfKcoEpWf1tWWs3DMgW3+L5Tzb7Sar56kMme0pKbD1LsK620dm+geKG05BQV1oekQZ71p5pxRhKZZKN+oreJL4yhlRRQS+0qLXmvVvOmMPUCFxoIT0DCtwsE010fpMCZIxB+kSLkIydGAkiLyAswSB+XHobWm4aLbhrB0vfhHmYRWoD0EbbqW68BX6GgBgAwNBVxOw4jDFJE2TcybmSO8+katuYOnlxti81daPxrW+/YPf1UU7YnYYTCeOde7yjb9V92dsTGLjg7cAeJCjhcLhYo2nbOWxfgnO9d7LwG9NnDsNraYZJTtz9RgyxYniwY7gFHILmwJWzt1JAfI6oJmlyFIJREByGGabgMXKE29Wq18fF4YI3toWkP1L6mCMl3odZXDRJU+QB7kI/QbrE8TB4KNbp80R1oTpA/E2ps76M0lnHU8MOJ49NN8/XyEk2wX0sW8mSUPHfDyTWKaujzgqBJG7UzRRDv8rYuRfxIWQkFOs20eCnBjed6DhOQuUmuy3t1WZLTmYMzvaOrKWu9r3Y123yrpiKzB7y0qjkkzFM1z1aSeLeB8RoXzjDr/Ugr2UoefUG0IswnUX3uTaIwDqe4PgnnDec6Jv+k2WKZq1JimzMlHU/S7SZlst3vKMKERFkA14dx3QshWgYgkcS88Xw0Qy5IUjQHSQoQlq7CGIMkffLwlRTEsPDco8YiCicNuRHEjYVHiOfhkoT17QIpl17g7sbRRGmEC9yYLZa7boyVxjxIvoQL7IVBrESE7qGZzoQS5rPTBwUOmZEsDtbsTAKuysAAYYXZtvBc9vEGUrWPUpWzh0yBI14bCpRQIz12W22/1eyObiiNGydqTJzJFWo4ZF40ufJuUNyokX5ZHZAGjSOOwhATumRCTTvTBhbZE3a7tMVK+fnhrOH8exmhRj+LBZV8r2ufMQpiok29vYxxODcnkbfADXSDAhw3au2x0SP729HYUhp4vmhMlpFv36DoMoxRPVziGl0beIowcuJ1CkPr6qZlvGetbtLe05pE6BuTMJh6s/qtM/ehVosQjm4nc9f2pvbU8fxlhLZ34I5WMzLmoVgR5dfwyfGwHfsILRSx9RqwN0fhEivi3muIr7wphp9/Ln2gLKZhBB54AYjbMfoIMoiM6c5rcENKQv4YOxDTD4J499tKILwuI+Rcw/09fMiovSmcg+iBhD5m/OCCW4rSP1qOtc9ossTIhQ+C+NsHgUwkUuLXBdII4WUUgJw9zGp6+keNBzEHIhudevSjGwbcKrBZ7KoSdTv2fBTgvw/4fxaiPFxB7Ifh9XKRocQjI3PIEJRC7Pg2j1WEJmHkKuI+nRpjJ8J0XBG3XQcj+PWnOGkoPl15PgIcLVEBqFQ6SBnXFDKJqqg0CSREyAbwJssoQsEGqTm629s8IUicrjs7IM0QiAXrNge/YBE6zsWFaREixczdfZJlJF6RKzzsa+bAzV7OkuVBSBIbslR6kpph9CUgYzQJAzcWSEpWZWQQ2jF2cPw95CRJye8nIzO0Zgjb2IkuHd/PUMJOZD+EVEJOkVpGfpqOiavFO272KgVc2AAdR1uCz4lAwv+eUhIi7THQcdy+Er7UWQdNEtY+SNPY7N2ASD+HuTJvQORWe2i9+Vku8CFqnYP4T/hBgSZcVClDU8fBBUYFAi4Dn+tZexqFcztCMy/G0a1NWkybtBLP9DiZNQ19F0Uk770o2YKmIAk7f8ewILDBgmyj+aBgMJAulYEsJV0aiHcbW7oVCSOuJXxeGHGM/vQwuvQCJ7r9YhQxsgcCiVEsHHxVDqZUxno8cZNKMVUUWAqrDbFVnFMMLxo20rQkszJoaNBtjphCABZFwiY3rsVhJecvx2MByT87JJ8Qll8MzYrwfDhESxM2RCzddk09P98H0SePXPvJxCQ+91l8vijEHM/ri4WMJy6G2jkNNDGVBhcXWSmrrmI8q2eWsawnqVzjMpW+40WOEkzDqOjmBzyce3WPki6cG+SyAxC62Z/44dKVvMDDEqGN65SC0ianpScfifdTPisBREpBvMaQbz6lP8yYbv2oDU+2ONgfDoNv0R5SSuSC5IHQIOo1XCFXMM8GLlTeMDhqq1p8G2M0n2ASrbRbf1r3DfHNhBT+dF342n47UwNcB83DQIqQHzruYyYwvUFkqnyDtj2TTfYryzgXLUlBKC2cGankfmHOH+EyChyfTJKW2YSvSqfcZTEOF/9x/iJKf0tnPRlV14udSx/9xwHL9P4+sU0qDDHlabg+F0yacFIC0vcDyA2KYi8M7BlOwwyjGIMgbtOrsCls/RR/CLZAEH8T4B7YJdsZ3MMVclyQApB3BFAUEERZqK1qefRqAYkBNXDNQjFfK/MgN5vwAvaaICb2GFpyzWxaqjU2FfGftepSJxeLHLyB0kG8KEsJbd0PZ7Uc4KIAkAJE+pASzKxvk2ESLn2X3uVdouQYiT8EK3iCQetN4QeoOFcCuUUsbb3gjEFBkinyo8Qn1C5c3uYsNuvCe6OTpCR1B1eqvSmni+/FWFoGHo5BkqZkbyBJTuHiVxDleoyiG2+ChJLCxbUAUktFmYT4JjDDxYIHc63yPYoNo2V8mN1ofoOidjhfONy9RnrtqyridtKJyHAPkyUGyQXhV4G01vJOgfQ4I21tIj0/Jx1exnvF0iF7crwSWJteaPhIKiE3Y88xAH5ucuG8Rf5H8jBNwTNIhF95sysU47MkjRVxWz8xlWzTkchYCZnqImUiTVsPqC7eFZmuqrTPYm1Vc8NPASmnHXQ5up5Z4QnfW49Ou8mtNEtu8j27s29ljzq6obWtofE+LbTza9eLQFqAWBhOmvBlfOWCeFcYWWWVfC3rSAwdNJvgLLA0QxhShRkLot5KST4z1Va/JILCBelMnQWmxxnpPGbcA6tG8fz3dQ2AXoqTKQrBj1lQuJYkAc5l8CNWGndxPQOJbc+JpZJDEjeMJog+dNE0vyshux5iiB9OrmP6OIVDCqGzuJ4dHQ2Tm9ujI4XnEvpujph0W74kqn1p4aJGy6/pErW+LL1OiibbPxDASziwj4RrbVWbIdwejdVocpVFmBNNrhRxe5m0vfOdGrfHvCODu7srmpEO+XKwLxABpZFoTp6v70WTPEqGa2vrLBudu+korT1erBr9g32+xBJVtnPVd3ih1TLlDdKaXI3zYoOd0Iyj/BA+CTR2lkPPIWSWGez8LUIz9FnZ+lf91w+N5N9R/VdxqwBbPn0Fyv8S8PnJmc5QXnqawK+DqReBaOuHs9jGoZ3cepfUxU58TfMovy9JBhJqUlEGTuGa6Ke9wU6NI6QLs8VfJQk/ncBPVv2nvQE7/SNxm+qVdhVMSuBunkrp/ojDwI5x5AUzRdyGPz6Szidv3CTJiWZAeMTYmS8AaPFNVVoJa6TDBYockm26S0iZAhWErAbTJ4Jcb+2tk1hOfE3QgUQswbKCkUaQ7KEb5AMIejANozlVwPHXafsojp0ZSoSSRdRHGLlHIP6yge/Icyltc8O4VTW+dZcBdgRi9nmXB+cIRO7bbgrHEYjs025mPuHBPu5y1h6BmH/ZTU07ApF92s0sSClHnrubqZ0+tDx3leQId5Qs3nFxQc9A79ZfD1mJd8UoXtXJrFpeOAVS3AT4QaEAFesBX/649uaKNEB2fO0t7ORFK9uNPNLL5302qeyfkyPy0L1VxO381A6ktyD0EXZcBztH9L5boM30Igo/34LwiwDCFcaLo0ZDPnhVb73Yr7P/b8zZrIYXxNgJJuifzsKT2C5CaTVbstRsSU2Z5RyXal9jKjUktzVtlgSRmES6GpKICLbqk3C+WGJUx84s7nkxhnuYO4vtGPlogrfrdG24p1ubbcG89hbdxbJDAdOJGb4vvAbBE3Z2ds6bF/Ubx18iaDRAmDp+jIRsJgUqodwq3ChwOgqcf1hnal8vL5GPsE1b52BmT1CEvak3cTCyoxDT6P7bOo6BUO27qMJ35xeky+U9R5fL61hirCSGp8TwlDg8pRRPYQfuIXFl0Vd3Rb12d1dCspr2ncgLUDSM6GtbPS9Yfi4tU2GcrqZsoQxj2jCX3uAk/fL9fRUB/yLnOtX6u5zr3UHxzNgr9+I1dOP4I2dy7cxQhzVtY6NXsoO2BXfykbTijJECEMRl5Fe0JEC4ghCheOljRbwjfQH3HkhSC5PRWumMgtczcUCCdpJ2//WRaRYu8WKJFXGbBEUalcRtydUaUS0hKcYecykbqnEdkzeFSo+CIA7N4t41XrohYDeYAtOKdLl/fCQdbsL/j4/wyYnTUboQFvVc6w3THUPK8AXIcND8GqYUuqToLxekOzGSl4tLHl0kLlfoKUwhYAWxVXySbhUFcU9g5y3056yKwF6ZKZL3wk8oajsxl8B3YUy3lGRfen5EX5U+utgin31CfHTBEu7HkzCC5C3nXeIQMRMOXgzyYb25D07gghDJh819gTx0/DgEF029ALlk80NqQxiQ1ZMumrtJ2ymmb1h7MS2XOEx5JHJNb+75TuTf0l1Uq5kKarXqzf06DPEVij55MapiVGco1HMTWPZS4cDNcPxPzm2uQQofBOEnbnae1RUg7NWbCQQ3e/XmUxBgTuMRoCy+FPzUd6X0TncoqXtZMK1YkRbqblZJ9LhOWGRBsap/EG7Ik/Ss4IMg7NBVIlj6laWED7j1uVXvkVWVvFIwv/PwVbjEnRAXojRlTE8ukQtbceNDvdGYbRU2iY+0e3m5DPCyHnGMc7Grh63mLN4wP7WdT3VWxxlx/JenfKHAFAFJk74I659VKNjPj9LTF1PZ3qnVnhuZQrLN3uARXl/BRVNn6ePMA8+WXRfvGMSrOqvn8Vnr4RhJcPQdnJ+8xcr2RvlS9DUqFHqrgiyiGtGMtk2FEWFnp6TkIkI3XriMe99Q2UqZBaUrKXjlyWJwk9Ze0lLcFdE+/+2C1EbuHqcqOH9VtgXx7ibNgZx9dgdeLasatD9TZrlQ/iVh/HBaba7VN39NlJxfpB5eR/xmI8aPwjfDNjMqq8z9pY89NZpclWpzYqo3d2bICo/RaEk6u6RC1wB+/OMjbSHWZsM0Cud0aBIG2CHLtk54xHXQp9AuPjv3LurzMoezFukEghDTdNhNVcZXDt5NTl7Zk8cwq61HTcmk1GNVimwscl8qcBtk0KiokPOcUvbYMvYclZ5ZsJ5arPrjnqXb9D/q8Lio/toK9WRB2UYwKUmby8GT0E4T/7Fp/zi10x+eFBqwzRvptAdjpwL5KUGrsv9id1vfWfeVbFW8KTxUewF99mLMdh8zsuO4QpDT97ISFiG29wmzXdZG8qJA1oXBn9H5PdBncVooz18WOW4CSFG+MtObVW50JUCuE/z8c7YGZb9rJwoJ9HaqeqjErrb5oOVrTGTof9G2b2MXW61IdK5qNcd1T5Mjv0Hoop5zicr3XT31WOvZpmXogy53Rpe8t+CBIPIEAvzjH/8AQUx/QD8YdjSbEpgCvIH8F++tNz9Xv5fBDiAhCF0EPtEHChKSjXyEHPeWrDIxCvAuWZ2vvGBG9uqOu/4KSbFtY3eLrktmVEnAIaxrEdfrdSE/tKXnZpVWlpOigog4puLxale84xVZVVyMVnEraM9tdSM0D2/Qc9yLQFjT6RkefjwUjbLYRgYGr1yJaPcbKVcW+yjl/n90S1WriIgT35mVguGkp3YfjgWOYs0iMvZ4Wyg1bwV90CjJ2AQtT7P7lyhSkvEYRb6BHkV//vhW6400w9SGJ7X/CwAA//+ee/h8tFEAAA== @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithFilterTable/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithFilterTable/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithFilterTable/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithFilterTable/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithFilterTable/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithFilterTable/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithFilterTable/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithFilterTable/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithFilterTable/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithFilterTable/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithFilterTable/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithFilterTable/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithMangleTable/CustomData b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithMangleTable/CustomData index 03e9718c450..b0176ad3797 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithMangleTable/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithMangleTable/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithMangleTable/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithMangleTable/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithMangleTable/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithMangleTable/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithMangleTable/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithMangleTable/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithMangleTable/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithMangleTable/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithMangleTable/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithMangleTable/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithMangleTable/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+IMDSRestrictionOnWithMangleTable/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+ImplicitlyDisableKubeletServingCertificateRotation/CustomData b/pkg/agent/testdata/AKSUbuntu2204+ImplicitlyDisableKubeletServingCertificateRotation/CustomData index f2cdfad7f2a..e30472488d6 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+ImplicitlyDisableKubeletServingCertificateRotation/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+ImplicitlyDisableKubeletServingCertificateRotation/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+ImplicitlyDisableKubeletServingCertificateRotation/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+ImplicitlyDisableKubeletServingCertificateRotation/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+ImplicitlyDisableKubeletServingCertificateRotation/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+ImplicitlyDisableKubeletServingCertificateRotation/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+ImplicitlyDisableKubeletServingCertificateRotation/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+ImplicitlyDisableKubeletServingCertificateRotation/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+ImplicitlyDisableKubeletServingCertificateRotation/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+ImplicitlyDisableKubeletServingCertificateRotation/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+ImplicitlyDisableKubeletServingCertificateRotation/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+ImplicitlyDisableKubeletServingCertificateRotation/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+ImplicitlyDisableKubeletServingCertificateRotation/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+ImplicitlyDisableKubeletServingCertificateRotation/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation+CustomKubeletConfig/CSECommand b/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation+CustomKubeletConfig/CSECommand index e5ba47e47d3..6f34f8e8e8e 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation+CustomKubeletConfig/CSECommand +++ b/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation+CustomKubeletConfig/CSECommand @@ -1 +1 @@ -PROVISION_OUTPUT="/var/log/azure/cluster-provision-cse-output.log"; echo $(date),$(hostname) > ${PROVISION_OUTPUT}; cloud-init status --wait > /dev/null 2>&1; [ $? -ne 0 ] && echo 'cloud-init failed' >> ${PROVISION_OUTPUT} && exit 1; echo "cloud-init succeeded" >> ${PROVISION_OUTPUT}; ADMINUSER=azureuser MOBY_VERSION= TENANT_ID=tenantID KUBERNETES_VERSION=1.29.7 HYPERKUBE_URL= KUBE_BINARY_URL= CUSTOM_KUBE_BINARY_URL= PRIVATE_KUBE_BINARY_URL="" KUBEPROXY_URL= APISERVER_PUBLIC_KEY= SUBSCRIPTION_ID=subID RESOURCE_GROUP=resourceGroupName LOCATION=southcentralus VM_TYPE=vmss SUBNET=subnet1 NETWORK_SECURITY_GROUP=aks-agentpool-36873793-nsg VIRTUAL_NETWORK=aks-vnet-07752737 VIRTUAL_NETWORK_RESOURCE_GROUP=MC_rg ROUTE_TABLE=aks-agentpool-36873793-routetable PRIMARY_AVAILABILITY_SET= PRIMARY_SCALE_SET=aks-agent2-36873793-vmss SERVICE_PRINCIPAL_CLIENT_ID=ClientID NETWORK_PLUGIN= NETWORK_POLICY= VNET_CNI_PLUGINS_URL=https://acs-mirror.azureedge.net/azure-cni/v1.1.3/binaries/azure-vnet-cni-linux-amd64-v1.1.3.tgz CLOUDPROVIDER_BACKOFF= CLOUDPROVIDER_BACKOFF_MODE= CLOUDPROVIDER_BACKOFF_RETRIES=0 CLOUDPROVIDER_BACKOFF_EXPONENT=0 CLOUDPROVIDER_BACKOFF_DURATION=0 CLOUDPROVIDER_BACKOFF_JITTER=0 CLOUDPROVIDER_RATELIMIT= CLOUDPROVIDER_RATELIMIT_QPS=0 CLOUDPROVIDER_RATELIMIT_QPS_WRITE=0 CLOUDPROVIDER_RATELIMIT_BUCKET=0 CLOUDPROVIDER_RATELIMIT_BUCKET_WRITE=0 LOAD_BALANCER_DISABLE_OUTBOUND_SNAT= USE_MANAGED_IDENTITY_EXTENSION=false USE_INSTANCE_METADATA=false LOAD_BALANCER_SKU= EXCLUDE_MASTER_FROM_STANDARD_LB=true MAXIMUM_LOADBALANCER_RULE_COUNT=0 CONTAINER_RUNTIME= CLI_TOOL= CONTAINERD_DOWNLOAD_URL_BASE=https://storage.googleapis.com/cri-containerd-release/ NETWORK_MODE= KUBE_BINARY_URL= USER_ASSIGNED_IDENTITY_ID=userAssignedID API_SERVER_NAME= IS_VHD=true GPU_NODE=false SGX_NODE=false MIG_NODE=false CONFIG_GPU_DRIVER_IF_NEEDED=true ENABLE_GPU_DEVICE_PLUGIN_IF_NEEDED=false TELEPORTD_PLUGIN_DOWNLOAD_URL= CREDENTIAL_PROVIDER_DOWNLOAD_URL=https://acs-mirror.azureedge.net/cloud-provider-azure/v1.29.7/binaries/azure-acr-credential-provider-linux-amd64-v1.29.7.tar.gz CONTAINERD_VERSION= CONTAINERD_PACKAGE_URL= RUNC_VERSION= RUNC_PACKAGE_URL= ENABLE_HOSTS_CONFIG_AGENT="false" DISABLE_SSH="false" NEEDS_CONTAINERD="false" TELEPORT_ENABLED="false" SHOULD_CONFIGURE_HTTP_PROXY="false" SHOULD_CONFIGURE_HTTP_PROXY_CA="false" HTTP_PROXY_TRUSTED_CA="" SHOULD_CONFIGURE_CUSTOM_CA_TRUST="false" CUSTOM_CA_TRUST_COUNT="0" IS_KRUSTLET="false" GPU_NEEDS_FABRIC_MANAGER="false" NEEDS_DOCKER_LOGIN="false" IPV6_DUAL_STACK_ENABLED="false" OUTBOUND_COMMAND="curl -v --insecure --proxy-insecure https://mcr.microsoft.com/v2/" BLOCK_OUTBOUND_NETWORK="false" ENABLE_UNATTENDED_UPGRADES="true" ENSURE_NO_DUPE_PROMISCUOUS_BRIDGE="false" SHOULD_CONFIG_SWAP_FILE="false" SHOULD_CONFIG_TRANSPARENT_HUGE_PAGE="false" SHOULD_CONFIG_CONTAINERD_ULIMITS="false" CONTAINERD_ULIMITS="" TARGET_CLOUD="AzurePublicCloud" TARGET_ENVIRONMENT="AzurePublicCloud" CUSTOM_ENV_JSON="" IS_CUSTOM_CLOUD="false" AKS_CUSTOM_CLOUD_CONTAINER_REGISTRY_DNS_SUFFIX="" CSE_HELPERS_FILEPATH="/opt/azure/containers/provision_source.sh" CSE_DISTRO_HELPERS_FILEPATH="/opt/azure/containers/provision_source_distro.sh" CSE_INSTALL_FILEPATH="/opt/azure/containers/provision_installs.sh" CSE_DISTRO_INSTALL_FILEPATH="/opt/azure/containers/provision_installs_distro.sh" CSE_CONFIG_FILEPATH="/opt/azure/containers/provision_configs.sh" AZURE_PRIVATE_REGISTRY_SERVER="" HAS_CUSTOM_SEARCH_DOMAIN="false" CUSTOM_SEARCH_DOMAIN_FILEPATH="/opt/azure/containers/setup-custom-search-domains.sh" HTTP_PROXY_URLS="" HTTPS_PROXY_URLS="" NO_PROXY_URLS="" PROXY_VARS="" ENABLE_TLS_BOOTSTRAPPING="false" ENABLE_SECURE_TLS_BOOTSTRAPPING="false" CUSTOM_SECURE_TLS_BOOTSTRAP_AAD_SERVER_APP_ID="" ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION="true" DHCPV6_SERVICE_FILEPATH="/etc/systemd/system/dhcpv6.service" DHCPV6_CONFIG_FILEPATH="/opt/azure/containers/enable-dhcpv6.sh" THP_ENABLED="" THP_DEFRAG="" SERVICE_PRINCIPAL_FILE_CONTENT="U2VjcmV0" KUBELET_CLIENT_CONTENT="" KUBELET_CLIENT_CERT_CONTENT="" KUBELET_CONFIG_FILE_ENABLED="true" KUBELET_CONFIG_FILE_CONTENT="ewogICAgImtpbmQiOiAiS3ViZWxldENvbmZpZ3VyYXRpb24iLAogICAgImFwaVZlcnNpb24iOiAia3ViZWxldC5jb25maWcuazhzLmlvL3YxYmV0YTEiLAogICAgInN0YXRpY1BvZFBhdGgiOiAiL2V0Yy9rdWJlcm5ldGVzL21hbmlmZXN0cyIsCiAgICAiYWRkcmVzcyI6ICIwLjAuMC4wIiwKICAgICJyZWFkT25seVBvcnQiOiAxMDI1NSwKICAgICJ0bHNDaXBoZXJTdWl0ZXMiOiBbCiAgICAgICAgIlRMU19FQ0RIRV9FQ0RTQV9XSVRIX0FFU18xMjhfR0NNX1NIQTI1NiIsCiAgICAgICAgIlRMU19FQ0RIRV9SU0FfV0lUSF9BRVNfMTI4X0dDTV9TSEEyNTYiLAogICAgICAgICJUTFNfRUNESEVfRUNEU0FfV0lUSF9DSEFDSEEyMF9QT0xZMTMwNSIsCiAgICAgICAgIlRMU19FQ0RIRV9SU0FfV0lUSF9BRVNfMjU2X0dDTV9TSEEzODQiLAogICAgICAgICJUTFNfRUNESEVfUlNBX1dJVEhfQ0hBQ0hBMjBfUE9MWTEzMDUiLAogICAgICAgICJUTFNfRUNESEVfRUNEU0FfV0lUSF9BRVNfMjU2X0dDTV9TSEEzODQiLAogICAgICAgICJUTFNfUlNBX1dJVEhfQUVTXzI1Nl9HQ01fU0hBMzg0IiwKICAgICAgICAiVExTX1JTQV9XSVRIX0FFU18xMjhfR0NNX1NIQTI1NiIKICAgIF0sCiAgICAicm90YXRlQ2VydGlmaWNhdGVzIjogdHJ1ZSwKICAgICJzZXJ2ZXJUTFNCb290c3RyYXAiOiB0cnVlLAogICAgImF1dGhlbnRpY2F0aW9uIjogewogICAgICAgICJ4NTA5IjogewogICAgICAgICAgICAiY2xpZW50Q0FGaWxlIjogIi9ldGMva3ViZXJuZXRlcy9jZXJ0cy9jYS5jcnQiCiAgICAgICAgfSwKICAgICAgICAid2ViaG9vayI6IHsKICAgICAgICAgICAgImVuYWJsZWQiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiYW5vbnltb3VzIjoge30KICAgIH0sCiAgICAiYXV0aG9yaXphdGlvbiI6IHsKICAgICAgICAibW9kZSI6ICJXZWJob29rIiwKICAgICAgICAid2ViaG9vayI6IHt9CiAgICB9LAogICAgImV2ZW50UmVjb3JkUVBTIjogMCwKICAgICJjbHVzdGVyRG9tYWluIjogImNsdXN0ZXIubG9jYWwiLAogICAgImNsdXN0ZXJETlMiOiBbCiAgICAgICAgIjEwLjAuMC4xMCIKICAgIF0sCiAgICAic3RyZWFtaW5nQ29ubmVjdGlvbklkbGVUaW1lb3V0IjogIjRoMG0wcyIsCiAgICAibm9kZVN0YXR1c1VwZGF0ZUZyZXF1ZW5jeSI6ICIxMHMiLAogICAgImltYWdlR0NIaWdoVGhyZXNob2xkUGVyY2VudCI6IDkwLAogICAgImltYWdlR0NMb3dUaHJlc2hvbGRQZXJjZW50IjogNzAsCiAgICAiY2dyb3Vwc1BlclFPUyI6IHRydWUsCiAgICAiY3B1TWFuYWdlclBvbGljeSI6ICJzdGF0aWMiLAogICAgInRvcG9sb2d5TWFuYWdlclBvbGljeSI6ICJiZXN0LWVmZm9ydCIsCiAgICAibWF4UG9kcyI6IDExMCwKICAgICJwb2RQaWRzTGltaXQiOiAxMjM0NSwKICAgICJyZXNvbHZDb25mIjogIi9ldGMvcmVzb2x2LmNvbmYiLAogICAgImNwdUNGU1F1b3RhIjogZmFsc2UsCiAgICAiY3B1Q0ZTUXVvdGFQZXJpb2QiOiAiMjAwbXMiLAogICAgImV2aWN0aW9uSGFyZCI6IHsKICAgICAgICAibWVtb3J5LmF2YWlsYWJsZSI6ICI3NTBNaSIsCiAgICAgICAgIm5vZGVmcy5hdmFpbGFibGUiOiAiMTAlIiwKICAgICAgICAibm9kZWZzLmlub2Rlc0ZyZWUiOiAiNSUiCiAgICB9LAogICAgInByb3RlY3RLZXJuZWxEZWZhdWx0cyI6IHRydWUsCiAgICAiZmVhdHVyZUdhdGVzIjogewogICAgICAgICJDdXN0b21DUFVDRlNRdW90YVBlcmlvZCI6IHRydWUsCiAgICAgICAgIlBvZFByaW9yaXR5IjogdHJ1ZSwKICAgICAgICAiUm90YXRlS3ViZWxldFNlcnZlckNlcnRpZmljYXRlIjogdHJ1ZSwKICAgICAgICAiYSI6IGZhbHNlLAogICAgICAgICJ4IjogZmFsc2UKICAgIH0sCiAgICAiZmFpbFN3YXBPbiI6IGZhbHNlLAogICAgImNvbnRhaW5lckxvZ01heFNpemUiOiAiMTAwME0iLAogICAgImNvbnRhaW5lckxvZ01heEZpbGVzIjogOTksCiAgICAic3lzdGVtUmVzZXJ2ZWQiOiB7CiAgICAgICAgImNwdSI6ICIyIiwKICAgICAgICAibWVtb3J5IjogIjFHaSIKICAgIH0sCiAgICAia3ViZVJlc2VydmVkIjogewogICAgICAgICJjcHUiOiAiMTAwbSIsCiAgICAgICAgIm1lbW9yeSI6ICIxNjM4TWkiCiAgICB9LAogICAgImVuZm9yY2VOb2RlQWxsb2NhdGFibGUiOiBbCiAgICAgICAgInBvZHMiCiAgICBdLAogICAgImFsbG93ZWRVbnNhZmVTeXNjdGxzIjogWwogICAgICAgICJrZXJuZWwubXNnKiIsCiAgICAgICAgIm5ldC5pcHY0LnJvdXRlLm1pbl9wbXR1IgogICAgXQp9" SWAP_FILE_SIZE_MB="0" GPU_DRIVER_VERSION="550.127.08" GPU_DRIVER_TYPE="cuda" GPU_IMAGE_SHA="20241204190836" GPU_INSTANCE_PROFILE="" CUSTOM_SEARCH_DOMAIN_NAME="" CUSTOM_SEARCH_REALM_USER="" CUSTOM_SEARCH_REALM_PASSWORD="" MESSAGE_OF_THE_DAY="" HAS_KUBELET_DISK_TYPE="false" NEEDS_CGROUPV2="false" TLS_BOOTSTRAP_TOKEN="" KUBELET_FLAGS="--azure-container-registry-config=/etc/kubernetes/azure.json --cloud-config=/etc/kubernetes/azure.json --cloud-provider=azure " NETWORK_POLICY="" KUBELET_NODE_LABELS="agentpool=agent2,kubernetes.azure.com/agentpool=agent2" AZURE_ENVIRONMENT_FILEPATH="" KUBE_CA_CRT="" KUBENET_TEMPLATE="CnsKICAgICJjbmlWZXJzaW9uIjogIjAuMy4xIiwKICAgICJuYW1lIjogImt1YmVuZXQiLAogICAgInBsdWdpbnMiOiBbewogICAgInR5cGUiOiAiYnJpZGdlIiwKICAgICJicmlkZ2UiOiAiY2JyMCIsCiAgICAibXR1IjogMTUwMCwKICAgICJhZGRJZiI6ICJldGgwIiwKICAgICJpc0dhdGV3YXkiOiB0cnVlLAogICAgImlwTWFzcSI6IGZhbHNlLAogICAgInByb21pc2NNb2RlIjogdHJ1ZSwKICAgICJoYWlycGluTW9kZSI6IGZhbHNlLAogICAgImlwYW0iOiB7CiAgICAgICAgInR5cGUiOiAiaG9zdC1sb2NhbCIsCiAgICAgICAgInJhbmdlcyI6IFt7e3JhbmdlICRpLCAkcmFuZ2UgOj0gLlBvZENJRFJSYW5nZXN9fXt7aWYgJGl9fSwge3tlbmR9fVt7InN1Ym5ldCI6ICJ7eyRyYW5nZX19In1de3tlbmR9fV0sCiAgICAgICAgInJvdXRlcyI6IFt7e3JhbmdlICRpLCAkcm91dGUgOj0gLlJvdXRlc319e3tpZiAkaX19LCB7e2VuZH19eyJkc3QiOiAie3skcm91dGV9fSJ9e3tlbmR9fV0KICAgIH0KICAgIH0sCiAgICB7CiAgICAidHlwZSI6ICJwb3J0bWFwIiwKICAgICJjYXBhYmlsaXRpZXMiOiB7InBvcnRNYXBwaW5ncyI6IHRydWV9LAogICAgImV4dGVybmFsU2V0TWFya0NoYWluIjogIktVQkUtTUFSSy1NQVNRIgogICAgfV0KfQo=" CONTAINERD_CONFIG_CONTENT="dmVyc2lvbiA9IDIKb29tX3Njb3JlID0gMApbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSJdCiAgc2FuZGJveF9pbWFnZSA9ICIiCiAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmRdCiAgICBkZWZhdWx0X3J1bnRpbWVfbmFtZSA9ICJydW5jIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMucnVuY10KICAgICAgcnVudGltZV90eXBlID0gImlvLmNvbnRhaW5lcmQucnVuYy52MiIKICAgIFtwbHVnaW5zLiJpby5jb250YWluZXJkLmdycGMudjEuY3JpIi5jb250YWluZXJkLnJ1bnRpbWVzLnJ1bmMub3B0aW9uc10KICAgICAgQmluYXJ5TmFtZSA9ICIvdXNyL2Jpbi9ydW5jIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMudW50cnVzdGVkXQogICAgICBydW50aW1lX3R5cGUgPSAiaW8uY29udGFpbmVyZC5ydW5jLnYyIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMudW50cnVzdGVkLm9wdGlvbnNdCiAgICAgIEJpbmFyeU5hbWUgPSAiL3Vzci9iaW4vcnVuYyIKICBbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSIucmVnaXN0cnldCiAgICBjb25maWdfcGF0aCA9ICIvZXRjL2NvbnRhaW5lcmQvY2VydHMuZCIKICBbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSIucmVnaXN0cnkuaGVhZGVyc10KICAgIFgtTWV0YS1Tb3VyY2UtQ2xpZW50ID0gWyJhenVyZS9ha3MiXQpbbWV0cmljc10KICBhZGRyZXNzID0gIjAuMC4wLjA6MTAyNTciCg==" CONTAINERD_CONFIG_NO_GPU_CONTENT="dmVyc2lvbiA9IDIKb29tX3Njb3JlID0gMApbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSJdCiAgc2FuZGJveF9pbWFnZSA9ICIiCiAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmRdCiAgICBkZWZhdWx0X3J1bnRpbWVfbmFtZSA9ICJydW5jIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMucnVuY10KICAgICAgcnVudGltZV90eXBlID0gImlvLmNvbnRhaW5lcmQucnVuYy52MiIKICAgIFtwbHVnaW5zLiJpby5jb250YWluZXJkLmdycGMudjEuY3JpIi5jb250YWluZXJkLnJ1bnRpbWVzLnJ1bmMub3B0aW9uc10KICAgICAgQmluYXJ5TmFtZSA9ICIvdXNyL2Jpbi9ydW5jIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMudW50cnVzdGVkXQogICAgICBydW50aW1lX3R5cGUgPSAiaW8uY29udGFpbmVyZC5ydW5jLnYyIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMudW50cnVzdGVkLm9wdGlvbnNdCiAgICAgIEJpbmFyeU5hbWUgPSAiL3Vzci9iaW4vcnVuYyIKICBbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSIucmVnaXN0cnldCiAgICBjb25maWdfcGF0aCA9ICIvZXRjL2NvbnRhaW5lcmQvY2VydHMuZCIKICBbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSIucmVnaXN0cnkuaGVhZGVyc10KICAgIFgtTWV0YS1Tb3VyY2UtQ2xpZW50ID0gWyJhenVyZS9ha3MiXQpbbWV0cmljc10KICBhZGRyZXNzID0gIjAuMC4wLjA6MTAyNTciCg==" IS_KATA="false" ARTIFACT_STREAMING_ENABLED="false" SYSCTL_CONTENT="IyBUaGlzIGlzIGEgcGFydGlhbCB3b3JrYXJvdW5kIHRvIHRoaXMgdXBzdHJlYW0gS3ViZXJuZXRlcyBpc3N1ZToKIyBodHRwczovL2dpdGh1Yi5jb20va3ViZXJuZXRlcy9rdWJlcm5ldGVzL2lzc3Vlcy80MTkxNiNpc3N1ZWNvbW1lbnQtMzEyNDI4NzMxCm5ldC5pcHY0LnRjcF9yZXRyaWVzMj04Cm5ldC5jb3JlLm1lc3NhZ2VfYnVyc3Q9ODAKbmV0LmNvcmUubWVzc2FnZV9jb3N0PTQwCm5ldC5jb3JlLnNvbWF4Y29ubj0xNjM4NApuZXQuaXB2NC50Y3BfbWF4X3N5bl9iYWNrbG9nPTE2Mzg0Cm5ldC5pcHY0Lm5laWdoLmRlZmF1bHQuZ2NfdGhyZXNoMT00MDk2Cm5ldC5pcHY0Lm5laWdoLmRlZmF1bHQuZ2NfdGhyZXNoMj04MTkyCm5ldC5pcHY0Lm5laWdoLmRlZmF1bHQuZ2NfdGhyZXNoMz0xNjM4NAo=" PRIVATE_EGRESS_PROXY_ADDRESS="" BOOTSTRAP_PROFILE_CONTAINER_REGISTRY_SERVER="" ENABLE_IMDS_RESTRICTION="false" INSERT_IMDS_RESTRICTION_RULE_TO_MANGLE_TABLE="false" /usr/bin/nohup /bin/bash -c "/bin/bash /opt/azure/containers/provision_start.sh" \ No newline at end of file +PROVISION_OUTPUT="/var/log/azure/cluster-provision-cse-output.log"; echo $(date),$(hostname) > ${PROVISION_OUTPUT}; cloud-init status --wait > /dev/null 2>&1; [ $? -ne 0 ] && echo 'cloud-init failed' >> ${PROVISION_OUTPUT} && exit 1; echo "cloud-init succeeded" >> ${PROVISION_OUTPUT}; ADMINUSER=azureuser MOBY_VERSION= TENANT_ID=tenantID KUBERNETES_VERSION=1.29.7 HYPERKUBE_URL= KUBE_BINARY_URL= CUSTOM_KUBE_BINARY_URL= PRIVATE_KUBE_BINARY_URL="" KUBEPROXY_URL= APISERVER_PUBLIC_KEY= SUBSCRIPTION_ID=subID RESOURCE_GROUP=resourceGroupName LOCATION=southcentralus VM_TYPE=vmss SUBNET=subnet1 NETWORK_SECURITY_GROUP=aks-agentpool-36873793-nsg VIRTUAL_NETWORK=aks-vnet-07752737 VIRTUAL_NETWORK_RESOURCE_GROUP=MC_rg ROUTE_TABLE=aks-agentpool-36873793-routetable PRIMARY_AVAILABILITY_SET= PRIMARY_SCALE_SET=aks-agent2-36873793-vmss SERVICE_PRINCIPAL_CLIENT_ID=ClientID NETWORK_PLUGIN= NETWORK_POLICY= VNET_CNI_PLUGINS_URL=https://acs-mirror.azureedge.net/azure-cni/v1.1.3/binaries/azure-vnet-cni-linux-amd64-v1.1.3.tgz CLOUDPROVIDER_BACKOFF= CLOUDPROVIDER_BACKOFF_MODE= CLOUDPROVIDER_BACKOFF_RETRIES=0 CLOUDPROVIDER_BACKOFF_EXPONENT=0 CLOUDPROVIDER_BACKOFF_DURATION=0 CLOUDPROVIDER_BACKOFF_JITTER=0 CLOUDPROVIDER_RATELIMIT= CLOUDPROVIDER_RATELIMIT_QPS=0 CLOUDPROVIDER_RATELIMIT_QPS_WRITE=0 CLOUDPROVIDER_RATELIMIT_BUCKET=0 CLOUDPROVIDER_RATELIMIT_BUCKET_WRITE=0 LOAD_BALANCER_DISABLE_OUTBOUND_SNAT= USE_MANAGED_IDENTITY_EXTENSION=false USE_INSTANCE_METADATA=false LOAD_BALANCER_SKU= EXCLUDE_MASTER_FROM_STANDARD_LB=true MAXIMUM_LOADBALANCER_RULE_COUNT=0 CONTAINER_RUNTIME= CLI_TOOL= CONTAINERD_DOWNLOAD_URL_BASE=https://storage.googleapis.com/cri-containerd-release/ NETWORK_MODE= KUBE_BINARY_URL= USER_ASSIGNED_IDENTITY_ID=userAssignedID API_SERVER_NAME= IS_VHD=true GPU_NODE=false SGX_NODE=false MIG_NODE=false CONFIG_GPU_DRIVER_IF_NEEDED=true ENABLE_GPU_DEVICE_PLUGIN_IF_NEEDED=false TELEPORTD_PLUGIN_DOWNLOAD_URL= CREDENTIAL_PROVIDER_DOWNLOAD_URL=https://acs-mirror.azureedge.net/cloud-provider-azure/v1.29.7/binaries/azure-acr-credential-provider-linux-amd64-v1.29.7.tar.gz CONTAINERD_VERSION= CONTAINERD_PACKAGE_URL= RUNC_VERSION= RUNC_PACKAGE_URL= ENABLE_HOSTS_CONFIG_AGENT="false" DISABLE_SSH="false" NEEDS_CONTAINERD="false" TELEPORT_ENABLED="false" SHOULD_CONFIGURE_HTTP_PROXY="false" SHOULD_CONFIGURE_HTTP_PROXY_CA="false" HTTP_PROXY_TRUSTED_CA="" SHOULD_CONFIGURE_CUSTOM_CA_TRUST="false" CUSTOM_CA_TRUST_COUNT="0" IS_KRUSTLET="false" GPU_NEEDS_FABRIC_MANAGER="false" NEEDS_DOCKER_LOGIN="false" IPV6_DUAL_STACK_ENABLED="false" OUTBOUND_COMMAND="curl -v --insecure --proxy-insecure https://mcr.microsoft.com/v2/" BLOCK_OUTBOUND_NETWORK="false" ENABLE_UNATTENDED_UPGRADES="true" ENSURE_NO_DUPE_PROMISCUOUS_BRIDGE="false" SHOULD_CONFIG_SWAP_FILE="false" SHOULD_CONFIG_TRANSPARENT_HUGE_PAGE="false" SHOULD_CONFIG_CONTAINERD_ULIMITS="false" CONTAINERD_ULIMITS="" TARGET_CLOUD="AzurePublicCloud" TARGET_ENVIRONMENT="AzurePublicCloud" CUSTOM_ENV_JSON="" IS_CUSTOM_CLOUD="false" AKS_CUSTOM_CLOUD_CONTAINER_REGISTRY_DNS_SUFFIX="" CSE_HELPERS_FILEPATH="/opt/azure/containers/provision_source.sh" CSE_DISTRO_HELPERS_FILEPATH="/opt/azure/containers/provision_source_distro.sh" CSE_INSTALL_FILEPATH="/opt/azure/containers/provision_installs.sh" CSE_DISTRO_INSTALL_FILEPATH="/opt/azure/containers/provision_installs_distro.sh" CSE_CONFIG_FILEPATH="/opt/azure/containers/provision_configs.sh" AZURE_PRIVATE_REGISTRY_SERVER="" HAS_CUSTOM_SEARCH_DOMAIN="false" CUSTOM_SEARCH_DOMAIN_FILEPATH="/opt/azure/containers/setup-custom-search-domains.sh" HTTP_PROXY_URLS="" HTTPS_PROXY_URLS="" NO_PROXY_URLS="" PROXY_VARS="" ENABLE_TLS_BOOTSTRAPPING="false" ENABLE_SECURE_TLS_BOOTSTRAPPING="false" CUSTOM_SECURE_TLS_BOOTSTRAP_AAD_SERVER_APP_ID="" ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION="true" DHCPV6_SERVICE_FILEPATH="/etc/systemd/system/dhcpv6.service" DHCPV6_CONFIG_FILEPATH="/opt/azure/containers/enable-dhcpv6.sh" THP_ENABLED="" THP_DEFRAG="" SERVICE_PRINCIPAL_FILE_CONTENT="U2VjcmV0" KUBELET_CLIENT_CONTENT="" KUBELET_CLIENT_CERT_CONTENT="" KUBELET_CONFIG_FILE_ENABLED="true" KUBELET_CONFIG_FILE_CONTENT="ewogICAgImtpbmQiOiAiS3ViZWxldENvbmZpZ3VyYXRpb24iLAogICAgImFwaVZlcnNpb24iOiAia3ViZWxldC5jb25maWcuazhzLmlvL3YxYmV0YTEiLAogICAgInN0YXRpY1BvZFBhdGgiOiAiL2V0Yy9rdWJlcm5ldGVzL21hbmlmZXN0cyIsCiAgICAiYWRkcmVzcyI6ICIwLjAuMC4wIiwKICAgICJyZWFkT25seVBvcnQiOiAxMDI1NSwKICAgICJ0bHNDZXJ0RmlsZSI6ICIvZXRjL2t1YmVybmV0ZXMvY2VydHMva3ViZWxldHNlcnZlci5jcnQiLAogICAgInRsc1ByaXZhdGVLZXlGaWxlIjogIi9ldGMva3ViZXJuZXRlcy9jZXJ0cy9rdWJlbGV0c2VydmVyLmtleSIsCiAgICAidGxzQ2lwaGVyU3VpdGVzIjogWwogICAgICAgICJUTFNfRUNESEVfRUNEU0FfV0lUSF9BRVNfMTI4X0dDTV9TSEEyNTYiLAogICAgICAgICJUTFNfRUNESEVfUlNBX1dJVEhfQUVTXzEyOF9HQ01fU0hBMjU2IiwKICAgICAgICAiVExTX0VDREhFX0VDRFNBX1dJVEhfQ0hBQ0hBMjBfUE9MWTEzMDUiLAogICAgICAgICJUTFNfRUNESEVfUlNBX1dJVEhfQUVTXzI1Nl9HQ01fU0hBMzg0IiwKICAgICAgICAiVExTX0VDREhFX1JTQV9XSVRIX0NIQUNIQTIwX1BPTFkxMzA1IiwKICAgICAgICAiVExTX0VDREhFX0VDRFNBX1dJVEhfQUVTXzI1Nl9HQ01fU0hBMzg0IiwKICAgICAgICAiVExTX1JTQV9XSVRIX0FFU18yNTZfR0NNX1NIQTM4NCIsCiAgICAgICAgIlRMU19SU0FfV0lUSF9BRVNfMTI4X0dDTV9TSEEyNTYiCiAgICBdLAogICAgInJvdGF0ZUNlcnRpZmljYXRlcyI6IHRydWUsCiAgICAic2VydmVyVExTQm9vdHN0cmFwIjogdHJ1ZSwKICAgICJhdXRoZW50aWNhdGlvbiI6IHsKICAgICAgICAieDUwOSI6IHsKICAgICAgICAgICAgImNsaWVudENBRmlsZSI6ICIvZXRjL2t1YmVybmV0ZXMvY2VydHMvY2EuY3J0IgogICAgICAgIH0sCiAgICAgICAgIndlYmhvb2siOiB7CiAgICAgICAgICAgICJlbmFibGVkIjogdHJ1ZQogICAgICAgIH0sCiAgICAgICAgImFub255bW91cyI6IHt9CiAgICB9LAogICAgImF1dGhvcml6YXRpb24iOiB7CiAgICAgICAgIm1vZGUiOiAiV2ViaG9vayIsCiAgICAgICAgIndlYmhvb2siOiB7fQogICAgfSwKICAgICJldmVudFJlY29yZFFQUyI6IDAsCiAgICAiY2x1c3RlckRvbWFpbiI6ICJjbHVzdGVyLmxvY2FsIiwKICAgICJjbHVzdGVyRE5TIjogWwogICAgICAgICIxMC4wLjAuMTAiCiAgICBdLAogICAgInN0cmVhbWluZ0Nvbm5lY3Rpb25JZGxlVGltZW91dCI6ICI0aDBtMHMiLAogICAgIm5vZGVTdGF0dXNVcGRhdGVGcmVxdWVuY3kiOiAiMTBzIiwKICAgICJpbWFnZUdDSGlnaFRocmVzaG9sZFBlcmNlbnQiOiA5MCwKICAgICJpbWFnZUdDTG93VGhyZXNob2xkUGVyY2VudCI6IDcwLAogICAgImNncm91cHNQZXJRT1MiOiB0cnVlLAogICAgImNwdU1hbmFnZXJQb2xpY3kiOiAic3RhdGljIiwKICAgICJ0b3BvbG9neU1hbmFnZXJQb2xpY3kiOiAiYmVzdC1lZmZvcnQiLAogICAgIm1heFBvZHMiOiAxMTAsCiAgICAicG9kUGlkc0xpbWl0IjogMTIzNDUsCiAgICAicmVzb2x2Q29uZiI6ICIvZXRjL3Jlc29sdi5jb25mIiwKICAgICJjcHVDRlNRdW90YSI6IGZhbHNlLAogICAgImNwdUNGU1F1b3RhUGVyaW9kIjogIjIwMG1zIiwKICAgICJldmljdGlvbkhhcmQiOiB7CiAgICAgICAgIm1lbW9yeS5hdmFpbGFibGUiOiAiNzUwTWkiLAogICAgICAgICJub2RlZnMuYXZhaWxhYmxlIjogIjEwJSIsCiAgICAgICAgIm5vZGVmcy5pbm9kZXNGcmVlIjogIjUlIgogICAgfSwKICAgICJwcm90ZWN0S2VybmVsRGVmYXVsdHMiOiB0cnVlLAogICAgImZlYXR1cmVHYXRlcyI6IHsKICAgICAgICAiQ3VzdG9tQ1BVQ0ZTUXVvdGFQZXJpb2QiOiB0cnVlLAogICAgICAgICJQb2RQcmlvcml0eSI6IHRydWUsCiAgICAgICAgIlJvdGF0ZUt1YmVsZXRTZXJ2ZXJDZXJ0aWZpY2F0ZSI6IHRydWUsCiAgICAgICAgImEiOiBmYWxzZSwKICAgICAgICAieCI6IGZhbHNlCiAgICB9LAogICAgImZhaWxTd2FwT24iOiBmYWxzZSwKICAgICJjb250YWluZXJMb2dNYXhTaXplIjogIjEwMDBNIiwKICAgICJjb250YWluZXJMb2dNYXhGaWxlcyI6IDk5LAogICAgInN5c3RlbVJlc2VydmVkIjogewogICAgICAgICJjcHUiOiAiMiIsCiAgICAgICAgIm1lbW9yeSI6ICIxR2kiCiAgICB9LAogICAgImt1YmVSZXNlcnZlZCI6IHsKICAgICAgICAiY3B1IjogIjEwMG0iLAogICAgICAgICJtZW1vcnkiOiAiMTYzOE1pIgogICAgfSwKICAgICJlbmZvcmNlTm9kZUFsbG9jYXRhYmxlIjogWwogICAgICAgICJwb2RzIgogICAgXSwKICAgICJhbGxvd2VkVW5zYWZlU3lzY3RscyI6IFsKICAgICAgICAia2VybmVsLm1zZyoiLAogICAgICAgICJuZXQuaXB2NC5yb3V0ZS5taW5fcG10dSIKICAgIF0KfQ==" SWAP_FILE_SIZE_MB="0" GPU_DRIVER_VERSION="550.127.08" GPU_DRIVER_TYPE="cuda" GPU_IMAGE_SHA="20241204190836" GPU_INSTANCE_PROFILE="" CUSTOM_SEARCH_DOMAIN_NAME="" CUSTOM_SEARCH_REALM_USER="" CUSTOM_SEARCH_REALM_PASSWORD="" MESSAGE_OF_THE_DAY="" HAS_KUBELET_DISK_TYPE="false" NEEDS_CGROUPV2="false" TLS_BOOTSTRAP_TOKEN="" KUBELET_FLAGS="--azure-container-registry-config=/etc/kubernetes/azure.json --cloud-config=/etc/kubernetes/azure.json --cloud-provider=azure " NETWORK_POLICY="" KUBELET_NODE_LABELS="agentpool=agent2,kubernetes.azure.com/agentpool=agent2" AZURE_ENVIRONMENT_FILEPATH="" KUBE_CA_CRT="" KUBENET_TEMPLATE="CnsKICAgICJjbmlWZXJzaW9uIjogIjAuMy4xIiwKICAgICJuYW1lIjogImt1YmVuZXQiLAogICAgInBsdWdpbnMiOiBbewogICAgInR5cGUiOiAiYnJpZGdlIiwKICAgICJicmlkZ2UiOiAiY2JyMCIsCiAgICAibXR1IjogMTUwMCwKICAgICJhZGRJZiI6ICJldGgwIiwKICAgICJpc0dhdGV3YXkiOiB0cnVlLAogICAgImlwTWFzcSI6IGZhbHNlLAogICAgInByb21pc2NNb2RlIjogdHJ1ZSwKICAgICJoYWlycGluTW9kZSI6IGZhbHNlLAogICAgImlwYW0iOiB7CiAgICAgICAgInR5cGUiOiAiaG9zdC1sb2NhbCIsCiAgICAgICAgInJhbmdlcyI6IFt7e3JhbmdlICRpLCAkcmFuZ2UgOj0gLlBvZENJRFJSYW5nZXN9fXt7aWYgJGl9fSwge3tlbmR9fVt7InN1Ym5ldCI6ICJ7eyRyYW5nZX19In1de3tlbmR9fV0sCiAgICAgICAgInJvdXRlcyI6IFt7e3JhbmdlICRpLCAkcm91dGUgOj0gLlJvdXRlc319e3tpZiAkaX19LCB7e2VuZH19eyJkc3QiOiAie3skcm91dGV9fSJ9e3tlbmR9fV0KICAgIH0KICAgIH0sCiAgICB7CiAgICAidHlwZSI6ICJwb3J0bWFwIiwKICAgICJjYXBhYmlsaXRpZXMiOiB7InBvcnRNYXBwaW5ncyI6IHRydWV9LAogICAgImV4dGVybmFsU2V0TWFya0NoYWluIjogIktVQkUtTUFSSy1NQVNRIgogICAgfV0KfQo=" CONTAINERD_CONFIG_CONTENT="dmVyc2lvbiA9IDIKb29tX3Njb3JlID0gMApbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSJdCiAgc2FuZGJveF9pbWFnZSA9ICIiCiAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmRdCiAgICBkZWZhdWx0X3J1bnRpbWVfbmFtZSA9ICJydW5jIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMucnVuY10KICAgICAgcnVudGltZV90eXBlID0gImlvLmNvbnRhaW5lcmQucnVuYy52MiIKICAgIFtwbHVnaW5zLiJpby5jb250YWluZXJkLmdycGMudjEuY3JpIi5jb250YWluZXJkLnJ1bnRpbWVzLnJ1bmMub3B0aW9uc10KICAgICAgQmluYXJ5TmFtZSA9ICIvdXNyL2Jpbi9ydW5jIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMudW50cnVzdGVkXQogICAgICBydW50aW1lX3R5cGUgPSAiaW8uY29udGFpbmVyZC5ydW5jLnYyIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMudW50cnVzdGVkLm9wdGlvbnNdCiAgICAgIEJpbmFyeU5hbWUgPSAiL3Vzci9iaW4vcnVuYyIKICBbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSIucmVnaXN0cnldCiAgICBjb25maWdfcGF0aCA9ICIvZXRjL2NvbnRhaW5lcmQvY2VydHMuZCIKICBbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSIucmVnaXN0cnkuaGVhZGVyc10KICAgIFgtTWV0YS1Tb3VyY2UtQ2xpZW50ID0gWyJhenVyZS9ha3MiXQpbbWV0cmljc10KICBhZGRyZXNzID0gIjAuMC4wLjA6MTAyNTciCg==" CONTAINERD_CONFIG_NO_GPU_CONTENT="dmVyc2lvbiA9IDIKb29tX3Njb3JlID0gMApbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSJdCiAgc2FuZGJveF9pbWFnZSA9ICIiCiAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmRdCiAgICBkZWZhdWx0X3J1bnRpbWVfbmFtZSA9ICJydW5jIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMucnVuY10KICAgICAgcnVudGltZV90eXBlID0gImlvLmNvbnRhaW5lcmQucnVuYy52MiIKICAgIFtwbHVnaW5zLiJpby5jb250YWluZXJkLmdycGMudjEuY3JpIi5jb250YWluZXJkLnJ1bnRpbWVzLnJ1bmMub3B0aW9uc10KICAgICAgQmluYXJ5TmFtZSA9ICIvdXNyL2Jpbi9ydW5jIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMudW50cnVzdGVkXQogICAgICBydW50aW1lX3R5cGUgPSAiaW8uY29udGFpbmVyZC5ydW5jLnYyIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMudW50cnVzdGVkLm9wdGlvbnNdCiAgICAgIEJpbmFyeU5hbWUgPSAiL3Vzci9iaW4vcnVuYyIKICBbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSIucmVnaXN0cnldCiAgICBjb25maWdfcGF0aCA9ICIvZXRjL2NvbnRhaW5lcmQvY2VydHMuZCIKICBbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSIucmVnaXN0cnkuaGVhZGVyc10KICAgIFgtTWV0YS1Tb3VyY2UtQ2xpZW50ID0gWyJhenVyZS9ha3MiXQpbbWV0cmljc10KICBhZGRyZXNzID0gIjAuMC4wLjA6MTAyNTciCg==" IS_KATA="false" ARTIFACT_STREAMING_ENABLED="false" SYSCTL_CONTENT="IyBUaGlzIGlzIGEgcGFydGlhbCB3b3JrYXJvdW5kIHRvIHRoaXMgdXBzdHJlYW0gS3ViZXJuZXRlcyBpc3N1ZToKIyBodHRwczovL2dpdGh1Yi5jb20va3ViZXJuZXRlcy9rdWJlcm5ldGVzL2lzc3Vlcy80MTkxNiNpc3N1ZWNvbW1lbnQtMzEyNDI4NzMxCm5ldC5pcHY0LnRjcF9yZXRyaWVzMj04Cm5ldC5jb3JlLm1lc3NhZ2VfYnVyc3Q9ODAKbmV0LmNvcmUubWVzc2FnZV9jb3N0PTQwCm5ldC5jb3JlLnNvbWF4Y29ubj0xNjM4NApuZXQuaXB2NC50Y3BfbWF4X3N5bl9iYWNrbG9nPTE2Mzg0Cm5ldC5pcHY0Lm5laWdoLmRlZmF1bHQuZ2NfdGhyZXNoMT00MDk2Cm5ldC5pcHY0Lm5laWdoLmRlZmF1bHQuZ2NfdGhyZXNoMj04MTkyCm5ldC5pcHY0Lm5laWdoLmRlZmF1bHQuZ2NfdGhyZXNoMz0xNjM4NAo=" PRIVATE_EGRESS_PROXY_ADDRESS="" BOOTSTRAP_PROFILE_CONTAINER_REGISTRY_SERVER="" ENABLE_IMDS_RESTRICTION="false" INSERT_IMDS_RESTRICTION_RULE_TO_MANGLE_TABLE="false" /usr/bin/nohup /bin/bash -c "/bin/bash /opt/azure/containers/provision_start.sh" \ No newline at end of file diff --git a/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation+CustomKubeletConfig/CustomData b/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation+CustomKubeletConfig/CustomData index 9fc1da1ade8..7eb34f62848 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation+CustomKubeletConfig/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation+CustomKubeletConfig/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation+CustomKubeletConfig/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation+CustomKubeletConfig/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation+CustomKubeletConfig/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation+CustomKubeletConfig/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation+CustomKubeletConfig/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation+CustomKubeletConfig/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation+CustomKubeletConfig/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation+CustomKubeletConfig/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation+CustomKubeletConfig/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation+CustomKubeletConfig/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation+CustomKubeletConfig/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation+CustomKubeletConfig/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation/CSECommand b/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation/CSECommand index ec3c1ca359f..e84435ec5a8 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation/CSECommand +++ b/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation/CSECommand @@ -1 +1 @@ -PROVISION_OUTPUT="/var/log/azure/cluster-provision-cse-output.log"; echo $(date),$(hostname) > ${PROVISION_OUTPUT}; cloud-init status --wait > /dev/null 2>&1; [ $? -ne 0 ] && echo 'cloud-init failed' >> ${PROVISION_OUTPUT} && exit 1; echo "cloud-init succeeded" >> ${PROVISION_OUTPUT}; ADMINUSER=azureuser MOBY_VERSION= TENANT_ID=tenantID KUBERNETES_VERSION=1.29.7 HYPERKUBE_URL= KUBE_BINARY_URL= CUSTOM_KUBE_BINARY_URL= PRIVATE_KUBE_BINARY_URL="" KUBEPROXY_URL= APISERVER_PUBLIC_KEY= SUBSCRIPTION_ID=subID RESOURCE_GROUP=resourceGroupName LOCATION=southcentralus VM_TYPE=vmss SUBNET=subnet1 NETWORK_SECURITY_GROUP=aks-agentpool-36873793-nsg VIRTUAL_NETWORK=aks-vnet-07752737 VIRTUAL_NETWORK_RESOURCE_GROUP=MC_rg ROUTE_TABLE=aks-agentpool-36873793-routetable PRIMARY_AVAILABILITY_SET= PRIMARY_SCALE_SET=aks-agent2-36873793-vmss SERVICE_PRINCIPAL_CLIENT_ID=ClientID NETWORK_PLUGIN= NETWORK_POLICY= VNET_CNI_PLUGINS_URL=https://acs-mirror.azureedge.net/azure-cni/v1.1.3/binaries/azure-vnet-cni-linux-amd64-v1.1.3.tgz CLOUDPROVIDER_BACKOFF= CLOUDPROVIDER_BACKOFF_MODE= CLOUDPROVIDER_BACKOFF_RETRIES=0 CLOUDPROVIDER_BACKOFF_EXPONENT=0 CLOUDPROVIDER_BACKOFF_DURATION=0 CLOUDPROVIDER_BACKOFF_JITTER=0 CLOUDPROVIDER_RATELIMIT= CLOUDPROVIDER_RATELIMIT_QPS=0 CLOUDPROVIDER_RATELIMIT_QPS_WRITE=0 CLOUDPROVIDER_RATELIMIT_BUCKET=0 CLOUDPROVIDER_RATELIMIT_BUCKET_WRITE=0 LOAD_BALANCER_DISABLE_OUTBOUND_SNAT= USE_MANAGED_IDENTITY_EXTENSION=false USE_INSTANCE_METADATA=false LOAD_BALANCER_SKU= EXCLUDE_MASTER_FROM_STANDARD_LB=true MAXIMUM_LOADBALANCER_RULE_COUNT=0 CONTAINER_RUNTIME= CLI_TOOL= CONTAINERD_DOWNLOAD_URL_BASE=https://storage.googleapis.com/cri-containerd-release/ NETWORK_MODE= KUBE_BINARY_URL= USER_ASSIGNED_IDENTITY_ID=userAssignedID API_SERVER_NAME= IS_VHD=true GPU_NODE=false SGX_NODE=false MIG_NODE=false CONFIG_GPU_DRIVER_IF_NEEDED=true ENABLE_GPU_DEVICE_PLUGIN_IF_NEEDED=false TELEPORTD_PLUGIN_DOWNLOAD_URL= CREDENTIAL_PROVIDER_DOWNLOAD_URL=https://acs-mirror.azureedge.net/cloud-provider-azure/v1.29.7/binaries/azure-acr-credential-provider-linux-amd64-v1.29.7.tar.gz CONTAINERD_VERSION= CONTAINERD_PACKAGE_URL= RUNC_VERSION= RUNC_PACKAGE_URL= ENABLE_HOSTS_CONFIG_AGENT="false" DISABLE_SSH="false" NEEDS_CONTAINERD="false" TELEPORT_ENABLED="false" SHOULD_CONFIGURE_HTTP_PROXY="false" SHOULD_CONFIGURE_HTTP_PROXY_CA="false" HTTP_PROXY_TRUSTED_CA="" SHOULD_CONFIGURE_CUSTOM_CA_TRUST="false" CUSTOM_CA_TRUST_COUNT="0" IS_KRUSTLET="false" GPU_NEEDS_FABRIC_MANAGER="false" NEEDS_DOCKER_LOGIN="false" IPV6_DUAL_STACK_ENABLED="false" OUTBOUND_COMMAND="curl -v --insecure --proxy-insecure https://mcr.microsoft.com/v2/" BLOCK_OUTBOUND_NETWORK="false" ENABLE_UNATTENDED_UPGRADES="true" ENSURE_NO_DUPE_PROMISCUOUS_BRIDGE="false" SHOULD_CONFIG_SWAP_FILE="false" SHOULD_CONFIG_TRANSPARENT_HUGE_PAGE="false" SHOULD_CONFIG_CONTAINERD_ULIMITS="false" CONTAINERD_ULIMITS="" TARGET_CLOUD="AzurePublicCloud" TARGET_ENVIRONMENT="AzurePublicCloud" CUSTOM_ENV_JSON="" IS_CUSTOM_CLOUD="false" AKS_CUSTOM_CLOUD_CONTAINER_REGISTRY_DNS_SUFFIX="" CSE_HELPERS_FILEPATH="/opt/azure/containers/provision_source.sh" CSE_DISTRO_HELPERS_FILEPATH="/opt/azure/containers/provision_source_distro.sh" CSE_INSTALL_FILEPATH="/opt/azure/containers/provision_installs.sh" CSE_DISTRO_INSTALL_FILEPATH="/opt/azure/containers/provision_installs_distro.sh" CSE_CONFIG_FILEPATH="/opt/azure/containers/provision_configs.sh" AZURE_PRIVATE_REGISTRY_SERVER="" HAS_CUSTOM_SEARCH_DOMAIN="false" CUSTOM_SEARCH_DOMAIN_FILEPATH="/opt/azure/containers/setup-custom-search-domains.sh" HTTP_PROXY_URLS="" HTTPS_PROXY_URLS="" NO_PROXY_URLS="" PROXY_VARS="" ENABLE_TLS_BOOTSTRAPPING="false" ENABLE_SECURE_TLS_BOOTSTRAPPING="false" CUSTOM_SECURE_TLS_BOOTSTRAP_AAD_SERVER_APP_ID="" ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION="true" DHCPV6_SERVICE_FILEPATH="/etc/systemd/system/dhcpv6.service" DHCPV6_CONFIG_FILEPATH="/opt/azure/containers/enable-dhcpv6.sh" THP_ENABLED="" THP_DEFRAG="" SERVICE_PRINCIPAL_FILE_CONTENT="U2VjcmV0" KUBELET_CLIENT_CONTENT="" KUBELET_CLIENT_CERT_CONTENT="" KUBELET_CONFIG_FILE_ENABLED="false" KUBELET_CONFIG_FILE_CONTENT="ewogICAgImtpbmQiOiAiS3ViZWxldENvbmZpZ3VyYXRpb24iLAogICAgImFwaVZlcnNpb24iOiAia3ViZWxldC5jb25maWcuazhzLmlvL3YxYmV0YTEiLAogICAgInN0YXRpY1BvZFBhdGgiOiAiL2V0Yy9rdWJlcm5ldGVzL21hbmlmZXN0cyIsCiAgICAiYWRkcmVzcyI6ICIwLjAuMC4wIiwKICAgICJyZWFkT25seVBvcnQiOiAxMDI1NSwKICAgICJ0bHNDaXBoZXJTdWl0ZXMiOiBbCiAgICAgICAgIlRMU19FQ0RIRV9FQ0RTQV9XSVRIX0FFU18xMjhfR0NNX1NIQTI1NiIsCiAgICAgICAgIlRMU19FQ0RIRV9SU0FfV0lUSF9BRVNfMTI4X0dDTV9TSEEyNTYiLAogICAgICAgICJUTFNfRUNESEVfRUNEU0FfV0lUSF9DSEFDSEEyMF9QT0xZMTMwNSIsCiAgICAgICAgIlRMU19FQ0RIRV9SU0FfV0lUSF9BRVNfMjU2X0dDTV9TSEEzODQiLAogICAgICAgICJUTFNfRUNESEVfUlNBX1dJVEhfQ0hBQ0hBMjBfUE9MWTEzMDUiLAogICAgICAgICJUTFNfRUNESEVfRUNEU0FfV0lUSF9BRVNfMjU2X0dDTV9TSEEzODQiLAogICAgICAgICJUTFNfUlNBX1dJVEhfQUVTXzI1Nl9HQ01fU0hBMzg0IiwKICAgICAgICAiVExTX1JTQV9XSVRIX0FFU18xMjhfR0NNX1NIQTI1NiIKICAgIF0sCiAgICAicm90YXRlQ2VydGlmaWNhdGVzIjogdHJ1ZSwKICAgICJzZXJ2ZXJUTFNCb290c3RyYXAiOiB0cnVlLAogICAgImF1dGhlbnRpY2F0aW9uIjogewogICAgICAgICJ4NTA5IjogewogICAgICAgICAgICAiY2xpZW50Q0FGaWxlIjogIi9ldGMva3ViZXJuZXRlcy9jZXJ0cy9jYS5jcnQiCiAgICAgICAgfSwKICAgICAgICAid2ViaG9vayI6IHsKICAgICAgICAgICAgImVuYWJsZWQiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiYW5vbnltb3VzIjoge30KICAgIH0sCiAgICAiYXV0aG9yaXphdGlvbiI6IHsKICAgICAgICAibW9kZSI6ICJXZWJob29rIiwKICAgICAgICAid2ViaG9vayI6IHt9CiAgICB9LAogICAgImV2ZW50UmVjb3JkUVBTIjogMCwKICAgICJjbHVzdGVyRG9tYWluIjogImNsdXN0ZXIubG9jYWwiLAogICAgImNsdXN0ZXJETlMiOiBbCiAgICAgICAgIjEwLjAuMC4xMCIKICAgIF0sCiAgICAic3RyZWFtaW5nQ29ubmVjdGlvbklkbGVUaW1lb3V0IjogIjRoMG0wcyIsCiAgICAibm9kZVN0YXR1c1VwZGF0ZUZyZXF1ZW5jeSI6ICIxMHMiLAogICAgImltYWdlR0NIaWdoVGhyZXNob2xkUGVyY2VudCI6IDg1LAogICAgImltYWdlR0NMb3dUaHJlc2hvbGRQZXJjZW50IjogODAsCiAgICAiY2dyb3Vwc1BlclFPUyI6IHRydWUsCiAgICAibWF4UG9kcyI6IDExMCwKICAgICJwb2RQaWRzTGltaXQiOiAtMSwKICAgICJyZXNvbHZDb25mIjogIi9ldGMvcmVzb2x2LmNvbmYiLAogICAgImV2aWN0aW9uSGFyZCI6IHsKICAgICAgICAibWVtb3J5LmF2YWlsYWJsZSI6ICI3NTBNaSIsCiAgICAgICAgIm5vZGVmcy5hdmFpbGFibGUiOiAiMTAlIiwKICAgICAgICAibm9kZWZzLmlub2Rlc0ZyZWUiOiAiNSUiCiAgICB9LAogICAgInByb3RlY3RLZXJuZWxEZWZhdWx0cyI6IHRydWUsCiAgICAiZmVhdHVyZUdhdGVzIjogewogICAgICAgICJQb2RQcmlvcml0eSI6IHRydWUsCiAgICAgICAgIlJvdGF0ZUt1YmVsZXRTZXJ2ZXJDZXJ0aWZpY2F0ZSI6IHRydWUsCiAgICAgICAgImEiOiBmYWxzZSwKICAgICAgICAieCI6IGZhbHNlCiAgICB9LAogICAgImNvbnRhaW5lckxvZ01heFNpemUiOiAiNTBNIiwKICAgICJzeXN0ZW1SZXNlcnZlZCI6IHsKICAgICAgICAiY3B1IjogIjIiLAogICAgICAgICJtZW1vcnkiOiAiMUdpIgogICAgfSwKICAgICJrdWJlUmVzZXJ2ZWQiOiB7CiAgICAgICAgImNwdSI6ICIxMDBtIiwKICAgICAgICAibWVtb3J5IjogIjE2MzhNaSIKICAgIH0sCiAgICAiZW5mb3JjZU5vZGVBbGxvY2F0YWJsZSI6IFsKICAgICAgICAicG9kcyIKICAgIF0KfQ==" SWAP_FILE_SIZE_MB="0" GPU_DRIVER_VERSION="550.127.08" GPU_DRIVER_TYPE="cuda" GPU_IMAGE_SHA="20241204190836" GPU_INSTANCE_PROFILE="" CUSTOM_SEARCH_DOMAIN_NAME="" CUSTOM_SEARCH_REALM_USER="" CUSTOM_SEARCH_REALM_PASSWORD="" MESSAGE_OF_THE_DAY="" HAS_KUBELET_DISK_TYPE="false" NEEDS_CGROUPV2="false" TLS_BOOTSTRAP_TOKEN="" KUBELET_FLAGS="--address=0.0.0.0 --anonymous-auth=false --authentication-token-webhook=true --authorization-mode=Webhook --azure-container-registry-config=/etc/kubernetes/azure.json --cgroups-per-qos=true --client-ca-file=/etc/kubernetes/certs/ca.crt --cloud-config=/etc/kubernetes/azure.json --cloud-provider=azure --cluster-dns=10.0.0.10 --cluster-domain=cluster.local --container-log-max-size=50M --enforce-node-allocatable=pods --event-qps=0 --eviction-hard=memory.available<750Mi,nodefs.available<10%,nodefs.inodesFree<5% --feature-gates=PodPriority=true,RotateKubeletServerCertificate=true,a=false,x=false --image-gc-high-threshold=85 --image-gc-low-threshold=80 --kube-reserved=cpu=100m,memory=1638Mi --max-pods=110 --node-status-update-frequency=10s --pod-manifest-path=/etc/kubernetes/manifests --pod-max-pids=-1 --protect-kernel-defaults=true --read-only-port=10255 --resolv-conf=/etc/resolv.conf --rotate-certificates=true --rotate-server-certificates=true --streaming-connection-idle-timeout=4h0m0s --system-reserved=cpu=2,memory=1Gi --tls-cipher-suites=TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_RSA_WITH_AES_256_GCM_SHA384,TLS_RSA_WITH_AES_128_GCM_SHA256 " NETWORK_POLICY="" KUBELET_NODE_LABELS="agentpool=agent2,kubernetes.azure.com/agentpool=agent2" AZURE_ENVIRONMENT_FILEPATH="" KUBE_CA_CRT="" KUBENET_TEMPLATE="CnsKICAgICJjbmlWZXJzaW9uIjogIjAuMy4xIiwKICAgICJuYW1lIjogImt1YmVuZXQiLAogICAgInBsdWdpbnMiOiBbewogICAgInR5cGUiOiAiYnJpZGdlIiwKICAgICJicmlkZ2UiOiAiY2JyMCIsCiAgICAibXR1IjogMTUwMCwKICAgICJhZGRJZiI6ICJldGgwIiwKICAgICJpc0dhdGV3YXkiOiB0cnVlLAogICAgImlwTWFzcSI6IGZhbHNlLAogICAgInByb21pc2NNb2RlIjogdHJ1ZSwKICAgICJoYWlycGluTW9kZSI6IGZhbHNlLAogICAgImlwYW0iOiB7CiAgICAgICAgInR5cGUiOiAiaG9zdC1sb2NhbCIsCiAgICAgICAgInJhbmdlcyI6IFt7e3JhbmdlICRpLCAkcmFuZ2UgOj0gLlBvZENJRFJSYW5nZXN9fXt7aWYgJGl9fSwge3tlbmR9fVt7InN1Ym5ldCI6ICJ7eyRyYW5nZX19In1de3tlbmR9fV0sCiAgICAgICAgInJvdXRlcyI6IFt7e3JhbmdlICRpLCAkcm91dGUgOj0gLlJvdXRlc319e3tpZiAkaX19LCB7e2VuZH19eyJkc3QiOiAie3skcm91dGV9fSJ9e3tlbmR9fV0KICAgIH0KICAgIH0sCiAgICB7CiAgICAidHlwZSI6ICJwb3J0bWFwIiwKICAgICJjYXBhYmlsaXRpZXMiOiB7InBvcnRNYXBwaW5ncyI6IHRydWV9LAogICAgImV4dGVybmFsU2V0TWFya0NoYWluIjogIktVQkUtTUFSSy1NQVNRIgogICAgfV0KfQo=" CONTAINERD_CONFIG_CONTENT="dmVyc2lvbiA9IDIKb29tX3Njb3JlID0gMApbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSJdCiAgc2FuZGJveF9pbWFnZSA9ICIiCiAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmRdCiAgICBkZWZhdWx0X3J1bnRpbWVfbmFtZSA9ICJydW5jIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMucnVuY10KICAgICAgcnVudGltZV90eXBlID0gImlvLmNvbnRhaW5lcmQucnVuYy52MiIKICAgIFtwbHVnaW5zLiJpby5jb250YWluZXJkLmdycGMudjEuY3JpIi5jb250YWluZXJkLnJ1bnRpbWVzLnJ1bmMub3B0aW9uc10KICAgICAgQmluYXJ5TmFtZSA9ICIvdXNyL2Jpbi9ydW5jIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMudW50cnVzdGVkXQogICAgICBydW50aW1lX3R5cGUgPSAiaW8uY29udGFpbmVyZC5ydW5jLnYyIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMudW50cnVzdGVkLm9wdGlvbnNdCiAgICAgIEJpbmFyeU5hbWUgPSAiL3Vzci9iaW4vcnVuYyIKICBbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSIucmVnaXN0cnldCiAgICBjb25maWdfcGF0aCA9ICIvZXRjL2NvbnRhaW5lcmQvY2VydHMuZCIKICBbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSIucmVnaXN0cnkuaGVhZGVyc10KICAgIFgtTWV0YS1Tb3VyY2UtQ2xpZW50ID0gWyJhenVyZS9ha3MiXQpbbWV0cmljc10KICBhZGRyZXNzID0gIjAuMC4wLjA6MTAyNTciCg==" CONTAINERD_CONFIG_NO_GPU_CONTENT="dmVyc2lvbiA9IDIKb29tX3Njb3JlID0gMApbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSJdCiAgc2FuZGJveF9pbWFnZSA9ICIiCiAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmRdCiAgICBkZWZhdWx0X3J1bnRpbWVfbmFtZSA9ICJydW5jIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMucnVuY10KICAgICAgcnVudGltZV90eXBlID0gImlvLmNvbnRhaW5lcmQucnVuYy52MiIKICAgIFtwbHVnaW5zLiJpby5jb250YWluZXJkLmdycGMudjEuY3JpIi5jb250YWluZXJkLnJ1bnRpbWVzLnJ1bmMub3B0aW9uc10KICAgICAgQmluYXJ5TmFtZSA9ICIvdXNyL2Jpbi9ydW5jIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMudW50cnVzdGVkXQogICAgICBydW50aW1lX3R5cGUgPSAiaW8uY29udGFpbmVyZC5ydW5jLnYyIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMudW50cnVzdGVkLm9wdGlvbnNdCiAgICAgIEJpbmFyeU5hbWUgPSAiL3Vzci9iaW4vcnVuYyIKICBbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSIucmVnaXN0cnldCiAgICBjb25maWdfcGF0aCA9ICIvZXRjL2NvbnRhaW5lcmQvY2VydHMuZCIKICBbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSIucmVnaXN0cnkuaGVhZGVyc10KICAgIFgtTWV0YS1Tb3VyY2UtQ2xpZW50ID0gWyJhenVyZS9ha3MiXQpbbWV0cmljc10KICBhZGRyZXNzID0gIjAuMC4wLjA6MTAyNTciCg==" IS_KATA="false" ARTIFACT_STREAMING_ENABLED="false" SYSCTL_CONTENT="IyBUaGlzIGlzIGEgcGFydGlhbCB3b3JrYXJvdW5kIHRvIHRoaXMgdXBzdHJlYW0gS3ViZXJuZXRlcyBpc3N1ZToKIyBodHRwczovL2dpdGh1Yi5jb20va3ViZXJuZXRlcy9rdWJlcm5ldGVzL2lzc3Vlcy80MTkxNiNpc3N1ZWNvbW1lbnQtMzEyNDI4NzMxCm5ldC5pcHY0LnRjcF9yZXRyaWVzMj04Cm5ldC5jb3JlLm1lc3NhZ2VfYnVyc3Q9ODAKbmV0LmNvcmUubWVzc2FnZV9jb3N0PTQwCm5ldC5jb3JlLnNvbWF4Y29ubj0xNjM4NApuZXQuaXB2NC50Y3BfbWF4X3N5bl9iYWNrbG9nPTE2Mzg0Cm5ldC5pcHY0Lm5laWdoLmRlZmF1bHQuZ2NfdGhyZXNoMT00MDk2Cm5ldC5pcHY0Lm5laWdoLmRlZmF1bHQuZ2NfdGhyZXNoMj04MTkyCm5ldC5pcHY0Lm5laWdoLmRlZmF1bHQuZ2NfdGhyZXNoMz0xNjM4NAo=" PRIVATE_EGRESS_PROXY_ADDRESS="" BOOTSTRAP_PROFILE_CONTAINER_REGISTRY_SERVER="" ENABLE_IMDS_RESTRICTION="false" INSERT_IMDS_RESTRICTION_RULE_TO_MANGLE_TABLE="false" /usr/bin/nohup /bin/bash -c "/bin/bash /opt/azure/containers/provision_start.sh" \ No newline at end of file +PROVISION_OUTPUT="/var/log/azure/cluster-provision-cse-output.log"; echo $(date),$(hostname) > ${PROVISION_OUTPUT}; cloud-init status --wait > /dev/null 2>&1; [ $? -ne 0 ] && echo 'cloud-init failed' >> ${PROVISION_OUTPUT} && exit 1; echo "cloud-init succeeded" >> ${PROVISION_OUTPUT}; ADMINUSER=azureuser MOBY_VERSION= TENANT_ID=tenantID KUBERNETES_VERSION=1.29.7 HYPERKUBE_URL= KUBE_BINARY_URL= CUSTOM_KUBE_BINARY_URL= PRIVATE_KUBE_BINARY_URL="" KUBEPROXY_URL= APISERVER_PUBLIC_KEY= SUBSCRIPTION_ID=subID RESOURCE_GROUP=resourceGroupName LOCATION=southcentralus VM_TYPE=vmss SUBNET=subnet1 NETWORK_SECURITY_GROUP=aks-agentpool-36873793-nsg VIRTUAL_NETWORK=aks-vnet-07752737 VIRTUAL_NETWORK_RESOURCE_GROUP=MC_rg ROUTE_TABLE=aks-agentpool-36873793-routetable PRIMARY_AVAILABILITY_SET= PRIMARY_SCALE_SET=aks-agent2-36873793-vmss SERVICE_PRINCIPAL_CLIENT_ID=ClientID NETWORK_PLUGIN= NETWORK_POLICY= VNET_CNI_PLUGINS_URL=https://acs-mirror.azureedge.net/azure-cni/v1.1.3/binaries/azure-vnet-cni-linux-amd64-v1.1.3.tgz CLOUDPROVIDER_BACKOFF= CLOUDPROVIDER_BACKOFF_MODE= CLOUDPROVIDER_BACKOFF_RETRIES=0 CLOUDPROVIDER_BACKOFF_EXPONENT=0 CLOUDPROVIDER_BACKOFF_DURATION=0 CLOUDPROVIDER_BACKOFF_JITTER=0 CLOUDPROVIDER_RATELIMIT= CLOUDPROVIDER_RATELIMIT_QPS=0 CLOUDPROVIDER_RATELIMIT_QPS_WRITE=0 CLOUDPROVIDER_RATELIMIT_BUCKET=0 CLOUDPROVIDER_RATELIMIT_BUCKET_WRITE=0 LOAD_BALANCER_DISABLE_OUTBOUND_SNAT= USE_MANAGED_IDENTITY_EXTENSION=false USE_INSTANCE_METADATA=false LOAD_BALANCER_SKU= EXCLUDE_MASTER_FROM_STANDARD_LB=true MAXIMUM_LOADBALANCER_RULE_COUNT=0 CONTAINER_RUNTIME= CLI_TOOL= CONTAINERD_DOWNLOAD_URL_BASE=https://storage.googleapis.com/cri-containerd-release/ NETWORK_MODE= KUBE_BINARY_URL= USER_ASSIGNED_IDENTITY_ID=userAssignedID API_SERVER_NAME= IS_VHD=true GPU_NODE=false SGX_NODE=false MIG_NODE=false CONFIG_GPU_DRIVER_IF_NEEDED=true ENABLE_GPU_DEVICE_PLUGIN_IF_NEEDED=false TELEPORTD_PLUGIN_DOWNLOAD_URL= CREDENTIAL_PROVIDER_DOWNLOAD_URL=https://acs-mirror.azureedge.net/cloud-provider-azure/v1.29.7/binaries/azure-acr-credential-provider-linux-amd64-v1.29.7.tar.gz CONTAINERD_VERSION= CONTAINERD_PACKAGE_URL= RUNC_VERSION= RUNC_PACKAGE_URL= ENABLE_HOSTS_CONFIG_AGENT="false" DISABLE_SSH="false" NEEDS_CONTAINERD="false" TELEPORT_ENABLED="false" SHOULD_CONFIGURE_HTTP_PROXY="false" SHOULD_CONFIGURE_HTTP_PROXY_CA="false" HTTP_PROXY_TRUSTED_CA="" SHOULD_CONFIGURE_CUSTOM_CA_TRUST="false" CUSTOM_CA_TRUST_COUNT="0" IS_KRUSTLET="false" GPU_NEEDS_FABRIC_MANAGER="false" NEEDS_DOCKER_LOGIN="false" IPV6_DUAL_STACK_ENABLED="false" OUTBOUND_COMMAND="curl -v --insecure --proxy-insecure https://mcr.microsoft.com/v2/" BLOCK_OUTBOUND_NETWORK="false" ENABLE_UNATTENDED_UPGRADES="true" ENSURE_NO_DUPE_PROMISCUOUS_BRIDGE="false" SHOULD_CONFIG_SWAP_FILE="false" SHOULD_CONFIG_TRANSPARENT_HUGE_PAGE="false" SHOULD_CONFIG_CONTAINERD_ULIMITS="false" CONTAINERD_ULIMITS="" TARGET_CLOUD="AzurePublicCloud" TARGET_ENVIRONMENT="AzurePublicCloud" CUSTOM_ENV_JSON="" IS_CUSTOM_CLOUD="false" AKS_CUSTOM_CLOUD_CONTAINER_REGISTRY_DNS_SUFFIX="" CSE_HELPERS_FILEPATH="/opt/azure/containers/provision_source.sh" CSE_DISTRO_HELPERS_FILEPATH="/opt/azure/containers/provision_source_distro.sh" CSE_INSTALL_FILEPATH="/opt/azure/containers/provision_installs.sh" CSE_DISTRO_INSTALL_FILEPATH="/opt/azure/containers/provision_installs_distro.sh" CSE_CONFIG_FILEPATH="/opt/azure/containers/provision_configs.sh" AZURE_PRIVATE_REGISTRY_SERVER="" HAS_CUSTOM_SEARCH_DOMAIN="false" CUSTOM_SEARCH_DOMAIN_FILEPATH="/opt/azure/containers/setup-custom-search-domains.sh" HTTP_PROXY_URLS="" HTTPS_PROXY_URLS="" NO_PROXY_URLS="" PROXY_VARS="" ENABLE_TLS_BOOTSTRAPPING="false" ENABLE_SECURE_TLS_BOOTSTRAPPING="false" CUSTOM_SECURE_TLS_BOOTSTRAP_AAD_SERVER_APP_ID="" ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION="true" DHCPV6_SERVICE_FILEPATH="/etc/systemd/system/dhcpv6.service" DHCPV6_CONFIG_FILEPATH="/opt/azure/containers/enable-dhcpv6.sh" THP_ENABLED="" THP_DEFRAG="" SERVICE_PRINCIPAL_FILE_CONTENT="U2VjcmV0" KUBELET_CLIENT_CONTENT="" KUBELET_CLIENT_CERT_CONTENT="" KUBELET_CONFIG_FILE_ENABLED="false" KUBELET_CONFIG_FILE_CONTENT="ewogICAgImtpbmQiOiAiS3ViZWxldENvbmZpZ3VyYXRpb24iLAogICAgImFwaVZlcnNpb24iOiAia3ViZWxldC5jb25maWcuazhzLmlvL3YxYmV0YTEiLAogICAgInN0YXRpY1BvZFBhdGgiOiAiL2V0Yy9rdWJlcm5ldGVzL21hbmlmZXN0cyIsCiAgICAiYWRkcmVzcyI6ICIwLjAuMC4wIiwKICAgICJyZWFkT25seVBvcnQiOiAxMDI1NSwKICAgICJ0bHNDZXJ0RmlsZSI6ICJjZXJ0LmNydCIsCiAgICAidGxzUHJpdmF0ZUtleUZpbGUiOiAiY2VydC5rZXkiLAogICAgInRsc0NpcGhlclN1aXRlcyI6IFsKICAgICAgICAiVExTX0VDREhFX0VDRFNBX1dJVEhfQUVTXzEyOF9HQ01fU0hBMjU2IiwKICAgICAgICAiVExTX0VDREhFX1JTQV9XSVRIX0FFU18xMjhfR0NNX1NIQTI1NiIsCiAgICAgICAgIlRMU19FQ0RIRV9FQ0RTQV9XSVRIX0NIQUNIQTIwX1BPTFkxMzA1IiwKICAgICAgICAiVExTX0VDREhFX1JTQV9XSVRIX0FFU18yNTZfR0NNX1NIQTM4NCIsCiAgICAgICAgIlRMU19FQ0RIRV9SU0FfV0lUSF9DSEFDSEEyMF9QT0xZMTMwNSIsCiAgICAgICAgIlRMU19FQ0RIRV9FQ0RTQV9XSVRIX0FFU18yNTZfR0NNX1NIQTM4NCIsCiAgICAgICAgIlRMU19SU0FfV0lUSF9BRVNfMjU2X0dDTV9TSEEzODQiLAogICAgICAgICJUTFNfUlNBX1dJVEhfQUVTXzEyOF9HQ01fU0hBMjU2IgogICAgXSwKICAgICJyb3RhdGVDZXJ0aWZpY2F0ZXMiOiB0cnVlLAogICAgInNlcnZlclRMU0Jvb3RzdHJhcCI6IHRydWUsCiAgICAiYXV0aGVudGljYXRpb24iOiB7CiAgICAgICAgIng1MDkiOiB7CiAgICAgICAgICAgICJjbGllbnRDQUZpbGUiOiAiL2V0Yy9rdWJlcm5ldGVzL2NlcnRzL2NhLmNydCIKICAgICAgICB9LAogICAgICAgICJ3ZWJob29rIjogewogICAgICAgICAgICAiZW5hYmxlZCI6IHRydWUKICAgICAgICB9LAogICAgICAgICJhbm9ueW1vdXMiOiB7fQogICAgfSwKICAgICJhdXRob3JpemF0aW9uIjogewogICAgICAgICJtb2RlIjogIldlYmhvb2siLAogICAgICAgICJ3ZWJob29rIjoge30KICAgIH0sCiAgICAiZXZlbnRSZWNvcmRRUFMiOiAwLAogICAgImNsdXN0ZXJEb21haW4iOiAiY2x1c3Rlci5sb2NhbCIsCiAgICAiY2x1c3RlckROUyI6IFsKICAgICAgICAiMTAuMC4wLjEwIgogICAgXSwKICAgICJzdHJlYW1pbmdDb25uZWN0aW9uSWRsZVRpbWVvdXQiOiAiNGgwbTBzIiwKICAgICJub2RlU3RhdHVzVXBkYXRlRnJlcXVlbmN5IjogIjEwcyIsCiAgICAiaW1hZ2VHQ0hpZ2hUaHJlc2hvbGRQZXJjZW50IjogODUsCiAgICAiaW1hZ2VHQ0xvd1RocmVzaG9sZFBlcmNlbnQiOiA4MCwKICAgICJjZ3JvdXBzUGVyUU9TIjogdHJ1ZSwKICAgICJtYXhQb2RzIjogMTEwLAogICAgInBvZFBpZHNMaW1pdCI6IC0xLAogICAgInJlc29sdkNvbmYiOiAiL2V0Yy9yZXNvbHYuY29uZiIsCiAgICAiZXZpY3Rpb25IYXJkIjogewogICAgICAgICJtZW1vcnkuYXZhaWxhYmxlIjogIjc1ME1pIiwKICAgICAgICAibm9kZWZzLmF2YWlsYWJsZSI6ICIxMCUiLAogICAgICAgICJub2RlZnMuaW5vZGVzRnJlZSI6ICI1JSIKICAgIH0sCiAgICAicHJvdGVjdEtlcm5lbERlZmF1bHRzIjogdHJ1ZSwKICAgICJmZWF0dXJlR2F0ZXMiOiB7CiAgICAgICAgIlBvZFByaW9yaXR5IjogdHJ1ZSwKICAgICAgICAiUm90YXRlS3ViZWxldFNlcnZlckNlcnRpZmljYXRlIjogdHJ1ZSwKICAgICAgICAiYSI6IGZhbHNlLAogICAgICAgICJ4IjogZmFsc2UKICAgIH0sCiAgICAiY29udGFpbmVyTG9nTWF4U2l6ZSI6ICI1ME0iLAogICAgInN5c3RlbVJlc2VydmVkIjogewogICAgICAgICJjcHUiOiAiMiIsCiAgICAgICAgIm1lbW9yeSI6ICIxR2kiCiAgICB9LAogICAgImt1YmVSZXNlcnZlZCI6IHsKICAgICAgICAiY3B1IjogIjEwMG0iLAogICAgICAgICJtZW1vcnkiOiAiMTYzOE1pIgogICAgfSwKICAgICJlbmZvcmNlTm9kZUFsbG9jYXRhYmxlIjogWwogICAgICAgICJwb2RzIgogICAgXQp9" SWAP_FILE_SIZE_MB="0" GPU_DRIVER_VERSION="550.127.08" GPU_DRIVER_TYPE="cuda" GPU_IMAGE_SHA="20241204190836" GPU_INSTANCE_PROFILE="" CUSTOM_SEARCH_DOMAIN_NAME="" CUSTOM_SEARCH_REALM_USER="" CUSTOM_SEARCH_REALM_PASSWORD="" MESSAGE_OF_THE_DAY="" HAS_KUBELET_DISK_TYPE="false" NEEDS_CGROUPV2="false" TLS_BOOTSTRAP_TOKEN="" KUBELET_FLAGS="--address=0.0.0.0 --anonymous-auth=false --authentication-token-webhook=true --authorization-mode=Webhook --azure-container-registry-config=/etc/kubernetes/azure.json --cgroups-per-qos=true --client-ca-file=/etc/kubernetes/certs/ca.crt --cloud-config=/etc/kubernetes/azure.json --cloud-provider=azure --cluster-dns=10.0.0.10 --cluster-domain=cluster.local --container-log-max-size=50M --enforce-node-allocatable=pods --event-qps=0 --eviction-hard=memory.available<750Mi,nodefs.available<10%,nodefs.inodesFree<5% --feature-gates=PodPriority=true,RotateKubeletServerCertificate=true,a=false,x=false --image-gc-high-threshold=85 --image-gc-low-threshold=80 --kube-reserved=cpu=100m,memory=1638Mi --max-pods=110 --node-status-update-frequency=10s --pod-manifest-path=/etc/kubernetes/manifests --pod-max-pids=-1 --protect-kernel-defaults=true --read-only-port=10255 --resolv-conf=/etc/resolv.conf --rotate-certificates=true --rotate-server-certificates=true --streaming-connection-idle-timeout=4h0m0s --system-reserved=cpu=2,memory=1Gi --tls-cert-file=cert.crt --tls-cipher-suites=TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_RSA_WITH_AES_256_GCM_SHA384,TLS_RSA_WITH_AES_128_GCM_SHA256 --tls-private-key-file=cert.key " NETWORK_POLICY="" KUBELET_NODE_LABELS="agentpool=agent2,kubernetes.azure.com/agentpool=agent2" AZURE_ENVIRONMENT_FILEPATH="" KUBE_CA_CRT="" KUBENET_TEMPLATE="CnsKICAgICJjbmlWZXJzaW9uIjogIjAuMy4xIiwKICAgICJuYW1lIjogImt1YmVuZXQiLAogICAgInBsdWdpbnMiOiBbewogICAgInR5cGUiOiAiYnJpZGdlIiwKICAgICJicmlkZ2UiOiAiY2JyMCIsCiAgICAibXR1IjogMTUwMCwKICAgICJhZGRJZiI6ICJldGgwIiwKICAgICJpc0dhdGV3YXkiOiB0cnVlLAogICAgImlwTWFzcSI6IGZhbHNlLAogICAgInByb21pc2NNb2RlIjogdHJ1ZSwKICAgICJoYWlycGluTW9kZSI6IGZhbHNlLAogICAgImlwYW0iOiB7CiAgICAgICAgInR5cGUiOiAiaG9zdC1sb2NhbCIsCiAgICAgICAgInJhbmdlcyI6IFt7e3JhbmdlICRpLCAkcmFuZ2UgOj0gLlBvZENJRFJSYW5nZXN9fXt7aWYgJGl9fSwge3tlbmR9fVt7InN1Ym5ldCI6ICJ7eyRyYW5nZX19In1de3tlbmR9fV0sCiAgICAgICAgInJvdXRlcyI6IFt7e3JhbmdlICRpLCAkcm91dGUgOj0gLlJvdXRlc319e3tpZiAkaX19LCB7e2VuZH19eyJkc3QiOiAie3skcm91dGV9fSJ9e3tlbmR9fV0KICAgIH0KICAgIH0sCiAgICB7CiAgICAidHlwZSI6ICJwb3J0bWFwIiwKICAgICJjYXBhYmlsaXRpZXMiOiB7InBvcnRNYXBwaW5ncyI6IHRydWV9LAogICAgImV4dGVybmFsU2V0TWFya0NoYWluIjogIktVQkUtTUFSSy1NQVNRIgogICAgfV0KfQo=" CONTAINERD_CONFIG_CONTENT="dmVyc2lvbiA9IDIKb29tX3Njb3JlID0gMApbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSJdCiAgc2FuZGJveF9pbWFnZSA9ICIiCiAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmRdCiAgICBkZWZhdWx0X3J1bnRpbWVfbmFtZSA9ICJydW5jIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMucnVuY10KICAgICAgcnVudGltZV90eXBlID0gImlvLmNvbnRhaW5lcmQucnVuYy52MiIKICAgIFtwbHVnaW5zLiJpby5jb250YWluZXJkLmdycGMudjEuY3JpIi5jb250YWluZXJkLnJ1bnRpbWVzLnJ1bmMub3B0aW9uc10KICAgICAgQmluYXJ5TmFtZSA9ICIvdXNyL2Jpbi9ydW5jIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMudW50cnVzdGVkXQogICAgICBydW50aW1lX3R5cGUgPSAiaW8uY29udGFpbmVyZC5ydW5jLnYyIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMudW50cnVzdGVkLm9wdGlvbnNdCiAgICAgIEJpbmFyeU5hbWUgPSAiL3Vzci9iaW4vcnVuYyIKICBbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSIucmVnaXN0cnldCiAgICBjb25maWdfcGF0aCA9ICIvZXRjL2NvbnRhaW5lcmQvY2VydHMuZCIKICBbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSIucmVnaXN0cnkuaGVhZGVyc10KICAgIFgtTWV0YS1Tb3VyY2UtQ2xpZW50ID0gWyJhenVyZS9ha3MiXQpbbWV0cmljc10KICBhZGRyZXNzID0gIjAuMC4wLjA6MTAyNTciCg==" CONTAINERD_CONFIG_NO_GPU_CONTENT="dmVyc2lvbiA9IDIKb29tX3Njb3JlID0gMApbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSJdCiAgc2FuZGJveF9pbWFnZSA9ICIiCiAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmRdCiAgICBkZWZhdWx0X3J1bnRpbWVfbmFtZSA9ICJydW5jIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMucnVuY10KICAgICAgcnVudGltZV90eXBlID0gImlvLmNvbnRhaW5lcmQucnVuYy52MiIKICAgIFtwbHVnaW5zLiJpby5jb250YWluZXJkLmdycGMudjEuY3JpIi5jb250YWluZXJkLnJ1bnRpbWVzLnJ1bmMub3B0aW9uc10KICAgICAgQmluYXJ5TmFtZSA9ICIvdXNyL2Jpbi9ydW5jIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMudW50cnVzdGVkXQogICAgICBydW50aW1lX3R5cGUgPSAiaW8uY29udGFpbmVyZC5ydW5jLnYyIgogICAgW3BsdWdpbnMuImlvLmNvbnRhaW5lcmQuZ3JwYy52MS5jcmkiLmNvbnRhaW5lcmQucnVudGltZXMudW50cnVzdGVkLm9wdGlvbnNdCiAgICAgIEJpbmFyeU5hbWUgPSAiL3Vzci9iaW4vcnVuYyIKICBbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSIucmVnaXN0cnldCiAgICBjb25maWdfcGF0aCA9ICIvZXRjL2NvbnRhaW5lcmQvY2VydHMuZCIKICBbcGx1Z2lucy4iaW8uY29udGFpbmVyZC5ncnBjLnYxLmNyaSIucmVnaXN0cnkuaGVhZGVyc10KICAgIFgtTWV0YS1Tb3VyY2UtQ2xpZW50ID0gWyJhenVyZS9ha3MiXQpbbWV0cmljc10KICBhZGRyZXNzID0gIjAuMC4wLjA6MTAyNTciCg==" IS_KATA="false" ARTIFACT_STREAMING_ENABLED="false" SYSCTL_CONTENT="IyBUaGlzIGlzIGEgcGFydGlhbCB3b3JrYXJvdW5kIHRvIHRoaXMgdXBzdHJlYW0gS3ViZXJuZXRlcyBpc3N1ZToKIyBodHRwczovL2dpdGh1Yi5jb20va3ViZXJuZXRlcy9rdWJlcm5ldGVzL2lzc3Vlcy80MTkxNiNpc3N1ZWNvbW1lbnQtMzEyNDI4NzMxCm5ldC5pcHY0LnRjcF9yZXRyaWVzMj04Cm5ldC5jb3JlLm1lc3NhZ2VfYnVyc3Q9ODAKbmV0LmNvcmUubWVzc2FnZV9jb3N0PTQwCm5ldC5jb3JlLnNvbWF4Y29ubj0xNjM4NApuZXQuaXB2NC50Y3BfbWF4X3N5bl9iYWNrbG9nPTE2Mzg0Cm5ldC5pcHY0Lm5laWdoLmRlZmF1bHQuZ2NfdGhyZXNoMT00MDk2Cm5ldC5pcHY0Lm5laWdoLmRlZmF1bHQuZ2NfdGhyZXNoMj04MTkyCm5ldC5pcHY0Lm5laWdoLmRlZmF1bHQuZ2NfdGhyZXNoMz0xNjM4NAo=" PRIVATE_EGRESS_PROXY_ADDRESS="" BOOTSTRAP_PROFILE_CONTAINER_REGISTRY_SERVER="" ENABLE_IMDS_RESTRICTION="false" INSERT_IMDS_RESTRICTION_RULE_TO_MANGLE_TABLE="false" /usr/bin/nohup /bin/bash -c "/bin/bash /opt/azure/containers/provision_start.sh" \ No newline at end of file diff --git a/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation/CustomData b/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation/CustomData index 6df2bddecc5..3c4e0a76e56 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" @@ -260,7 +260,7 @@ write_files: permissions: "0644" owner: root content: | - KUBELET_FLAGS=--address=0.0.0.0 --anonymous-auth=false --authentication-token-webhook=true --authorization-mode=Webhook --azure-container-registry-config=/etc/kubernetes/azure.json --cgroups-per-qos=true --client-ca-file=/etc/kubernetes/certs/ca.crt --cloud-config=/etc/kubernetes/azure.json --cloud-provider=azure --cluster-dns=10.0.0.10 --cluster-domain=cluster.local --container-log-max-size=50M --enforce-node-allocatable=pods --event-qps=0 --eviction-hard=memory.available<750Mi,nodefs.available<10%,nodefs.inodesFree<5% --feature-gates=PodPriority=true,RotateKubeletServerCertificate=true,a=false,x=false --image-gc-high-threshold=85 --image-gc-low-threshold=80 --kube-reserved=cpu=100m,memory=1638Mi --max-pods=110 --node-status-update-frequency=10s --pod-manifest-path=/etc/kubernetes/manifests --pod-max-pids=-1 --protect-kernel-defaults=true --read-only-port=10255 --resolv-conf=/etc/resolv.conf --rotate-certificates=true --rotate-server-certificates=true --streaming-connection-idle-timeout=4h0m0s --system-reserved=cpu=2,memory=1Gi --tls-cipher-suites=TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_RSA_WITH_AES_256_GCM_SHA384,TLS_RSA_WITH_AES_128_GCM_SHA256 + KUBELET_FLAGS=--address=0.0.0.0 --anonymous-auth=false --authentication-token-webhook=true --authorization-mode=Webhook --azure-container-registry-config=/etc/kubernetes/azure.json --cgroups-per-qos=true --client-ca-file=/etc/kubernetes/certs/ca.crt --cloud-config=/etc/kubernetes/azure.json --cloud-provider=azure --cluster-dns=10.0.0.10 --cluster-domain=cluster.local --container-log-max-size=50M --enforce-node-allocatable=pods --event-qps=0 --eviction-hard=memory.available<750Mi,nodefs.available<10%,nodefs.inodesFree<5% --feature-gates=PodPriority=true,RotateKubeletServerCertificate=true,a=false,x=false --image-gc-high-threshold=85 --image-gc-low-threshold=80 --kube-reserved=cpu=100m,memory=1638Mi --max-pods=110 --node-status-update-frequency=10s --pod-manifest-path=/etc/kubernetes/manifests --pod-max-pids=-1 --protect-kernel-defaults=true --read-only-port=10255 --resolv-conf=/etc/resolv.conf --rotate-certificates=true --rotate-server-certificates=true --streaming-connection-idle-timeout=4h0m0s --system-reserved=cpu=2,memory=1Gi --tls-cert-file=cert.crt --tls-cipher-suites=TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_RSA_WITH_AES_256_GCM_SHA384,TLS_RSA_WITH_AES_128_GCM_SHA256 --tls-private-key-file=cert.key KUBELET_REGISTER_SCHEDULABLE=true NETWORK_POLICY= KUBELET_NODE_LABELS=agentpool=agent2,kubernetes.azure.com/agentpool=agent2 diff --git a/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+KubeletServingCertificateRotation/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeBlocked/CustomData b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeBlocked/CustomData index f2cdfad7f2a..e30472488d6 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeBlocked/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeBlocked/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeBlocked/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeBlocked/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeBlocked/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeBlocked/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeBlocked/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeBlocked/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeBlocked/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeBlocked/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeBlocked/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeBlocked/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeBlocked/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeBlocked/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNil/CustomData b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNil/CustomData index f2cdfad7f2a..e30472488d6 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNil/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNil/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNil/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNil/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNil/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNil/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNil/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNil/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNil/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNil/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNil/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNil/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNil/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNil/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNone/CustomData b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNone/CustomData index f2cdfad7f2a..e30472488d6 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNone/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNone/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNone/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNone/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNone/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNone/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNone/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNone/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNone/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNone/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNone/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNone/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNone/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+OutboundTypeNone/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOff/CustomData b/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOff/CustomData index 03e9718c450..b0176ad3797 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOff/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOff/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/+x9+3fbNtLo7/4rsKxuYndDSXYcb+JW6aEl2uFaryWptPniXh6ahCTUFKkAoB/r6H+/Bw++qVfS3u8731n3NLbIwWAwGAwwL+iHv7VuUdi6dcn8YDjq6Y4x7Om/dRqH84jQ0F1A8BVQFwVA9cDJkQAZagM9B3F0cOBF4RTNYgw1f4HCCYH48Oj5AAAAvLk7g0DVgXoMVIP/uwBtoA7AO/YDlMaz1hsYw4mlmysl3yQov1sl/Ywxuncp7AYxoRB/iAglh0dA9Le48xEG6hK0IPVa5IlQuPDl7xaGXhR6KIDqUqBQ2RhIk0B8jzzY9FscB41ib/6NCI7b6vSLHzYZpQIZhH8CKvAetHx43wrjIAA//6yPLg8+WwLy9wM9vEc4ChcwpB3lenKhO9rYcCzd/KibcrKeS09WygHDAYCgxqOBHrq3AdRC36IupmANeeDrVwAfEQUN3TQd65Nl64Ou3XcsWzNt51Iz+gerTBps7IZk6WIY0g/xDI7dGUwnSre7rP2l5XRHw8uOkvBoSviAhSigKfj8mcmB/WHs6EPtoq/3Vgr4WwcoCvj9958AncOQQ7If6M2jKvB7wNC27iAOYdBaLFo0o8qZxzO4dGewBfnw/RKu3Rp1Kl2+B43n4gBXHPMUVYfV0y9N7Wq3UaWwuw3Kh1PszvYbk2jTKfe3YUSr3Pq3hJBPCOxFCxeF2cIc6vavI/OaNzWunEujr2eTzhdGCOlDhO98Of8Jp9yHO/Cy9X9vPvc+dMf3pze/t56ngTvrHP8EQvhIV4C9k8/aK8B+gxcvQOuHjIhOGLVeAqVRQ4NS4jaBPlBRqcNXvAtAyjhzn54gab0EdT0kbEpnnk2mMf545vQmGl853euc7HQ6QKE4hgooC0KFF2d/MS9q+XH2p/AjtxgS1qSaCGBIuA6SgqEmgrEODpMnEkSzoiA+uMtLFGT6hjy4S4egf0Pn7rbTOISPSwwaz9av2phT5VjGf+nO4GIFbn4Ex+12+yhrFUSeS1EUdhShlXJrWO0Lvewjctdy/x1j2MKQRDH2oLp0MT2urufkvcPaOEuXzjuNwykK/UVIgRpioEaAungGKVAt0DjE0PUDFN4Bdbqlr6OjtBOOe4qhHK0/BY3nascr8JVP8LEPvgrZel5iFFLQOF29PMoL3ufPoPGcR7oC6oyCxnOeravqYDO18ysKAhATmI6f0wimEeZMBlMUQKUoegXe19LfYjCsZabjAgJrejdCEk+nyEMwpKJjsnQ9CKKwRA+NgIehS2FG1TnA8EsMSXW4jBdlvrwCLqVwsaQonDFsUzcIwK3rcdQji/fSbDaVdctAytW/mZYocGBVszdExPEhOwR0tshJFNFNwqGOQeu/QxYkP3aXgj9jwlmnnGmg8ZwycPX9M1+kO3dKYjqma+qazU7X1uTy0uga+tB2eoZ17VhjrbtWJ4qxWAk94IEx7hYC4t5DH9DoHFSE5EDoGIqfvIXvoKkzdVEQYwhOTsEbcPKGCySD5kfs0riuK/hKB77cUPhhT5zXF5EPztrtSuOttCzuOK+/odNNWBmyKPyLsKoqmUcP4CuYYfhNlCfnuVLDMAql5JEH0AZtfubi56Mpoe5tYXPTqZc78+9k+/BD1VYDJ4Fa4ujxKbNhxAy3z05Pd2xUJEc0cpeU/S+hy3QU37beveHYantfA5pj7ueBG7oziH/PmLjTOJPT2QfbHjtjc/TbJ2di9q3sbF57NM+gO3VNEwpgNmMlBHNKlw4n5RsRaN6XGGF4fs4wnZ9zVOCmZiA3yk8Zvg0sz1D34NSNA5o3MW82j/hG2ZPrWzrbyJ29O8tZYMlMW/tNtVUYufUtk00K47G+a7pJeb6tv2jCN4z7r5jyDTz63kkfjnaf8QS2U222faLCKB3E/o1rObOWnD97CtaS/i3ML24HSp077C6+hQGkmftLSb1nu8G3jtsqk5usd6XkNHupjy5f1rvNmKXYqcyHProsbLtMEMcMfVdL91w0BYgMXIxCiEdYY6ftPgrjR6A0RlbZoPYgpo4PCe0orZjgFpm7GLaWd6jluSrFMaGqsEVabujNI0yyI2W89F0KHW/hdxTxt5q0EUCFc3C5I3bMCGR3nquy12iK2CFwaxdVWLmacqrYNieWrfecrsYsa3m+qX2/UsBX8OjiGTkqHIbWA9+6BJ6dAtUH7xlgOrKVkLOu1vQwVYrnrsm4x45cXc3p6qZt8Z4a2fA2A+dnvBsTGi26bjdjQs1pK1rSFqOLCPZEGCCAQtA4JPALaIPG4WHjuTux7NGA9cLH53RHk6G9Aio4Pjo6+gn4UWadQS9wMQT3Lg7dBexkLRl9TuMZrUDFOfg3CV1hWUZcq134Yc8YLsY+js6PQrjGwZKwjqFJVtx2jlfxeFFIXbZS/CKX08eTAC1Q6s3vjoa2Zgx1s+dM+sbAsJ2eORo7xlB4bMaa/aFTqxyyfnL6gUDqxAJ/6mEWB1Cl8bxDV9y0Ss6i7fY+rbgW2xG8xtOfrqkKAotNN8XgJfvvJnx5xHVW3q0PfBcuolDFMIhc/2CPWbkWGpapS4jZAkgl/3pyofd1O4knjE3jI5v8a/1Tfk6YhsYhpJBI+ZMqm3CEzTv4pNRh40K+Oxq2+MX+Ei1hSEgAZjDExAVqFFPQ2EIqOGmfvi20xvALUEP4ANTHN+13QPXdJwL+8brdBuodfNqOsLbbdExAJfHtH0BpdYd8Y5XBtJUCVNf34SMFCgOAHtUCOmSrvze0zguQxTl6WxP5qudbznWpjY2E/MlF3+hunTl3ifLszkw3hQeW6pGl0bzUetsJOnoIAY4ies7+2dZEDOe/Jqbu/NMaDdcMgvvAmn+QKCzTXmxZolis8XUwVTorgEILQgr+/pidP9WQAScC0u1zTxBb2PrQXq07hW5oUFL3tfPnBQiGlC25ynG4nhwmr/vTVGy1B2HJFlQljM280dXZOht2jbHWF6pyO21bG24mjyyb9JHW+OLq5bGAT/WhF/lQnFe2Cbw1zofCKhRIoMpgJMstvWvqdkdpHHouE0KJTTnarV0dmwoQrdbNTevm5uZm9afhUxg+RboGFzmaxbpyKfj5Z6CPLiX7KotKKDvFC6LYV855YFQzr7gUjia9lfJKvKcwdENqJCD6UBvajpG9J/Et8TBaUhSFCZQ1ubC6pjG2jdEwD+u6fpcLagq4bpR1jSzoYUi3NBTsSRsnMYkrHMVL0dTUrdHE7OrOlTmajFPIxIEogPqjrsaoT1/fL+ynJRQvPw4c+9NYz7MghHyXSYc/zNFAoBdjRJ84DRlUEtGz9O7ENOxPJXruCyg/GqY90fqObFSAMqtjLIE7a8aMo5hC270NYNaTOZrYumNrF/1sgEuMFi5+0u5dFLi3KED0ycpTNzaNgWZ+crSPmtHXLow+G46VY4FEYHluAGtbWl2trxeacLkc4+ge+RBfuN5dNJ0OIl+24zI6NkcfjZ5uOhda93p0eekMRj19IwLlHKxpu9rQyoQUI0jWN3ZM3TYN3dqERH9cRiEM6QYs+m/j0ZAp1Q1oejFOxHQdmt7EFLK7Ac0/EaUQb0DyT8O2dbMWhelS2GfH/5rmpmbr/EC9ueW/xtamxs6/xtZmBBexdwc3EuBcTLrX+nY6fsWIwm3EOL+ahq3vQtJ2dIKuIsaYQOFp9w0fhhTRJ/2RwpAkEz2xdGegDbUrvecYPX1oswWm/2brQys30TGBWCMEzcIMj9ETC2Zi6aajWZZxNczjyOnZmEAjJNQNPTiA1PVd6qZ9G0PL1oZd3RnottbTbG2Vak3Xv3AD1ghbd3GiPLWec6H1WQvTsa4naR8+IkzbjGJ6G8Whbw01m/dRbNEzLKZ+nNHEvhhNhj2HwSU9wkcviH04cAmF+BJHC4u6oe9iv3/BUem/dfuTHmOXZeumc2mOBg4jvqeZPad/sUo1kpi+j24c5PTR9YA7SMWcfdQmfVtaC7LZwn1Ei3jRzw3bjAPYjWK5sgfab8ZgMnDYiNIBmRN+YppkSzvp/ho+JZ3fvSVK9e1HiKUUKMxiEblm4jCsPhZzoDbpRNAByv1JTeBbpqUorU06q+UrYL0tsBsuoXF2wFTO8BEZPU7eEjSGV/yQbFwaXWY0miNb7tbcBV2f9bPeHq9PLLKcxGEkzkMbEopypgm3o66LbTeZVOmpSx9+NMzRcMD0f87EKppZaxHnYuYlq2u3JlUjbFO7ipEgIfXhRw5X52/ciZCcWJfnI7WRsgSonZK9SnNTQlOeGV+48BPfiJCZddOxDtfaydipQWUqdmhVMSRzTFpnqe2GOTcjNeyTbrfO7pEFL1oInSJZm6WobmKt7GdXxlbBpeNwHdx+WcFlDl/2tSuro6piSGCrICVKvJTy2R0aqQ+qLn/i+KQtkz0if4mjWwhusRNCOkUBhbjoRh6M2E5wUc6WUEOg5BspicW+iPw4gERl+3nTb+VhctkLOUqNMbcbSHkEyfN8XEdsT4ktMu5PrjjPO0Dhqr9mV1rcg0Z3aDgXxtDpGSYTHLFLsK4CRKh4nUyjYbZKgsGTaEogFSSlXKw8jaO+0f0k9YrnBsiLlLo8rCSpk/ygLLhtotxi5M+gkn7OpQYrP8xe7kEUDDaTxUM1616GUcj5Cl68KOFIzgNcYWa0/f8enfRQsZ8WuUVhC95SLjhApSB0KVDVFF6sE3l2lInRzOgN7qGfyllAgBpQLMQZ87c5yXVp/YvJxWRoTxxT7+uapXcahwG5dTAMoEsgUDFQZXgtnYpiA8nI47fN9mkyH7UQJ+2tECdbIU45xJq8diOcRRiFszTZF0sOgS8xxE8giTbdxhTEhAEiSkCOH6WUQYHVniMCEGEdAoIWywASCtzlEkeuNwc0Ag8RvnMxO8yDtENESAwJeEB0HsUUMJUfQAqDJxCHiJkYQQAQzbr6zDMtcRymO4hElZ8uwGWZxH4EghCoZIcWtTO+VVY2yosQRRiSQrRNCmFyVLH1vj4emfbW84nAY8MALiNM/QO5LDYH+Oticgo42BDir43iwUfoOTxuVRvjL22Bj9Dj5SzjiNCOWLBomSzYMbgcmb9qZg9o3a4+tpPYWcIPjZ3Uta7tWLapawN2et/GmSCaEYdGDryHISVA0a6tZtfSm2XOywcapmjqetSiGLoLFM4UsOZFcZusoYybuv3+QXICLeYC5kJ8OaVwNZ44w8TOYoMpaF5yh5ZOeI985Do+RvcQO3IVFIdfkAy++q5gCLHLE6DDKFSvxpNcjFFuxzxMzt6EkQ+BH0O2Kj8OAHVnMlSVHtKzoKdU0cORw0jf6MvPOmzJQwyNFkGRjfwU9Ktmdz84tjHQRxP7IJdHURlLZQxpGvd6Uv8aGsUUFxaOR4Om33r3Tp1G2IOq2PHYhwcX++uWCjgIIW2i5f1pEy0dCQw64Dh7znN63CBoyreMETmAs40Aggr5Sw2nqucGgZquQAYmDpUbz41idEBVhV6olKB17T7bckZarxDeRkR1PYruIVDVLzGCFPiRdwcxk/DDFMyR+zM4aYPXbd6pBKupdOs5vVH3Wjcdyx6N+Rn1aEMJXU5edqmak+p5GPXi5Sgc42iBiBdfcN5lVSxr+hJt1TBS/Xi5T3epFt/aBU0g90FfUWSym2yaRA0dcD2sLhDGEU6UfQFKZCrUA7G9lae5uB5u0SgKSCu6hzhwn279llRZTTLfCirWoBoTiFV3BkPaJHPAz4Fbm4pB8Pwz1Y3pfPfuWB9+9BByC0byYuoKHbRre8/15mxz4YYp+9tC/4ZXF+D1yR5I4CObXIglHkkK0/HfjoR9AO/enr1mG1Ji/YnaJseLMHQYrw8A8GIcAPU3MJ7Y4CXPVZtHhJ6/ffOPtxL5LyHpONI4fSFoc3iBx2OHz5CHmyh6QbiUMUW2cGknJfAlUEd1MscHlA0j/Uul3iKuFcP6hiR0l2QecUdhhiT3dINIFzvdCJBDuGZtsL10EYXZ8utxVZYu7UR7ySik/pveTVat0dc7dYcwoQzXH8A4XjaNzHxV3atEe+ZLt/N9D0aToS1cD6lS3b1zL4AudhZRHFJniaOlO+NRJWcauDOS0SP74o6hDLnA1hIJUTnHbTFf75jtAe1iSp5ISCCgUUYM6mqc/vgCXjZfgp9rwF+8ALcYund19iTvpIGAyog4abdrcW85GKwpiSIBhEtwXO61JuOvumnmdrFtG+fmDY+fiZLjUWEDXb/n1G3F6Rac7jY5eecVqlu3Mn/uLe/PdtjHdvdpoeWZI481Gzxaq4ODGaRjEVYeIs8YZ44ApvbETNloATvHuacL91EGczvH7dxz1Cl8WnYU6eR+mKMA8kI9xExG0Mgw8AN7XraXncahUMDE6gP1A1CSONo5EEd8no9/3modn71rnrw5bcrfrYWEE5ts6MGkhLuFQgrx1PXgL+4SqfciGNQ5aZ8cq+0TtX3MjsN/fAEqBi+bn9u/J0dQzfcxJIQ9kbcOGMmzSgkizw9CS4VJZeMXvmra9TWHa1ecWBaNlOdZD53G4SH6e1JQm64Tec5HS2VdpiQKZ7lcYTOiXD8VvIp/ZnBIVvSL/oWvhBkqGQUASxIAIkCuWP8VCCM6l/Wp6SiUXIUyjXEI2sX0J761A3UKyDyKAz9Z/47s3ZG9O7nenaR3oZVlfHSXUfN61sq6c8KIbT2UgOM2U9RtZlPNgeo9fgtRmYuMC1AIQXsNg1n3vN4S+JBCvEAhZO124rsgDNzClP3g9olbvcsoCnL2blG990ej68nY2Ydnjq1dFaZsp0Z97ULvd5QsttdMXJ9pKESVA1Q9t+OJS1eUYpRrHzJfvdoY+Po2ka7w9JW4wYSLNkOQIOQnBeCGvnA8BO4tDEguNJiMQARHcrEX/qClqrx3qIp82EJ1RIcNaDMEP9nnI5E7hAm38KsmWFgT8cqH1LIajQ1ARYcF19Yv0RQ0xajsvnURRZRQ7C4Zbdx5xMiqBxAWDT+XgCaAof8yxX5UGUgubJcIslBKi+g+UbXDyId9NnXFVOvNQr5Wv6WJ0fvJnrz95ZWoynb9vEixiQ0h9KGsY3J9/7tIT084EkslF7+nX/K0j9xxtxjKq6kQlhDpUiZwcc9st8XSxRAIoTSHuq1bzkfdtIzR8FxV2s12s62sgHLcPHnXbJdLnDZ7QK/T2CrNscMYXwbuTAF1T2tScItLtLRCeVA0t6DyfFkpNVhM/crgKTdW94Pem/TZmuuIpfZ+N0zFSFanJrT1fj+SjIF2pecGxj/vj4YXDXDxyXMp93QXlLlcbJGLm0v44HCyaqVeja9v0tmCbythct3WB9Rr4NPV4nS1NSnXMifdzaocspBG49BHvMIq6SZBs0qSrfPJDLwQylybvJC1XTOGHEDduZHn3uqO3beci9HItmxTG4+N4VVxo2CGSL7VFvDSBCasZK32z5egAblN9H8pWWIDT0v9paytzbEoAG5JsKiHLWVXFID2T60osDdNrmDcSRIs7l3cCtBtwrFW7p2qpuza2KQOqpCZ8e3iUpp/Teul+dcd5cx34enJ9K16+vrsrXp69o+36rvT6VR9/e6sDU/ewtdnr9tKyV/ClIZMnaqjwGE9yNoIbTx2jF794aZAyH4I64w+2TJrxeYvfynZTjzfJs3beqkX7e2tKnIuyqr2aCiFfnuLmhXgLpFM7DwH98cHdyj0z4Hw9R5Iw4CcH6iAceFceCXk4wMA5F/nB0mBsjxTcYd5hBF9OgebNLJMIGWny3Mgbj5otaoXG56fnr4+iEmBksSOSWfyQPgsz6VlC73zlD/5McryJEYgDCkSlRbNu7ekiaLW/XEuR3OxcBkvhIucX7mU14DsQ26BC7RZj3hGsv5VkKcyeaaqIXyk6hJHNOq4d0QtYCwAuq5IooixB9kum1s+q2yFhhRi4ekbRD48B0N4z2dJ/MhMXnnDphFOI+ELOvCikMJHynkr/5YTKme3POuS0bVTICYnxxeB8MCLMYYhTT7XgSQaT2QbffMm9xdrgT2X//7rfo8F/5+Vzjh9B0NREFbYOOzRtc4OBv/zpDvnyN8qobvL5U7SuKsMbpW8/83ylqryTMjEo7zf53y36lfZ8A4+nW+v4/1mUU0prrJyrYTWAeXOnAXzitvUk6FtDPTErySKKqXUZjtkGi4imQ0xP6g5mK9HVytL+Sutf+D/ZTlfRprzpfrg+Oxt8+x18/jkXfP4jK0S6i2Bqvrc0f22DdQ/ALMHvqn565M3J2cpBplZxjbWLPTTaRzu5i0phYwUUHogfGj60GInOmPQs9iGb5tGlzuQ9jfeZDIJWviEnSQoRh4/+GR23Bq9soWEVM+kOmZrgxr7eLc2UoS2Au9u5yU1n0Oj67DJe87P5UopAsvTSLnfTnpOKb8pIzCGlm7aVcJ5TZY9cgba8KovC147jed9wOXd37kE4UbBhcbOSz8qaOHOoOphyCvy3EBNqrtkvYDyI4+87dXyFoWqj7Dy47ps4G4SjAJZ8+Qwinmk/jaic7CNNu7f30pGEgvAEJAl9NAUQR+gsBgCUPb0bAoCummvSTmZAta92bMDmdBU18PaV/X3LJeC4onbuxC+Tl3UNbldlsxHmfDbgbYG3ZP0FVXcJtSkaFHJshtqY+vDyE6uE6rrdYBmYxdTJOKqO1z6v0Azfj0yb7H7Vf/rmh23Vf4KR1MUwO33/O+BZ3dddDWeZMWtY3PEt1aR0Ft+vMrcQ+tmpkBibn553mU6rzLTsnAELSWfvlPFB9W9y2XjrHORVPBV94c6mJpbZdaCpbeBpADrasrWoth4JWwxMzUXpXlLulFIcRSMAzeE+fh/w9SZ4WHq/5oYpt5LnLTDUVo3zEuM6u1VEbnKn7s2Zqdw7dy1++DkfSZY8hynonAalRb7W4udtYbG8CrNKVodHIhbkZn+GbghmkJCewgXAlADbWhc6pbdM8xO+eS6kG1IURYapXasoweMRD9iGyh0ISaGdzCPFrDVSNPLWk3WWwlQLIhCw1bONiqSkYLkhK9RxJW79Cfr+Tz7sw7RjuA59Eym/9Fu1yNL68NqmuYCwELkD1RVLRtVeTtqu8mkigygG6UhL3WTkckbpWAu5aiRxlJqWtwojaSa/V+94c0u5nWlSWa3FF+prr9AIQdY11nZiKlAFIzMkl23trdNdl7GshxTqqzL7LzaBtf6pxvlgB1M1820+pilH0kXnRbTiHhuALHm+7mEo25/wkehTewRv6zEdLRer5AWmS9pZ22ZmSk0hJsiVX24DKIntvk0n9xFcJCvmydffxZDMnrvv8rcgsaGK3Ky2P/XmQIaG0ms78iC3g49iTt1vqc3Et8WxlS8H+h7MMvriXLI0yuKvgctnmUIi5fn7IU1lS6ta3SjMIQejUqCpXV5xeRQ79oj0+maOr+aQ+tbncYh/96AKVCebxQpGP6NwsT8/5Ab5RVInoqLkYpvkmubik+LlzUV3wkndg9hTuSTHvrLCIV0ggMBl/hzgmiGwuYCeTgi0ZRGYYBCnuV0o7y6SS9ckheHr8Wy4O/5OsjSpGoJucLucp7ccZQQnaCZsZfNBxT60QNphpBKHORLMEh72IUIL8Iwj+f87enpa4ls5gYB3MAR+b4ykMV3UdC6UVYKUDYpgI2vxaplIOmK4PDFtZc/wT2A9tFB7SWOd/AJYOKen7bfnclbHcPIh6RwuePrszficscopmv8bq6H2D4i1gEDbS7hQlz1uEsD9ky0SG5/7EyslmV3ulqr37lHmMZukHhxR5UHk/KT7rD0RKlZktf6p07jUPJor2E9yO++KS1x3bT3Q5gN+yGZoCLK7TtREeG2TQhDn7z/2lirmrjmW0dCVZUO3QV8/7WkR/fCwThQJUg37b2w3MGnCpJr/dNmHJkKZ6t7HAXIeyppcJ5+I3KUdpkKhkddckTbZgKnau/911ZeeZNWeSG3ClfdkVYtu+spzcZ4NZ70eIVq+f6Gxoj7pBqyMH1kcU9+zcUNhbucn13u7ySvZst4Vb1tIS1jSBzTyYULafmDUp+I7lEM1BCI+LHwT4ElM8kaw49Gz9Ccnml81E2R73Ve9zBN8c0ZhBXz7w04bnNLQSZHA6XRtU0ndQ70+0530NuvUzBbxkkNfAuGFD/xjaFJ5onXSSnT1Wn8UniU8A9DKlLa22vYlFkxl2neddL31XgCRDHyK264onBW+DKlaiI1G7YYjVWu7KjJDlkzTQTgBTfzQ+8bJ6tSk5NNjixo+b75SWYB/K+ZBln7gxfoG1ku8fEUgd3v6E+KMTOdkkua4KMf8pr4tJjfjqLgDuUuQOHONQE0ZuY3oTD0eJpFGtQtX+AeEa6qwogCEi95DaUPXAroHBFA0QI2AblDy6UsQy+ovFL1wHHB2bvRPSSK+9W0hkmNgeq1iz6hDfO2HvfrdjtBThboT0B48gYEvvTt74LtG76agTu5xKxZT4sAhXd2pAVBj3872JCdGivhzu/bETaOdnmHggColnH1YTJeW1iXH32iOvLFgAWls0d/Yunt2Zm4Y+TeDZDvUrh+Sz5ERDMHZ6dHjEW134+Y93Fu9cGuEeIXL+TSmi1jqaoAW9bQ55fVlBfRzjL6MEfePCfc+ZH9wkZUU4RmDQzH1K1J364vaxJjKS6ao+oE7o6mwQegWzYPhJeRShFm6CxbsydWskXIYWQv2P5QM54cnKBHxv3CaWSOBgAR4EUYx0sK/bpQX3VjMIaXI8ccDZzuyDQnY1vvbfh6v123lFT95xBUROIhwndMqU5RCJXKVTl/qhDntcWlcZUj3zEunaGu98TFMslNLHsVVmSUNiv7Q0XYq3zZGXl1eSug+qz6Xce7HsR3JqS07BWgrItuVSB3XerF+7usD9UIZ0+8411FS0DIvFSqLMviLOtDzmNbCc9m3trUVs1uc92Y8rU+BJ7ZZWvCb1v6qsbitjY4KBXnVq7OzG2TvOjG/OT0hpbDvxHzt5odMvnalG0db8knuyuE5nPpuzIAUJkPGRJIOMqTc5PAgOvhupwCwWmXenOD2wtJPq8KlB+b2Q0VSt1jL6x97MPaxzHJP96XyaKeWdR9dV1vDpOLuc+BctxeyGK1fAp0OtZkqM2En8U86HwWs7rpstxKcuN/pnnDNP/PmCuhCuvq87KNceGTUUyXMc3uEwDqB5BeJsC3NVUNI/F1hcqPClDVhfuoMvsGvPlLbhk4yYnMUfGotubCgJCPTPN9TDqHuTsHlven7GFSO9vIhrv3VQag1QKKkrvQIL3MQPShiDsDc5T8vXOYe12g6mxnqs6+maqzzVSdlaiSIHjWaRwal1bnFfgpTcTINf/84+8r5QjUFA2lCOoLgmRpoc+vGlO5R19Fy07WDNCoWO+t1JZGJyXexRS2OoR1X9a9Ojj4QR9d/r8AAAD//2OpGGpAhQAA + H4sIAAAAAAAC/+y9eXfbOLIo/r8+BYatX2L3NCXZcTyJu5U+tEQ7HGsbkkonN+4fD01CMtoUqQCgl0n03d/Bwp3anO775t1zPWc6NlkoFAqFQqEW8Ie/tW9Q2L5xyW1jNO7rjjHq6x+7zYPbiNDQXUDwDVAXBUD1wPGhABlpQz0HcdhoeFE4Q/MYQ81foHBKID44/NoAAADv1p1DoOpAPQKqwf+7AB2gDsFb9gOU5letPzRGU0s3V0q+SVB+t0r6mWB071LYC2JCIX4fEUoODoHob3HnIwzUJWhD6rXJE6Fw4ct/2xh6UeihAKpLgUJlYyAtAvE98mDLb3McNIq922ciOOqosy9+2GKUCmQQ/gmowDvQ9uF9O4yDAPzyiz6+aHy2BOTvDT28RzgKFzCkXeVqeq472sRwLN38oJtysr6WnqyUBsMBgKDGo4EeujcB1ELfoi6mYA154Ns3AB8RBU3dNB3rk2Xrw549cCxbM23nQjMGjVUmDTZ2Q7J0MQzp+3gOJ+4cphOl2z3W/sJyeuPRRVdJeDQjfMBCFNAMfP7M5MB+P3H0kXY+0PsrBfytCxQF/P77z4DewpBDsh/o3UZV4HeAoW3fQRzCoL1YtGlGlXMbz+HSncM25MP3S7h2a9StdPkONL8WB7jimGeoOqy+fmFql7uNKoXdbVA+nGF3vt+YRJtuub8NI1rl1r8lhHxKYD9auCjMFuZIt38bm1e8qXHpXBgDPZt0vjBCSB8ifOfL+U845T7cgZft///6c/99b3J/cv17++sscOfdo59BCB/pCrB38llnBdi/4MUL0P4hI6IbRu2XQGnW0KCUuE2gD1RU6vAn3gUgZZy5v54gab8EdT0kbEpnnk2mMflw6vSnGl85vauc7HS7QKE4hgooC0KFF6d/MS9q+XH6p/AjtxgS1qSaCGBIuA6SgqEmgrEODpMnEkTzoiA+uMsLFGT6hjy4S4egf0Pn7qbbPICPSwyaX63ftAmnyrGM/9Kd4fkKXP8IjjqdzmHWKog8l6Io7CpCK+XWsDoQetlH5K7t/jvGsI0hiWLsQXXpYnpUXc/Je4e1cZYuve02D2Yo9BchBWqIgRoB6uI5pEC1QPMAQ9cPUHgH1NmWvg4P00447hmGcrT+DDS/VjtegW98go988E3I1tclRiEFzZPVy8O84H3+DJpf80hXQJ1T0PyaZ+uqOthM7fyGggDEBKbj5zSCWYQ5k8EMBVApil6B97X0txkMa5npuIDAmt6NkMSzGfIQDKnomCxdD4IoLNFDI+Bh6FKYUXUGMPwSQ1IdLuNFmS8/AZdSuFhSFM4ZtpkbBODG9TjqscV7abVayrplIOXq30xLFDiwqtkbIuL4kBkB3S1yEkV0k3CoE9D+vyELkh+7S8GfMeGsU8400PyaMnD1/TNfpDtnJTEd0zN1zWbWtTW9uDB6hj6ynb5hXTnWROut1YliLFZCD3hgjLuBgLj30Ac0OgMVIWkIHUPxk7fwHTRzZi4KYgzB8Ql4DY5fc4Fk0NzELo3rqoKvZPDlhsKNPWGvLyIfnHY6lcZbaVnccV4/o9NNWBmyKPyLsKoquY0ewDcwx/BZlCf2XKlhGIVS8sgD6IAOt7m4fTQj1L0pbG469XI2/05nH25UbT3gJFBLHD0+ZWcYMcOd05OTHRsVyRGN3CVl/5fQZTqKb9tvX3Nstb2vAc0x9/PQDd05xL9nTNxpnIl19t62J87EHH/85EzNgZXZ5rWmeQbdrWuaUACzGSshuKV06XBSnolA877ECMOzM4bp7IyjAtc1A7lWfs7wbWB5hroPZ24c0PwR83rziK+VPbm+pbON3Nm7s9wJLJlpa7+ptgojt54z2aQwHuu7ppuU59v6iyZ8w7j/iinfwKPvnfTRePcZT2C71WbbJyqM0kHs37iWM2vJ+bOnYC3pz2F+cTtQ6txhd/ENDCDN3F9K6j3bDb591FGZ3GS9KyWn2Ut9fPGy3m3GTordynzo44vCtssEccLQ97R0z0UzgMjQxSiEeIw1Zm0PUBg/AqU5tsoHag9i6viQ0K7Sjgluk1sXw/byDrU9V6U4JlQVZ5G2G3q3ESaZSRkvfZdCx1v4XUX8riZtBFDBDi53xMyMQHbnuSp7jWaIGYFbu6jCytWUU8W2ObVsve/0NHaylvZN7fuVAr6BRxfPyWHBGFoPfOMSeHoCVB+8Y4DpyFZCznpay8NUKdpd00mfmVw9zenppm3xnprZ8DYD52e8FxMaLXpuL2NCjbUVLWmb0UUEeyIMEEAhaB4Q+AV0QPPgoPm1N7Xs8ZD1wsfn9MbTkb0CKjg6PDz8GfhRdjqDXuBiCO5dHLoL2M1aMvqc5le0AhXn4N8kdIVlGXHtTuGHPWO4GPs4Oj8K4RoHS8I6hiZZcds5XsXjRSF12Urxi1xOH08DtECpN783HtmaMdLNvjMdGEPDdvrmeOIYI+GxmWj2+26tcsj6yekHAqkTC/yph1kYoErz6w5d8aNVYot2Ovu04lpsR/AaT3+6pioILDbdFIOX7H/X4ctDrrPybn3gu3ARhSqGQeT6jT1m5epNTVRFsJspXxxCCokQrZxbTJsYMswwmZ4PjJ5zpX/Kz1S5adtdIjZHEPN1nDsWKDxoUY8sjRSlJ4OdoKOHEOAoomfsP9uaiOH819TUnX9a49GaQXD/SusPEoVl2ostSxQL+VkHU6WzAihWGKTg74+ZbaOGDPhqeq4PdNvpDbiXgQmNPrJX6yycDQ1KqqR2/rwAwZC27uBTxdSqJ4cpsf1pKrbag7BEvVUJYzNv9HRnYhqjnjHRBmIZbqdta8PN5JFliz7SGj9PvTwW8Kk+9CIfir1wm8Bbk3yYpUKBBKoMRrLc0numbneV5oHnMiGU2JTD3drVsakA0W5fX7evr6+vV38aPoXhU6TbaZGjWawrl4JffgH6+EKyr7KohLJTvCCKfeWMB90085JL4XjaXyk/ifcUhm5IjQREH2kj2zGy9yS+IR5GS4qiMIGypudWzzQmtjEe5WFd1+9xQU0B142yrpEFPQzploaCPWnjxN99iaN4KZqaujWemj3duTTH00kKmTinBNBg3NMY9enr+4X9tITi5YehY3+a6HkWhJCO3AVMhz/K0UCgF2NEnzgNGVQSLbL03tQ07E8leu4LKD8Ypj3VBo5sVIAyq2MsgTtrxoyjmELbvQlg1pM5ntq6Y2vng2yAS4wWLn7S7l0UuDcoQPTJylM3MY2hZn5ytA+aMdDOjQEbjpVjgURgeW4Aa1taPW2gF5pwuZzg6B75EJ+73l00mw0jX7bjMjoxxx+Mvm4651rvanxx4QzHfX0jAuUMrGm72tDKhBQjSNY3dkzdNg3d2oREf1xGIQzpBiz6x8l4xJTqBjT9GCdiug5Nf2oK2d2A5p+IUog3IPmnYdu6WYvCdCkcMNOyprmp2To31ja3/NfE2tTY+dfE2ozgPPbu4EYCnPNp70rfTsdvGFG4jRjnN9Ow9V1I2o5O0FXEGBMovLi+4cOQIvqkP1IYkmSip5buDLWRdqn3HaOvj2y2wPSPtj6ychMdE4g1QtA8zPAYfbFgppZuOpplGZejPI6cno0JNEJC3dCDQ0hd36Vu2rcxsmxt1NOdoW5rfc3WVqnWdP1zN2CNsHUXJ8pT6zvn2oC1MB3rapr24SPCtM04pjdRHPrWSLN5H8UWfcNi6scZT+3z8XTUdxhc0iN89ILYh0OXUIgvcLSwqBv6LvYH5xyV/rE3mPYZuyxbN50Lczx0GPF9zew7g/NVqpHE9H1w4yCnj66G3Pkm5uyDNh3YMoNINlu4j2gRLwa5YZtxAHtRLFf2UPtoDKdDh40oHZA55RbTNFvaSfdX8Cnp/O4NUapvP0AspUBRGiuZxySMYfWxmF+zSSeCLlDuj2uCqjLlQWlv0lltXwHrzwK74RIaZwdMlewRy0m8AsIw2ZA1kjsj8APNVbHtprNNav7oow+GOR4NmSLOnXWK5521iHOB0dLxZ7cm1dPQpnYVa11C6qMPHK7OqbQTITn5Ks9HeljJslx2yugpzU0JTXlmfOGnTVyf4qC+bjrW4Vo7GTs1qEzFDq0qJ7ock9YdmXbDnJuRGvZJ30p3d/exFy3E4paszfIQN7FW9rMrY6vg0ju0Dm6/1M8yhy8G2qXVVVUxJLBVkBJtWsrr642M1BlUFyQ/Ou7IiH7kL3F0A8ENdkJIZyigEBd9hcMxU8nn5ZA4O5TnGynJ0XkR+XEAico21pbfzsPkQtQ5So0JN+BJeQTJ87zzXuwTyaFgMphecp53gcJ1cM32sLgHzd7IcM6NkdM3TCY4Ql2zrgJEqHidTKNhtkuCwTMlSiAVJKWEmzyN44HR+yT1iucGyIuUumSbJHOP/KAs+CFBucHIn0Ml/TuX/6n8MH+5B1Ew2EwW98evexlGIecrePGihCPZmLnCzGj77x6ddBWxnza5QWEb3lAuOEClIHQpUNUUXqwTacTJ7Fd2+gzuoZ/KWUCAGlAsxBnztznJdWn9i+n5dGRPHVMf6Jqld5sHAblxMAygSyBQMVBlDCWdimIDycijN63OSTIftRDHna0Qx1shTjjEmuRlI5xHGIXzNKMTSw6BLzHETyAJKdzEFMSEASJKQI4fpbwwgdW+RQQgwjoEBC2WASQUuMsljlzvFtAIPET4zsXMqgZph4iQGBLwgOhtFFPAVH4AKQyeQBwiZusHAUA06+ozT6fDcZjuIBJVfroAl2US+xEIQqCSHVrUzvhWWdkoL0IUYUgKIRUphImpYusDfTI27a32icBjwwAuI0z9hlwWm6O4dYEXBTQ2xHFrQzXwEXoOD07UBnJLW+Aj9HjNwiQitCsWLFomC3YCLsbmb5rZB1qvp0/sJECS8EMzbeNC69mOZZu6NjRGl1s5E0Rz4tDIgfcwpAQo2pXV6ll6q8x5+UDDFM1cj1oUQ3eBwrkC1rwobpM1lPEz52DQSCzQYsJXLo6TUwqXk6kzSg48bDAFzUvu0NIJ75GPXMfH6B5iR66C4vALksFX3yUMIXZ5lmsYherlZJoLJMntmMdC2Zsw8iHwY8hW5YchoO5cxoxSIz2LbEkVPRo7jPSNTvWsw7Y0Ymi0CIps5FbQb5rde+/YxlAfT+1GLlheGUtlDGmu7npS/xoaxRQXFo5Hg5bffvtWnUXYg6rY8dgfDy721y0V0AghbaHl/UkLLR0JDLrgKHvOEzfcIGjJt4wROYDTjQCCCvmPGs5Uzw0CNV2BDEwYlRvtRjE6oKpCL1TqjHr2gG05Y61fiGEioroeRfcQqOqXGEEK/Mi7g5hJ+EEK5sj9GRx3wKsO71SC1ZQz9Z3+uHelm45ljyfcRj3cUCeVk5ddSqOkeh5F/Xg5Dic4WiDixeecd1mpwpq+RFs1jFQ/Xu7TXarFt3ZBE8h90FcUmewmmyZRKAVcD6sLhHGEE2VfgBLh6HogtrfyXAbXw20aRQFpR/cQB+7Tjd+WKqtFbreCijWoxgRi1Z3DkLbILeB24NamYhA8yUh1Y3q7e3esDz96CPkJRvJi5godtGt7z/Vu2ebCD6bsdwv9G16eg1fHeyCBj2xyIZZ4JClMxz8fCfsDvH1z+optSMnpTxSwOF6EocN43QDAi3EA1I9gMrXBS56QdBsRevbm9T/eSOS/hqTryMPpC0Gbw7P4H7t8hjzcQtELwqWMKbKFS7spgS+BOq6TOT6gbBjpbyr1FnGtGNY3JKG7JLcR99hlSHJPN4h0sdONADmEa9YG20sXUZgtvz5XZenSTrSXDAfqH/VesmqNgd6tM8KEMlxvgHG8bBrZ8VV1LxPtma/Pzfc9HE9HtnA9pEp19869ALrYWURxSJ0ljpbunId3nFngzklGj+yLO4Yy5AJbW2S95DyoxaSsI7YHdIp5VyIzgIBmGTGoK2T54wt42XoJfqkBf/EC3GDo3tWdJ3knTQRURsRxp1OLe4thsKbuhQQQLsFRudeatK7qppnbxbZtnJs3PG4TJeZRYQNdv+fUbcXpFpzuNjl552WIW7cy/9Zb3p/usI/t7tNCy1NHmjUbPFqrRmMO6UTEd0fIMyaZI4CpPTFTNlrA7lHu6cJ9lFHV7lEn9xx1C38tu4p0cj/cogDyaizEjoygmWHgBntetpfd5oFQwMQaAPU9UJKA1hkQJj5Puj5rt49O37aOX5+05L/thYQTm2zowaROt41CCvHM9eCv7hKp9yIq0z3uHB+pnWO1c8TM4T++ABWDl63Pnd8TE1TzfQwJYU9kabmRPKvUmfFEHbRUmFQ2f+WrplNfWLZ2xYll0Ux5nvXQbR4coL8nVZPpOpF2PloqYib50QBaMJhZPIx4Jbym/PwZzusyQxM/bJKcYxofNFvfmgkn3bEyG+4OPil12Hgm1O5oeFIdxxMtYUhIAOYwxMQFahRT0NxCKjjunLwptMbwC1BD+ADUx9edt0D13ScC/vGq0wHqHXzajrC223RMQCXxzR9AafdGPPFcXjaxUoDq+j58pDyz5A/oUU2EKLv9kXVWgCzmMBbmquD3ZUc5cdJ38tSwYzYjx7gweoxwc2zLrBdeJlAfx5GF9aIz4c1iR8lMNACOKN/EACJA6lT/JzDPzp0EBjNVxKlrETwgeptMQuad2kM6c/XHNMYh6BQiWbuwwBlo5/qgq2QS10ocqGlARZW0q57b9cT9HMp/8JoQpixQZ4DcRnHgJ/udIxs4cjhObiqcZC6FFSID87swkBfpVvYZJ4yYqUUJOOoww6QDblxyC1Tv8TlEZS5hrjBDCDprxJV1z4tIgQ8pxAsUQtZuJykWhIEbmAozuHniXp5lFAU5/07RnBmMx1fTibMPzxxbu6yNue6DZGMQ9nmLt2a8JYz8BhWuhhi+BD83YoEbpi4yl4AQQh/6SiWQKWJ3udAgf9BWVU4QVIU4Fyo0umyMmyH4wTMXfvzeIHZNILsmGpsP92ZFIhuAis40bkm8RDPQEkOyB9Z5FFFCsbtktHHHJiOrHkCctrnNDFoAhv7LFPthZSC5kHIidNms/req7IpELaJ74XD1IQjcGxgUt9LNmlvJbQGL6D7ZHEeRDwf74qqWHO23jOTNOcraIaoqDQgXXJVXvrMVI54l9xHdwSfxaoajRXF9rRnpReDOgVLC3F1rjOyApUxLd5v98//ksvNhcNCiAWGieYECePiy9EJeyHUFn9LXz1pcru8/X7wZR8ua1PX975byfFhNIqtY+n39gifG5fwQxRyLmvp8CZHuagQu7iHuRYuliyEQgmGOdFu3nA+6aRnj0ZmqdFqdVkdZAeWodfy21SkXGG4OTV2lSS80xxVjwiRaAXVPa4oUiptTaW/i2So5oc7zZaXUYDH1S4MnJVq993p/OmBy3xUC/243TMUUg25NzsG7/UgyhtqlnhsY/3t/NPxIwqUoz6Xc011Q5qpVRLVCLhOPw8masXqbZn2T7hZ8WwmTB+z6TKca+HS1OD1tTVGKrNpxszqwLNbcPPARr29MuknQrJJylHyWGS9DNNdmlWVt14whB1B3XOTVCbpjDyznfDy2LdvUJhNjdFlU1+Dbt0KrLeClCUxYyVrtn8hGA3KTGD+lLLYNPC31l7K2NvmtALgl860etpT2VgDaP+etwN40641xJ8l8u3dxO0A3CcfauXeqmrJrY5M6qELK3PPFpTT/mtZPK1S6yqnvwpPj2Rv15NXpG/Xk9B9v1Lcns5n66u1pBx6/ga9OX3VKlgVXGjKntY4Ch/UgjRRtMnGMfr2JUSBkP4R13jjZMmvF5i9/JeBOPN8mzdt6qRft7a0qci4KT/doKIV+e4uaFeAukUx9PwP3R407FPpnQAThGtLXQs4aKmBcOBPuYvm4AYD87ayRXA8grXIeyYwwok9nYJNGlin27Gh1BsS9I+129VrRs5OTV42YFChJXEPpTDZEMOlMumCgd5YZbLkxygJORiAMKRK1aK27N6SFovZ9FujwosXCZbwQsUt+4VleA7I/cgtcoM16xHOS9a+CPJXJM1UN4SNVlziiUde9I2oBYwHQdUV2W4w9yHbZ3PJZZSs0pBCLEMww8uEZGMF7PkviR9Y6yPttjXAWCSd9w4tCCh8p5638XU6onN3yrEtG106BmJwcXwTChhdjDEOa/F0Hkmg8kQb67E3uL9YCey7//df9Hgv+f1c64/QdDEXJbGHjsMdXOjMM/vOkO+fe2Cqhu8vlTtK4qwxulbz/yfKWqvJMyMSjvMfzbLf7AWTDO/h0tv2mg2eLakpxlZVrJbQOKGdzFo5X/Ew9HdnGUE+8O6LsXEpttkOmcXySnSFuGzWG+Xp0tbKUv1D+B/6/LBnXSJNxVR8cnb5pnb5qHR2/bR2dslVCvSVQVZ9HZN50gPoHYOeBZzV/dfz6+DTFIFN+2caaxeS7zYPdvCWlWL4CSg+Ej0sfWcyiM4Z9i234tmn0uB9p/8ObzPJDC58wS4Ji5HHDJzvHrdErW0hI9UyqY7Y2qDkf79ZGitBW4N3PeUlV/MjoOWzyvubncqUUgaU1Uu63m9op5TdlBMbI0k27SjivWrXHzlAbXQ7klQDd5td9wOXN+7nKjWbBhcbspR8VtHDnUPUw5DXLbqAm9a+ykEv5kadE7NXyBoWqj7Dy47oyjV4SNgdZ88QYxTyF6iait2AbbdxXv5WMJBKGISBL6KEZgj5AYTH4pezp2RQE9NJek4JbBax7s2cHMtO0roe1r+pvOS9lKyXxi0JeUeqprkm6tWSi4JTfzbU1GyrJK1TFXV4tihaV9OeRNrHej+3kMq+6XodoPnExRUwjJZ/42PjJjQWa88vJeYvdP7SxrtlRR+WvcDRDAdz+lY098Oyuiy4n06z8f2KO+dYqKi3Kj1eZe2jdzBRIzM0vT4hP51WmwBdM0FJVwFtV/KG6d7k0yXUukgq+6v5QB1Nz79ZasPS+pBRgXbHvWhQbL2QulgzkojRvSC8KKY6CSeCGMJ/20zR1dvAw9X9NDVPvJ07a0Ti9WYHXftafV0XmTN7u2pg2yLVzzx6A43eZYEk7TkXhLCot9jcWs7VGxugyTfZcNRriTnKmf4ZuiGaQ0D7ChQDUUBsZF7pl9w2zW7ZcF7INKcpCs9SOdfSAkehHbAOFLsTE8A5uowVsN9O833aL9VYCFAui0LCdOxsVyUhBcsLXLOLKXYuW9XyW/VqHaEfwHHom0//odOqRpYW7NU1zYVgh8g1VVcuHqvw5avuRSRWpmddKU16pKAOU10rhuJSjRh6W0qPFtdJM7vv4V390vcvxutIkO7cUX6muv0AhB1jXWfkQU4EoHDJL57q1vW0652UsyzGlyrrsnFfb4Er/dK00mGG6bqbVxyzFULrotJhGxHMDiDXfZxujXDq9wZSPQpvaY36dk+lo/X4hXz1/6Qdry46ZQkO4KVLVh8sgemKbT+vJXQSN/M0i5NsvYkhG/903GeFvbrhELIvNf5sroLmRxPqOLOjt0JO4dex7eiPxTWFMxRvUvgezvMAthzy9xO170OJ5hrB4vdheWFPp0npGLwpD6NGoJFhaj5eyj/SePTadnqnzy4u0gdVtHvCvdsyA8vVakYLhXytMzP8/cq38BJKn4uq44pvkYrvi0+J1dsV3wondR5gT+aSH/jJCIZ3iQMAl/pwgmqOwtUAejkg0o1EYoJAnjl4rP12nV9LJa/vXYlnw93wdZJmntYRcYnd5m9wClxCdoJmzl60HFPrRA2mFkEoc5EswTHvYhQgvwjCP5+zNyckriWzuBgHcwBH5vjKQxXdR0L5WVgpQNimAja/FqmUg6Yrg8MW1l7fgHkDnsFGbIn4HnwAm7tlJ5+2pzBkPIx+SQur4q9PXInU8iukav5vrIbaPiHXAQFtLuBCJ5Ls0YM9EiyS3vDu12pbd7WntQfceYRq7QeLFHVceTMtPeqPSE6VmSV7pn7rNA8mjvYb1IL88VVriumnvhzAb9kMyQUWU23eiIsJtmxCGPnn3rblWNXHNt46EqioduQv47ltJj+6Fg3GgSpBu2nthuYNPFSRX+qfNODIVzlb3JAqQ91TS4Dz9RuQo7TIVDI+65Ii2zQRO1d67b+288ibt8kJuFy4DJe1adtdTmo3xcjLt86sDyhfrNMfcJ9WUN4aMLe7Jr7lRp3CT+leX+zvJT/NlvKpeg5PWlyWO6eQmnLQuTamvEPIoBmoIRPxY+KfAkh3JmqMPRt/QnL5pfNBNke91VvcwzUXPHQgrx7/X4KjDTwoyix8ozZ5tOqlzYDBwesP+fp2C+TJOLidpw5DiJ74xtMht4nVSynR1m78WHiX8w5CKSpbOGjZlp5iLtEAg6ftyMgXiloif+MEVhfPCp8yqGf9s2GI0VrnkriY7ZM00EYAX/Jgfes+crEqxZDY5stLw++YnmQXwP2YaZFEmXqBnslzi4ykCu38hI6mSz3RKLmmCj37ELytJb1mxoyi4Q7mbqbhzTQBN2PGbUBh6PM0iDeqWP58QEa6qwogCEi95cbsPXAroLSKAogVsAXKHlkt5P0hB5ZXKXI4Kzt6N7iFx64qaFpeqMVC9TtEntGHe1uN+1ekkyMkC/QkIj1+DwJe+/V2wPePDKNzJJWbNeloEKLyzIy0I+vzbfCNmNVbCnd+3I2wc7fIOBQFQLePy/XSytuI5P/pEdeSrtAtKZ4/+xNLbszORpX7vBsh3KVy/JR8gopnD05NDxqLar5PmfZxbfbBrhPjFi6RcZhlLVQXYsoY+v0WsvIh2ltGHW+Td5oQ7P7Jf2YhqqoOtoeGYujUd2PX1d2IsxUVzWJ3A3dE0+QB0y+aB8DJSKcIMnWVr9tRKtgg5jOwF2x9qxpODE/TIuF84i8zxECACvAjjeEmhXxfqq24Mxuhi7JjjodMbm+Z0Yuv9DR/X3HVLSdV/pUQoJxIPEb5jSnWGQqhUii3+VCHOa4sL4zJHvmNcOCNd74t6m+SKrL0KKzJKW5X9oSLsVb7sjLy6vBVQfVb90viuhvjOhJSWvQKUddGtCuSuS714saL1vhrh7It3vKtoCQi5Ld0hIStELet9zmNbCc9m3tr0rJrdd70x5Wt9CDw7l60Jv23pqxqL29qgUbo1oXKncW6b5EU35ienP7Ic/j3ajzU7ZPLRom0db8knuyuE5nPpuzIAUJkPGRJIOMqTc5PAgOvhupwCwWmXercGPy8k+bwqUH5sZVcHKXWPvbD2sQ9rH8ck/3hfJouLJkTdV8/1bmHy6YIzoBx1FuJ9IQU6HWsy1FbCz2IedD6LWd10nXglufF/p3nDNP9nzJVQhXX1ednGuPDJOKbLmGYXvQD1PUhveeHbmqqGkfhYqPKjAlR14T6q7HwDXv8l178c50TmsGiqrbnJJeQj03wfk+5B7jKY5f0Je5hUsDaz4e59xwxot4Gi5G6aSW+ZEX0o4jLXHCV/7x7kXheoOt2ZqtNnU3W6marTElUSBM+7zQPjwur+BH5OEzFyzT//+PtKOQQ1RUMpgvqCIFlaKCp1Ve7RV9GymzUDNFpXjV13uUExha0OYd2n8leNxg/6+OL/BAAA//8IyfRvvogAAA== - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOff/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOff/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOff/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOff/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOff/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOff/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOff/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOff/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOff/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOff/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOff/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOff/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOn/CustomData b/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOn/CustomData index 03e9718c450..b0176ad3797 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOn/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOn/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOn/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOn/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOn/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOn/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOn/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOn/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOn/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOn/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOn/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOn/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOn/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+SSHStatusOn/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBoostrapping/CustomData b/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBoostrapping/CustomData index 8fea8775c60..343eaeb24b5 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBoostrapping/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBoostrapping/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/+x9+3fbNtLo7/4rsKxuYndDSXYcb+JW6aEl2uFaryWptPniXh6ahCTUFKkAoB/r6H+/Bw++qVfS3u8731n3NLbIwWAwGAwwL+iHv7VuUdi6dcn8YDjq6Y4x7Om/dRqH84jQ0F1A8BVQFwVA9cDJkQAZagM9B3F0cOBF4RTNYgw1f4HCCYH48Oj5AAAAvLk7g0DVgXoMVIP/uwBtoA7AO/YDlMaz1hsYw4mlmysl3yQov1sl/Ywxuncp7AYxoRB/iAglh0dA9Le48xEG6hK0IPVa5IlQuPDl7xaGXhR6KIDqUqBQ2RhIk0B8jzzY9FscB41ib/6NCI7b6vSLHzYZpQIZhH8CKvAetHx43wrjIAA//6yPLg8+WwLy9wM9vEc4ChcwpB3lenKhO9rYcCzd/KibcrKeS09WygHDAYCgxqOBHrq3AdRC36IupmANeeDrVwAfEQUN3TQd65Nl64Ou3XcsWzNt51Iz+gerTBps7IZk6WIY0g/xDI7dGUwnSre7rP2l5XRHw8uOkvBoSviAhSigKfj8mcmB/WHs6EPtoq/3Vgr4WwcoCvj9958AncOQQ7If6M2jKvB7wNC27iAOYdBaLFo0o8qZxzO4dGewBfnw/RKu3Rp1Kl2+B43n4gBXHPMUVYfV0y9N7Wq3UaWwuw3Kh1PszvYbk2jTKfe3YUSr3Pq3hJBPCOxFCxeF2cIc6vavI/OaNzWunEujr2eTzhdGCOlDhO98Of8Jp9yHO/Cy9X9vPvc+dMf3pze/t56ngTvrHP8EQvhIV4C9k8/aK8B+gxcvQOuHjIhOGLVeAqVRQ4NS4jaBPlBRqcNXvAtAyjhzn54gab0EdT0kbEpnnk2mMf545vQmGl853euc7HQ6QKE4hgooC0KFF2d/MS9q+XH2p/AjtxgS1qSaCGBIuA6SgqEmgrEODpMnEkSzoiA+uMtLFGT6hjy4S4egf0Pn7rbTOISPSwwaz9av2phT5VjGf+nO4GIFbn4Ex+12+yhrFUSeS1EUdhShlXJrWO0Lvewjctdy/x1j2MKQRDH2oLp0MT2urufkvcPaOEuXzjuNwykK/UVIgRpioEaAungGKVAt0DjE0PUDFN4Bdbqlr6OjtBOOe4qhHK0/BY3nascr8JVP8LEPvgrZel5iFFLQOF29PMoL3ufPoPGcR7oC6oyCxnOeravqYDO18ysKAhATmI6f0wimEeZMBlMUQKUoegXe19LfYjCsZabjAgJrejdCEk+nyEMwpKJjsnQ9CKKwRA+NgIehS2FG1TnA8EsMSXW4jBdlvrwCLqVwsaQonDFsUzcIwK3rcdQji/fSbDaVdctAytW/mZYocGBVszdExPEhOwR0tshJFNFNwqGOQeu/QxYkP3aXgj9jwlmnnGmg8ZwycPX9M1+kO3dKYjqma+qazU7X1uTy0uga+tB2eoZ17VhjrbtWJ4qxWAk94IEx7hYC4t5DH9DoHFSE5EDoGIqfvIXvoKkzdVEQYwhOTsEbcPKGCySD5kfs0riuK/hKB77cUPhhT5zXF5EPztrtSuOttCzuOK+/odNNWBmyKPyLsKoqmUcP4CuYYfhNlCfnuVLDMAql5JEH0AZtfubi56Mpoe5tYXPTqZc78+9k+/BD1VYDJ4Fa4ujxKbNhxAy3z05Pd2xUJEc0cpeU/S+hy3QU37beveHYantfA5pj7ueBG7oziH/PmLjTOJPT2QfbHjtjc/TbJ2di9q3sbF57NM+gO3VNEwpgNmMlBHNKlw4n5RsRaN6XGGF4fs4wnZ9zVOCmZiA3yk8Zvg0sz1D34NSNA5o3MW82j/hG2ZPrWzrbyJ29O8tZYMlMW/tNtVUYufUtk00K47G+a7pJeb6tv2jCN4z7r5jyDTz63kkfjnaf8QS2U222faLCKB3E/o1rObOWnD97CtaS/i3ML24HSp077C6+hQGkmftLSb1nu8G3jtsqk5usd6XkNHupjy5f1rvNmKXYqcyHProsbLtMEMcMfVdL91w0BYgMXIxCiEdYY6ftPgrjR6A0RlbZoPYgpo4PCe0orZjgFpm7GLaWd6jluSrFMaGqsEVabujNI0yyI2W89F0KHW/hdxTxt5q0EUCFc3C5I3bMCGR3nquy12iK2CFwaxdVWLmacqrYNieWrfecrsYsa3m+qX2/UsBX8OjiGTkqHIbWA9+6BJ6dAtUH7xlgOrKVkLOu1vQwVYrnrsm4x45cXc3p6qZt8Z4a2fA2A+dnvBsTGi26bjdjQs1pK1rSFqOLCPZEGCCAQtA4JPALaIPG4WHjuTux7NGA9cLH53RHk6G9Aio4Pjo6+gn4UWadQS9wMQT3Lg7dBexkLRl9TuMZrUDFOfg3CV1hWUZcq134Yc8YLsY+js6PQrjGwZKwjqFJVtx2jlfxeFFIXbZS/CKX08eTAC1Q6s3vjoa2Zgx1s+dM+sbAsJ2eORo7xlB4bMaa/aFTqxyyfnL6gUDqxAJ/6mEWB1Cl8bxDV9y0Ss6i7fY+rbgW2xG8xtOfrqkKAotNN8XgJfvvJnx5xHVW3q0PfBcuolDFMIhc/2CPWbkWGpapS4jZAkgl/3pyofd1O4knjE3jI5v8a/1Tfk6YhsYhpJBI+ZMqm3CEzTv4pNRh40K+Oxq2+MX+Ei1hSEgAZjDExAVqFFPQ2EIqOGmfvi20xvALUEP4ANTHN+13QPXdJwL+8brdBuodfNqOsLbbdExAJfHtH0BpdYd8Y5XBtJUCVNf34SMFCgOAHtUCOmSrvze0zguQxTl6WxP5qudbznWpjY2E/MlF3+hunTl3ifLszkw3hQeW6pGl0bzUetsJOnoIAY4ies7+2dZEDOe/Jqbu/NMaDdcMgvvAmn+QKCzTXmxZolis8XUwVTorgEILQgr+/pidP9WQAScC0u1zTxBb2PrQXq07hW5oUFL3tfPnBQiGlC25ynG4nhwmr/vTVGy1B2HJFlQljM280dXZOht2jbHWF6pyO21bG24mjyyb9JHW+OLq5bGAT/WhF/lQnFe2Cbw1zofCKhRIoMpgJMstvWvqdkdpHHouE0KJTTnarV0dmwoQrdbNTevm5uZm9afhUxg+RboGFzmaxbpyKfj5Z6CPLiX7KotKKDvFC6LYV855YFQzr7gUjia9lfJKvKcwdENqJCD6UBvajpG9J/Et8TBaUhSFCZQ1ubC6pjG2jdEwD+u6fpcLagq4bpR1jSzoYUi3NBTsSRsnMYkrHMVL0dTUrdHE7OrOlTmajFPIxIEogPqjrsaoT1/fL+ynJRQvPw4c+9NYz7MghHyXSYc/zNFAoBdjRJ84DRlUEtGz9O7ENOxPJXruCyg/GqY90fqObFSAMqtjLIE7a8aMo5hC270NYNaTOZrYumNrF/1sgEuMFi5+0u5dFLi3KED0ycpTNzaNgWZ+crSPmtHXLow+G46VY4FEYHluAGtbWl2trxeacLkc4+ge+RBfuN5dNJ0OIl+24zI6NkcfjZ5uOhda93p0eekMRj19IwLlHKxpu9rQyoQUI0jWN3ZM3TYN3dqERH9cRiEM6QYs+m/j0ZAp1Q1oejFOxHQdmt7EFLK7Ac0/EaUQb0DyT8O2dbMWhelS2GfH/5rmpmbr/EC9ueW/xtamxs6/xtZmBBexdwc3EuBcTLrX+nY6fsWIwm3EOL+ahq3vQtJ2dIKuIsaYQOFp9w0fhhTRJ/2RwpAkEz2xdGegDbUrvecYPX1oswWm/2brQys30TGBWCMEzcIMj9ETC2Zi6aajWZZxNczjyOnZmEAjJNQNPTiA1PVd6qZ9G0PL1oZd3RnottbTbG2Vak3Xv3AD1ghbd3GiPLWec6H1WQvTsa4naR8+IkzbjGJ6G8Whbw01m/dRbNEzLKZ+nNHEvhhNhj2HwSU9wkcviH04cAmF+BJHC4u6oe9iv3/BUem/dfuTHmOXZeumc2mOBg4jvqeZPad/sUo1kpi+j24c5PTR9YA7SMWcfdQmfVtaC7LZwn1Ei3jRzw3bjAPYjWK5sgfab8ZgMnDYiNIBmRN+YppkSzvp/ho+JZ3fvSVK9e1HiKUUKMxiEblm4jCsPhZzoDbpRNAByv1JTeBbpqUorU06q+UrYL0tsBsuoXF2wFTO8BEZPU7eEjSGV/yQbFwaXWY0miNb7tbcBV2f9bPeHq9PLLKcxGEkzkMbEopypgm3o66LbTeZVOmpSx9+NMzRcMD0f87EKppZaxHnYuYlq2u3JlUjbFO7ipEgIfXhRw5X52/ciZCcWJfnI7WRsgSonZK9SnNTQlOeGV+48BPfiJCZddOxDtfaydipQWUqdmhVMSRzTFpnqe2GOTcjNeyTbrfO7pEFL1oInSJZm6WobmKt7GdXxlbBpeNwHdx+WcFlDl/2tSuro6piSGCrICVKvJTy2R0aqQ+qLn/i+KQtkz0if4mjWwhusRNCOkUBhbjoRh6M2E5wUc6WUEOg5BspicW+iPw4gERl+3nTb+VhctkLOUqNMbcbSHkEyfN8XEdsT4ktMu5PrjjPO0Dhqr9mV1rcg0Z3aDgXxtDpGSYTHLFLsK4CRKh4nUyjYbZKgsGTaEogFSSlXKw8jaO+0f0k9YrnBsiLlLo8rCSpk/ygLLhtotxi5M+gkn7OpQYrP8xe7kEUDDaTxUM1616GUcj5Cl68KOFIzgNcYWa0/f8enfRQsZ8WuUVhC95SLjhApSB0KVDVFF6sE3l2lInRzOgN7qGfyllAgBpQLMQZ87c5yXVp/YvJxWRoTxxT7+uapXcahwG5dTAMoEsgUDFQZXgtnYpiA8nI47fN9mkyH7UQJ+2tECdbIU45xJq8diOcRRiFszTZF0sOgS8xxE8giTbdxhTEhAEiSkCOH6WUQYHVniMCEGEdAoIWywASCtzlEkeuNwc0Ag8RvnMxO8yDtENESAwJeEB0HsUUMJUfQAqDJxCHiJkYQQAQzbr6zDMtcRymO4hElZ8uwGWZxH4EghCoZIcWtTO+VVY2yosQRRiSQrRNCmFyVLH1vj4emfbW84nAY8MALiNM/QO5LDYH+Oticgo42BDir43iwUfoOTxuVRvjL22Bj9Dj5SzjiNCOWLBomSzYMbgcmb9qZg9o3a4+tpPYWcIPjZ3Uta7tWLapawN2et/GmSCaEYdGDryHISVA0a6tZtfSm2XOywcapmjqetSiGLoLFM4UsOZFcZusoYybuv3+QXICLeYC5kJ8OaVwNZ44w8TOYoMpaF5yh5ZOeI985Do+RvcQO3IVFIdfkAy++q5gCLHLE6DDKFSvxpNcjFFuxzxMzt6EkQ+BH0O2Kj8OAHVnMlSVHtKzoKdU0cORw0jf6MvPOmzJQwyNFkGRjfwU9Ktmdz84tjHQRxP7IJdHURlLZQxpGvd6Uv8aGsUUFxaOR4Om33r3Tp1G2IOq2PHYhwcX++uWCjgIIW2i5f1pEy0dCQw64Dh7znN63CBoyreMETmAs40Aggr5Sw2nqucGgZquQAYmDpUbz41idEBVhV6olKB17T7bckZarxDeRkR1PYruIVDVLzGCFPiRdwcxk/DDFMyR+zM4aYPXbd6pBKupdOs5vVH3Wjcdyx6N+Rn1aEMJXU5edqmak+p5GPXi5Sgc42iBiBdfcN5lVSxr+hJt1TBS/Xi5T3epFt/aBU0g90FfUWSym2yaRA0dcD2sLhDGEU6UfQFKZCrUA7G9lae5uB5u0SgKSCu6hzhwn279llRZTTLfCirWoBoTiFV3BkPaJHPAz4Fbm4pB8Pwz1Y3pfPfuWB9+9BByC0byYuoKHbRre8/15mxz4YYp+9tC/4ZXF+D1yR5I4CObXIglHkkK0/HfjoR9AO/enr1mG1Ji/YnaJseLMHQYrw8A8GIcAPU3MJ7Y4CXPVZtHhJ6/ffOPtxL5LyHpONI4fSFoc3iBx2OHz5CHmyh6QbiUMUW2cGknJfAlUEd1MscHlA0j/Uul3iKuFcP6hiR0l2QecUdhhiT3dINIFzvdCJBDuGZtsL10EYXZ8utxVZYu7UR7ySik/pveTVat0dc7dYcwoQzXH8A4XjaNzHxV3atEe+ZLt/N9D0aToS1cD6lS3b1zL4AudhZRHFJniaOlO+NRJWcauDOS0SP74o6hDLnA1hIJUTnHbTFf75jtAe1iSp5ISCCgUUYM6mqc/vgCXjZfgp9rwF+8ALcYund19iTvpIGAyog4abdrcW85GKwpiSIBhEtwXO61JuOvumnmdrFtG+fmDY+fiZLjUWEDXb/n1G3F6Rac7jY5eecVqlu3Mn/uLe/PdtjHdvdpoeWZI481Gzxaq4ODGaRjEVYeIs8YZ44ApvbETNloATvHuacL91EGczvH7dxz1Cl8WnYU6eR+mKMA8kI9xExG0Mgw8AN7XraXncahUMDE6gP1A1CSONo5EEd8no9/3modn71rnrw5bcrfrYWEE5ts6MGkhLuFQgrx1PXgL+4SqfciGNQ5aZ8cq+0TtX3MjsN/fAEqBi+bn9u/J0dQzfcxJIQ9kbcOGMmzSgkizw9CS4VJZeMXvmra9TWHa1ecWBaNlOdZD53G4SH6e1JQm64Tec5HS2VdpiQKZ7lcYTOiXD8VvIp/ZnBIVvSL/oWvhBkqGQUASxIAIkCuWP8VCCM6l/Wp6SiUXIUyjXEI2sX0J761A3UKyDyKAz9Z/47s3ZG9O7nenaR3oZVlfHSXUfN61sq6c8KIbT2UgOM2U9RtZlPNgeo9fgtRmYuMC1AIQXsNg1n3vN4S+JBCvEAhZO124rsgDNzClP3g9olbvcsoCnL2blG990ej68nY2Ydnjq1dFaZsp0Z97ULvd5QsttdMXJ9pKESVA1Q9t+OJS1eUYpRrHzJfvdoY+Po2ka7w9JW4wYSLNkOQIOQnBeCGvnA8BO4tDEguNJiMQARHcrEX/qClqrx3qIp82EJ1RIcNaDMEP9nnI5E7hAm38KsmWFgT8cqH1LIajQ1ARYcF19Yv0RQ0xajsvnURRZRQ7C4Zbdx5xMiqBxAWDT+XgCaAof8yxX5UGUgubJcIslBKi+g+UbXDyId9NnXFVOvNQr5Wv6WJ0fvJnrz95ZWoynb9vEixiQ0h9KGsY3J9/7tIT084EkslF7+nX/K0j9xxtxjKq6kQlhDpUiZwcc9st8XSxRAIoTSHuq1bzkfdtIzR8FxV2s12s62sgHLcPHnXbJdLnDZ7QK/T2CrNscMYXwbuTAF1T2tScItLtLRCeVA0t6DyfFkpNVhM/crgKTdW94Pem/TZmuuIpfZ+N0zFSFanJrT1fj+SjIF2pecGxj/vj4YXDXDxyXMp93QXlLlcbJGLm0v44HCyaqVeja9v0tmCbythct3WB9Rr4NPV4nS1NSnXMifdzaocspBG49BHvMIq6SZBs0qSrfPJDLwQylybvJC1XTOGHEDduZHn3uqO3beci9HItmxTG4+N4VVxo2CGSL7VFvDSBCasZK32z5egAblN9H8pWWIDT0v9paytzbEoAG5JsKiHLWVXFID2T60osDdNrmDcSRIs7l3cCtBtwrFW7p2qpuza2KQOqpCZ8e3iUpp/Teul+dcd5cx34enJ9K16+vrsrXp69o+36rvT6VR9/e6sDU/ewtdnr9tKyV/ClIZMnaqjwGE9yNoIbTx2jF794aZAyH4I64w+2TJrxeYvfynZTjzfJs3beqkX7e2tKnIuyqr2aCiFfnuLmhXgLpFM7DwH98cHdyj0z4Hw9R5Iw4CcH6iAceFceCXk4wMA5F/nB0mBsjxTcYd5hBF9OgebNLJMIGWny3Mgbj5otaoXG56fnr4+iEmBksSOSWfyQPgsz6VlC73zlD/5McryJEYgDCkSlRbNu7ekiaLW/XEuR3OxcBkvhIucX7mU14DsQ26BC7RZj3hGsv5VkKcyeaaqIXyk6hJHNOq4d0QtYCwAuq5IooixB9kum1s+q2yFhhRi4ekbRD48B0N4z2dJ/MhMXnnDphFOI+ELOvCikMJHynkr/5YTKme3POuS0bVTICYnxxeB8MCLMYYhTT7XgSQaT2QbffMm9xdrgT2X//7rfo8F/5+Vzjh9B0NREFbYOOzRtc4OBv/zpDvnyN8qobvL5U7SuKsMbpW8/83ylqryTMjEo7zf53y36lfZ8A4+nW+v4/1mUU0prrJyrYTWAeXOnAXzitvUk6FtDPTErySKKqXUZjtkGi4imQ0xP6g5mK9HVytL+Sutf+D/ZTlfRprzpfrg+Oxt8+x18/jkXfP4jK0S6i2Bqvrc0f22DdQ/ALMHvqn565M3J2cpBplZxjbWLPTTaRzu5i0phYwUUHogfGj60GInOmPQs9iGb5tGlzuQ9jfeZDIJWviEnSQoRh4/+GR23Bq9soWEVM+kOmZrgxr7eLc2UoS2Au9u5yU1n0Oj67DJe87P5UopAsvTSLnfTnpOKb8pIzCGlm7aVcJ5TZY9cgba8KovC147jed9wOXd37kE4UbBhcbOSz8qaOHOoOphyCvy3EBNqrtkvYDyI4+87dXyFoWqj7Dy47ps4G4SjAJZ8+Qwinmk/jaic7CNNu7f30pGEgvAEJAl9NAUQR+gsBgCUPb0bAoCummvSTmZAta92bMDmdBU18PaV/X3LJeC4onbuxC+Tl3UNbldlsxHmfDbgbYG3ZP0FVXcJtSkaFHJshtqY+vDyE6uE6rrdYBmYxdTJOKqO1z6v0Azfj0yb7H7Vf/rmh23Vf4KR1MUwO33/O+BZ3dddDWeZMWtY3PEt1aR0Ft+vMrcQ+tmpkBibn553mU6rzLTsnAELSWfvlPFB9W9y2XjrHORVPBV94c6mJpbZdaCpbeBpADrasrWoth4JWwxMzUXpXlLulFIcRSMAzeE+fh/w9SZ4WHq/5oYpt5LnLTDUVo3zEuM6u1VEbnKn7s2Zqdw7dy1++DkfSZY8hynonAalRb7W4udtYbG8CrNKVodHIhbkZn+GbghmkJCewgXAlADbWhc6pbdM8xO+eS6kG1IURYapXasoweMRD9iGyh0ISaGdzCPFrDVSNPLWk3WWwlQLIhCw1bONiqSkYLkhK9RxJW79Cfr+Tz7sw7RjuA59Eym/9Fu1yNL68NqmuYCwELkD1RVLRtVeTtqu8mkigygG6UhL3WTkckbpWAu5aiRxlJqWtwojaSa/V+94c0u5nWlSWa3FF+prr9AIQdY11nZiKlAFIzMkl23trdNdl7GshxTqqzL7LzaBtf6pxvlgB1M1820+pilH0kXnRbTiHhuALHm+7mEo25/wkehTewRv6zEdLRer5AWmS9pZ22ZmSk0hJsiVX24DKIntvk0n9xFcJCvmydffxZDMnrvv8rcgsaGK3Ky2P/XmQIaG0ms78iC3g49iTt1vqc3Et8WxlS8H+h7MMvriXLI0yuKvgctnmUIi5fn7IU1lS6ta3SjMIQejUqCpXV5xeRQ79oj0+maOr+aQ+tbncYh/96AKVCebxQpGP6NwsT8/5Ab5RVInoqLkYpvkmubik+LlzUV3wkndg9hTuSTHvrLCIV0ggMBl/hzgmiGwuYCeTgi0ZRGYYBCnuV0o7y6SS9ckheHr8Wy4O/5OsjSpGoJucLucp7ccZQQnaCZsZfNBxT60QNphpBKHORLMEh72IUIL8Iwj+f87enpa4ls5gYB3MAR+b4ykMV3UdC6UVYKUDYpgI2vxaplIOmK4PDFtZc/wT2A9tFB7SWOd/AJYOKen7bfnclbHcPIh6RwuePrszficscopmv8bq6H2D4i1gEDbS7hQlz1uEsD9ky0SG5/7EyslmV3ulqr37lHmMZukHhxR5UHk/KT7rD0RKlZktf6p07jUPJor2E9yO++KS1x3bT3Q5gN+yGZoCLK7TtREeG2TQhDn7z/2lirmrjmW0dCVZUO3QV8/7WkR/fCwThQJUg37b2w3MGnCpJr/dNmHJkKZ6t7HAXIeyppcJ5+I3KUdpkKhkddckTbZgKnau/911ZeeZNWeSG3ClfdkVYtu+spzcZ4NZ70eIVq+f6Gxoj7pBqyMH1kcU9+zcUNhbucn13u7ySvZst4Vb1tIS1jSBzTyYULafmDUp+I7lEM1BCI+LHwT4ElM8kaw49Gz9Ccnml81E2R73Ve9zBN8c0ZhBXz7w04bnNLQSZHA6XRtU0ndQ70+0530NuvUzBbxkkNfAuGFD/xjaFJ5onXSSnT1Wn8UniU8A9DKlLa22vYlFkxl2neddL31XgCRDHyK264onBW+DKlaiI1G7YYjVWu7KjJDlkzTQTgBTfzQ+8bJ6tSk5NNjixo+b75SWYB/K+ZBln7gxfoG1ku8fEUgd3v6E+KMTOdkkua4KMf8pr4tJjfjqLgDuUuQOHONQE0ZuY3oTD0eJpFGtQtX+AeEa6qwogCEi95DaUPXAroHBFA0QI2AblDy6UsQy+ovFL1wHHB2bvRPSSK+9W0hkmNgeq1iz6hDfO2HvfrdjtBThboT0B48gYEvvTt74LtG76agTu5xKxZT4sAhXd2pAVBj3872JCdGivhzu/bETaOdnmHggColnH1YTJeW1iXH32iOvLFgAWls0d/Yunt2Zm4Y+TeDZDvUrh+Sz5ERDMHZ6dHjEW134+Y93Fu9cGuEeIXL+TSmi1jqaoAW9bQ55fVlBfRzjL6MEfePCfc+ZH9wkZUU4RmDQzH1K1J364vaxJjKS6ao+oE7o6mwQegWzYPhJeRShFm6CxbsydWskXIYWQv2P5QM54cnKBHxv3CaWSOBgAR4EUYx0sK/bpQX3VjMIaXI8ccDZzuyDQnY1vvbfh6v123lFT95xBUROIhwndMqU5RCJXKVTl/qhDntcWlcZUj3zEunaGu98TFMslNLHsVVmSUNiv7Q0XYq3zZGXl1eSug+qz6Xce7HsR3JqS07BWgrItuVSB3XerF+7usD9UIZ0+8411FS0DIvFSqLMviLOtDzmNbCc9m3trUVs1uc92Y8rU+BJ7ZZWvCb1v6qsbitjY4KBXnVq7OzG2TvOjG/OT0hpbDvxHzt5odMvnalG0db8knuyuE5nPpuzIAUJkPGRJIOMqTc5PAgOvhupwCwWmXenOD2wtJPq8KlB+b2Q0VSt1jL6x97MPaxzHJP96XyaKeWdR9dV1vDpOLuc+BctxeyGK1fAp0OtZkqM2En8U86HwWs7rpstxKcuN/pnnDNP/PmCuhCuvq87KNceGTUUyXMc3uEwDqB5BeJsC3NVUNI/F1hcqPClDVhfuoMvsGvPlLbhk4yYnMUfGotubCgJCPTPN9TDqHuTsHlven7GFSO9vIhrv3VQag1QKKkrvQIL3MQPShiDsDc5T8vXOYe12g6mxnqs6+maqzzVSdlaiSIHjWaRwal1bnFfgpTcTINf/84+8r5QjUFA2lCOoLgmRpoc+vGlO5R19Fy07WDNCoWO+t1JZGJyXexRS2OoR1X9a9Ojj4QR9d/r8AAAD//2OpGGpAhQAA + H4sIAAAAAAAC/+y9eXfbOLIo/r8+BYatX2L3NCXZcTyJu5U+tEQ7HGsbkkonN+4fD01CMtoUqQCgl0n03d/Bwp3anO775t1zPWc6NlkoFAqFQqEW8Ie/tW9Q2L5xyW1jNO7rjjHq6x+7zYPbiNDQXUDwDVAXBUD1wPGhABlpQz0HcdhoeFE4Q/MYQ81foHBKID44/NoAAADv1p1DoOpAPQKqwf+7AB2gDsFb9gOU5letPzRGU0s3V0q+SVB+t0r6mWB071LYC2JCIX4fEUoODoHob3HnIwzUJWhD6rXJE6Fw4ct/2xh6UeihAKpLgUJlYyAtAvE98mDLb3McNIq922ciOOqosy9+2GKUCmQQ/gmowDvQ9uF9O4yDAPzyiz6+aHy2BOTvDT28RzgKFzCkXeVqeq472sRwLN38oJtysr6WnqyUBsMBgKDGo4EeujcB1ELfoi6mYA154Ns3AB8RBU3dNB3rk2Xrw549cCxbM23nQjMGjVUmDTZ2Q7J0MQzp+3gOJ+4cphOl2z3W/sJyeuPRRVdJeDQjfMBCFNAMfP7M5MB+P3H0kXY+0PsrBfytCxQF/P77z4DewpBDsh/o3UZV4HeAoW3fQRzCoL1YtGlGlXMbz+HSncM25MP3S7h2a9StdPkONL8WB7jimGeoOqy+fmFql7uNKoXdbVA+nGF3vt+YRJtuub8NI1rl1r8lhHxKYD9auCjMFuZIt38bm1e8qXHpXBgDPZt0vjBCSB8ifOfL+U845T7cgZft///6c/99b3J/cv17++sscOfdo59BCB/pCrB38llnBdi/4MUL0P4hI6IbRu2XQGnW0KCUuE2gD1RU6vAn3gUgZZy5v54gab8EdT0kbEpnnk2mMflw6vSnGl85vauc7HS7QKE4hgooC0KFF6d/MS9q+XH6p/AjtxgS1qSaCGBIuA6SgqEmgrEODpMnEkTzoiA+uMsLFGT6hjy4S4egf0Pn7qbbPICPSwyaX63ftAmnyrGM/9Kd4fkKXP8IjjqdzmHWKog8l6Io7CpCK+XWsDoQetlH5K7t/jvGsI0hiWLsQXXpYnpUXc/Je4e1cZYuve02D2Yo9BchBWqIgRoB6uI5pEC1QPMAQ9cPUHgH1NmWvg4P00447hmGcrT+DDS/VjtegW98go988E3I1tclRiEFzZPVy8O84H3+DJpf80hXQJ1T0PyaZ+uqOthM7fyGggDEBKbj5zSCWYQ5k8EMBVApil6B97X0txkMa5npuIDAmt6NkMSzGfIQDKnomCxdD4IoLNFDI+Bh6FKYUXUGMPwSQ1IdLuNFmS8/AZdSuFhSFM4ZtpkbBODG9TjqscV7abVayrplIOXq30xLFDiwqtkbIuL4kBkB3S1yEkV0k3CoE9D+vyELkh+7S8GfMeGsU8400PyaMnD1/TNfpDtnJTEd0zN1zWbWtTW9uDB6hj6ynb5hXTnWROut1YliLFZCD3hgjLuBgLj30Ac0OgMVIWkIHUPxk7fwHTRzZi4KYgzB8Ql4DY5fc4Fk0NzELo3rqoKvZPDlhsKNPWGvLyIfnHY6lcZbaVnccV4/o9NNWBmyKPyLsKoquY0ewDcwx/BZlCf2XKlhGIVS8sgD6IAOt7m4fTQj1L0pbG469XI2/05nH25UbT3gJFBLHD0+ZWcYMcOd05OTHRsVyRGN3CVl/5fQZTqKb9tvX3Nstb2vAc0x9/PQDd05xL9nTNxpnIl19t62J87EHH/85EzNgZXZ5rWmeQbdrWuaUACzGSshuKV06XBSnolA877ECMOzM4bp7IyjAtc1A7lWfs7wbWB5hroPZ24c0PwR83rziK+VPbm+pbON3Nm7s9wJLJlpa7+ptgojt54z2aQwHuu7ppuU59v6iyZ8w7j/iinfwKPvnfTRePcZT2C71WbbJyqM0kHs37iWM2vJ+bOnYC3pz2F+cTtQ6txhd/ENDCDN3F9K6j3bDb591FGZ3GS9KyWn2Ut9fPGy3m3GTordynzo44vCtssEccLQ97R0z0UzgMjQxSiEeIw1Zm0PUBg/AqU5tsoHag9i6viQ0K7Sjgluk1sXw/byDrU9V6U4JlQVZ5G2G3q3ESaZSRkvfZdCx1v4XUX8riZtBFDBDi53xMyMQHbnuSp7jWaIGYFbu6jCytWUU8W2ObVsve/0NHaylvZN7fuVAr6BRxfPyWHBGFoPfOMSeHoCVB+8Y4DpyFZCznpay8NUKdpd00mfmVw9zenppm3xnprZ8DYD52e8FxMaLXpuL2NCjbUVLWmb0UUEeyIMEEAhaB4Q+AV0QPPgoPm1N7Xs8ZD1wsfn9MbTkb0CKjg6PDz8GfhRdjqDXuBiCO5dHLoL2M1aMvqc5le0AhXn4N8kdIVlGXHtTuGHPWO4GPs4Oj8K4RoHS8I6hiZZcds5XsXjRSF12Urxi1xOH08DtECpN783HtmaMdLNvjMdGEPDdvrmeOIYI+GxmWj2+26tcsj6yekHAqkTC/yph1kYoErz6w5d8aNVYot2Ovu04lpsR/AaT3+6pioILDbdFIOX7H/X4ctDrrPybn3gu3ARhSqGQeT6jT1m5epNTVRFsJspXxxCCokQrZxbTJsYMswwmZ4PjJ5zpX/Kz1S5adtdIjZHEPN1nDsWKDxoUY8sjRSlJ4OdoKOHEOAoomfsP9uaiOH819TUnX9a49GaQXD/SusPEoVl2ostSxQL+VkHU6WzAihWGKTg74+ZbaOGDPhqeq4PdNvpDbiXgQmNPrJX6yycDQ1KqqR2/rwAwZC27uBTxdSqJ4cpsf1pKrbag7BEvVUJYzNv9HRnYhqjnjHRBmIZbqdta8PN5JFliz7SGj9PvTwW8Kk+9CIfir1wm8Bbk3yYpUKBBKoMRrLc0numbneV5oHnMiGU2JTD3drVsakA0W5fX7evr6+vV38aPoXhU6TbaZGjWawrl4JffgH6+EKyr7KohLJTvCCKfeWMB90085JL4XjaXyk/ifcUhm5IjQREH2kj2zGy9yS+IR5GS4qiMIGypudWzzQmtjEe5WFd1+9xQU0B142yrpEFPQzploaCPWnjxN99iaN4KZqaujWemj3duTTH00kKmTinBNBg3NMY9enr+4X9tITi5YehY3+a6HkWhJCO3AVMhz/K0UCgF2NEnzgNGVQSLbL03tQ07E8leu4LKD8Ypj3VBo5sVIAyq2MsgTtrxoyjmELbvQlg1pM5ntq6Y2vng2yAS4wWLn7S7l0UuDcoQPTJylM3MY2hZn5ytA+aMdDOjQEbjpVjgURgeW4Aa1taPW2gF5pwuZzg6B75EJ+73l00mw0jX7bjMjoxxx+Mvm4651rvanxx4QzHfX0jAuUMrGm72tDKhBQjSNY3dkzdNg3d2oREf1xGIQzpBiz6x8l4xJTqBjT9GCdiug5Nf2oK2d2A5p+IUog3IPmnYdu6WYvCdCkcMNOyprmp2To31ja3/NfE2tTY+dfE2ozgPPbu4EYCnPNp70rfTsdvGFG4jRjnN9Ow9V1I2o5O0FXEGBMovLi+4cOQIvqkP1IYkmSip5buDLWRdqn3HaOvj2y2wPSPtj6ychMdE4g1QtA8zPAYfbFgppZuOpplGZejPI6cno0JNEJC3dCDQ0hd36Vu2rcxsmxt1NOdoW5rfc3WVqnWdP1zN2CNsHUXJ8pT6zvn2oC1MB3rapr24SPCtM04pjdRHPrWSLN5H8UWfcNi6scZT+3z8XTUdxhc0iN89ILYh0OXUIgvcLSwqBv6LvYH5xyV/rE3mPYZuyxbN50Lczx0GPF9zew7g/NVqpHE9H1w4yCnj66G3Pkm5uyDNh3YMoNINlu4j2gRLwa5YZtxAHtRLFf2UPtoDKdDh40oHZA55RbTNFvaSfdX8Cnp/O4NUapvP0AspUBRGiuZxySMYfWxmF+zSSeCLlDuj2uCqjLlQWlv0lltXwHrzwK74RIaZwdMlewRy0m8AsIw2ZA1kjsj8APNVbHtprNNav7oow+GOR4NmSLOnXWK5521iHOB0dLxZ7cm1dPQpnYVa11C6qMPHK7OqbQTITn5Ks9HeljJslx2yugpzU0JTXlmfOGnTVyf4qC+bjrW4Vo7GTs1qEzFDq0qJ7ock9YdmXbDnJuRGvZJ30p3d/exFy3E4paszfIQN7FW9rMrY6vg0ju0Dm6/1M8yhy8G2qXVVVUxJLBVkBJtWsrr642M1BlUFyQ/Ou7IiH7kL3F0A8ENdkJIZyigEBd9hcMxU8nn5ZA4O5TnGynJ0XkR+XEAico21pbfzsPkQtQ5So0JN+BJeQTJ87zzXuwTyaFgMphecp53gcJ1cM32sLgHzd7IcM6NkdM3TCY4Ql2zrgJEqHidTKNhtkuCwTMlSiAVJKWEmzyN44HR+yT1iucGyIuUumSbJHOP/KAs+CFBucHIn0Ml/TuX/6n8MH+5B1Ew2EwW98evexlGIecrePGihCPZmLnCzGj77x6ddBWxnza5QWEb3lAuOEClIHQpUNUUXqwTacTJ7Fd2+gzuoZ/KWUCAGlAsxBnztznJdWn9i+n5dGRPHVMf6Jqld5sHAblxMAygSyBQMVBlDCWdimIDycijN63OSTIftRDHna0Qx1shTjjEmuRlI5xHGIXzNKMTSw6BLzHETyAJKdzEFMSEASJKQI4fpbwwgdW+RQQgwjoEBC2WASQUuMsljlzvFtAIPET4zsXMqgZph4iQGBLwgOhtFFPAVH4AKQyeQBwiZusHAUA06+ozT6fDcZjuIBJVfroAl2US+xEIQqCSHVrUzvhWWdkoL0IUYUgKIRUphImpYusDfTI27a32icBjwwAuI0z9hlwWm6O4dYEXBTQ2xHFrQzXwEXoOD07UBnJLW+Aj9HjNwiQitCsWLFomC3YCLsbmb5rZB1qvp0/sJECS8EMzbeNC69mOZZu6NjRGl1s5E0Rz4tDIgfcwpAQo2pXV6ll6q8x5+UDDFM1cj1oUQ3eBwrkC1rwobpM1lPEz52DQSCzQYsJXLo6TUwqXk6kzSg48bDAFzUvu0NIJ75GPXMfH6B5iR66C4vALksFX3yUMIXZ5lmsYherlZJoLJMntmMdC2Zsw8iHwY8hW5YchoO5cxoxSIz2LbEkVPRo7jPSNTvWsw7Y0Ymi0CIps5FbQb5rde+/YxlAfT+1GLlheGUtlDGmu7npS/xoaxRQXFo5Hg5bffvtWnUXYg6rY8dgfDy721y0V0AghbaHl/UkLLR0JDLrgKHvOEzfcIGjJt4wROYDTjQCCCvmPGs5Uzw0CNV2BDEwYlRvtRjE6oKpCL1TqjHr2gG05Y61fiGEioroeRfcQqOqXGEEK/Mi7g5hJ+EEK5sj9GRx3wKsO71SC1ZQz9Z3+uHelm45ljyfcRj3cUCeVk5ddSqOkeh5F/Xg5Dic4WiDixeecd1mpwpq+RFs1jFQ/Xu7TXarFt3ZBE8h90FcUmewmmyZRKAVcD6sLhHGEE2VfgBLh6HogtrfyXAbXw20aRQFpR/cQB+7Tjd+WKqtFbreCijWoxgRi1Z3DkLbILeB24NamYhA8yUh1Y3q7e3esDz96CPkJRvJi5godtGt7z/Vu2ebCD6bsdwv9G16eg1fHeyCBj2xyIZZ4JClMxz8fCfsDvH1z+optSMnpTxSwOF6EocN43QDAi3EA1I9gMrXBS56QdBsRevbm9T/eSOS/hqTryMPpC0Gbw7P4H7t8hjzcQtELwqWMKbKFS7spgS+BOq6TOT6gbBjpbyr1FnGtGNY3JKG7JLcR99hlSHJPN4h0sdONADmEa9YG20sXUZgtvz5XZenSTrSXDAfqH/VesmqNgd6tM8KEMlxvgHG8bBrZ8VV1LxPtma/Pzfc9HE9HtnA9pEp19869ALrYWURxSJ0ljpbunId3nFngzklGj+yLO4Yy5AJbW2S95DyoxaSsI7YHdIp5VyIzgIBmGTGoK2T54wt42XoJfqkBf/EC3GDo3tWdJ3knTQRURsRxp1OLe4thsKbuhQQQLsFRudeatK7qppnbxbZtnJs3PG4TJeZRYQNdv+fUbcXpFpzuNjl552WIW7cy/9Zb3p/usI/t7tNCy1NHmjUbPFqrRmMO6UTEd0fIMyaZI4CpPTFTNlrA7lHu6cJ9lFHV7lEn9xx1C38tu4p0cj/cogDyaizEjoygmWHgBntetpfd5oFQwMQaAPU9UJKA1hkQJj5Puj5rt49O37aOX5+05L/thYQTm2zowaROt41CCvHM9eCv7hKp9yIq0z3uHB+pnWO1c8TM4T++ABWDl63Pnd8TE1TzfQwJYU9kabmRPKvUmfFEHbRUmFQ2f+WrplNfWLZ2xYll0Ux5nvXQbR4coL8nVZPpOpF2PloqYib50QBaMJhZPIx4Jbym/PwZzusyQxM/bJKcYxofNFvfmgkn3bEyG+4OPil12Hgm1O5oeFIdxxMtYUhIAOYwxMQFahRT0NxCKjjunLwptMbwC1BD+ADUx9edt0D13ScC/vGq0wHqHXzajrC223RMQCXxzR9AafdGPPFcXjaxUoDq+j58pDyz5A/oUU2EKLv9kXVWgCzmMBbmquD3ZUc5cdJ38tSwYzYjx7gweoxwc2zLrBdeJlAfx5GF9aIz4c1iR8lMNACOKN/EACJA6lT/JzDPzp0EBjNVxKlrETwgeptMQuad2kM6c/XHNMYh6BQiWbuwwBlo5/qgq2QS10ocqGlARZW0q57b9cT9HMp/8JoQpixQZ4DcRnHgJ/udIxs4cjhObiqcZC6FFSID87swkBfpVvYZJ4yYqUUJOOoww6QDblxyC1Tv8TlEZS5hrjBDCDprxJV1z4tIgQ8pxAsUQtZuJykWhIEbmAozuHniXp5lFAU5/07RnBmMx1fTibMPzxxbu6yNue6DZGMQ9nmLt2a8JYz8BhWuhhi+BD83YoEbpi4yl4AQQh/6SiWQKWJ3udAgf9BWVU4QVIU4Fyo0umyMmyH4wTMXfvzeIHZNILsmGpsP92ZFIhuAis40bkm8RDPQEkOyB9Z5FFFCsbtktHHHJiOrHkCctrnNDFoAhv7LFPthZSC5kHIidNms/req7IpELaJ74XD1IQjcGxgUt9LNmlvJbQGL6D7ZHEeRDwf74qqWHO23jOTNOcraIaoqDQgXXJVXvrMVI54l9xHdwSfxaoajRXF9rRnpReDOgVLC3F1rjOyApUxLd5v98//ksvNhcNCiAWGieYECePiy9EJeyHUFn9LXz1pcru8/X7wZR8ua1PX975byfFhNIqtY+n39gifG5fwQxRyLmvp8CZHuagQu7iHuRYuliyEQgmGOdFu3nA+6aRnj0ZmqdFqdVkdZAeWodfy21SkXGG4OTV2lSS80xxVjwiRaAXVPa4oUiptTaW/i2So5oc7zZaXUYDH1S4MnJVq993p/OmBy3xUC/243TMUUg25NzsG7/UgyhtqlnhsY/3t/NPxIwqUoz6Xc011Q5qpVRLVCLhOPw8masXqbZn2T7hZ8WwmTB+z6TKca+HS1OD1tTVGKrNpxszqwLNbcPPARr29MuknQrJJylHyWGS9DNNdmlWVt14whB1B3XOTVCbpjDyznfDy2LdvUJhNjdFlU1+Dbt0KrLeClCUxYyVrtn8hGA3KTGD+lLLYNPC31l7K2NvmtALgl860etpT2VgDaP+etwN40641xJ8l8u3dxO0A3CcfauXeqmrJrY5M6qELK3PPFpTT/mtZPK1S6yqnvwpPj2Rv15NXpG/Xk9B9v1Lcns5n66u1pBx6/ga9OX3VKlgVXGjKntY4Ch/UgjRRtMnGMfr2JUSBkP4R13jjZMmvF5i9/JeBOPN8mzdt6qRft7a0qci4KT/doKIV+e4uaFeAukUx9PwP3R407FPpnQAThGtLXQs4aKmBcOBPuYvm4AYD87ayRXA8grXIeyYwwok9nYJNGlin27Gh1BsS9I+129VrRs5OTV42YFChJXEPpTDZEMOlMumCgd5YZbLkxygJORiAMKRK1aK27N6SFovZ9FujwosXCZbwQsUt+4VleA7I/cgtcoM16xHOS9a+CPJXJM1UN4SNVlziiUde9I2oBYwHQdUV2W4w9yHbZ3PJZZSs0pBCLEMww8uEZGMF7PkviR9Y6yPttjXAWCSd9w4tCCh8p5638XU6onN3yrEtG106BmJwcXwTChhdjDEOa/F0Hkmg8kQb67E3uL9YCey7//df9Hgv+f1c64/QdDEXJbGHjsMdXOjMM/vOkO+fe2Cqhu8vlTtK4qwxulbz/yfKWqvJMyMSjvMfzbLf7AWTDO/h0tv2mg2eLakpxlZVrJbQOKGdzFo5X/Ew9HdnGUE+8O6LsXEpttkOmcXySnSFuGzWG+Xp0tbKUv1D+B/6/LBnXSJNxVR8cnb5pnb5qHR2/bR2dslVCvSVQVZ9HZN50gPoHYOeBZzV/dfz6+DTFIFN+2caaxeS7zYPdvCWlWL4CSg+Ej0sfWcyiM4Z9i234tmn0uB9p/8ObzPJDC58wS4Ji5HHDJzvHrdErW0hI9UyqY7Y2qDkf79ZGitBW4N3PeUlV/MjoOWzyvubncqUUgaU1Uu63m9op5TdlBMbI0k27SjivWrXHzlAbXQ7klQDd5td9wOXN+7nKjWbBhcbspR8VtHDnUPUw5DXLbqAm9a+ykEv5kadE7NXyBoWqj7Dy47oyjV4SNgdZ88QYxTyF6iait2AbbdxXv5WMJBKGISBL6KEZgj5AYTH4pezp2RQE9NJek4JbBax7s2cHMtO0roe1r+pvOS9lKyXxi0JeUeqprkm6tWSi4JTfzbU1GyrJK1TFXV4tihaV9OeRNrHej+3kMq+6XodoPnExRUwjJZ/42PjJjQWa88vJeYvdP7SxrtlRR+WvcDRDAdz+lY098Oyuiy4n06z8f2KO+dYqKi3Kj1eZe2jdzBRIzM0vT4hP51WmwBdM0FJVwFtV/KG6d7k0yXUukgq+6v5QB1Nz79ZasPS+pBRgXbHvWhQbL2QulgzkojRvSC8KKY6CSeCGMJ/20zR1dvAw9X9NDVPvJ07a0Ti9WYHXftafV0XmTN7u2pg2yLVzzx6A43eZYEk7TkXhLCot9jcWs7VGxugyTfZcNRriTnKmf4ZuiGaQ0D7ChQDUUBsZF7pl9w2zW7ZcF7INKcpCs9SOdfSAkehHbAOFLsTE8A5uowVsN9O833aL9VYCFAui0LCdOxsVyUhBcsLXLOLKXYuW9XyW/VqHaEfwHHom0//odOqRpYW7NU1zYVgh8g1VVcuHqvw5avuRSRWpmddKU16pKAOU10rhuJSjRh6W0qPFtdJM7vv4V390vcvxutIkO7cUX6muv0AhB1jXWfkQU4EoHDJL57q1vW0652UsyzGlyrrsnFfb4Er/dK00mGG6bqbVxyzFULrotJhGxHMDiDXfZxujXDq9wZSPQpvaY36dk+lo/X4hXz1/6Qdry46ZQkO4KVLVh8sgemKbT+vJXQSN/M0i5NsvYkhG/903GeFvbrhELIvNf5sroLmRxPqOLOjt0JO4dex7eiPxTWFMxRvUvgezvMAthzy9xO170OJ5hrB4vdheWFPp0npGLwpD6NGoJFhaj5eyj/SePTadnqnzy4u0gdVtHvCvdsyA8vVakYLhXytMzP8/cq38BJKn4uq44pvkYrvi0+J1dsV3wondR5gT+aSH/jJCIZ3iQMAl/pwgmqOwtUAejkg0o1EYoJAnjl4rP12nV9LJa/vXYlnw93wdZJmntYRcYnd5m9wClxCdoJmzl60HFPrRA2mFkEoc5EswTHvYhQgvwjCP5+zNyckriWzuBgHcwBH5vjKQxXdR0L5WVgpQNimAja/FqmUg6Yrg8MW1l7fgHkDnsFGbIn4HnwAm7tlJ5+2pzBkPIx+SQur4q9PXInU8iukav5vrIbaPiHXAQFtLuBCJ5Ls0YM9EiyS3vDu12pbd7WntQfceYRq7QeLFHVceTMtPeqPSE6VmSV7pn7rNA8mjvYb1IL88VVriumnvhzAb9kMyQUWU23eiIsJtmxCGPnn3rblWNXHNt46EqioduQv47ltJj+6Fg3GgSpBu2nthuYNPFSRX+qfNODIVzlb3JAqQ91TS4Dz9RuQo7TIVDI+65Ii2zQRO1d67b+288ibt8kJuFy4DJe1adtdTmo3xcjLt86sDyhfrNMfcJ9WUN4aMLe7Jr7lRp3CT+leX+zvJT/NlvKpeg5PWlyWO6eQmnLQuTamvEPIoBmoIRPxY+KfAkh3JmqMPRt/QnL5pfNBNke91VvcwzUXPHQgrx7/X4KjDTwoyix8ozZ5tOqlzYDBwesP+fp2C+TJOLidpw5DiJ74xtMht4nVSynR1m78WHiX8w5CKSpbOGjZlp5iLtEAg6ftyMgXiloif+MEVhfPCp8yqGf9s2GI0VrnkriY7ZM00EYAX/Jgfes+crEqxZDY5stLw++YnmQXwP2YaZFEmXqBnslzi4ykCu38hI6mSz3RKLmmCj37ELytJb1mxoyi4Q7mbqbhzTQBN2PGbUBh6PM0iDeqWP58QEa6qwogCEi95cbsPXAroLSKAogVsAXKHlkt5P0hB5ZXKXI4Kzt6N7iFx64qaFpeqMVC9TtEntGHe1uN+1ekkyMkC/QkIj1+DwJe+/V2wPePDKNzJJWbNeloEKLyzIy0I+vzbfCNmNVbCnd+3I2wc7fIOBQFQLePy/XSytuI5P/pEdeSrtAtKZ4/+xNLbszORpX7vBsh3KVy/JR8gopnD05NDxqLar5PmfZxbfbBrhPjFi6RcZhlLVQXYsoY+v0WsvIh2ltGHW+Td5oQ7P7Jf2YhqqoOtoeGYujUd2PX1d2IsxUVzWJ3A3dE0+QB0y+aB8DJSKcIMnWVr9tRKtgg5jOwF2x9qxpODE/TIuF84i8zxECACvAjjeEmhXxfqq24Mxuhi7JjjodMbm+Z0Yuv9DR/X3HVLSdV/pUQoJxIPEb5jSnWGQqhUii3+VCHOa4sL4zJHvmNcOCNd74t6m+SKrL0KKzJKW5X9oSLsVb7sjLy6vBVQfVb90viuhvjOhJSWvQKUddGtCuSuS714saL1vhrh7It3vKtoCQi5Ld0hIStELet9zmNbCc9m3tr0rJrdd70x5Wt9CDw7l60Jv23pqxqL29qgUbo1oXKncW6b5EU35ienP7Ic/j3ajzU7ZPLRom0db8knuyuE5nPpuzIAUJkPGRJIOMqTc5PAgOvhupwCwWmXercGPy8k+bwqUH5sZVcHKXWPvbD2sQ9rH8ck/3hfJouLJkTdV8/1bmHy6YIzoBx1FuJ9IQU6HWsy1FbCz2IedD6LWd10nXglufF/p3nDNP9nzJVQhXX1ednGuPDJOKbLmGYXvQD1PUhveeHbmqqGkfhYqPKjAlR14T6q7HwDXv8l178c50TmsGiqrbnJJeQj03wfk+5B7jKY5f0Je5hUsDaz4e59xwxot4Gi5G6aSW+ZEX0o4jLXHCV/7x7kXheoOt2ZqtNnU3W6marTElUSBM+7zQPjwur+BH5OEzFyzT//+PtKOQQ1RUMpgvqCIFlaKCp1Ve7RV9GymzUDNFpXjV13uUExha0OYd2n8leNxg/6+OL/BAAA//8IyfRvvogAAA== - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBoostrapping/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBoostrapping/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBoostrapping/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBoostrapping/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBoostrapping/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBoostrapping/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBoostrapping/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBoostrapping/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBoostrapping/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBoostrapping/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBoostrapping/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBoostrapping/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBootstrapping+CustomAADResource/CustomData b/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBootstrapping+CustomAADResource/CustomData index 6bda99d88ab..5af4a879844 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBootstrapping+CustomAADResource/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBootstrapping+CustomAADResource/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/+x9+3fbNtLo7/4rsKxuYndDSXYcb+JW6aEl2uFaryWptPniXh6ahCTUFKkAoB/r6H+/Bw++qVfS3u8731n3NLbIwWAwGAwwL+iHv7VuUdi6dcn8YDjq6Y4x7Om/dRqH84jQ0F1A8BVQFwVA9cDJkQAZagM9B3F0cOBF4RTNYgw1f4HCCYH48Oj5AAAAvLk7g0DVgXoMVIP/uwBtoA7AO/YDlMaz1hsYw4mlmysl3yQov1sl/Ywxuncp7AYxoRB/iAglh0dA9Le48xEG6hK0IPVa5IlQuPDl7xaGXhR6KIDqUqBQ2RhIk0B8jzzY9FscB41ib/6NCI7b6vSLHzYZpQIZhH8CKvAetHx43wrjIAA//6yPLg8+WwLy9wM9vEc4ChcwpB3lenKhO9rYcCzd/KibcrKeS09WygHDAYCgxqOBHrq3AdRC36IupmANeeDrVwAfEQUN3TQd65Nl64Ou3XcsWzNt51Iz+gerTBps7IZk6WIY0g/xDI7dGUwnSre7rP2l5XRHw8uOkvBoSviAhSigKfj8mcmB/WHs6EPtoq/3Vgr4WwcoCvj9958AncOQQ7If6M2jKvB7wNC27iAOYdBaLFo0o8qZxzO4dGewBfnw/RKu3Rp1Kl2+B43n4gBXHPMUVYfV0y9N7Wq3UaWwuw3Kh1PszvYbk2jTKfe3YUSr3Pq3hJBPCOxFCxeF2cIc6vavI/OaNzWunEujr2eTzhdGCOlDhO98Of8Jp9yHO/Cy9X9vPvc+dMf3pze/t56ngTvrHP8EQvhIV4C9k8/aK8B+gxcvQOuHjIhOGLVeAqVRQ4NS4jaBPlBRqcNXvAtAyjhzn54gab0EdT0kbEpnnk2mMf545vQmGl853euc7HQ6QKE4hgooC0KFF2d/MS9q+XH2p/AjtxgS1qSaCGBIuA6SgqEmgrEODpMnEkSzoiA+uMtLFGT6hjy4S4egf0Pn7rbTOISPSwwaz9av2phT5VjGf+nO4GIFbn4Ex+12+yhrFUSeS1EUdhShlXJrWO0Lvewjctdy/x1j2MKQRDH2oLp0MT2urufkvcPaOEuXzjuNwykK/UVIgRpioEaAungGKVAt0DjE0PUDFN4Bdbqlr6OjtBOOe4qhHK0/BY3nascr8JVP8LEPvgrZel5iFFLQOF29PMoL3ufPoPGcR7oC6oyCxnOeravqYDO18ysKAhATmI6f0wimEeZMBlMUQKUoegXe19LfYjCsZabjAgJrejdCEk+nyEMwpKJjsnQ9CKKwRA+NgIehS2FG1TnA8EsMSXW4jBdlvrwCLqVwsaQonDFsUzcIwK3rcdQji/fSbDaVdctAytW/mZYocGBVszdExPEhOwR0tshJFNFNwqGOQeu/QxYkP3aXgj9jwlmnnGmg8ZwycPX9M1+kO3dKYjqma+qazU7X1uTy0uga+tB2eoZ17VhjrbtWJ4qxWAk94IEx7hYC4t5DH9DoHFSE5EDoGIqfvIXvoKkzdVEQYwhOTsEbcPKGCySD5kfs0riuK/hKB77cUPhhT5zXF5EPztrtSuOttCzuOK+/odNNWBmyKPyLsKoqmUcP4CuYYfhNlCfnuVLDMAql5JEH0AZtfubi56Mpoe5tYXPTqZc78+9k+/BD1VYDJ4Fa4ujxKbNhxAy3z05Pd2xUJEc0cpeU/S+hy3QU37beveHYantfA5pj7ueBG7oziH/PmLjTOJPT2QfbHjtjc/TbJ2di9q3sbF57NM+gO3VNEwpgNmMlBHNKlw4n5RsRaN6XGGF4fs4wnZ9zVOCmZiA3yk8Zvg0sz1D34NSNA5o3MW82j/hG2ZPrWzrbyJ29O8tZYMlMW/tNtVUYufUtk00K47G+a7pJeb6tv2jCN4z7r5jyDTz63kkfjnaf8QS2U222faLCKB3E/o1rObOWnD97CtaS/i3ML24HSp077C6+hQGkmftLSb1nu8G3jtsqk5usd6XkNHupjy5f1rvNmKXYqcyHProsbLtMEMcMfVdL91w0BYgMXIxCiEdYY6ftPgrjR6A0RlbZoPYgpo4PCe0orZjgFpm7GLaWd6jluSrFMaGqsEVabujNI0yyI2W89F0KHW/hdxTxt5q0EUCFc3C5I3bMCGR3nquy12iK2CFwaxdVWLmacqrYNieWrfecrsYsa3m+qX2/UsBX8OjiGTkqHIbWA9+6BJ6dAtUH7xlgOrKVkLOu1vQwVYrnrsm4x45cXc3p6qZt8Z4a2fA2A+dnvBsTGi26bjdjQs1pK1rSFqOLCPZEGCCAQtA4JPALaIPG4WHjuTux7NGA9cLH53RHk6G9Aio4Pjo6+gn4UWadQS9wMQT3Lg7dBexkLRl9TuMZrUDFOfg3CV1hWUZcq134Yc8YLsY+js6PQrjGwZKwjqFJVtx2jlfxeFFIXbZS/CKX08eTAC1Q6s3vjoa2Zgx1s+dM+sbAsJ2eORo7xlB4bMaa/aFTqxyyfnL6gUDqxAJ/6mEWB1Cl8bxDV9y0Ss6i7fY+rbgW2xG8xtOfrqkKAotNN8XgJfvvJnx5xHVW3q0PfBcuolDFMIhc/2CPWbkWGpapS4jZAkgl/3pyofd1O4knjE3jI5v8a/1Tfk6YhsYhpJBI+ZMqm3CEzTv4pNRh40K+Oxq2+MX+Ei1hSEgAZjDExAVqFFPQ2EIqOGmfvi20xvALUEP4ANTHN+13QPXdJwL+8brdBuodfNqOsLbbdExAJfHtH0BpdYd8Y5XBtJUCVNf34SMFCgOAHtUCOmSrvze0zguQxTl6WxP5qudbznWpjY2E/MlF3+hunTl3ifLszkw3hQeW6pGl0bzUetsJOnoIAY4ies7+2dZEDOe/Jqbu/NMaDdcMgvvAmn+QKCzTXmxZolis8XUwVTorgEILQgr+/pidP9WQAScC0u1zTxBb2PrQXq07hW5oUFL3tfPnBQiGlC25ynG4nhwmr/vTVGy1B2HJFlQljM280dXZOht2jbHWF6pyO21bG24mjyyb9JHW+OLq5bGAT/WhF/lQnFe2Cbw1zofCKhRIoMpgJMstvWvqdkdpHHouE0KJTTnarV0dmwoQrdbNTevm5uZm9afhUxg+RboGFzmaxbpyKfj5Z6CPLiX7KotKKDvFC6LYV855YFQzr7gUjia9lfJKvKcwdENqJCD6UBvajpG9J/Et8TBaUhSFCZQ1ubC6pjG2jdEwD+u6fpcLagq4bpR1jSzoYUi3NBTsSRsnMYkrHMVL0dTUrdHE7OrOlTmajFPIxIEogPqjrsaoT1/fL+ynJRQvPw4c+9NYz7MghHyXSYc/zNFAoBdjRJ84DRlUEtGz9O7ENOxPJXruCyg/GqY90fqObFSAMqtjLIE7a8aMo5hC270NYNaTOZrYumNrF/1sgEuMFi5+0u5dFLi3KED0ycpTNzaNgWZ+crSPmtHXLow+G46VY4FEYHluAGtbWl2trxeacLkc4+ge+RBfuN5dNJ0OIl+24zI6NkcfjZ5uOhda93p0eekMRj19IwLlHKxpu9rQyoQUI0jWN3ZM3TYN3dqERH9cRiEM6QYs+m/j0ZAp1Q1oejFOxHQdmt7EFLK7Ac0/EaUQb0DyT8O2dbMWhelS2GfH/5rmpmbr/EC9ueW/xtamxs6/xtZmBBexdwc3EuBcTLrX+nY6fsWIwm3EOL+ahq3vQtJ2dIKuIsaYQOFp9w0fhhTRJ/2RwpAkEz2xdGegDbUrvecYPX1oswWm/2brQys30TGBWCMEzcIMj9ETC2Zi6aajWZZxNczjyOnZmEAjJNQNPTiA1PVd6qZ9G0PL1oZd3RnottbTbG2Vak3Xv3AD1ghbd3GiPLWec6H1WQvTsa4naR8+IkzbjGJ6G8Whbw01m/dRbNEzLKZ+nNHEvhhNhj2HwSU9wkcviH04cAmF+BJHC4u6oe9iv3/BUem/dfuTHmOXZeumc2mOBg4jvqeZPad/sUo1kpi+j24c5PTR9YA7SMWcfdQmfVtaC7LZwn1Ei3jRzw3bjAPYjWK5sgfab8ZgMnDYiNIBmRN+YppkSzvp/ho+JZ3fvSVK9e1HiKUUKMxiEblm4jCsPhZzoDbpRNAByv1JTeBbpqUorU06q+UrYL0tsBsuoXF2wFTO8BEZPU7eEjSGV/yQbFwaXWY0miNb7tbcBV2f9bPeHq9PLLKcxGEkzkMbEopypgm3o66LbTeZVOmpSx9+NMzRcMD0f87EKppZaxHnYuYlq2u3JlUjbFO7ipEgIfXhRw5X52/ciZCcWJfnI7WRsgSonZK9SnNTQlOeGV+48BPfiJCZddOxDtfaydipQWUqdmhVMSRzTFpnqe2GOTcjNeyTbrfO7pEFL1oInSJZm6WobmKt7GdXxlbBpeNwHdx+WcFlDl/2tSuro6piSGCrICVKvJTy2R0aqQ+qLn/i+KQtkz0if4mjWwhusRNCOkUBhbjoRh6M2E5wUc6WUEOg5BspicW+iPw4gERl+3nTb+VhctkLOUqNMbcbSHkEyfN8XEdsT4ktMu5PrjjPO0Dhqr9mV1rcg0Z3aDgXxtDpGSYTHLFLsK4CRKh4nUyjYbZKgsGTaEogFSSlXKw8jaO+0f0k9YrnBsiLlLo8rCSpk/ygLLhtotxi5M+gkn7OpQYrP8xe7kEUDDaTxUM1616GUcj5Cl68KOFIzgNcYWa0/f8enfRQsZ8WuUVhC95SLjhApSB0KVDVFF6sE3l2lInRzOgN7qGfyllAgBpQLMQZ87c5yXVp/YvJxWRoTxxT7+uapXcahwG5dTAMoEsgUDFQZXgtnYpiA8nI47fN9mkyH7UQJ+2tECdbIU45xJq8diOcRRiFszTZF0sOgS8xxE8giTbdxhTEhAEiSkCOH6WUQYHVniMCEGEdAoIWywASCtzlEkeuNwc0Ag8RvnMxO8yDtENESAwJeEB0HsUUMJUfQAqDJxCHiJkYQQAQzbr6zDMtcRymO4hElZ8uwGWZxH4EghCoZIcWtTO+VVY2yosQRRiSQrRNCmFyVLH1vj4emfbW84nAY8MALiNM/QO5LDYH+Oticgo42BDir43iwUfoOTxuVRvjL22Bj9Dj5SzjiNCOWLBomSzYMbgcmb9qZg9o3a4+tpPYWcIPjZ3Uta7tWLapawN2et/GmSCaEYdGDryHISVA0a6tZtfSm2XOywcapmjqetSiGLoLFM4UsOZFcZusoYybuv3+QXICLeYC5kJ8OaVwNZ44w8TOYoMpaF5yh5ZOeI985Do+RvcQO3IVFIdfkAy++q5gCLHLE6DDKFSvxpNcjFFuxzxMzt6EkQ+BH0O2Kj8OAHVnMlSVHtKzoKdU0cORw0jf6MvPOmzJQwyNFkGRjfwU9Ktmdz84tjHQRxP7IJdHURlLZQxpGvd6Uv8aGsUUFxaOR4Om33r3Tp1G2IOq2PHYhwcX++uWCjgIIW2i5f1pEy0dCQw64Dh7znN63CBoyreMETmAs40Aggr5Sw2nqucGgZquQAYmDpUbz41idEBVhV6olKB17T7bckZarxDeRkR1PYruIVDVLzGCFPiRdwcxk/DDFMyR+zM4aYPXbd6pBKupdOs5vVH3Wjcdyx6N+Rn1aEMJXU5edqmak+p5GPXi5Sgc42iBiBdfcN5lVSxr+hJt1TBS/Xi5T3epFt/aBU0g90FfUWSym2yaRA0dcD2sLhDGEU6UfQFKZCrUA7G9lae5uB5u0SgKSCu6hzhwn279llRZTTLfCirWoBoTiFV3BkPaJHPAz4Fbm4pB8Pwz1Y3pfPfuWB9+9BByC0byYuoKHbRre8/15mxz4YYp+9tC/4ZXF+D1yR5I4CObXIglHkkK0/HfjoR9AO/enr1mG1Ji/YnaJseLMHQYrw8A8GIcAPU3MJ7Y4CXPVZtHhJ6/ffOPtxL5LyHpONI4fSFoc3iBx2OHz5CHmyh6QbiUMUW2cGknJfAlUEd1MscHlA0j/Uul3iKuFcP6hiR0l2QecUdhhiT3dINIFzvdCJBDuGZtsL10EYXZ8utxVZYu7UR7ySik/pveTVat0dc7dYcwoQzXH8A4XjaNzHxV3atEe+ZLt/N9D0aToS1cD6lS3b1zL4AudhZRHFJniaOlO+NRJWcauDOS0SP74o6hDLnA1hIJUTnHbTFf75jtAe1iSp5ISCCgUUYM6mqc/vgCXjZfgp9rwF+8ALcYund19iTvpIGAyog4abdrcW85GKwpiSIBhEtwXO61JuOvumnmdrFtG+fmDY+fiZLjUWEDXb/n1G3F6Rac7jY5eecVqlu3Mn/uLe/PdtjHdvdpoeWZI481Gzxaq4ODGaRjEVYeIs8YZ44ApvbETNloATvHuacL91EGczvH7dxz1Cl8WnYU6eR+mKMA8kI9xExG0Mgw8AN7XraXncahUMDE6gP1A1CSONo5EEd8no9/3modn71rnrw5bcrfrYWEE5ts6MGkhLuFQgrx1PXgL+4SqfciGNQ5aZ8cq+0TtX3MjsN/fAEqBi+bn9u/J0dQzfcxJIQ9kbcOGMmzSgkizw9CS4VJZeMXvmra9TWHa1ecWBaNlOdZD53G4SH6e1JQm64Tec5HS2VdpiQKZ7lcYTOiXD8VvIp/ZnBIVvSL/oWvhBkqGQUASxIAIkCuWP8VCCM6l/Wp6SiUXIUyjXEI2sX0J761A3UKyDyKAz9Z/47s3ZG9O7nenaR3oZVlfHSXUfN61sq6c8KIbT2UgOM2U9RtZlPNgeo9fgtRmYuMC1AIQXsNg1n3vN4S+JBCvEAhZO124rsgDNzClP3g9olbvcsoCnL2blG990ej68nY2Ydnjq1dFaZsp0Z97ULvd5QsttdMXJ9pKESVA1Q9t+OJS1eUYpRrHzJfvdoY+Po2ka7w9JW4wYSLNkOQIOQnBeCGvnA8BO4tDEguNJiMQARHcrEX/qClqrx3qIp82EJ1RIcNaDMEP9nnI5E7hAm38KsmWFgT8cqH1LIajQ1ARYcF19Yv0RQ0xajsvnURRZRQ7C4Zbdx5xMiqBxAWDT+XgCaAof8yxX5UGUgubJcIslBKi+g+UbXDyId9NnXFVOvNQr5Wv6WJ0fvJnrz95ZWoynb9vEixiQ0h9KGsY3J9/7tIT084EkslF7+nX/K0j9xxtxjKq6kQlhDpUiZwcc9st8XSxRAIoTSHuq1bzkfdtIzR8FxV2s12s62sgHLcPHnXbJdLnDZ7QK/T2CrNscMYXwbuTAF1T2tScItLtLRCeVA0t6DyfFkpNVhM/crgKTdW94Pem/TZmuuIpfZ+N0zFSFanJrT1fj+SjIF2pecGxj/vj4YXDXDxyXMp93QXlLlcbJGLm0v44HCyaqVeja9v0tmCbythct3WB9Rr4NPV4nS1NSnXMifdzaocspBG49BHvMIq6SZBs0qSrfPJDLwQylybvJC1XTOGHEDduZHn3uqO3beci9HItmxTG4+N4VVxo2CGSL7VFvDSBCasZK32z5egAblN9H8pWWIDT0v9paytzbEoAG5JsKiHLWVXFID2T60osDdNrmDcSRIs7l3cCtBtwrFW7p2qpuza2KQOqpCZ8e3iUpp/Teul+dcd5cx34enJ9K16+vrsrXp69o+36rvT6VR9/e6sDU/ewtdnr9tKyV/ClIZMnaqjwGE9yNoIbTx2jF794aZAyH4I64w+2TJrxeYvfynZTjzfJs3beqkX7e2tKnIuyqr2aCiFfnuLmhXgLpFM7DwH98cHdyj0z4Hw9R5Iw4CcH6iAceFceCXk4wMA5F/nB0mBsjxTcYd5hBF9OgebNLJMIGWny3Mgbj5otaoXG56fnr4+iEmBksSOSWfyQPgsz6VlC73zlD/5McryJEYgDCkSlRbNu7ekiaLW/XEuR3OxcBkvhIucX7mU14DsQ26BC7RZj3hGsv5VkKcyeaaqIXyk6hJHNOq4d0QtYCwAuq5IooixB9kum1s+q2yFhhRi4ekbRD48B0N4z2dJ/MhMXnnDphFOI+ELOvCikMJHynkr/5YTKme3POuS0bVTICYnxxeB8MCLMYYhTT7XgSQaT2QbffMm9xdrgT2X//7rfo8F/5+Vzjh9B0NREFbYOOzRtc4OBv/zpDvnyN8qobvL5U7SuKsMbpW8/83ylqryTMjEo7zf53y36lfZ8A4+nW+v4/1mUU0prrJyrYTWAeXOnAXzitvUk6FtDPTErySKKqXUZjtkGi4imQ0xP6g5mK9HVytL+Sutf+D/ZTlfRprzpfrg+Oxt8+x18/jkXfP4jK0S6i2Bqvrc0f22DdQ/ALMHvqn565M3J2cpBplZxjbWLPTTaRzu5i0phYwUUHogfGj60GInOmPQs9iGb5tGlzuQ9jfeZDIJWviEnSQoRh4/+GR23Bq9soWEVM+kOmZrgxr7eLc2UoS2Au9u5yU1n0Oj67DJe87P5UopAsvTSLnfTnpOKb8pIzCGlm7aVcJ5TZY9cgba8KovC147jed9wOXd37kE4UbBhcbOSz8qaOHOoOphyCvy3EBNqrtkvYDyI4+87dXyFoWqj7Dy47ps4G4SjAJZ8+Qwinmk/jaic7CNNu7f30pGEgvAEJAl9NAUQR+gsBgCUPb0bAoCummvSTmZAta92bMDmdBU18PaV/X3LJeC4onbuxC+Tl3UNbldlsxHmfDbgbYG3ZP0FVXcJtSkaFHJshtqY+vDyE6uE6rrdYBmYxdTJOKqO1z6v0Azfj0yb7H7Vf/rmh23Vf4KR1MUwO33/O+BZ3dddDWeZMWtY3PEt1aR0Ft+vMrcQ+tmpkBibn553mU6rzLTsnAELSWfvlPFB9W9y2XjrHORVPBV94c6mJpbZdaCpbeBpADrasrWoth4JWwxMzUXpXlLulFIcRSMAzeE+fh/w9SZ4WHq/5oYpt5LnLTDUVo3zEuM6u1VEbnKn7s2Zqdw7dy1++DkfSZY8hynonAalRb7W4udtYbG8CrNKVodHIhbkZn+GbghmkJCewgXAlADbWhc6pbdM8xO+eS6kG1IURYapXasoweMRD9iGyh0ISaGdzCPFrDVSNPLWk3WWwlQLIhCw1bONiqSkYLkhK9RxJW79Cfr+Tz7sw7RjuA59Eym/9Fu1yNL68NqmuYCwELkD1RVLRtVeTtqu8mkigygG6UhL3WTkckbpWAu5aiRxlJqWtwojaSa/V+94c0u5nWlSWa3FF+prr9AIQdY11nZiKlAFIzMkl23trdNdl7GshxTqqzL7LzaBtf6pxvlgB1M1820+pilH0kXnRbTiHhuALHm+7mEo25/wkehTewRv6zEdLRer5AWmS9pZ22ZmSk0hJsiVX24DKIntvk0n9xFcJCvmydffxZDMnrvv8rcgsaGK3Ky2P/XmQIaG0ms78iC3g49iTt1vqc3Et8WxlS8H+h7MMvriXLI0yuKvgctnmUIi5fn7IU1lS6ta3SjMIQejUqCpXV5xeRQ79oj0+maOr+aQ+tbncYh/96AKVCebxQpGP6NwsT8/5Ab5RVInoqLkYpvkmubik+LlzUV3wkndg9hTuSTHvrLCIV0ggMBl/hzgmiGwuYCeTgi0ZRGYYBCnuV0o7y6SS9ckheHr8Wy4O/5OsjSpGoJucLucp7ccZQQnaCZsZfNBxT60QNphpBKHORLMEh72IUIL8Iwj+f87enpa4ls5gYB3MAR+b4ykMV3UdC6UVYKUDYpgI2vxaplIOmK4PDFtZc/wT2A9tFB7SWOd/AJYOKen7bfnclbHcPIh6RwuePrszficscopmv8bq6H2D4i1gEDbS7hQlz1uEsD9ky0SG5/7EyslmV3ulqr37lHmMZukHhxR5UHk/KT7rD0RKlZktf6p07jUPJor2E9yO++KS1x3bT3Q5gN+yGZoCLK7TtREeG2TQhDn7z/2lirmrjmW0dCVZUO3QV8/7WkR/fCwThQJUg37b2w3MGnCpJr/dNmHJkKZ6t7HAXIeyppcJ5+I3KUdpkKhkddckTbZgKnau/911ZeeZNWeSG3ClfdkVYtu+spzcZ4NZ70eIVq+f6Gxoj7pBqyMH1kcU9+zcUNhbucn13u7ySvZst4Vb1tIS1jSBzTyYULafmDUp+I7lEM1BCI+LHwT4ElM8kaw49Gz9Ccnml81E2R73Ve9zBN8c0ZhBXz7w04bnNLQSZHA6XRtU0ndQ70+0530NuvUzBbxkkNfAuGFD/xjaFJ5onXSSnT1Wn8UniU8A9DKlLa22vYlFkxl2neddL31XgCRDHyK264onBW+DKlaiI1G7YYjVWu7KjJDlkzTQTgBTfzQ+8bJ6tSk5NNjixo+b75SWYB/K+ZBln7gxfoG1ku8fEUgd3v6E+KMTOdkkua4KMf8pr4tJjfjqLgDuUuQOHONQE0ZuY3oTD0eJpFGtQtX+AeEa6qwogCEi95DaUPXAroHBFA0QI2AblDy6UsQy+ovFL1wHHB2bvRPSSK+9W0hkmNgeq1iz6hDfO2HvfrdjtBThboT0B48gYEvvTt74LtG76agTu5xKxZT4sAhXd2pAVBj3872JCdGivhzu/bETaOdnmHggColnH1YTJeW1iXH32iOvLFgAWls0d/Yunt2Zm4Y+TeDZDvUrh+Sz5ERDMHZ6dHjEW134+Y93Fu9cGuEeIXL+TSmi1jqaoAW9bQ55fVlBfRzjL6MEfePCfc+ZH9wkZUU4RmDQzH1K1J364vaxJjKS6ao+oE7o6mwQegWzYPhJeRShFm6CxbsydWskXIYWQv2P5QM54cnKBHxv3CaWSOBgAR4EUYx0sK/bpQX3VjMIaXI8ccDZzuyDQnY1vvbfh6v123lFT95xBUROIhwndMqU5RCJXKVTl/qhDntcWlcZUj3zEunaGu98TFMslNLHsVVmSUNiv7Q0XYq3zZGXl1eSug+qz6Xce7HsR3JqS07BWgrItuVSB3XerF+7usD9UIZ0+8411FS0DIvFSqLMviLOtDzmNbCc9m3trUVs1uc92Y8rU+BJ7ZZWvCb1v6qsbitjY4KBXnVq7OzG2TvOjG/OT0hpbDvxHzt5odMvnalG0db8knuyuE5nPpuzIAUJkPGRJIOMqTc5PAgOvhupwCwWmXenOD2wtJPq8KlB+b2Q0VSt1jL6x97MPaxzHJP96XyaKeWdR9dV1vDpOLuc+BctxeyGK1fAp0OtZkqM2En8U86HwWs7rpstxKcuN/pnnDNP/PmCuhCuvq87KNceGTUUyXMc3uEwDqB5BeJsC3NVUNI/F1hcqPClDVhfuoMvsGvPlLbhk4yYnMUfGotubCgJCPTPN9TDqHuTsHlven7GFSO9vIhrv3VQag1QKKkrvQIL3MQPShiDsDc5T8vXOYe12g6mxnqs6+maqzzVSdlaiSIHjWaRwal1bnFfgpTcTINf/84+8r5QjUFA2lCOoLgmRpoc+vGlO5R19Fy07WDNCoWO+t1JZGJyXexRS2OoR1X9a9Ojj4QR9d/r8AAAD//2OpGGpAhQAA + H4sIAAAAAAAC/+y9eXfbOLIo/r8+BYatX2L3NCXZcTyJu5U+tEQ7HGsbkkonN+4fD01CMtoUqQCgl0n03d/Bwp3anO775t1zPWc6NlkoFAqFQqEW8Ie/tW9Q2L5xyW1jNO7rjjHq6x+7zYPbiNDQXUDwDVAXBUD1wPGhABlpQz0HcdhoeFE4Q/MYQ81foHBKID44/NoAAADv1p1DoOpAPQKqwf+7AB2gDsFb9gOU5letPzRGU0s3V0q+SVB+t0r6mWB071LYC2JCIX4fEUoODoHob3HnIwzUJWhD6rXJE6Fw4ct/2xh6UeihAKpLgUJlYyAtAvE98mDLb3McNIq922ciOOqosy9+2GKUCmQQ/gmowDvQ9uF9O4yDAPzyiz6+aHy2BOTvDT28RzgKFzCkXeVqeq472sRwLN38oJtysr6WnqyUBsMBgKDGo4EeujcB1ELfoi6mYA154Ns3AB8RBU3dNB3rk2Xrw549cCxbM23nQjMGjVUmDTZ2Q7J0MQzp+3gOJ+4cphOl2z3W/sJyeuPRRVdJeDQjfMBCFNAMfP7M5MB+P3H0kXY+0PsrBfytCxQF/P77z4DewpBDsh/o3UZV4HeAoW3fQRzCoL1YtGlGlXMbz+HSncM25MP3S7h2a9StdPkONL8WB7jimGeoOqy+fmFql7uNKoXdbVA+nGF3vt+YRJtuub8NI1rl1r8lhHxKYD9auCjMFuZIt38bm1e8qXHpXBgDPZt0vjBCSB8ifOfL+U845T7cgZft///6c/99b3J/cv17++sscOfdo59BCB/pCrB38llnBdi/4MUL0P4hI6IbRu2XQGnW0KCUuE2gD1RU6vAn3gUgZZy5v54gab8EdT0kbEpnnk2mMflw6vSnGl85vauc7HS7QKE4hgooC0KFF6d/MS9q+XH6p/AjtxgS1qSaCGBIuA6SgqEmgrEODpMnEkTzoiA+uMsLFGT6hjy4S4egf0Pn7qbbPICPSwyaX63ftAmnyrGM/9Kd4fkKXP8IjjqdzmHWKog8l6Io7CpCK+XWsDoQetlH5K7t/jvGsI0hiWLsQXXpYnpUXc/Je4e1cZYuve02D2Yo9BchBWqIgRoB6uI5pEC1QPMAQ9cPUHgH1NmWvg4P00447hmGcrT+DDS/VjtegW98go988E3I1tclRiEFzZPVy8O84H3+DJpf80hXQJ1T0PyaZ+uqOthM7fyGggDEBKbj5zSCWYQ5k8EMBVApil6B97X0txkMa5npuIDAmt6NkMSzGfIQDKnomCxdD4IoLNFDI+Bh6FKYUXUGMPwSQ1IdLuNFmS8/AZdSuFhSFM4ZtpkbBODG9TjqscV7abVayrplIOXq30xLFDiwqtkbIuL4kBkB3S1yEkV0k3CoE9D+vyELkh+7S8GfMeGsU8400PyaMnD1/TNfpDtnJTEd0zN1zWbWtTW9uDB6hj6ynb5hXTnWROut1YliLFZCD3hgjLuBgLj30Ac0OgMVIWkIHUPxk7fwHTRzZi4KYgzB8Ql4DY5fc4Fk0NzELo3rqoKvZPDlhsKNPWGvLyIfnHY6lcZbaVnccV4/o9NNWBmyKPyLsKoquY0ewDcwx/BZlCf2XKlhGIVS8sgD6IAOt7m4fTQj1L0pbG469XI2/05nH25UbT3gJFBLHD0+ZWcYMcOd05OTHRsVyRGN3CVl/5fQZTqKb9tvX3Nstb2vAc0x9/PQDd05xL9nTNxpnIl19t62J87EHH/85EzNgZXZ5rWmeQbdrWuaUACzGSshuKV06XBSnolA877ECMOzM4bp7IyjAtc1A7lWfs7wbWB5hroPZ24c0PwR83rziK+VPbm+pbON3Nm7s9wJLJlpa7+ptgojt54z2aQwHuu7ppuU59v6iyZ8w7j/iinfwKPvnfTRePcZT2C71WbbJyqM0kHs37iWM2vJ+bOnYC3pz2F+cTtQ6txhd/ENDCDN3F9K6j3bDb591FGZ3GS9KyWn2Ut9fPGy3m3GTordynzo44vCtssEccLQ97R0z0UzgMjQxSiEeIw1Zm0PUBg/AqU5tsoHag9i6viQ0K7Sjgluk1sXw/byDrU9V6U4JlQVZ5G2G3q3ESaZSRkvfZdCx1v4XUX8riZtBFDBDi53xMyMQHbnuSp7jWaIGYFbu6jCytWUU8W2ObVsve/0NHaylvZN7fuVAr6BRxfPyWHBGFoPfOMSeHoCVB+8Y4DpyFZCznpay8NUKdpd00mfmVw9zenppm3xnprZ8DYD52e8FxMaLXpuL2NCjbUVLWmb0UUEeyIMEEAhaB4Q+AV0QPPgoPm1N7Xs8ZD1wsfn9MbTkb0CKjg6PDz8GfhRdjqDXuBiCO5dHLoL2M1aMvqc5le0AhXn4N8kdIVlGXHtTuGHPWO4GPs4Oj8K4RoHS8I6hiZZcds5XsXjRSF12Urxi1xOH08DtECpN783HtmaMdLNvjMdGEPDdvrmeOIYI+GxmWj2+26tcsj6yekHAqkTC/yph1kYoErz6w5d8aNVYot2Ovu04lpsR/AaT3+6pioILDbdFIOX7H/X4ctDrrPybn3gu3ARhSqGQeT6jT1m5epNTVRFsJspXxxCCokQrZxbTJsYMswwmZ4PjJ5zpX/Kz1S5adtdIjZHEPN1nDsWKDxoUY8sjRSlJ4OdoKOHEOAoomfsP9uaiOH819TUnX9a49GaQXD/SusPEoVl2ostSxQL+VkHU6WzAihWGKTg74+ZbaOGDPhqeq4PdNvpDbiXgQmNPrJX6yycDQ1KqqR2/rwAwZC27uBTxdSqJ4cpsf1pKrbag7BEvVUJYzNv9HRnYhqjnjHRBmIZbqdta8PN5JFliz7SGj9PvTwW8Kk+9CIfir1wm8Bbk3yYpUKBBKoMRrLc0numbneV5oHnMiGU2JTD3drVsakA0W5fX7evr6+vV38aPoXhU6TbaZGjWawrl4JffgH6+EKyr7KohLJTvCCKfeWMB90085JL4XjaXyk/ifcUhm5IjQREH2kj2zGy9yS+IR5GS4qiMIGypudWzzQmtjEe5WFd1+9xQU0B142yrpEFPQzploaCPWnjxN99iaN4KZqaujWemj3duTTH00kKmTinBNBg3NMY9enr+4X9tITi5YehY3+a6HkWhJCO3AVMhz/K0UCgF2NEnzgNGVQSLbL03tQ07E8leu4LKD8Ypj3VBo5sVIAyq2MsgTtrxoyjmELbvQlg1pM5ntq6Y2vng2yAS4wWLn7S7l0UuDcoQPTJylM3MY2hZn5ytA+aMdDOjQEbjpVjgURgeW4Aa1taPW2gF5pwuZzg6B75EJ+73l00mw0jX7bjMjoxxx+Mvm4651rvanxx4QzHfX0jAuUMrGm72tDKhBQjSNY3dkzdNg3d2oREf1xGIQzpBiz6x8l4xJTqBjT9GCdiug5Nf2oK2d2A5p+IUog3IPmnYdu6WYvCdCkcMNOyprmp2To31ja3/NfE2tTY+dfE2ozgPPbu4EYCnPNp70rfTsdvGFG4jRjnN9Ow9V1I2o5O0FXEGBMovLi+4cOQIvqkP1IYkmSip5buDLWRdqn3HaOvj2y2wPSPtj6ychMdE4g1QtA8zPAYfbFgppZuOpplGZejPI6cno0JNEJC3dCDQ0hd36Vu2rcxsmxt1NOdoW5rfc3WVqnWdP1zN2CNsHUXJ8pT6zvn2oC1MB3rapr24SPCtM04pjdRHPrWSLN5H8UWfcNi6scZT+3z8XTUdxhc0iN89ILYh0OXUIgvcLSwqBv6LvYH5xyV/rE3mPYZuyxbN50Lczx0GPF9zew7g/NVqpHE9H1w4yCnj66G3Pkm5uyDNh3YMoNINlu4j2gRLwa5YZtxAHtRLFf2UPtoDKdDh40oHZA55RbTNFvaSfdX8Cnp/O4NUapvP0AspUBRGiuZxySMYfWxmF+zSSeCLlDuj2uCqjLlQWlv0lltXwHrzwK74RIaZwdMlewRy0m8AsIw2ZA1kjsj8APNVbHtprNNav7oow+GOR4NmSLOnXWK5521iHOB0dLxZ7cm1dPQpnYVa11C6qMPHK7OqbQTITn5Ks9HeljJslx2yugpzU0JTXlmfOGnTVyf4qC+bjrW4Vo7GTs1qEzFDq0qJ7ock9YdmXbDnJuRGvZJ30p3d/exFy3E4paszfIQN7FW9rMrY6vg0ju0Dm6/1M8yhy8G2qXVVVUxJLBVkBJtWsrr642M1BlUFyQ/Ou7IiH7kL3F0A8ENdkJIZyigEBd9hcMxU8nn5ZA4O5TnGynJ0XkR+XEAico21pbfzsPkQtQ5So0JN+BJeQTJ87zzXuwTyaFgMphecp53gcJ1cM32sLgHzd7IcM6NkdM3TCY4Ql2zrgJEqHidTKNhtkuCwTMlSiAVJKWEmzyN44HR+yT1iucGyIuUumSbJHOP/KAs+CFBucHIn0Ml/TuX/6n8MH+5B1Ew2EwW98evexlGIecrePGihCPZmLnCzGj77x6ddBWxnza5QWEb3lAuOEClIHQpUNUUXqwTacTJ7Fd2+gzuoZ/KWUCAGlAsxBnztznJdWn9i+n5dGRPHVMf6Jqld5sHAblxMAygSyBQMVBlDCWdimIDycijN63OSTIftRDHna0Qx1shTjjEmuRlI5xHGIXzNKMTSw6BLzHETyAJKdzEFMSEASJKQI4fpbwwgdW+RQQgwjoEBC2WASQUuMsljlzvFtAIPET4zsXMqgZph4iQGBLwgOhtFFPAVH4AKQyeQBwiZusHAUA06+ozT6fDcZjuIBJVfroAl2US+xEIQqCSHVrUzvhWWdkoL0IUYUgKIRUphImpYusDfTI27a32icBjwwAuI0z9hlwWm6O4dYEXBTQ2xHFrQzXwEXoOD07UBnJLW+Aj9HjNwiQitCsWLFomC3YCLsbmb5rZB1qvp0/sJECS8EMzbeNC69mOZZu6NjRGl1s5E0Rz4tDIgfcwpAQo2pXV6ll6q8x5+UDDFM1cj1oUQ3eBwrkC1rwobpM1lPEz52DQSCzQYsJXLo6TUwqXk6kzSg48bDAFzUvu0NIJ75GPXMfH6B5iR66C4vALksFX3yUMIXZ5lmsYherlZJoLJMntmMdC2Zsw8iHwY8hW5YchoO5cxoxSIz2LbEkVPRo7jPSNTvWsw7Y0Ymi0CIps5FbQb5rde+/YxlAfT+1GLlheGUtlDGmu7npS/xoaxRQXFo5Hg5bffvtWnUXYg6rY8dgfDy721y0V0AghbaHl/UkLLR0JDLrgKHvOEzfcIGjJt4wROYDTjQCCCvmPGs5Uzw0CNV2BDEwYlRvtRjE6oKpCL1TqjHr2gG05Y61fiGEioroeRfcQqOqXGEEK/Mi7g5hJ+EEK5sj9GRx3wKsO71SC1ZQz9Z3+uHelm45ljyfcRj3cUCeVk5ddSqOkeh5F/Xg5Dic4WiDixeecd1mpwpq+RFs1jFQ/Xu7TXarFt3ZBE8h90FcUmewmmyZRKAVcD6sLhHGEE2VfgBLh6HogtrfyXAbXw20aRQFpR/cQB+7Tjd+WKqtFbreCijWoxgRi1Z3DkLbILeB24NamYhA8yUh1Y3q7e3esDz96CPkJRvJi5godtGt7z/Vu2ebCD6bsdwv9G16eg1fHeyCBj2xyIZZ4JClMxz8fCfsDvH1z+optSMnpTxSwOF6EocN43QDAi3EA1I9gMrXBS56QdBsRevbm9T/eSOS/hqTryMPpC0Gbw7P4H7t8hjzcQtELwqWMKbKFS7spgS+BOq6TOT6gbBjpbyr1FnGtGNY3JKG7JLcR99hlSHJPN4h0sdONADmEa9YG20sXUZgtvz5XZenSTrSXDAfqH/VesmqNgd6tM8KEMlxvgHG8bBrZ8VV1LxPtma/Pzfc9HE9HtnA9pEp19869ALrYWURxSJ0ljpbunId3nFngzklGj+yLO4Yy5AJbW2S95DyoxaSsI7YHdIp5VyIzgIBmGTGoK2T54wt42XoJfqkBf/EC3GDo3tWdJ3knTQRURsRxp1OLe4thsKbuhQQQLsFRudeatK7qppnbxbZtnJs3PG4TJeZRYQNdv+fUbcXpFpzuNjl552WIW7cy/9Zb3p/usI/t7tNCy1NHmjUbPFqrRmMO6UTEd0fIMyaZI4CpPTFTNlrA7lHu6cJ9lFHV7lEn9xx1C38tu4p0cj/cogDyaizEjoygmWHgBntetpfd5oFQwMQaAPU9UJKA1hkQJj5Puj5rt49O37aOX5+05L/thYQTm2zowaROt41CCvHM9eCv7hKp9yIq0z3uHB+pnWO1c8TM4T++ABWDl63Pnd8TE1TzfQwJYU9kabmRPKvUmfFEHbRUmFQ2f+WrplNfWLZ2xYll0Ux5nvXQbR4coL8nVZPpOpF2PloqYib50QBaMJhZPIx4Jbym/PwZzusyQxM/bJKcYxofNFvfmgkn3bEyG+4OPil12Hgm1O5oeFIdxxMtYUhIAOYwxMQFahRT0NxCKjjunLwptMbwC1BD+ADUx9edt0D13ScC/vGq0wHqHXzajrC223RMQCXxzR9AafdGPPFcXjaxUoDq+j58pDyz5A/oUU2EKLv9kXVWgCzmMBbmquD3ZUc5cdJ38tSwYzYjx7gweoxwc2zLrBdeJlAfx5GF9aIz4c1iR8lMNACOKN/EACJA6lT/JzDPzp0EBjNVxKlrETwgeptMQuad2kM6c/XHNMYh6BQiWbuwwBlo5/qgq2QS10ocqGlARZW0q57b9cT9HMp/8JoQpixQZ4DcRnHgJ/udIxs4cjhObiqcZC6FFSID87swkBfpVvYZJ4yYqUUJOOoww6QDblxyC1Tv8TlEZS5hrjBDCDprxJV1z4tIgQ8pxAsUQtZuJykWhIEbmAozuHniXp5lFAU5/07RnBmMx1fTibMPzxxbu6yNue6DZGMQ9nmLt2a8JYz8BhWuhhi+BD83YoEbpi4yl4AQQh/6SiWQKWJ3udAgf9BWVU4QVIU4Fyo0umyMmyH4wTMXfvzeIHZNILsmGpsP92ZFIhuAis40bkm8RDPQEkOyB9Z5FFFCsbtktHHHJiOrHkCctrnNDFoAhv7LFPthZSC5kHIidNms/req7IpELaJ74XD1IQjcGxgUt9LNmlvJbQGL6D7ZHEeRDwf74qqWHO23jOTNOcraIaoqDQgXXJVXvrMVI54l9xHdwSfxaoajRXF9rRnpReDOgVLC3F1rjOyApUxLd5v98//ksvNhcNCiAWGieYECePiy9EJeyHUFn9LXz1pcru8/X7wZR8ua1PX975byfFhNIqtY+n39gifG5fwQxRyLmvp8CZHuagQu7iHuRYuliyEQgmGOdFu3nA+6aRnj0ZmqdFqdVkdZAeWodfy21SkXGG4OTV2lSS80xxVjwiRaAXVPa4oUiptTaW/i2So5oc7zZaXUYDH1S4MnJVq993p/OmBy3xUC/243TMUUg25NzsG7/UgyhtqlnhsY/3t/NPxIwqUoz6Xc011Q5qpVRLVCLhOPw8masXqbZn2T7hZ8WwmTB+z6TKca+HS1OD1tTVGKrNpxszqwLNbcPPARr29MuknQrJJylHyWGS9DNNdmlWVt14whB1B3XOTVCbpjDyznfDy2LdvUJhNjdFlU1+Dbt0KrLeClCUxYyVrtn8hGA3KTGD+lLLYNPC31l7K2NvmtALgl860etpT2VgDaP+etwN40641xJ8l8u3dxO0A3CcfauXeqmrJrY5M6qELK3PPFpTT/mtZPK1S6yqnvwpPj2Rv15NXpG/Xk9B9v1Lcns5n66u1pBx6/ga9OX3VKlgVXGjKntY4Ch/UgjRRtMnGMfr2JUSBkP4R13jjZMmvF5i9/JeBOPN8mzdt6qRft7a0qci4KT/doKIV+e4uaFeAukUx9PwP3R407FPpnQAThGtLXQs4aKmBcOBPuYvm4AYD87ayRXA8grXIeyYwwok9nYJNGlin27Gh1BsS9I+129VrRs5OTV42YFChJXEPpTDZEMOlMumCgd5YZbLkxygJORiAMKRK1aK27N6SFovZ9FujwosXCZbwQsUt+4VleA7I/cgtcoM16xHOS9a+CPJXJM1UN4SNVlziiUde9I2oBYwHQdUV2W4w9yHbZ3PJZZSs0pBCLEMww8uEZGMF7PkviR9Y6yPttjXAWCSd9w4tCCh8p5638XU6onN3yrEtG106BmJwcXwTChhdjDEOa/F0Hkmg8kQb67E3uL9YCey7//df9Hgv+f1c64/QdDEXJbGHjsMdXOjMM/vOkO+fe2Cqhu8vlTtK4qwxulbz/yfKWqvJMyMSjvMfzbLf7AWTDO/h0tv2mg2eLakpxlZVrJbQOKGdzFo5X/Ew9HdnGUE+8O6LsXEpttkOmcXySnSFuGzWG+Xp0tbKUv1D+B/6/LBnXSJNxVR8cnb5pnb5qHR2/bR2dslVCvSVQVZ9HZN50gPoHYOeBZzV/dfz6+DTFIFN+2caaxeS7zYPdvCWlWL4CSg+Ej0sfWcyiM4Z9i234tmn0uB9p/8ObzPJDC58wS4Ji5HHDJzvHrdErW0hI9UyqY7Y2qDkf79ZGitBW4N3PeUlV/MjoOWzyvubncqUUgaU1Uu63m9op5TdlBMbI0k27SjivWrXHzlAbXQ7klQDd5td9wOXN+7nKjWbBhcbspR8VtHDnUPUw5DXLbqAm9a+ykEv5kadE7NXyBoWqj7Dy47oyjV4SNgdZ88QYxTyF6iait2AbbdxXv5WMJBKGISBL6KEZgj5AYTH4pezp2RQE9NJek4JbBax7s2cHMtO0roe1r+pvOS9lKyXxi0JeUeqprkm6tWSi4JTfzbU1GyrJK1TFXV4tihaV9OeRNrHej+3kMq+6XodoPnExRUwjJZ/42PjJjQWa88vJeYvdP7SxrtlRR+WvcDRDAdz+lY098Oyuiy4n06z8f2KO+dYqKi3Kj1eZe2jdzBRIzM0vT4hP51WmwBdM0FJVwFtV/KG6d7k0yXUukgq+6v5QB1Nz79ZasPS+pBRgXbHvWhQbL2QulgzkojRvSC8KKY6CSeCGMJ/20zR1dvAw9X9NDVPvJ07a0Ti9WYHXftafV0XmTN7u2pg2yLVzzx6A43eZYEk7TkXhLCot9jcWs7VGxugyTfZcNRriTnKmf4ZuiGaQ0D7ChQDUUBsZF7pl9w2zW7ZcF7INKcpCs9SOdfSAkehHbAOFLsTE8A5uowVsN9O833aL9VYCFAui0LCdOxsVyUhBcsLXLOLKXYuW9XyW/VqHaEfwHHom0//odOqRpYW7NU1zYVgh8g1VVcuHqvw5avuRSRWpmddKU16pKAOU10rhuJSjRh6W0qPFtdJM7vv4V390vcvxutIkO7cUX6muv0AhB1jXWfkQU4EoHDJL57q1vW0652UsyzGlyrrsnFfb4Er/dK00mGG6bqbVxyzFULrotJhGxHMDiDXfZxujXDq9wZSPQpvaY36dk+lo/X4hXz1/6Qdry46ZQkO4KVLVh8sgemKbT+vJXQSN/M0i5NsvYkhG/903GeFvbrhELIvNf5sroLmRxPqOLOjt0JO4dex7eiPxTWFMxRvUvgezvMAthzy9xO170OJ5hrB4vdheWFPp0npGLwpD6NGoJFhaj5eyj/SePTadnqnzy4u0gdVtHvCvdsyA8vVakYLhXytMzP8/cq38BJKn4uq44pvkYrvi0+J1dsV3wondR5gT+aSH/jJCIZ3iQMAl/pwgmqOwtUAejkg0o1EYoJAnjl4rP12nV9LJa/vXYlnw93wdZJmntYRcYnd5m9wClxCdoJmzl60HFPrRA2mFkEoc5EswTHvYhQgvwjCP5+zNyckriWzuBgHcwBH5vjKQxXdR0L5WVgpQNimAja/FqmUg6Yrg8MW1l7fgHkDnsFGbIn4HnwAm7tlJ5+2pzBkPIx+SQur4q9PXInU8iukav5vrIbaPiHXAQFtLuBCJ5Ls0YM9EiyS3vDu12pbd7WntQfceYRq7QeLFHVceTMtPeqPSE6VmSV7pn7rNA8mjvYb1IL88VVriumnvhzAb9kMyQUWU23eiIsJtmxCGPnn3rblWNXHNt46EqioduQv47ltJj+6Fg3GgSpBu2nthuYNPFSRX+qfNODIVzlb3JAqQ91TS4Dz9RuQo7TIVDI+65Ii2zQRO1d67b+288ibt8kJuFy4DJe1adtdTmo3xcjLt86sDyhfrNMfcJ9WUN4aMLe7Jr7lRp3CT+leX+zvJT/NlvKpeg5PWlyWO6eQmnLQuTamvEPIoBmoIRPxY+KfAkh3JmqMPRt/QnL5pfNBNke91VvcwzUXPHQgrx7/X4KjDTwoyix8ozZ5tOqlzYDBwesP+fp2C+TJOLidpw5DiJ74xtMht4nVSynR1m78WHiX8w5CKSpbOGjZlp5iLtEAg6ftyMgXiloif+MEVhfPCp8yqGf9s2GI0VrnkriY7ZM00EYAX/Jgfes+crEqxZDY5stLw++YnmQXwP2YaZFEmXqBnslzi4ykCu38hI6mSz3RKLmmCj37ELytJb1mxoyi4Q7mbqbhzTQBN2PGbUBh6PM0iDeqWP58QEa6qwogCEi95cbsPXAroLSKAogVsAXKHlkt5P0hB5ZXKXI4Kzt6N7iFx64qaFpeqMVC9TtEntGHe1uN+1ekkyMkC/QkIj1+DwJe+/V2wPePDKNzJJWbNeloEKLyzIy0I+vzbfCNmNVbCnd+3I2wc7fIOBQFQLePy/XSytuI5P/pEdeSrtAtKZ4/+xNLbszORpX7vBsh3KVy/JR8gopnD05NDxqLar5PmfZxbfbBrhPjFi6RcZhlLVQXYsoY+v0WsvIh2ltGHW+Td5oQ7P7Jf2YhqqoOtoeGYujUd2PX1d2IsxUVzWJ3A3dE0+QB0y+aB8DJSKcIMnWVr9tRKtgg5jOwF2x9qxpODE/TIuF84i8zxECACvAjjeEmhXxfqq24Mxuhi7JjjodMbm+Z0Yuv9DR/X3HVLSdV/pUQoJxIPEb5jSnWGQqhUii3+VCHOa4sL4zJHvmNcOCNd74t6m+SKrL0KKzJKW5X9oSLsVb7sjLy6vBVQfVb90viuhvjOhJSWvQKUddGtCuSuS714saL1vhrh7It3vKtoCQi5Ld0hIStELet9zmNbCc9m3tr0rJrdd70x5Wt9CDw7l60Jv23pqxqL29qgUbo1oXKncW6b5EU35ienP7Ic/j3ajzU7ZPLRom0db8knuyuE5nPpuzIAUJkPGRJIOMqTc5PAgOvhupwCwWmXercGPy8k+bwqUH5sZVcHKXWPvbD2sQ9rH8ck/3hfJouLJkTdV8/1bmHy6YIzoBx1FuJ9IQU6HWsy1FbCz2IedD6LWd10nXglufF/p3nDNP9nzJVQhXX1ednGuPDJOKbLmGYXvQD1PUhveeHbmqqGkfhYqPKjAlR14T6q7HwDXv8l178c50TmsGiqrbnJJeQj03wfk+5B7jKY5f0Je5hUsDaz4e59xwxot4Gi5G6aSW+ZEX0o4jLXHCV/7x7kXheoOt2ZqtNnU3W6marTElUSBM+7zQPjwur+BH5OEzFyzT//+PtKOQQ1RUMpgvqCIFlaKCp1Ve7RV9GymzUDNFpXjV13uUExha0OYd2n8leNxg/6+OL/BAAA//8IyfRvvogAAA== - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBootstrapping+CustomAADResource/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBootstrapping+CustomAADResource/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBootstrapping+CustomAADResource/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBootstrapping+CustomAADResource/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBootstrapping+CustomAADResource/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBootstrapping+CustomAADResource/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBootstrapping+CustomAADResource/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBootstrapping+CustomAADResource/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBootstrapping+CustomAADResource/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBootstrapping+CustomAADResource/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBootstrapping+CustomAADResource/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+SecureTLSBootstrapping+CustomAADResource/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+SecurityProfile/CustomData b/pkg/agent/testdata/AKSUbuntu2204+SecurityProfile/CustomData index 3481ab2c730..45c3a4a6f5e 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SecurityProfile/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+SecurityProfile/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/9w7a5PbNpLf9SsQRpWxs6EefiV2Vt6iJY6GZb2OpCbnc3wsiIQk7FAADYDyzNpzv/0KAElREvWYWV8+nKoSD8FGo7vR3egH+OMPzRkmzRnky5rtusGlM7CDPyy/exX4ztAeT/3OK1DjSADztobn4CMw56BJE9GE/0oZaoaUCIgJYryZMLrGHFPSCOkqiZFA4NPvQCwRqQH1Q+GSAsOKGYLRHWCQAEEBT8MQcQ7QLRaYLBqNhpGD32IBWrU5rtVgIlaQ3fxhDTBJb60FIgIsaRyBn2q1wbgf9By301xD1ozpIiMM3vDa6ibCDJgJqH/NoO5rMQEmBzvAYZxygZi5YSGmC/BnRsgpYDPkyKSpSFKxPW8jpp8b/+SUVL0JY5pGJiZYmHMcI95I4BpFVZDrpYTjAsbxRsI53IbDZq2W3IklJc9P7VPAUARDESgSgpCSOV40krsMp2lq0vS4mUCxzCSBZ5rqpqKGhDkTGQZxKwoUWip6conEXfhabfpuOvKngWsPbMuzO/UnMZ8FDMUIcgRMBkz+VKnfR1D/ug17DzodYLRfNVovDPCprHE8jSiAiTAXUn3vAEwFZWhF1wiES0bJXa3Qyvo/NjP4HRdoFYoYMMQFZCIbiUyBV4jfkTBSSqknPomgQE9/qT9ZUi4IXKGnvwA1K0y5oCseMpyIt2/VVqxqtTllAANMQP0JR59BGzx/1Wo9/R1EVBGgLYwDo/6169nBlT2Y2K6nrHJi+Vf3xo5JAbBgKAHm5Wdw8WMGbY8vL44g+OknMGMI3igMc7xZto6BiT4rgvZWUbZYr3YQWooxRwU0jxFKQDtfIaIE1TiKgImB0SyR2YyMw4TWOE1ZiI4A7ED0HM93x6cxOSPPtwaDwwAZopNw3fHo0ulvUaRV1Kh/7Tme9W5gB54nZS41VLAU7ShohDmcxcjzrsC3byUZlyZvNM1IGF5DgQBaMOkwE0Zv7wCMIvWEObiof524zrXl24Hdd23PCybu+D8/BFavJ5/uL8r0eVfj6aCXsTB17eDK9yd6wmF6z5kddK3DCORPW33KkJwzkUx0rW32p5OeZKJrBV3b9b2yohaTbRHaZI0ZJStEhJLSEea6U88fDyVG3516/mECC/xdZb1d2EVM4DkOpeCPEikp0ASYRNIwnvrvxtORpGI4tEa9+0pZalgtuGvL9e4rBIbWMAb1DUxZHgwJdheuogDPgznEccoQeNkCbfAS1HcpAG/fPvgoe/b2p/Y23yWso1FwaTmD3xXvMV3wQNAArRERHBjWe6/R9ewGR6I7mVosXBpg83duSU0kwiblZubpa4WPd3r34IcOMFaQyVNLikV6rq13iodYRgQ7UtP24kpXj8kCrCAxo5ly/2aaSH8N5jFcAHneFvHGIfr1gTGEpDezUkGnav5lDBeXOEYGOPpaG+9tQpmQYRNf0jSOAn6Dk4CscYRhEDG8RozX9seC7Kjv1J9UbHJAaMAFFBy05W63W0BGcMAMb4+s8rTGkOjU/1EYCkPCUJJsVQrwEuIYRTJIi5BAbIUJkmqrkQKNFGRkZsuCGQJy5QRFWqwbxRldOz3HCnquc227uXMtmY1R/9qfTIPRuGffa6py+5QKqAEOi+mwSR/a2DBGkEyT/mTa0+IxwN7QUc3OvbcODlzEabxGkQGqxw/jKXyOFa0wmXKp7ftjtdr1VS8YjPubk61zIjgs4vX63lSwv9tyj0OBIrCgcYQIwCu4QCBhKMdrnCPObh5nOnL6RqY74wrV5XQwKE5Z1/6PqePavc4cylCiiCcK5XC84PpKutEOkLtc4ScVG1MuTf76qif3QTAKZqlQll4lBUIFmNOUREZFpCPBVbQzGvvBpfR5Zc9bTbykrKTT9bEn1bKeRaxjLxhZQzv3ZcCoV2KRLOaafIYiZ9vTQwk3QOlhI0MtmX5pX3/XVipFFaEEkQiRECOeT4cCU2Ic1f4MsthXNyUyPC4o2H2hldGofx3Zds+Tp4dvOSPb7W1bbi6Yr749sCdj1w/skYyFdsC0WMA5cvFRjKQHjiZxusCkIHBnXDHLkUiT7sjpYcZPsj5C4gtlNztot0ZrBdeOF7yXocfA9qs4yRgJYQyk38GU8D8gX3XqT/75WaY/F40JDG+k5Xz8BL4BjmIUiicNmW8oZEV6F5lfIF+ZfIlX3HgKvoFGRL+QmMJo6jq8EaE5TGPRCFPGEBGNfLHrZx8/NWIoEBfXekimEN3xcDIe2SN/YzLG0xKpOeoBDZXGfG+Sc7wPoWXqDv4SyZXWO0XeeQYUSbI9tTo4/A4Y9SqpG6XxTAJyqKxLRq1CybwEk/fpDJ0rLp5gcpPO0F+uWg8l1Mgp/R4K9ejF/0I9ymkslCcf2NKMDdS+HpXf7eqHURxq0plplxx4dlcmV/7AC96Nx77nu9Zk4oz6RxzcgUgqo8RDYcqQP/DeUSq4YDCRa8dI2LcozP3sA4AV0a4tidsJL44UbwxP1XzyCEwekf3JNAt3uVEZrRYhSZajnApVf3hYqIoITxkqR6q7I9uhUrY/ksCefe107WAymPadUeBcBvL4tY+FUQWWodMv+CtH45pFcw4Mlb1lxbHs36Zm2YzQGofITNQ+NDhi8rEiuZW/okz7YISNUuAmfwKhxyBptlvmCi8CqUUCLe5USG6At6AZoXWTpHEM/v73C3t8eVH76OlJn2ql8kPHkLKS+u/b/Q8dUyIzc2RABqQxMmpSL5VudUp/NlMuE/IQxhmNqhxfRS6olxeR3Nbs8WXBfhaWHlMjVZZsVOE2gFFUPW0isxeLRNoOqsG3SgL7eub5luur4sB+cfAwdTQ5SVxP51aKOppUE5dH6ds2oaxVhZ6X1jvX6QZDa2T1bfd4sQrPAeZDXYMYM0umWqoFAYz62DMqdPlUzKgIvoQzhsMhJHAhk73D7x6yu5ks5mr+Ksd9al93wPf3VaXr3u6O7on3gLPYkdCOL1bZUv7uJIPa5w3xYgKZwCpDAftjOXnHK/SGTaLDLn4nV+mNu+9tV6aOzujg2caRAH+71WVdGt4gJvnABJgpqHu2q63DdUZdZ2INgu7AsUd+4PRUd+rge8/uurYvKbH+Sx61eX3XtfuO57sfAjlT6nBBgnl7TtaWnZTyn1DEFonkX6oWW2jjYZBaLWQICiQHhpDgOeKih9lGaleWl1dcPdtyu1dBbzy0jsjOqH+tgi93Ld4eaGapjM3UvRaTI8jCpRnRFcTkQP2yaiFPK7YqIh8/jG60VMrnz+m6TiZKdXKQRami7FKhM21wPuw56/3Gyxh/42fM6Y6c0pzuyCmlrpPrV0Fvag2kE+i+P5aQnxHF9K66k/Wr3HL1Ux5cnudqT/KSVd6mHPWUJpSlsfduK7A9Xps4m8dN3pbzuRkBm7LMCUEpL1IISj1tl0uHtudZfTsYXwb+lR30rA9ZaLnfajgiWV1xMee6Fh+ReROmgq6gwKES6U4vMO/j8SZaYRGsMQQdsKIiKj9zEWHaXBiHcGZRwVaRzNipkpVjzSizRl29N+VyjagymoQ3XLduhlREuho/gWLZ2Z/efP3ahDc89x1ysIRH0DRcSiEfQHhfDjzD5YpGoPXry5fnzlAnk4mAUbp/8ScJodASk8RIn3cSWxYX6ALfAY34BmaQo1cvpBjfbvBv65JvuX3bD7qD8TTXeqUo3SUmsBvTdFfcDAm4GHZdXc+9pExBbiPN8pCrsed7ebfU6tsj/xHVemXAE90C7eq21RXlorDtildbpr3VEwx81xp5E8uVh+zVtG8HE6tvP9jaC6/iM0h4AmVCf5Uu0AQuUMnnVLw9Qpr3hzVRJ9/jyfG+wES3p/aGqtxd3x1PJ9fPDq53MKvaOw1lIhUuGE2T9bPKJEpmLAdSqPfTd/ZAqqAiJ7gcWH2vY2boTB2bdTICDJX6PMpzF+e7YmhT/duyI0nLyPYD3x5OBpZvV1vRZrKSBEEiEGiVxFAg7eUeI71NOVKuZ85juHh4OlrIspBHIU+my/EmQ59TxIW600JT0Wm/XAFzs3wBh0iUUExEJyX49k2z2WQpKXO++bPBaXgDNivoneOdjN8Gj3GItuCzqkCRx+an1Q+Ao9UasS5dSbMBekPcke3bXiDTEWc8emMarUar0TLugdFuPPu10dpNxx4p+IL+7yT6wJ2OfGdoqx3oVIi4w9CKipIYsuylHE7nWHuO9z7wP0zs72SsM0yiFU2JOGytU4LFp5qLPqeYId6RM0w9JcNUs+YCsaoXuZEeD3S8Ox6KOA909FPtAe2iKidaUvzpwBk6vndAYMeuLRSaOo3xCotyGLn37gw+s9A+ZzR7LBVVPZnijcZBbzqRqd546Hjd6XjqBe9cp/eI40mvM6K9NBmTCaMrzMP0HcORPJ2OvDyrgfnt278ZrqezlIjUIzDhSyp0ZFMowdZoTk91t3TvTs1Bmqv6xc+iqB2i9q9m69fXyHzReh6as+cvn5mw/fpZG6FnrV8RklbB73hzlvLmeiX/n1UKmst1kAocN1MitX9z/y2LkdvP8Z/ffZU/SRZWs7ChCodln3FtDZye5TvjUWC7bqdVq9WsiZOVCfSVHdf2Xcf2Oi9b+R6XIJSkOh3wcyO7bRZjctP4eVt4hzC2W+q2rnLg6qLODuJ70Pkf8N8fW+brT3/7s1H9b/3gUr2Rp1b6UFxMft5qlbf9oWycQv8qQ1+6I3kyqv3hWO3L69SfHLIGmGDpNREb8ZjSmzQxgFHc+yHZGGiD9sttue6RfV8h96yDJH+e73Wyy65bVVk5XsFu3fM9yVRrnx95dIGCsv1FdxoKdddWZvmz0X71W+PV80b72etG+5XxM6huCuxosqrdvP/NC0rL6JqYlMBgPH4vY8a8PLnH3pkYD+HK06wyytxv79xG1k66/Zu+jlzB2I/+uDcGT6J/8vju6ZvsAhkQS8wBJSECairAnFwIwNMkoUygCEByt6IMnVVr3uhSt6xFpSuCW7tVtuF7fZmMhMBc/6vKgl+8eK6qxHr3j4FJqDNEXlwjPLxxJ/nspix+JKdhymJgrmXoC0PEsvxbxkqMIIF4Uw7yZggbIRNgKUTC3zSb+xy/2RLMw7AaZ6B9lCQztZ3jTc3pkO/Ofen/M50qRTLf50qpKn2fulQKIInADQ5vJCCdz3PgDC5hVH3yAkXenNDFHF1WP3SXVH0NknKm6kUrSKKZpF7TleGfY4L5EkXZQlsrgJ+KMGq7C7PL5AVDM0oFYDrij34BekDyQmiEACagDVaYpAJdaKryChYwQ2DwZSoi+oUAk4E2+Ml4RGRW9blPSrIPfnY1+mGod64wTEeW79ujnt0LppO+a/Vs72CYnf+m0/zU7zluR+daMBHyP5VFqdJighimEQ6NA53u+pMIM3VfRB4hZYz3xtOdpnZeitwB2wLKSpCvXrw4Bak32Zr4b95MMiLfvNG6Zma3WswB5tL428bvF+Dt28dhJFAIRCIUmdNkwWCEzsa3+QAnJSvIb9Q3PBHE8V2eWW5GzFQjL3LOakRINT//LxBJp8Uq0KjxA0jy74pMk1BzFtPw5lyEZXyPQV7FXFWT+aQFquL9+a3x72B25ZuUlm+dhN9opu58bxQy10fM1QXgTZA1uwM3UEB9RZb/Ar7gOFYgM5RtfHSxrfm7ocr2VmQ3wUFE5mbRADEJFXh+R0m+10cQcEGTx8/OrGd7fn5JPDeAreao98Hz7WHXH+z2+x+xgNbXfwP9zoWF77dKSc83EdLmOyvdbgH6y73iTG3I0AnoGAiElBAUCkwJCJcovAEhjdAbA9S3g5MjFxAQiao/ENR87OCp1X60x5f/GwAA///qNetTrDsAAA== + H4sIAAAAAAAC/9w7a5PbNpLf9SsQRpWxs6EefiV2Vt6iJY6GZb2OpCbnc3wsiIQk7FAADYDyzNpzv/0KAElREvWYWV8+nKoSD8FGo7vR3ehuNH/8oTnDpDmDfFmzXTe4dAZ28Ifld68C3xna46nfeQVqHAlg3tbwHHwE5hw0aSKa8F8pQ82QEgExQYw3E0bXmGNKGiFdJTESCHz6HYglIjWgfihcUmBYMUMwugMMEiAo4GkYIs4BusUCk0Wj0TBy8FssQKs2x7UaTMQKsps/rAEm6a21QESAJY0j8FOtNhj3g57jdppryJoxXWSEwRteW91EmAEzAfWvGdR9LSbA5GAHOIxTLhAzNyzEdAH+zAg5BWyGHJk0FUkqtudtxPRz45+ckqo3YUzTyMQEC3OOY8QbCVyjqApyvZRwXMA43kg4h9tw2KzVkjuxpOT5qX0KGIpgKAJFQhBSMseLRnKX4TRNTZoeNxMolpkk8ExT3VTUkDBnIsMgbkWBQktFTy6RuAtfq03fTUf+NHDtgW15dqf+JOazgKEYQY6AyYDJnyr1+wjqX7dh70GnA4z2q0brhQE+lTWOpxEFMBHmQqrvHYCpoAyt6BqBcMkouasVWln/x2YGv+MCrUIRA4a4gExkI5Ep8ArxOxJGSin1xCcRFOjpL/UnS8oFgSv09BegZoUpF3TFQ4YT8fat2opVrTanDGCACag/4egzaIPnr1qtp7+DiCoCtIVxYNS/dj07uLIHE9v1lFVOLP/q3tgxKQAWDCXAvPwMLn7MoO3x5cURBD/9BGYMwRuFYY43y9YxMNFnRdDeKsoW69UOQksx5qiA5jFCCWjnK0SUoBpHETAxMJolMpuRcZjQGqcpC9ERgB2InuP57vg0Jmfk+dZgcBggQ3QSrjseXTr9LYq0ihr1rz3Hs94N7MDzpMylhgqWoh0FjTCHsxh53hX49q0k49LkjaYZCcNrKBBACyYdZsLo7R2AUaSeMAcX9a8T17m2fDuw+67tecHEHf/nh8Dq9eTT/UWZPu9qPB30Mhamrh1c+f5ETzhM7zmzg651GIH8aatPGZJzJpKJrrXN/nTSk0x0raBru75XVtRisi1Cm6wxo2SFiFBSOsJcd+r546HE6LtTzz9MYIG/q6y3C7uICTzHoRT8USIlBZoAk0gaxlP/3Xg6klQMh9aod18pSw2rBXdtud59hcDQGsagvoEpy4Mhwe7CVRTgeTCHOE4ZAi9boA1egvouBeDt2wcfZc/e/tTe5ruEdTQKLi1n8LviPaYLHggaoDUiggPDeu81up7d4Eh0J1OLhUsDbP7OLamJRNik3Mw8fa3w8U7vHvzQAcYKMnlqSbFIz7X1TvEQy4hgR2raXlzp6jFZgBUkZjRT7t9ME+mvwTyGCyDP2yLeOES/PjCGkPRmViroVM2/jOHiEsfIAEdfa+O9TSgTMmziS5rGUcBvcBKQNY4wDCKG14jx2v5YkB31nfqTik0OCA24gIKDttztdgvICA6Y4e2RVZ7WGBKd+j8KQ2FIGEqSrUoBXkIco0gGaRESiK0wQVJtNVKgkYKMzGxZMENArpygSIt1ozija6fnWEHPda5tN3euJbMx6l/7k2kwGvfse01Vbp9SATXAYTEdNulDGxvGCJJp0p9Me1o8BtgbOqrZuffWwYGLOI3XKDJA9fhhPIXPsaIVJlMutX1/rFa7vuoFg3F/c7J1TgSHRbxe35sK9ndb7nEoUAQWNI4QAXgFFwgkDOV4jXPE2c3jTEdO38h0Z1yhupwOBsUp69r/MXVcu9eZQxlKFPFEoRyOF1xfSTfaAXKXK/ykYmPKpclfX/XkPghGwSwVytKrpECoAHOaksioiHQkuIp2RmM/uJQ+r+x5q4mXlJV0uj72pFrWs4h17AUja2jnvgwY9UosksVck89Q5Gx7eijhBig9bGSoJdMv7evv2kqlqCKUIBIhEmLE8+lQYEqMo9qfQRb76qZEhscFBbsvtDIa9a8j2+558vTwLWdku71ty80F89W3B/Zk7PqBPZKx0A6YFgs4Ry4+ipH0wNEkTheYFATujCtmORJp0h05Pcz4SdZHSHyh7GYH7dZoreDa8YL3MvQY2H4VJxkjIYyB9DuYEv4H5KtO/ck/P8v056IxgeGNtJyPn8A3wFGMQvGkIfMNhaxI7yLzC+Qrky/xihtPwTfQiOgXElMYTV2HNyI0h2ksGmHKGCKikS92/ezjp0YMBeLiWg/JFKI7Hk7GI3vkb0zGeFoiNUc9oKHSmO9Nco73IbRM3cFfIrnSeqfIO8+AIkm2p1YHh98Bo14ldaM0nklADpV1yahVKJmXYPI+naFzxcUTTG7SGfrLVeuhhBo5pd9DoR69+F+oRzmNhfLkA1uasYHa16Pyu139MIpDTToz7ZIDz+7K5MofeMG78dj3fNeaTJxR/4iDOxBJZZR4KEwZ8gfeO0oFFwwmcu0YCfsWhbmffQCwItq1JXE74cWR4o3hqZpPHoHJI7I/mWbhLjcqo9UiJMlylFOh6g8PC1UR4SlD5Uh1d2Q7VMr2RxLYs6+drh1MBtO+Mwqcy0Aev/axMKrAMnT6BX/laFyzaM6BobK3rDiW/dvULJsRWuMQmYnahwZHTD5WJLfyV5RpH4ywUQrc5E8g9BgkzXbLXOFFILVIoMWdCskN8BY0I7RukjSOwd//fmGPLy9qHz096VOtVH7oGFJWUv99u/+hY0pkZo4MyIA0RkZN6qXSrU7pz2bKZUIewjijUZXjq8gF9fIiktuaPb4s2M/C0mNqpMqSjSrcBjCKqqdNZPZikUjbQTX4VklgX88833J9VRzYLw4epo4mJ4nr6dxKUUeTauLyKH3bJpS1qtDz0nrnOt1gaI2svu0eL1bhOcB8qGsQY2bJVEtdQQCjPvaMCl0+FTMqgi/hjOFwCAlcyGTv8LuH7G4mi7mav8pxn9rXHfD9fVXpure7o3viPeAsdiS044tVtpS/O8mg9nlDvJhAJrDKUMD+WE7e8Qq9YZPosIvfyVV64+5725WpozM6eLZxJMDfbnVZl4Y3iEk+MAFmCuqe7WrrcJ1R15lYg6A7cOyRHzg9dTt18L1nd13bl5RY/yWP2ry+69p9x/PdD4GcKXW4IMG8PSdry05K+U8oYotE8i9Viy208TBIrRYyBAWSA0NI8Bxx0cNsI7Ury8srrp5tud2roDceWkdkZ9S/VsGXby3eHrjMUhmbqe9aTI4gC5dmRFcQkwP1y6qFPK3Yqoh8/DC60VIpnz+n6zqZKNXJQRal4s72i3Mw/cbL03/jZ8zpjpzSnO7IKSWlk+tXQW9qDaR5d98fS7XPiE96V93J+lVuk/opDxvPc6IneclqalOOemqPy9LYe7cVsh6vOpzN4yYjy/ncjIBNweWEoJR/KASlnrYLoUPb86y+HYwvA//KDnrWhyxo3L9EOCJZXUsx57rKHpF5E6aCrqDAoRLpzi1ffkPHm2iFRbDGEHTAioqo/MxFhGlzYRzCmZ33W+UvY6f+VY4io8zOdF3elMs1oso4Ed5wfSkzpCLSdfYJFMvO/vTm69cmvOG5V5CDJTyCpuFSCvkAwvtySBkuVzQCrV9fvjx3hjpzTASMUmfFnySEQktMEiO92Uls2YmvS3cHNOIbmEGOXr2QYny7wb+tS77l9m0/6A7G01zrlaJ0l5jAbkzTXXEzJOBi2HV1pfaSMgW5jTTLMK7Gnu/l96BW3x75j6jDKwOe6MvNrr6QuqJcFLZd8WrLtLdu+wLftUbexHLl8Xk17dvBxOrbD7b2wqv4DBKeQJmqX6ULNIELVPI5FW+PkOb9YU3UmfZ4crwvMNEXT3tDVe6u746nk+tnB9c7mC/tnXMyRQoXjKbJ+llleiRzkQPJ0fvpO3sgVVCRE1wOrL7XMTN0po66OhkBhkpqHuW5i5NbMbSp623ZkaRlZPuBbw8nA8u3q61oM1lJgiARCLRKYiiQ9nKPkd6m0CjXM+cxXDw80SxkWcijkCfThXaToc8p4kJ1q9BUdNovV8DcLF/AIRIlFBPRSQm+fdNsNllKypxv/mxwGt6AzQp653gn47fBYxyiLfgs3y8y1Py0+gFwtFoj1qUraTZAb4g7sn3bC2Si4YxHb0yj1Wg1WsY9MNqNZ782WruJ1iMFX9D/nUQfuNOR7wxttQOdChF3GFpRURJDlpeUA+Uca8/x3gf+h4n9nYx1hkm0oikRh611SrD4VHPR5xQzxDtyhqmnZJhq1lwgVvUiN9LjgY53x0MR54GOfqo94CKoyomWFH86cIaO7x0Q2LGGhEJTpzFeYVEOI/fencFnFsfnjGaPpXKpJ5O30TjoTScyiRsPHa87HU+94J3r9B5xPOl1RrSXJmMyYXSFeZi+YziSp9ORl2ddTX779m+G6+ksJSL1CEz4kgod2RRKsDWa01N9D7rXLXOQ5qqb4GdR1A5R+1ez9etrZL5oPQ/N2fOXz0zYfv2sjdCz1q8ISavgd7w5S3lzvZL/z2oAzeU6SAWOmymR2r/pbMti5PZz/Od3X+VPkoXVLGyokmDZZ1xbA6dn+c54FNiu22nVajVr4mQFAN2M49q+69he52Ur3+MShJJUpwN+bmR9ZDEmN42ft4V3CGO7pfpwlQNXLTg7iO9B53/Af39sma8//e3PRvW/9YNL9UaeWulD0XL8vNUqb/tD2TiF/lWGvtT9eDKq/eFYVcvr1J8csgaYYOk1ERvxmNKbNDGAUXT0kGwMtEH75bZc98i+r5B7djckf57vdbI21q16qxyvYLfu+Z5kqrXPjzy6QEHZ/qI7VwV111Zm+bPRfvVb49XzRvvZ60b7lfEzqC7372iyqsq8/80LSsvoapeUwGA8fi9jxrzwuMfemRgP4crTrDLK3G/v9BlrJ93+TTcaVzD2oz/ujcGT6J88vnv6JmsNA2KJOaAkREBNBZiTCwF4miSUCRQBSO5WlKGzqsgbXeqWtajU/Le1W2UbvtdtYiQE5vpfVRb84sVzVf/Vu38MTEKdIfKiQfDwxp3ks5uy+JGchimLgbmWoS8MEcvybxkrMYIE4k05yJshbIRMgKUQCX/TbO5z/GZLMA/DapyB9lGSzNR2jjc1p0O+O/el/890qhTJfJ9mUVXUPtUuCiCJwA0ObyQgnc9z4AwuYVR9zAJFfu2gizm6YH6oS1R955FypupFK0iimaRe05Xhn2OC+RJF2UJbK4CfijBq+35ll8kLhmaUCsB0xB/9AvSA5IXQCAFMQBusMEkFutBU5RUsYIbA4MtURPQLASYDbfCT8YjIrOpDnpRkn/LsavTDUO80J0xHlu/bo57dC6aTvmv1bO9gmJ3/ptP81O85bkfnWjAR8j+VRanSYoIYphEOjQN32PUnEWaqE0QeIWWM98bTnevqvBS5A7YFlJUgX714cQpSb7I18d+8mWREvnmjdc3M+lXMAebS+NvG7xfg7dvHYSRQCEQiFJnTZMFghM7Gt/m0JiUryG/U1zkRxPFdnlluRsxUIy9yzmpESF1r/l8gkk6LVaBR4weQ5F8MmSah5iym4c25CMv4HoO8irmq6+OTFqiK9+dfen8Hsyv3SFq+dRJ+o5n6TnujkLk+Yq5aezdB1uwO3EABdfMr/wV8wXGsQGYo2/joYlvzd0OV7a3IerxBROZmcQFiEirw/I6SfK+PIOCCJo+fnVnP9vy8/Ts3gK1rT++D59vDrj/Yvcl/xAJaX/8N9DutCN9vlZKebyKkzRdU+roF6G/yijO1IUMnoGMgEFJCUCgwJSBcovAGhDRCbwxQ3w5OjrQWIBJVf/qn+djBU6v9aI8v/zcAAP//cv6oLIY7AAA= - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+SecurityProfile/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+SecurityProfile/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SecurityProfile/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+SecurityProfile/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+SecurityProfile/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+SecurityProfile/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SecurityProfile/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+SecurityProfile/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+SecurityProfile/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+SecurityProfile/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SecurityProfile/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+SecurityProfile/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+SerializeImagePulls/CustomData b/pkg/agent/testdata/AKSUbuntu2204+SerializeImagePulls/CustomData index cd1ed674086..18d97e5a63b 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SerializeImagePulls/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+SerializeImagePulls/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/9w7a5PbNpLf9SsQRpWxs6EefiV2Vt6iJY6GZb2OpCbnc3wsiIQk7FAADYDyzNpzv/0KAElREvWYWV8+nKoSD8FGo7vR3egH+OMPzRkmzRnky5rtusGlM7CDPyy/exX4ztAeT/3OK1DjSADztobn4CMw56BJE9GE/0oZaoaUCIgJYryZMLrGHFPSCOkqiZFA4NPvQCwRqQH1Q+GSAsOKGYLRHWCQAEEBT8MQcQ7QLRaYLBqNhpGD32IBWrU5rtVgIlaQ3fxhDTBJb60FIgIsaRyBn2q1wbgf9By301xD1ozpIiMM3vDa6ibCDJgJqH/NoO5rMQEmBzvAYZxygZi5YSGmC/BnRsgpYDPkyKSpSFKxPW8jpp8b/+SUVL0JY5pGJiZYmHMcI95I4BpFVZDrpYTjAsbxRsI53IbDZq2W3IklJc9P7VPAUARDESgSgpCSOV40krsMp2lq0vS4mUCxzCSBZ5rqpqKGhDkTGQZxKwoUWip6conEXfhabfpuOvKngWsPbMuzO/UnMZ8FDMUIcgRMBkz+VKnfR1D/ug17DzodYLRfNVovDPCprHE8jSiAiTAXUn3vAEwFZWhF1wiES0bJXa3Qyvo/NjP4HRdoFYoYMMQFZCIbiUyBV4jfkTBSSqknPomgQE9/qT9ZUi4IXKGnvwA1K0y5oCseMpyIt2/VVqxqtTllAANMQP0JR59BGzx/1Wo9/R1EVBGgLYwDo/6169nBlT2Y2K6nrHJi+Vf3xo5JAbBgKAHm5Wdw8WMGbY8vL44g+OknMGMI3igMc7xZto6BiT4rgvZWUbZYr3YQWooxRwU0jxFKQDtfIaIE1TiKgImB0SyR2YyMw4TWOE1ZiI4A7ED0HM93x6cxOSPPtwaDwwAZopNw3fHo0ulvUaRV1Kh/7Tme9W5gB54nZS41VLAU7ShohDmcxcjzrsC3byUZlyZvNM1IGF5DgQBaMOkwE0Zv7wCMIvWEObiof524zrXl24Hdd23PCybu+D8/BFavJ5/uL8r0eVfj6aCXsTB17eDK9yd6wmF6z5kddK3DCORPW33KkJwzkUx0rW32p5OeZKJrBV3b9b2yohaTbRHaZI0ZJStEhJLSEea6U88fDyVG3516/mECC/xdZb1d2EVM4DkOpeCPEikp0ASYRNIwnvrvxtORpGI4tEa9+0pZalgtuGvL9e4rBIbWMAb1DUxZHgwJdheuogDPgznEccoQeNkCbfAS1HcpAG/fPvgoe/b2p/Y23yWso1FwaTmD3xXvMV3wQNAArRERHBjWe6/R9ewGR6I7mVosXBpg83duSU0kwiblZubpa4WPd3r34IcOMFaQyVNLikV6rq13iodYRgQ7UtP24kpXj8kCrCAxo5ly/2aaSH8N5jFcAHneFvHGIfr1gTGEpDezUkGnav5lDBeXOEYGOPpaG+9tQpmQYRNf0jSOAn6Dk4CscYRhEDG8RozX9seC7Kjv1J9UbHJAaMAFFBy05W63W0BGcMAMb4+s8rTGkOjU/1EYCkPCUJJsVQrwEuIYRTJIi5BAbIUJkmqrkQKNFGRkZsuCGQJy5QRFWqwbxRldOz3HCnquc227uXMtmY1R/9qfTIPRuGffa6py+5QKqAEOi+mwSR/a2DBGkEyT/mTa0+IxwN7QUc3OvbcODlzEabxGkQGqxw/jKXyOFa0wmXKp7ftjtdr1VS8YjPubk61zIjgs4vX63lSwv9tyj0OBIrCgcYQIwCu4QCBhKMdrnCPObh5nOnL6RqY74wrV5XQwKE5Z1/6PqePavc4cylCiiCcK5XC84PpKutEOkLtc4ScVG1MuTf76qif3QTAKZqlQll4lBUIFmNOUREZFpCPBVbQzGvvBpfR5Zc9bTbykrKTT9bEn1bKeRaxjLxhZQzv3ZcCoV2KRLOaafIYiZ9vTQwk3QOlhI0MtmX5pX3/XVipFFaEEkQiRECOeT4cCU2Ic1f4MsthXNyUyPC4o2H2hldGofx3Zds+Tp4dvOSPb7W1bbi6Yr749sCdj1w/skYyFdsC0WMA5cvFRjKQHjiZxusCkIHBnXDHLkUiT7sjpYcZPsj5C4gtlNztot0ZrBdeOF7yXocfA9qs4yRgJYQyk38GU8D8gX3XqT/75WaY/F40JDG+k5Xz8BL4BjmIUiicNmW8oZEV6F5lfIF+ZfIlX3HgKvoFGRL+QmMJo6jq8EaE5TGPRCFPGEBGNfLHrZx8/NWIoEBfXekimEN3xcDIe2SN/YzLG0xKpOeoBDZXGfG+Sc7wPoWXqDv4SyZXWO0XeeQYUSbI9tTo4/A4Y9SqpG6XxTAJyqKxLRq1CybwEk/fpDJ0rLp5gcpPO0F+uWg8l1Mgp/R4K9ejF/0I9ymkslCcf2NKMDdS+HpXf7eqHURxq0plplxx4dlcmV/7AC96Nx77nu9Zk4oz6RxzcgUgqo8RDYcqQP/DeUSq4YDCRa8dI2LcozP3sA4AV0a4tidsJL44UbwxP1XzyCEwekf3JNAt3uVEZrRYhSZajnApVf3hYqIoITxkqR6q7I9uhUrY/ksCefe107WAymPadUeBcBvL4tY+FUQWWodMv+CtH45pFcw4Mlb1lxbHs36Zm2YzQGofITNQ+NDhi8rEiuZW/okz7YISNUuAmfwKhxyBptlvmCi8CqUUCLe5USG6At6AZoXWTpHEM/v73C3t8eVH76OlJn2ql8kPHkLKS+u/b/Q8dUyIzc2RABqQxMmpSL5VudUp/NlMuE/IQxhmNqhxfRS6olxeR3Nbs8WXBfhaWHlMjVZZsVOE2gFFUPW0isxeLRNoOqsG3SgL7eub5luur4sB+cfAwdTQ5SVxP51aKOppUE5dH6ds2oaxVhZ6X1jvX6QZDa2T1bfd4sQrPAeZDXYMYM0umWqoFAYz62DMqdPlUzKgIvoQzhsMhJHAhk73D7x6yu5ks5mr+Ksd9al93wPf3VaXr3u6O7on3gLPYkdCOL1bZUv7uJIPa5w3xYgKZwCpDAftjOXnHK/SGTaLDLn4nV+mNu+9tV6aOzujg2caRAH+71WVdGt4gJvnABJgpqHu2q63DdUZdZ2INgu7AsUd+4PRUd+rge8/uurYvKbH+Sx61eX3XtfuO57sfAjlT6nBBgnl7TtaWnZTyn1DEFonkX6oWW2jjYZBaLWQICiQHhpDgOeKih9lGaleWl1dcPdtyu1dBbzy0jsjOqH+tgi93Ld4eaGapjM3UvRaTI8jCpRnRFcTkQP2yaiFPK7YqIh8/jG60VMrnz+m6TiZKdXKQRami7FKhM21wPuw56/3Gyxh/42fM6Y6c0pzuyCmlrpPrV0Fvag2kE+i+P5aQnxHF9K66k/Wr3HL1Ux5cnudqT/KSVd6mHPWUJpSlsfduK7A9Xps4m8dN3pbzuRkBm7LMCUEpL1IISj1tl0uHtudZfTsYXwb+lR30rA9ZaLnfajgiWV1xMee6Fh+ReROmgq6gwKES6U4vMO/j8SZaYRGsMQQdsKIiKj9zEWHaXBiHcGZRwVaRzNipkpVjzSizRl29N+VyjagymoQ3XLduhlREuho/gWLZ2Z/efP3ahDc89x1ysIRH0DRcSiEfQHhfDjzD5YpGoPXry5fnzlAnk4mAUbp/8ScJodASk8RIn3cSWxYX6ALfAY34BmaQo1cvpBjfbvBv65JvuX3bD7qD8TTXeqUo3SUmsBvTdFfcDAm4GHZdXc+9pExBbiPN8pCrsed7ebfU6tsj/xHVemXAE90C7eq21RXlorDtildbpr3VEwx81xp5E8uVh+zVtG8HE6tvP9jaC6/iM0h4AmVCf5Uu0AQuUMnnVLw9Qpr3hzVRJ9/jyfG+wES3p/aGqtxd3x1PJ9fPDq53MKvaOw1lIhUuGE2T9bPKJEpmLAdSqPfTd/ZAqqAiJ7gcWH2vY2boTB2bdTICDJX6PMpzF+e7YmhT/duyI0nLyPYD3x5OBpZvV1vRZrKSBEEiEGiVxFAg7eUeI71NOVKuZ85juHh4OlrIspBHIU+my/EmQ59TxIW600JT0Wm/XAFzs3wBh0iUUExEJyX49k2z2WQpKXO++bPBaXgDNivoneOdjN8Gj3GItuCzqkCRx+an1Q+Ao9UasS5dSbMBekPcke3bXiDTEWc8emMarUar0TLugdFuPPu10dpNxx4p+IL+7yT6wJ2OfGdoqx3oVIi4w9CKipIYsuylHE7nWHuO9z7wP0zs72SsM0yiFU2JOGytU4LFp5qLPqeYId6RM0w9JcNUs+YCsaoXuZEeD3S8Ox6KOA909FPtAe2iKidaUvzpwBk6vndAYMeuLRSaOo3xCotyGLn37gw+s9A+ZzR7LBVVPZnijcZBbzqRqd546Hjd6XjqBe9cp/eI40mvM6K9NBmTCaMrzMP0HcORPJ2OvDyrgfnt278ZrqezlIjUIzDhSyp0ZFMowdZoTk91t3TvTs1Bmqv6xc+iqB2i9q9m69fXyHzReh6as+cvn5mw/fpZG6FnrV8RklbB73hzlvLmeiX/n1UKmst1kAocN1MitX9z/y2LkdvP8Z/ffZU/SRZWs7ChCodln3FtDZye5TvjUWC7bqdVq9WsiZOVCfSVHdf2Xcf2Oi9b+R6XIJSkOh3wcyO7bRZjctP4eVt4hzC2W+q2rnLg6qLODuJ70Pkf8N8fW+brT3/7s1H9b/3gUr2Rp1b6UFxMft5qlbf9oWycQv8qQ1+6I3kyqv3hWO3L69SfHLIGmGDpNREb8ZjSmzQxgFHc+yHZGGiD9sttue6RfV8h96yDJH+e73Wyy65bVVk5XsFu3fM9yVRrnx95dIGCsv1FdxoKdddWZvmz0X71W+PV80b72etG+5XxM6huCuxosqrdvP/NC0rL6JqYlMBgPH4vY8a8PLnH3pkYD+HK06wyytxv79xG1k66/Zu+jlzB2I/+uDcGT6J/8vju6ZvsAhkQS8wBJSECairAnFwIwNMkoUygCEByt6IMnVVr3uhSt6xFpSuCW7tVtuF7fZmMhMBc/6vKgl+8eK6qxHr3j4FJqDNEXlwjPLxxJ/nspix+JKdhymJgrmXoC0PEsvxbxkqMIIF4Uw7yZggbIRNgKUTC3zSb+xy/2RLMw7AaZ6B9lCQztZ3jTc3pkO/Ofen/M50qRTLf50qpKn2fulQKIInADQ5vJCCdz3PgDC5hVH3yAkXenNDFHF1WP3SXVH0NknKm6kUrSKKZpF7TleGfY4L5EkXZQlsrgJ+KMGq7C7PL5AVDM0oFYDrij34BekDyQmiEACagDVaYpAJdaKryChYwQ2DwZSoi+oUAk4E2+Ml4RGRW9blPSrIPfnY1+mGod64wTEeW79ujnt0LppO+a/Vs72CYnf+m0/zU7zluR+daMBHyP5VFqdJighimEQ6NA53u+pMIM3VfRB4hZYz3xtOdpnZeitwB2wLKSpCvXrw4Bak32Zr4b95MMiLfvNG6Zma3WswB5tL428bvF+Dt28dhJFAIRCIUmdNkwWCEzsa3+QAnJSvIb9Q3PBHE8V2eWW5GzFQjL3LOakRINT//LxBJp8Uq0KjxA0jy74pMk1BzFtPw5lyEZXyPQV7FXFWT+aQFquL9+a3x72B25ZuUlm+dhN9opu58bxQy10fM1QXgTZA1uwM3UEB9RZb/Ar7gOFYgM5RtfHSxrfm7ocr2VmQ3wUFE5mbRADEJFXh+R0m+10cQcEGTx8/OrGd7fn5JPDeAreao98Hz7WHXH+z2+x+xgNbXfwP9zoWF77dKSc83EdLmOyvdbgH6y73iTG3I0AnoGAiElBAUCkwJCJcovAEhjdAbA9S3g5MjFxAQiao/ENR87OCp1X60x5f/GwAA///qNetTrDsAAA== + H4sIAAAAAAAC/9w7a5PbNpLf9SsQRpWxs6EefiV2Vt6iJY6GZb2OpCbnc3wsiIQk7FAADYDyzNpzv/0KAElREvWYWV8+nKoSD8FGo7vR3ehuNH/8oTnDpDmDfFmzXTe4dAZ28Ifld68C3xna46nfeQVqHAlg3tbwHHwE5hw0aSKa8F8pQ82QEgExQYw3E0bXmGNKGiFdJTESCHz6HYglIjWgfihcUmBYMUMwugMMEiAo4GkYIs4BusUCk0Wj0TBy8FssQKs2x7UaTMQKsps/rAEm6a21QESAJY0j8FOtNhj3g57jdppryJoxXWSEwRteW91EmAEzAfWvGdR9LSbA5GAHOIxTLhAzNyzEdAH+zAg5BWyGHJk0FUkqtudtxPRz45+ckqo3YUzTyMQEC3OOY8QbCVyjqApyvZRwXMA43kg4h9tw2KzVkjuxpOT5qX0KGIpgKAJFQhBSMseLRnKX4TRNTZoeNxMolpkk8ExT3VTUkDBnIsMgbkWBQktFTy6RuAtfq03fTUf+NHDtgW15dqf+JOazgKEYQY6AyYDJnyr1+wjqX7dh70GnA4z2q0brhQE+lTWOpxEFMBHmQqrvHYCpoAyt6BqBcMkouasVWln/x2YGv+MCrUIRA4a4gExkI5Ep8ArxOxJGSin1xCcRFOjpL/UnS8oFgSv09BegZoUpF3TFQ4YT8fat2opVrTanDGCACag/4egzaIPnr1qtp7+DiCoCtIVxYNS/dj07uLIHE9v1lFVOLP/q3tgxKQAWDCXAvPwMLn7MoO3x5cURBD/9BGYMwRuFYY43y9YxMNFnRdDeKsoW69UOQksx5qiA5jFCCWjnK0SUoBpHETAxMJolMpuRcZjQGqcpC9ERgB2InuP57vg0Jmfk+dZgcBggQ3QSrjseXTr9LYq0ihr1rz3Hs94N7MDzpMylhgqWoh0FjTCHsxh53hX49q0k49LkjaYZCcNrKBBACyYdZsLo7R2AUaSeMAcX9a8T17m2fDuw+67tecHEHf/nh8Dq9eTT/UWZPu9qPB30Mhamrh1c+f5ETzhM7zmzg651GIH8aatPGZJzJpKJrrXN/nTSk0x0raBru75XVtRisi1Cm6wxo2SFiFBSOsJcd+r546HE6LtTzz9MYIG/q6y3C7uICTzHoRT8USIlBZoAk0gaxlP/3Xg6klQMh9aod18pSw2rBXdtud59hcDQGsagvoEpy4Mhwe7CVRTgeTCHOE4ZAi9boA1egvouBeDt2wcfZc/e/tTe5ruEdTQKLi1n8LviPaYLHggaoDUiggPDeu81up7d4Eh0J1OLhUsDbP7OLamJRNik3Mw8fa3w8U7vHvzQAcYKMnlqSbFIz7X1TvEQy4hgR2raXlzp6jFZgBUkZjRT7t9ME+mvwTyGCyDP2yLeOES/PjCGkPRmViroVM2/jOHiEsfIAEdfa+O9TSgTMmziS5rGUcBvcBKQNY4wDCKG14jx2v5YkB31nfqTik0OCA24gIKDttztdgvICA6Y4e2RVZ7WGBKd+j8KQ2FIGEqSrUoBXkIco0gGaRESiK0wQVJtNVKgkYKMzGxZMENArpygSIt1ozija6fnWEHPda5tN3euJbMx6l/7k2kwGvfse01Vbp9SATXAYTEdNulDGxvGCJJp0p9Me1o8BtgbOqrZuffWwYGLOI3XKDJA9fhhPIXPsaIVJlMutX1/rFa7vuoFg3F/c7J1TgSHRbxe35sK9ndb7nEoUAQWNI4QAXgFFwgkDOV4jXPE2c3jTEdO38h0Z1yhupwOBsUp69r/MXVcu9eZQxlKFPFEoRyOF1xfSTfaAXKXK/ykYmPKpclfX/XkPghGwSwVytKrpECoAHOaksioiHQkuIp2RmM/uJQ+r+x5q4mXlJV0uj72pFrWs4h17AUja2jnvgwY9UosksVck89Q5Gx7eijhBig9bGSoJdMv7evv2kqlqCKUIBIhEmLE8+lQYEqMo9qfQRb76qZEhscFBbsvtDIa9a8j2+558vTwLWdku71ty80F89W3B/Zk7PqBPZKx0A6YFgs4Ry4+ipH0wNEkTheYFATujCtmORJp0h05Pcz4SdZHSHyh7GYH7dZoreDa8YL3MvQY2H4VJxkjIYyB9DuYEv4H5KtO/ck/P8v056IxgeGNtJyPn8A3wFGMQvGkIfMNhaxI7yLzC+Qrky/xihtPwTfQiOgXElMYTV2HNyI0h2ksGmHKGCKikS92/ezjp0YMBeLiWg/JFKI7Hk7GI3vkb0zGeFoiNUc9oKHSmO9Nco73IbRM3cFfIrnSeqfIO8+AIkm2p1YHh98Bo14ldaM0nklADpV1yahVKJmXYPI+naFzxcUTTG7SGfrLVeuhhBo5pd9DoR69+F+oRzmNhfLkA1uasYHa16Pyu139MIpDTToz7ZIDz+7K5MofeMG78dj3fNeaTJxR/4iDOxBJZZR4KEwZ8gfeO0oFFwwmcu0YCfsWhbmffQCwItq1JXE74cWR4o3hqZpPHoHJI7I/mWbhLjcqo9UiJMlylFOh6g8PC1UR4SlD5Uh1d2Q7VMr2RxLYs6+drh1MBtO+Mwqcy0Aev/axMKrAMnT6BX/laFyzaM6BobK3rDiW/dvULJsRWuMQmYnahwZHTD5WJLfyV5RpH4ywUQrc5E8g9BgkzXbLXOFFILVIoMWdCskN8BY0I7RukjSOwd//fmGPLy9qHz096VOtVH7oGFJWUv99u/+hY0pkZo4MyIA0RkZN6qXSrU7pz2bKZUIewjijUZXjq8gF9fIiktuaPb4s2M/C0mNqpMqSjSrcBjCKqqdNZPZikUjbQTX4VklgX88833J9VRzYLw4epo4mJ4nr6dxKUUeTauLyKH3bJpS1qtDz0nrnOt1gaI2svu0eL1bhOcB8qGsQY2bJVEtdQQCjPvaMCl0+FTMqgi/hjOFwCAlcyGTv8LuH7G4mi7mav8pxn9rXHfD9fVXpure7o3viPeAsdiS044tVtpS/O8mg9nlDvJhAJrDKUMD+WE7e8Qq9YZPosIvfyVV64+5725WpozM6eLZxJMDfbnVZl4Y3iEk+MAFmCuqe7WrrcJ1R15lYg6A7cOyRHzg9dTt18L1nd13bl5RY/yWP2ry+69p9x/PdD4GcKXW4IMG8PSdry05K+U8oYotE8i9Viy208TBIrRYyBAWSA0NI8Bxx0cNsI7Ury8srrp5tud2roDceWkdkZ9S/VsGXby3eHrjMUhmbqe9aTI4gC5dmRFcQkwP1y6qFPK3Yqoh8/DC60VIpnz+n6zqZKNXJQRal4s72i3Mw/cbL03/jZ8zpjpzSnO7IKSWlk+tXQW9qDaR5d98fS7XPiE96V93J+lVuk/opDxvPc6IneclqalOOemqPy9LYe7cVsh6vOpzN4yYjy/ncjIBNweWEoJR/KASlnrYLoUPb86y+HYwvA//KDnrWhyxo3L9EOCJZXUsx57rKHpF5E6aCrqDAoRLpzi1ffkPHm2iFRbDGEHTAioqo/MxFhGlzYRzCmZ33W+UvY6f+VY4io8zOdF3elMs1oso4Ed5wfSkzpCLSdfYJFMvO/vTm69cmvOG5V5CDJTyCpuFSCvkAwvtySBkuVzQCrV9fvjx3hjpzTASMUmfFnySEQktMEiO92Uls2YmvS3cHNOIbmEGOXr2QYny7wb+tS77l9m0/6A7G01zrlaJ0l5jAbkzTXXEzJOBi2HV1pfaSMgW5jTTLMK7Gnu/l96BW3x75j6jDKwOe6MvNrr6QuqJcFLZd8WrLtLdu+wLftUbexHLl8Xk17dvBxOrbD7b2wqv4DBKeQJmqX6ULNIELVPI5FW+PkOb9YU3UmfZ4crwvMNEXT3tDVe6u746nk+tnB9c7mC/tnXMyRQoXjKbJ+llleiRzkQPJ0fvpO3sgVVCRE1wOrL7XMTN0po66OhkBhkpqHuW5i5NbMbSp623ZkaRlZPuBbw8nA8u3q61oM1lJgiARCLRKYiiQ9nKPkd6m0CjXM+cxXDw80SxkWcijkCfThXaToc8p4kJ1q9BUdNovV8DcLF/AIRIlFBPRSQm+fdNsNllKypxv/mxwGt6AzQp653gn47fBYxyiLfgs3y8y1Py0+gFwtFoj1qUraTZAb4g7sn3bC2Si4YxHb0yj1Wg1WsY9MNqNZ782WruJ1iMFX9D/nUQfuNOR7wxttQOdChF3GFpRURJDlpeUA+Uca8/x3gf+h4n9nYx1hkm0oikRh611SrD4VHPR5xQzxDtyhqmnZJhq1lwgVvUiN9LjgY53x0MR54GOfqo94CKoyomWFH86cIaO7x0Q2LGGhEJTpzFeYVEOI/fencFnFsfnjGaPpXKpJ5O30TjoTScyiRsPHa87HU+94J3r9B5xPOl1RrSXJmMyYXSFeZi+YziSp9ORl2ddTX779m+G6+ksJSL1CEz4kgod2RRKsDWa01N9D7rXLXOQ5qqb4GdR1A5R+1ez9etrZL5oPQ/N2fOXz0zYfv2sjdCz1q8ISavgd7w5S3lzvZL/z2oAzeU6SAWOmymR2r/pbMti5PZz/Od3X+VPkoXVLGyokmDZZ1xbA6dn+c54FNiu22nVajVr4mQFAN2M49q+69he52Ur3+MShJJUpwN+bmR9ZDEmN42ft4V3CGO7pfpwlQNXLTg7iO9B53/Af39sma8//e3PRvW/9YNL9UaeWulD0XL8vNUqb/tD2TiF/lWGvtT9eDKq/eFYVcvr1J8csgaYYOk1ERvxmNKbNDGAUXT0kGwMtEH75bZc98i+r5B7djckf57vdbI21q16qxyvYLfu+Z5kqrXPjzy6QEHZ/qI7VwV111Zm+bPRfvVb49XzRvvZ60b7lfEzqC7372iyqsq8/80LSsvoapeUwGA8fi9jxrzwuMfemRgP4crTrDLK3G/v9BlrJ93+TTcaVzD2oz/ujcGT6J88vnv6JmsNA2KJOaAkREBNBZiTCwF4miSUCRQBSO5WlKGzqsgbXeqWtajU/Le1W2UbvtdtYiQE5vpfVRb84sVzVf/Vu38MTEKdIfKiQfDwxp3ks5uy+JGchimLgbmWoS8MEcvybxkrMYIE4k05yJshbIRMgKUQCX/TbO5z/GZLMA/DapyB9lGSzNR2jjc1p0O+O/el/890qhTJfJ9mUVXUPtUuCiCJwA0ObyQgnc9z4AwuYVR9zAJFfu2gizm6YH6oS1R955FypupFK0iimaRe05Xhn2OC+RJF2UJbK4CfijBq+35ll8kLhmaUCsB0xB/9AvSA5IXQCAFMQBusMEkFutBU5RUsYIbA4MtURPQLASYDbfCT8YjIrOpDnpRkn/LsavTDUO80J0xHlu/bo57dC6aTvmv1bO9gmJ3/ptP81O85bkfnWjAR8j+VRanSYoIYphEOjQN32PUnEWaqE0QeIWWM98bTnevqvBS5A7YFlJUgX714cQpSb7I18d+8mWREvnmjdc3M+lXMAebS+NvG7xfg7dvHYSRQCEQiFJnTZMFghM7Gt/m0JiUryG/U1zkRxPFdnlluRsxUIy9yzmpESF1r/l8gkk6LVaBR4weQ5F8MmSah5iym4c25CMv4HoO8irmq6+OTFqiK9+dfen8Hsyv3SFq+dRJ+o5n6TnujkLk+Yq5aezdB1uwO3EABdfMr/wV8wXGsQGYo2/joYlvzd0OV7a3IerxBROZmcQFiEirw/I6SfK+PIOCCJo+fnVnP9vy8/Ts3gK1rT++D59vDrj/Yvcl/xAJaX/8N9DutCN9vlZKebyKkzRdU+roF6G/yijO1IUMnoGMgEFJCUCgwJSBcovAGhDRCbwxQ3w5OjrQWIBJVf/qn+djBU6v9aI8v/zcAAP//cv6oLIY7AAA= - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+SerializeImagePulls/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+SerializeImagePulls/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SerializeImagePulls/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+SerializeImagePulls/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+SerializeImagePulls/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+SerializeImagePulls/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SerializeImagePulls/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+SerializeImagePulls/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+SerializeImagePulls/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+SerializeImagePulls/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+SerializeImagePulls/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+SerializeImagePulls/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+cgroupv2/CustomData b/pkg/agent/testdata/AKSUbuntu2204+cgroupv2/CustomData index 03e9718c450..b0176ad3797 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+cgroupv2/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+cgroupv2/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+cgroupv2/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+cgroupv2/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+cgroupv2/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+cgroupv2/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+cgroupv2/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+cgroupv2/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+cgroupv2/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+cgroupv2/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+cgroupv2/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+cgroupv2/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+cgroupv2/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+cgroupv2/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2204+ootcredentialprovider/CustomData b/pkg/agent/testdata/AKSUbuntu2204+ootcredentialprovider/CustomData index 62d26bf43af..90a7f80a5e4 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+ootcredentialprovider/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2204+ootcredentialprovider/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2204+ootcredentialprovider/line33.sh b/pkg/agent/testdata/AKSUbuntu2204+ootcredentialprovider/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+ootcredentialprovider/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+ootcredentialprovider/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2204+ootcredentialprovider/line70.sh b/pkg/agent/testdata/AKSUbuntu2204+ootcredentialprovider/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+ootcredentialprovider/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+ootcredentialprovider/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2204+ootcredentialprovider/line9.sh b/pkg/agent/testdata/AKSUbuntu2204+ootcredentialprovider/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2204+ootcredentialprovider/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2204+ootcredentialprovider/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AKSUbuntu2404+CustomLinuxOSConfigUlimit/CustomData b/pkg/agent/testdata/AKSUbuntu2404+CustomLinuxOSConfigUlimit/CustomData index 5f108cb2152..51ac9760b65 100644 --- a/pkg/agent/testdata/AKSUbuntu2404+CustomLinuxOSConfigUlimit/CustomData +++ b/pkg/agent/testdata/AKSUbuntu2404+CustomLinuxOSConfigUlimit/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/9xcfVujSLb/P5/iDMOMOiNJiLbt2EvvYII217xdIPb0tV0eDJXISCANhd2u5n72+1RRQEGIre3s3Nl1n342oU6dl995qVNVZL7/rnXlBa0rJ75uaIZhmx9MSxt0rb5tWqph2Seq3lf2gY51+6NJz9aHumVb+kAbTSzlVTpyovc1+71qdd/lIwfpyLtRv2e/V/v6cPKbeqoNLeV1OmBofU01tRqCw5RAHVu2PjQttd/Pmf6SDvVG3TPNWBvttEvDvdH7YX+k9opxuTR+pn2ooemUaIgShC4f3isNcxh1GEiD0fEHOq2vmwVOHQbUwLRPx6cbRB9wHNZsY7B1R0NL1Yea0VsnYcAZk2F3fZBBd3ZoEoKhPjzNx/baxdiaVnsMtLPJsUbCYjiy7JPRZNhT9hhU+uC0ZtpeMa2vWTxSe/tlLw5O7fGEU3Xv1ZqpXauO7mCdztCJjuukm9GjocsZdbhGea4Zpj4a2vrwXO3rPWWPQdkd6ut278u5o8fGqGf3tOMaos460fjs1FZ7PZZwDL2RoXIu0QxjZCj7DJ40UzlD6MTDLIZ6Y2N0rLGnTOPRxDomVhLrhunQK8736li3Tc041wyeQK4l6A1Nuz8anU3GjKxTS6b+z8TQ1omz4FAttT4XDtocRTUJD2RusBroB0yR83e9qm8P1gNrTfDrNpdE66NMcndiWqOBbWqq0X1n90YDVR+aqW2HjMHpeLI+/3CPGzR0Ell8Zhzurw9X7Tt8xdFo53pXs8f9yak+LDE6KIj04cnINkYDuzsyjMnY0nrKIUsH8/S3jXJ+aa/TcBJ+kYsq3VP1fuGdX7j6PRn3VEsrhrLMMTUS+Oc6zSuza+hji/rJ0NRewUlutzkhpJxOxqeG2tM4Ck6N8cQ4ZQEvtzt5kpCCYGjEDYrcZvh3ddNWTVM/HdrGaGTZ4/eKLMtrYzR+xpox0E2iqSLLjO1YpaWrOxp/oESKLPOcx+P+B3usmub7kUGT7UQ/VWS5krj5GjJiaSHLWUVLy9ha+Mjy6xLBaKwZqkUwTEuDLGfVyzJqBn+BRgoWTUrTUrtn9qlm2aoxsK3RmTZU5GwJrZIMNev9yDhjtkxSxoqcrahVcnNyPNQse2xoJ/pvikwW1Twpjyd6P6tlMlkXU1Deq2O7a2gkXFIwslWJH9GH5uTkRO/q2pBGxJltjtWupshklaLUltbXxiPD6pXKpiJnda4YzwI+Hc4MMSz9RO2S9crQ1AFZJTM+ipzVuBoixkyRSWlLGx/LGpMg/+2D3VUJbueaYSlyVthYZpAhzbBMRT7ImxOmtql1CahW37SPRyPLtAx1nC+n2m9aN8v7PDoOMgf3dPNY7Wu2PrbU475mKjIpa2nNNCamRTisB1dW3Hq6SWbZpvlOkV9nEW/oA9X4YA/1rq2PuaIqv2aRrw9NzbBsfdAzbUMzLRKiJPqMCdFkaI3sgTo87Ws21UmRX+8/dd6J3rc0I5/H0qhHgNA2zDshBa8i7+Cp8yryXnPBa2jEF7ah/fdEN7Se0slK1HBEi4J6qpkMmE5Wm8yhOjbfjfJqyDeN7SwzxoZ+TgbJ+klaARKVnaxckYd8uHba+1na5O36QDXPGFM21jW0nja0dLWfFttebU/czjKQtDPVVqfTPoBGo2hFaFNFtGHav4bKGHlOUCWrvy0rnfZhlYJbfN+r5kDptH95lMme0pHbj1LsK52sdm+geKV05AwV1odkQZ73p5pxThKZZKN+oneJL4yRlRZQSz1VOvJeo+HNYOYFLrQQnoKE75YIZrs+SIGzQCD8JEXIR06MBJCWkRdgkD4lHobO25aLbltB4vvwAPMILUH6BFvNrTeAr1HQAAAYmYq4HYcRBimi7Fs5NzLH+XwDWwsHT6+3xfYutP6xrffsvn6mKdvTMEJhvPOg95Tt5k87O2JrF5wduIdUBRwmyyWKtp2LziU4F3uXO28AffEwrLZ2mOTM7c/UIA+WZwuGB8ARSC5sCVs7DeTHiGqCptchCBXRQYhhFiaBKzRmXqMxOZ4MrYk9Mu2hOtAUIf0uNAaqQYKqGGAPihHaLVaHyUOhQZcvugMtCIpnQoPtfZRWEkctP5w6Pt003yRXaIr9RrqQp6PkuRtOb1DUQF+WBE3aqJ0rgnhftHUZ4kfKSijRaabFSwluPddzmIDcTXJT3mvKkpzNHJ7rPV3NWOsD9VSzzXdqJjJ/wEurm0PCPFPzfCWJ9xsYr3HhDLM+jLWKreTRV0QrwmIaNRfeNArjcIab03DRcm5i8k+aL5NClQrbginpeNJuNy2T3UFPEaYkygK4OYybXghREoBEEvPW89EcuSBJ0QIkKUBYug5jDJL02cPXUhDD0nOPWssonLbkVhC3lh4hXoQJCeu7JVKuvMDdjaOp0gqXuDVfJrtujJXWIki/hEvshUGsRITusZnOlBIWs7MHJQ65kSwO1uxMA67OwABhhdm29Fz28RYytY8ylfOHTIEjXhsKlNAgPXZX7b7T7J5uKK1bJ2pNnek1ajlkXjS99m5R3GqQflkdkgaNI47CEBO6dEJDO9eGFtkTnp7SFivj54fzlvPPJEKtQR4LKvne1L5gFMREm2Y3iXG4MKeRt8QtdIsCHLca3YnRJ/vb8cRSWnixbE2TyLdvUXQVxqgZJrhB1waeIoyceJ3C0E510zI+sFY3be9pTSL0rWkYzLx5885Z+NBoRAhHd9OFa3sze+Z4fhKh7R24p9WMjHkoVkT5DXx2PGzHPkJLRey8AewtUJhgRdx7A/G1N8Pw44+VD5TFLIzAAy8AcTtGn0AGkTHdeQNuSEnIH2MHYvZBEO9/XQmE11WEnBt4eICPObU3gwsQPZDQp5wfXHJLUfZHy7H2BU0TjFz4KIi/fhTIRCIlflMijRBOogDk/GFe07M/ajyIBRD56MyjH90w4FaBzWJXtajbseejAP/ngP9HIcrDFcR+GN4kyxwlHhmZQ4agFGLHt3msIjQNI1cR9+nUGDsRpuOKuO06GMHPP8RpQ/H52vMR4ChBJaAy6SDlXDPIJKqi0iaQECEbwJsmUYSCDVILdLe3eUKQOF13dkCaIxBL1m0OfsEidJyLS9MiRIqZu/ssy0i8Ild43NfMgZu9nCfLo5CkNuSp9Cw1w+hrQMZoGgZuLJCUrMvIILRj7OD4r5CTJCX/OhmZozVH2MZOdOX4fo4SdiL7MaRScopUEvlZOqauFu+52asMcGEDdBxtBT4nAgn/c0ZJiLSnQMdx+0b4MmcdtElY+yDNYrN/CyL9HBbKvAWRW+2h8/ZHucSHqHUB4t/hOwXacFmnDE0dB5cYlQi4DHypZ+1ZFC7sCM29GEd3NmkxbdJKvNDjZNYs9F0Ukbz3onQLmoEk7PwnhgWBDZZkG80HBYOBdKkMZCnt0kC839jSrUgYcS3hy8KIY/SHh9GVFzjR3VejiJE9EkiMYung62owZTLW44mbVImpssBKWG2IrfKccnjRsJFmFZm1QUODbnPElAKwLBI2uXEtDms5fz0eS0j+0SH5jLD8amjWhOfjIVqZsCFi6bZr5vnFPog+eeLaTyam8bnP4vNVKeZ4Xl8tZDxxOdQuaKCJmTS4vMxLWX0V41m9sIzlPUntGper9Bde5CjBLIzKbn7Ew4VX9yjp0rlFLjsAoZv9qR8mruQFHpYIbdykFJQ2PS09+US8n/FZCSBSCuI1hnz7Of1hznTre210ssXB/ngY/BntIaVELkgeCC2iXssVCgWLbOBC5S2Do7FqxHcxRospJtFKu/Xndd8Q305J4c/WhW/tt3M1wHXQIgykCPmh4z5lAtMbRKbKn9C257LJfiWJC9GSFITS0pmTSu6X5vweJlHg+GSSlOQTvimdCpfFOFz+2/mLKP1nOuvZqLpe7Fz56N8OWKb3XxPbtMIQU56H60vBpAknpSD9dQC5RVHshYE9x1mYYRRjEMRtehU2g60f4o/BFgjirwI8ALtkO4cHuEaOC1IA8o4AigKCKAuNVaOIXi0gMaAGrlkq5mtlHuR2G17BXhvE1B5DS6+ZTUu1JqYi/r1RX+rkcpGDt1A5iBdlKaVt+uG8UQBcFgBSgEgfUoGZ9W0yTMPEd+ld3hVKj5H4Q7CSJxi03gy+g5pzJZA7xNLOK84YFKSZIj9JfErtwtVdwWKzLrw3emlKUndwpdqbcbr4XoylJPBwDJI0I3sDSXJKF7+CKDdjFN16UyRUFC6vBZBZKsokxDeBGS6XPJhrle9JbBgt48PsRotbFHXDxdLh7jWya19VEbfTTkSGB5gmGCQXhJ8F0lrLOyXS45y0s4n04oJ0eDnvFUuH/MnxSmBteqnhI6mE3Jw9xwD4uemF8xb5H8nDLAXPIRV+7c2vUYzP0zRWxG39xFTyTUcqYyXkqouUiTTrPKK6eF9muqrTPo+1VcMNPweknPbQ1fhmboUnfG89PjtNb6VZcpPv+Z19J3/U0w2ta42MD1mhXdy4XgTSEsTScNqEJ/G1C+J9aWSVV/K1rCMxdNBug7PE0hxhyBRmLIh6KyX9zFRb/ZQKCpekM3WWmB5nZPOYcY+sGuXz3zcNAHopTqYoBD9mQelakgQ4l8FPWGnc5c0cJLY9J5ZKDkncMJoi+tBFs+KuhOx6iCF+OL2J6eMMDimE3vJmfnQ0Sm9uj44UnkvouwVi0l31kqjxtYWLGi2/oUvU+rL0Ji2abP9AAK/gwD4Sro1VY45wdzxRo+l1HmFONL1WxO0kbXsXOw1uj3lPBnd3VzQjHfLlYF8gAioj0YI8X9+LpnmUDjfW1lk2unCzUVp7vFg1Bgf7fIklqmwXqu/wQutlyhuktbka58UGO6GZRMUhfBpo7CyHnkPILDPY+VuE5uiLsvWP5s8fW+m/o+bP4lYJtmL6CpT/JeDzk3Odobr0tIFfBzMvAtHWD+exjUM7vfWuqIud+IbmUXFfkg6k1KSiDJ3SNdEPe8OdBkdIF2aLv0oSfjiBH6zmD3tDdvpH4jbTK+sqmJTA3TyV0v0eh4Ed48gL5oq4Db9/Ip1P0bhJkhPNgfCIsbNYAtDim6m0EtZIR0sUOSTbdJeQMgVqCFkNpk8EudnZWyexnPiGoAOpWIJlDSONINlHt8gHEPRgFkYLqoDjr9MOUBw7c5QKJYuojzByj0D8aQPfsedS2vaGcatufOs+B+wIxPzzLg/OEYjct90MjiMQ2afd3HzCg33c5aw9ArH4spuZdgQi+7SbW5BRjj13N1c7e2h57irNEe4oWbzn4oKegd6vvx6yEu/LUbxqklmNonAKpLgJ8J1CASrXA778ce3NNWmA7PjGW9rpi1a2G3mkly/6bFLZv6RH5KF7p4jbxakdSO9AGCDsuA52juh9t0Cb6WUUfrkD4ScBhGuMl0etlnzwS7Pzar/J/r+1YLNaXhBjJ5iivztLT2K7CKXT7shSuyO1ZZZzXKp9i6nUkMLWrFkSRGIS6WpIIiLYak7DxTLBqImdedz3YgwPsHCW2zHy0RRvN+na8EC3NtuCeeMtT5dJjwKmEzN8X3gDgifs7OxctC+bt46fIGi1QJg5foyEfCYFKqXcKt0ocDoKnH9YZ2rfJFfIR9imrXMwt6cowt7MmzoY2VGIaXT/xzqOgVDvu6jGdxeXpMvlPUeXy5tYYqwkhqfE8JQ4PKUMT2EHHiB1Za2vGC8hXUkHTuQFKBpF9JWtvhckXypLVBhnKylbJMOYNsuVtzdJr/zwUEfAv8S5TrX+Hud6Z1A+L/aqfXgD3Tr+2JneOHPUYw3bxOhX7KAtwb18JK04Y6QABDGJ/Jp2BAhXECIUJz5WxHvSE3DvgKR1MB1tVM4neD1T8FO005T7r09MszDBywQr4jYJiCwiicvSazWiWkpSjjvmTjbU4Lolbwa1HgVBHJnlfWucuCFgN5gB04p0uL9/It1tyv/3T/DZibNRugiW9VzrC7PdQsbwFchw0P4WphS6tOAnS9KZGOmLxRWPLlOXK/QEphSwgtgpP8m2iYK4J7CzFvpTVkVgr8uUyfvhZxR1nZhL3vswpttJsie9OKKvSR9dbpHPPiE+umTJ9v1JGEH6hvMucYiYCwcvBvmw2d4HJ3BBiOTD9r5AHjp+HIKLZl6AXLLxIXUhDMjKSRfM3bTlFLO3q72YlkocZjxSuaa38Hwn8u/oDqrTzgR1Os32fhNG+BpFn70Y1TFqMhSahQkse6lw4GY4/mfnrtAggw+C8DM3u8jqGhD2mu0Ugtu9Zvs5CDCn8QhQFl8Lfuq7Snpnu5PMvSyYVqxAC003ryR63CQs8qBYNT8Kt+RJdk7wURB26AoRJH5tKeEDbn1u3TtkdSWvEszvPXwdJrgX4lKUZozpqSVyYStufWy2WvOt0gbxiXYnV0mAk2bEMS7Erh63mrN4w/zMdj7VWR1nxPG/POVLBaYMSJb0ZVj/qELBfnqUnbyYyvZOo/HSyBTSLfYGj/D6Ci6aOYmPcw+8WHZTvGcQr5qsnsfnncdjJMXRd3Bx6hYr2xvlS9G3qFDqq0qyiGpEM9oylUaEnZ2KkssI3XphEvf/RGVrZZaUrqXglSeLwW1We0lLcV9G++LXS1IbuTucuuD8WdkWxPvbLAcK9vn9d72setD+SJnVQvkvCePH02pzrb7910TJxWXm4XXEbzdi/CR8c2xzo/LKPEh87KnR9LpSm1NTvYUzR1Z4jMYJ6ezSCt0A+P73T7SFWJsNsyhc0KFpGGCHLNs64RE3QZ9Bt/zswrtsLqoczjukEwhCTNNhN1MZXzt4Nz11ZU+ewqyxHjUVkzKP1Smysch9rcBtkEGjokbOS0rZU8vYS1R6YcF6brEaTPqWbtP/oMPTovpbK9SzBeUbwbQkbS4Hz0I7S/ynpv3T1M5+dFJqwDZvpLMejJ0KFKcEndr+i91r/cW6r3Sr4s3gsdoL6IsXY7b7mJMdxzWCgr6fl7AIsb1PmO+yNpKXBbIuDP6Izu+RPovTQnn5sshxE0CKipWZ3qpyoysBCp3gxx/zNSj/TTtRSKA3U/VDFXaNzQct32IiQ/+rtv05drHVikTnqtFwXPcsPe4bhi7qO1eoetfVV4+1vm1ahj485c7o0ncWPBBEnkCAv/3tbyCI2Y/nh6OeZlMCU4C3UPzavfP2x/p3MtjhIwShi8An+kBJQrqRj5Dj3pFVJkYB3iWr87UXzMle3XHXXx8pt23sXtF1yYw6CTiEdS3iZrMpFAe29Nys1spqUtQQEcfUPF7tive8IquaS9E6biXtua1uhBbhLXqJexEIazq9wMNPh6JVFdvKweCVqxDt/knKVcU+Sbn/H90y1dKI+P6d1h9rhqmNThr/FwAA//+Ej9uW4E8AAA== + H4sIAAAAAAAC/9xcfXubRrb/X5/ilNLabo0kZMdxnCVbLGGFa71dQE5zHS8PFiOZGoECIydeW/ez32eGAQaEHDtuc7P1PnlWYs6cl995mTMzqD/+0Lj0gsalE1/VNMOwzfempfXbVs82LdWw7BNV7yn7QMfaveG4Y+sD3bItva8Nx5byIhk50Xua/U612m+zkYNk5O2w17HfqT19MP5d7WoDS3mZDBhaT1NNrYLgMCFQR5atD0xL7fUypq+Soc6wfaoZa6OtZmG4M3w36A3VTj4uF8ZPtfcVNK0CDVGC0GXDe4VhDqMWA6k/PH5Pp/V0M8epxYDqm3Z31N0g+oDjsGYbg609HFiqPtCMzjoJA84YD9rrgwy600OTEAz0QTcb22vmY2ta7THQTsfHGgmLwdCyT4bjQUfZY1Dp/W7FtL18Wk+zeKT29ote7Hft0ZhTde/Fmqltq4ruYJ3O0ImO66Sb0aOhyxl1uEZ5phmmPhzY+uBM7ekdZY9B2R7o63bvy5mjR8awY3e04wqi1jrR6LRrq50OSziG3tBQOZdohjE0lH0GT5KpnCF04mEaQ52RMTzW2FOm8XBsHRMriXWDZOgF53t1pNumZpxpBk8gVxJ0BqbdGw5PxyNG1qokU/9nbGjrxGlwqJZanQsHTY6inIQHMjdYDvQDpsjZ207ZtwfrgbUm+GWTS6L1USa5PTatYd82NdVov7U7w76qD8zEtkPGoDsar88/3OMGDZ1EFp8Zh/vrw2X7Dl9wNNqZ3tbsUW/c1QcFRgc5kT44GdrGsG+3h4YxHllaRzlk6WB2f98o51VznYaT8ErOq3RH1Xu5d15x9Xs86qiWlg+lmWNqJPDPdJpXZtvQRxb1k6GpnZyT3GxyQkg5HY+6htrROApOjdHY6LKAl5utLElIQTA04gZFbjL827ppq6apdwe2MRxa9uidIsvy2hiNn5Fm9HWTaKrIMmM7Umnpag9H7ymRIss859Go994eqab5bmjQZDvRu4oslxI3W0OGLC1kOa1oSRlbCx9ZflkgGI40Q7UIhklpkOW0ellGxeArqCVg0aQ0LbV9anc1y1aNvm0NT7WBIqdLaJlkoFnvhsYps2WcMFbkdEUtk5vj44Fm2SNDO9F/V2SyqGZJeTzWe2ktk8m6mIDyTh3ZbUMj4ZKAka5K/Ig+MMcnJ3pb1wY0Ik5tc6S2NUUmqxSltrSeNhoaVqdQNhU5rXP5eBrwyXBqiGHpJ2qbrFeGpvbJKpnyUeS0xlUQMWaKTEpb0vhY1ogE+e/v7bZKcDvTDEuR08LGMoMMaYZlKvJB1pwwtU2tTUC1eqZ9PBxapmWoo2w51X7X2mneZ9FxkDq4o5vHak+z9ZGlHvc0U5FJWUtqpjE2LcJhPbjS4tbRTTLLNs23ivwyjXhD76vGe3ugt219xBVV+SWLfH1gaoZl6/2OaRuaaZEQJdFnjIkmA2to99VBt6fZVCdFfrn/2Hknes/SjGweS6MOAULbMO+EFLySvIPHzivJe8kFr6ERX9iG9t9j3dA6SistUYMhLQpqVzMZMK20NpkDdWS+HWbVkG8am2lmjAz9jAyS9ZO0AiQqW2m5Ig/5cG0199O0ydr1vmqeMqZsrG1oHW1g6WovKbadyp64mWYgaWfKrU6reQC1Wt6K0KaKaMO0fwmlMfKcoEpWf1tWWs3DMgW3+L5Tzb7Sar56kMme0pKbD1LsK620dm+geKG05BQV1oekQZ71p5pxRhKZZKN+oreJL4yhlRRQS+0qLXmvVvOmMPUCFxoIT0DCtwsE010fpMCZIxB+kSLkIydGAkiLyAswSB+XHobWm4aLbhrB0vfhHmYRWoD0EbbqW68BX6GgBgAwNBVxOw4jDFJE2TcybmSO8+katuYOnlxti81daPxrW+/YPf1UU7YnYYTCeOde7yjb9V92dsTGLjg7cAeJCjhcLhYo2nbOWxfgnO9d7LwG9NnDsNraYZJTtz9RgyxYniwY7gFHILmwJWzt1JAfI6oJmlyFIJREByGGabgMXKE29Wq18fF4YI3toWkP1L6mCMl3odZXDRJU+QB7kI/QbrE8TB4KNbp80R1oTpA/E2ps76M0lnHU8MOJ49NN8/XyEk2wX0sW8mSUPHfDyTWKaujzgqBJG7UzRRDv8rYuRfxIWQkFOs20eCnBjed6DhOQuUmuy3t1WZLTmYMzvaOrKWu9r3Y123yrpiKzB7y0qjkkzFM1z1aSeLeB8RoXzjDr/Ugr2UoefUG0IswnUX3uTaIwDqe4PgnnDec6Jv+k2WKZq1JimzMlHU/S7SZlst3vKMKERFkA14dx3QshWgYgkcS88Xw0Qy5IUjQHSQoQlq7CGIMkffLwlRTEsPDco8YiCicNuRHEjYVHiOfhkoT17QIpl17g7sbRRGmEC9yYLZa7boyVxjxIvoQL7IVBrESE7qGZzoQS5rPTBwUOmZEsDtbsTAKuysAAYYXZtvBc9vEGUrWPUpWzh0yBI14bCpRQIz12W22/1eyObiiNGydqTJzJFWo4ZF40ufJuUNyokX5ZHZAGjSOOwhATumRCTTvTBhbZE3a7tMVK+fnhrOH8exmhRj+LBZV8r2ufMQpiok29vYxxODcnkbfADXSDAhw3au2x0SP729HYUhp4vmhMlpFv36DoMoxRPVziGl0beIowcuJ1CkPr6qZlvGetbtLe05pE6BuTMJh6s/qtM/ehVosQjm4nc9f2pvbU8fxlhLZ34I5WMzLmoVgR5dfwyfGwHfsILRSx9RqwN0fhEivi3muIr7wphp9/Ln2gLKZhBB54AYjbMfoIMoiM6c5rcENKQv4YOxDTD4J499tKILwuI+Rcw/09fMiovSmcg+iBhD5m/OCCW4rSP1qOtc9ossTIhQ+C+NsHgUwkUuLXBdII4WUUgJw9zGp6+keNBzEHIhudevSjGwbcKrBZ7KoSdTv2fBTgvw/4fxaiPFxB7Ifh9XKRocQjI3PIEJRC7Pg2j1WEJmHkKuI+nRpjJ8J0XBG3XQcj+PWnOGkoPl15PgIcLVEBqFQ6SBnXFDKJqqg0CSREyAbwJssoQsEGqTm629s8IUicrjs7IM0QiAXrNge/YBE6zsWFaREixczdfZJlJF6RKzzsa+bAzV7OkuVBSBIbslR6kpph9CUgYzQJAzcWSEpWZWQQ2jF2cPw95CRJye8nIzO0Zgjb2IkuHd/PUMJOZD+EVEJOkVpGfpqOiavFO272KgVc2AAdR1uCz4lAwv+eUhIi7THQcdy+Er7UWQdNEtY+SNPY7N2ASD+HuTJvQORWe2i9+Vku8CFqnYP4T/hBgSZcVClDU8fBBUYFAi4Dn+tZexqFcztCMy/G0a1NWkybtBLP9DiZNQ19F0Uk770o2YKmIAk7f8ewILDBgmyj+aBgMJAulYEsJV0aiHcbW7oVCSOuJXxeGHGM/vQwuvQCJ7r9YhQxsgcCiVEsHHxVDqZUxno8cZNKMVUUWAqrDbFVnFMMLxo20rQkszJoaNBtjphCABZFwiY3rsVhJecvx2MByT87JJ8Qll8MzYrwfDhESxM2RCzddk09P98H0SePXPvJxCQ+91l8vijEHM/ri4WMJy6G2jkNNDGVBhcXWSmrrmI8q2eWsawnqVzjMpW+40WOEkzDqOjmBzyce3WPki6cG+SyAxC62Z/44dKVvMDDEqGN65SC0ianpScfifdTPisBREpBvMaQbz6lP8yYbv2oDU+2ONgfDoNv0R5SSuSC5IHQIOo1XCFXMM8GLlTeMDhqq1p8G2M0n2ASrbRbf1r3DfHNhBT+dF342n47UwNcB83DQIqQHzruYyYwvUFkqnyDtj2TTfYryzgXLUlBKC2cGankfmHOH+EyChyfTJKW2YSvSqfcZTEOF/9x/iJKf0tnPRlV14udSx/9xwHL9P4+sU0qDDHlabg+F0yacFIC0vcDyA2KYi8M7BlOwwyjGIMgbtOrsCls/RR/CLZAEH8T4B7YJdsZ3MMVclyQApB3BFAUEERZqK1qefRqAYkBNXDNQjFfK/MgN5vwAvaaICb2GFpyzWxaqjU2FfGftepSJxeLHLyB0kG8KEsJbd0PZ7Uc4KIAkAJE+pASzKxvk2ESLn2X3uVdouQYiT8EK3iCQetN4QeoOFcCuUUsbb3gjEFBkinyo8Qn1C5c3uYsNuvCe6OTpCR1B1eqvSmni+/FWFoGHo5BkqZkbyBJTuHiVxDleoyiG2+ChJLCxbUAUktFmYT4JjDDxYIHc63yPYoNo2V8mN1ofoOidjhfONy9RnrtqyridtKJyHAPkyUGyQXhV4G01vJOgfQ4I21tIj0/Jx1exnvF0iF7crwSWJteaPhIKiE3Y88xAH5ucuG8Rf5H8jBNwTNIhF95sysU47MkjRVxWz8xlWzTkchYCZnqImUiTVsPqC7eFZmuqrTPYm1Vc8NPASmnHXQ5up5Z4QnfW49Ou8mtNEtu8j27s29ljzq6obWtofE+LbTza9eLQFqAWBhOmvBlfOWCeFcYWWWVfC3rSAwdNJvgLLA0QxhShRkLot5KST4z1Va/JILCBelMnQWmxxnpPGbcA6tG8fz3dQ2AXoqTKQrBj1lQuJYkAc5l8CNWGndxPQOJbc+JpZJDEjeMJog+dNE0vyshux5iiB9OrmP6OIVDCqGzuJ4dHQ2Tm9ujI4XnEvpujph0W74kqn1p4aJGy6/pErW+LL1OiibbPxDASziwj4RrbVWbIdwejdVocpVFmBNNrhRxe5m0vfOdGrfHvCODu7srmpEO+XKwLxABpZFoTp6v70WTPEqGa2vrLBudu+korT1erBr9g32+xBJVtnPVd3ih1TLlDdKaXI3zYoOd0Iyj/BA+CTR2lkPPIWSWGez8LUIz9FnZ+lf91w+N5N9R/VdxqwBbPn0Fyv8S8PnJmc5QXnqawK+DqReBaOuHs9jGoZ3cepfUxU58TfMovy9JBhJqUlEGTuGa6Ke9wU6NI6QLs8VfJQk/ncBPVv2nvQE7/SNxm+qVdhVMSuBunkrp/ojDwI5x5AUzRdyGPz6Szidv3CTJiWZAeMTYmS8AaPFNVVoJa6TDBYockm26S0iZAhWErAbTJ4Jcb+2tk1hOfE3QgUQswbKCkUaQ7KEb5AMIejANozlVwPHXafsojp0ZSoSSRdRHGLlHIP6yge/Icyltc8O4VTW+dZcBdgRi9nmXB+cIRO7bbgrHEYjs025mPuHBPu5y1h6BmH/ZTU07ApF92s0sSClHnrubqZ0+tDx3leQId5Qs3nFxQc9A79ZfD1mJd8UoXtXJrFpeOAVS3AT4QaEAFesBX/649uaKNEB2fO0t7ORFK9uNPNLL5302qeyfkyPy0L1VxO381A6ktyD0EXZcBztH9L5boM30Igo/34LwiwDCFcaLo0ZDPnhVb73Yr7P/b8zZrIYXxNgJJuifzsKT2C5CaTVbstRsSU2Z5RyXal9jKjUktzVtlgSRmES6GpKICLbqk3C+WGJUx84s7nkxhnuYO4vtGPlogrfrdG24p1ubbcG89hbdxbJDAdOJGb4vvAbBE3Z2ds6bF/Ubx18iaDRAmDp+jIRsJgUqodwq3ChwOgqcf1hnal8vL5GPsE1b52BmT1CEvak3cTCyoxDT6P7bOo6BUO27qMJ35xeky+U9R5fL61hirCSGp8TwlDg8pRRPYQfuIXFl0Vd3Rb12d1dCspr2ncgLUDSM6GtbPS9Yfi4tU2GcrqZsoQxj2jCX3uAk/fL9fRUB/yLnOtX6u5zr3UHxzNgr9+I1dOP4I2dy7cxQhzVtY6NXsoO2BXfykbTijJECEMRl5Fe0JEC4ghCheOljRbwjfQH3HkhSC5PRWumMgtczcUCCdpJ2//WRaRYu8WKJFXGbBEUalcRtydUaUS0hKcYecykbqnEdkzeFSo+CIA7N4t41XrohYDeYAtOKdLl/fCQdbsL/j4/wyYnTUboQFvVc6w3THUPK8AXIcND8GqYUuqToLxekOzGSl4tLHl0kLlfoKUwhYAWxVXySbhUFcU9g5y3056yKwF6ZKZL3wk8oajsxl8B3YUy3lGRfen5EX5U+utgin31CfHTBEu7HkzCC5C3nXeIQMRMOXgzyYb25D07gghDJh819gTx0/DgEF029ALlk80NqQxiQ1ZMumrtJ2ymmb1h7MS2XOEx5JHJNb+75TuTf0l1Uq5kKarXqzf06DPEVij55MapiVGco1HMTWPZS4cDNcPxPzm2uQQofBOEnbnae1RUg7NWbCQQ3e/XmUxBgTuMRoCy+FPzUd6X0TncoqXtZMK1YkRbqblZJ9LhOWGRBsap/EG7Ik/Ss4IMg7NBVIlj6laWED7j1uVXvkVWVvFIwv/PwVbjEnRAXojRlTE8ukQtbceNDvdGYbRU2iY+0e3m5DPCyHnGMc7Grh63mLN4wP7WdT3VWxxlx/JenfKHAFAFJk74I659VKNjPj9LTF1PZ3qnVnhuZQrLN3uARXl/BRVNn6ePMA8+WXRfvGMSrOqvn8Vnr4RhJcPQdnJ+8xcr2RvlS9DUqFHqrgiyiGtGMtk2FEWFnp6TkIkI3XriMe99Q2UqZBaUrKXjlyWJwk9Ze0lLcFdE+/+2C1EbuHqcqOH9VtgXx7ibNgZx9dgdeLasatD9TZrlQ/iVh/HBaba7VN39NlJxfpB5eR/xmI8aPwjfDNjMqq8z9pY89NZpclWpzYqo3d2bICo/RaEk6u6RC1wB+/OMjbSHWZsM0Cud0aBIG2CHLtk54xHXQp9AuPjv3LurzMoezFukEghDTdNhNVcZXDt5NTl7Zk8cwq61HTcmk1GNVimwscl8qcBtk0KiokPOcUvbYMvYclZ5ZsJ5arPrjnqXb9D/q8Lio/toK9WRB2UYwKUmby8GT0E4T/7Fp/zi10x+eFBqwzRvptAdjpwL5KUGrsv9id1vfWfeVbFW8KTxUewF99mLMdh8zsuO4QpDT97ISFiG29wmzXdZG8qJA1oXBn9H5PdBncVooz18WOW4CSFG+MtObVW50JUCuE/z8c7YGZb9rJwoJ9HaqeqjErrb5oOVrTGTof9G2b2MXW61IdK5qNcd1T5Mjv0Hoop5zicr3XT31WOvZpmXogy53Rpe8t+CBIPIEAvzjH/8AQUx/QD8YdjSbEpgCvIH8F++tNz9Xv5fBDiAhCF0EPtEHChKSjXyEHPeWrDIxCvAuWZ2vvGBG9uqOu/4KSbFtY3eLrktmVEnAIaxrEdfrdSE/tKXnZpVWlpOigog4puLxale84xVZVVyMVnEraM9tdSM0D2/Qc9yLQFjT6RkefjwUjbLYRgYGr1yJaPcbKVcW+yjl/n90S1WriIgT35mVguGkp3YfjgWOYs0iMvZ4Wyg1bwV90CjJ2AQtT7P7lyhSkvEYRb6BHkV//vhW6400w9SGJ7X/CwAA//+ee/h8tFEAAA== @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AKSUbuntu2404+CustomLinuxOSConfigUlimit/line33.sh b/pkg/agent/testdata/AKSUbuntu2404+CustomLinuxOSConfigUlimit/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AKSUbuntu2404+CustomLinuxOSConfigUlimit/line33.sh +++ b/pkg/agent/testdata/AKSUbuntu2404+CustomLinuxOSConfigUlimit/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AKSUbuntu2404+CustomLinuxOSConfigUlimit/line70.sh b/pkg/agent/testdata/AKSUbuntu2404+CustomLinuxOSConfigUlimit/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AKSUbuntu2404+CustomLinuxOSConfigUlimit/line70.sh +++ b/pkg/agent/testdata/AKSUbuntu2404+CustomLinuxOSConfigUlimit/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AKSUbuntu2404+CustomLinuxOSConfigUlimit/line9.sh b/pkg/agent/testdata/AKSUbuntu2404+CustomLinuxOSConfigUlimit/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AKSUbuntu2404+CustomLinuxOSConfigUlimit/line9.sh +++ b/pkg/agent/testdata/AKSUbuntu2404+CustomLinuxOSConfigUlimit/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AzureLinuxV2+Kata/CustomData b/pkg/agent/testdata/AzureLinuxV2+Kata/CustomData index b464a93f51f..30a47d222cd 100644 --- a/pkg/agent/testdata/AzureLinuxV2+Kata/CustomData +++ b/pkg/agent/testdata/AzureLinuxV2+Kata/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -29,7 +29,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -65,7 +65,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AzureLinuxV2+Kata/line32.sh b/pkg/agent/testdata/AzureLinuxV2+Kata/line32.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AzureLinuxV2+Kata/line32.sh +++ b/pkg/agent/testdata/AzureLinuxV2+Kata/line32.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AzureLinuxV2+Kata/line68.sh b/pkg/agent/testdata/AzureLinuxV2+Kata/line68.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AzureLinuxV2+Kata/line68.sh +++ b/pkg/agent/testdata/AzureLinuxV2+Kata/line68.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AzureLinuxV2+Kata/line9.sh b/pkg/agent/testdata/AzureLinuxV2+Kata/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AzureLinuxV2+Kata/line9.sh +++ b/pkg/agent/testdata/AzureLinuxV2+Kata/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=false/CustomData b/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=false/CustomData index b464a93f51f..30a47d222cd 100644 --- a/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=false/CustomData +++ b/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=false/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -29,7 +29,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -65,7 +65,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=false/line32.sh b/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=false/line32.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=false/line32.sh +++ b/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=false/line32.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=false/line68.sh b/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=false/line68.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=false/line68.sh +++ b/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=false/line68.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=false/line9.sh b/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=false/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=false/line9.sh +++ b/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=false/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=true/CustomData b/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=true/CustomData index b464a93f51f..30a47d222cd 100644 --- a/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=true/CustomData +++ b/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=true/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -29,7 +29,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -65,7 +65,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=true/line32.sh b/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=true/line32.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=true/line32.sh +++ b/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=true/line32.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=true/line68.sh b/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=true/line68.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=true/line68.sh +++ b/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=true/line68.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=true/line9.sh b/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=true/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=true/line9.sh +++ b/pkg/agent/testdata/AzureLinuxv2+DisableUnattendedUpgrades=true/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=false/CustomData b/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=false/CustomData index b464a93f51f..30a47d222cd 100644 --- a/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=false/CustomData +++ b/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=false/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -29,7 +29,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/9w7a5PbNpLf9SsQRpWxs6EefiV2Vt6iJY6GZb2OpCbnc3wsiIQk7FAADYDyzNpzv/0KAElREvWYWV8+nKoSD8FGo7vR3egH+OMPzRkmzRnky5rtusGlM7CDPyy/exX4ztAeT/3OK1DjSADztobn4CMw56BJE9GE/0oZaoaUCIgJYryZMLrGHFPSCOkqiZFA4NPvQCwRqQH1Q+GSAsOKGYLRHWCQAEEBT8MQcQ7QLRaYLBqNhpGD32IBWrU5rtVgIlaQ3fxhDTBJb60FIgIsaRyBn2q1wbgf9By301xD1ozpIiMM3vDa6ibCDJgJqH/NoO5rMQEmBzvAYZxygZi5YSGmC/BnRsgpYDPkyKSpSFKxPW8jpp8b/+SUVL0JY5pGJiZYmHMcI95I4BpFVZDrpYTjAsbxRsI53IbDZq2W3IklJc9P7VPAUARDESgSgpCSOV40krsMp2lq0vS4mUCxzCSBZ5rqpqKGhDkTGQZxKwoUWip6conEXfhabfpuOvKngWsPbMuzO/UnMZ8FDMUIcgRMBkz+VKnfR1D/ug17DzodYLRfNVovDPCprHE8jSiAiTAXUn3vAEwFZWhF1wiES0bJXa3Qyvo/NjP4HRdoFYoYMMQFZCIbiUyBV4jfkTBSSqknPomgQE9/qT9ZUi4IXKGnvwA1K0y5oCseMpyIt2/VVqxqtTllAANMQP0JR59BGzx/1Wo9/R1EVBGgLYwDo/6169nBlT2Y2K6nrHJi+Vf3xo5JAbBgKAHm5Wdw8WMGbY8vL44g+OknMGMI3igMc7xZto6BiT4rgvZWUbZYr3YQWooxRwU0jxFKQDtfIaIE1TiKgImB0SyR2YyMw4TWOE1ZiI4A7ED0HM93x6cxOSPPtwaDwwAZopNw3fHo0ulvUaRV1Kh/7Tme9W5gB54nZS41VLAU7ShohDmcxcjzrsC3byUZlyZvNM1IGF5DgQBaMOkwE0Zv7wCMIvWEObiof524zrXl24Hdd23PCybu+D8/BFavJ5/uL8r0eVfj6aCXsTB17eDK9yd6wmF6z5kddK3DCORPW33KkJwzkUx0rW32p5OeZKJrBV3b9b2yohaTbRHaZI0ZJStEhJLSEea6U88fDyVG3516/mECC/xdZb1d2EVM4DkOpeCPEikp0ASYRNIwnvrvxtORpGI4tEa9+0pZalgtuGvL9e4rBIbWMAb1DUxZHgwJdheuogDPgznEccoQeNkCbfAS1HcpAG/fPvgoe/b2p/Y23yWso1FwaTmD3xXvMV3wQNAArRERHBjWe6/R9ewGR6I7mVosXBpg83duSU0kwiblZubpa4WPd3r34IcOMFaQyVNLikV6rq13iodYRgQ7UtP24kpXj8kCrCAxo5ly/2aaSH8N5jFcAHneFvHGIfr1gTGEpDezUkGnav5lDBeXOEYGOPpaG+9tQpmQYRNf0jSOAn6Dk4CscYRhEDG8RozX9seC7Kjv1J9UbHJAaMAFFBy05W63W0BGcMAMb4+s8rTGkOjU/1EYCkPCUJJsVQrwEuIYRTJIi5BAbIUJkmqrkQKNFGRkZsuCGQJy5QRFWqwbxRldOz3HCnquc227uXMtmY1R/9qfTIPRuGffa6py+5QKqAEOi+mwSR/a2DBGkEyT/mTa0+IxwN7QUc3OvbcODlzEabxGkQGqxw/jKXyOFa0wmXKp7ftjtdr1VS8YjPubk61zIjgs4vX63lSwv9tyj0OBIrCgcYQIwCu4QCBhKMdrnCPObh5nOnL6RqY74wrV5XQwKE5Z1/6PqePavc4cylCiiCcK5XC84PpKutEOkLtc4ScVG1MuTf76qif3QTAKZqlQll4lBUIFmNOUREZFpCPBVbQzGvvBpfR5Zc9bTbykrKTT9bEn1bKeRaxjLxhZQzv3ZcCoV2KRLOaafIYiZ9vTQwk3QOlhI0MtmX5pX3/XVipFFaEEkQiRECOeT4cCU2Ic1f4MsthXNyUyPC4o2H2hldGofx3Zds+Tp4dvOSPb7W1bbi6Yr749sCdj1w/skYyFdsC0WMA5cvFRjKQHjiZxusCkIHBnXDHLkUiT7sjpYcZPsj5C4gtlNztot0ZrBdeOF7yXocfA9qs4yRgJYQyk38GU8D8gX3XqT/75WaY/F40JDG+k5Xz8BL4BjmIUiicNmW8oZEV6F5lfIF+ZfIlX3HgKvoFGRL+QmMJo6jq8EaE5TGPRCFPGEBGNfLHrZx8/NWIoEBfXekimEN3xcDIe2SN/YzLG0xKpOeoBDZXGfG+Sc7wPoWXqDv4SyZXWO0XeeQYUSbI9tTo4/A4Y9SqpG6XxTAJyqKxLRq1CybwEk/fpDJ0rLp5gcpPO0F+uWg8l1Mgp/R4K9ejF/0I9ymkslCcf2NKMDdS+HpXf7eqHURxq0plplxx4dlcmV/7AC96Nx77nu9Zk4oz6RxzcgUgqo8RDYcqQP/DeUSq4YDCRa8dI2LcozP3sA4AV0a4tidsJL44UbwxP1XzyCEwekf3JNAt3uVEZrRYhSZajnApVf3hYqIoITxkqR6q7I9uhUrY/ksCefe107WAymPadUeBcBvL4tY+FUQWWodMv+CtH45pFcw4Mlb1lxbHs36Zm2YzQGofITNQ+NDhi8rEiuZW/okz7YISNUuAmfwKhxyBptlvmCi8CqUUCLe5USG6At6AZoXWTpHEM/v73C3t8eVH76OlJn2ql8kPHkLKS+u/b/Q8dUyIzc2RABqQxMmpSL5VudUp/NlMuE/IQxhmNqhxfRS6olxeR3Nbs8WXBfhaWHlMjVZZsVOE2gFFUPW0isxeLRNoOqsG3SgL7eub5luur4sB+cfAwdTQ5SVxP51aKOppUE5dH6ds2oaxVhZ6X1jvX6QZDa2T1bfd4sQrPAeZDXYMYM0umWqoFAYz62DMqdPlUzKgIvoQzhsMhJHAhk73D7x6yu5ks5mr+Ksd9al93wPf3VaXr3u6O7on3gLPYkdCOL1bZUv7uJIPa5w3xYgKZwCpDAftjOXnHK/SGTaLDLn4nV+mNu+9tV6aOzujg2caRAH+71WVdGt4gJvnABJgpqHu2q63DdUZdZ2INgu7AsUd+4PRUd+rge8/uurYvKbH+Sx61eX3XtfuO57sfAjlT6nBBgnl7TtaWnZTyn1DEFonkX6oWW2jjYZBaLWQICiQHhpDgOeKih9lGaleWl1dcPdtyu1dBbzy0jsjOqH+tgi93Ld4eaGapjM3UvRaTI8jCpRnRFcTkQP2yaiFPK7YqIh8/jG60VMrnz+m6TiZKdXKQRami7FKhM21wPuw56/3Gyxh/42fM6Y6c0pzuyCmlrpPrV0Fvag2kE+i+P5aQnxHF9K66k/Wr3HL1Ux5cnudqT/KSVd6mHPWUJpSlsfduK7A9Xps4m8dN3pbzuRkBm7LMCUEpL1IISj1tl0uHtudZfTsYXwb+lR30rA9ZaLnfajgiWV1xMee6Fh+ReROmgq6gwKES6U4vMO/j8SZaYRGsMQQdsKIiKj9zEWHaXBiHcGZRwVaRzNipkpVjzSizRl29N+VyjagymoQ3XLduhlREuho/gWLZ2Z/efP3ahDc89x1ysIRH0DRcSiEfQHhfDjzD5YpGoPXry5fnzlAnk4mAUbp/8ScJodASk8RIn3cSWxYX6ALfAY34BmaQo1cvpBjfbvBv65JvuX3bD7qD8TTXeqUo3SUmsBvTdFfcDAm4GHZdXc+9pExBbiPN8pCrsed7ebfU6tsj/xHVemXAE90C7eq21RXlorDtildbpr3VEwx81xp5E8uVh+zVtG8HE6tvP9jaC6/iM0h4AmVCf5Uu0AQuUMnnVLw9Qpr3hzVRJ9/jyfG+wES3p/aGqtxd3x1PJ9fPDq53MKvaOw1lIhUuGE2T9bPKJEpmLAdSqPfTd/ZAqqAiJ7gcWH2vY2boTB2bdTICDJX6PMpzF+e7YmhT/duyI0nLyPYD3x5OBpZvV1vRZrKSBEEiEGiVxFAg7eUeI71NOVKuZ85juHh4OlrIspBHIU+my/EmQ59TxIW600JT0Wm/XAFzs3wBh0iUUExEJyX49k2z2WQpKXO++bPBaXgDNivoneOdjN8Gj3GItuCzqkCRx+an1Q+Ao9UasS5dSbMBekPcke3bXiDTEWc8emMarUar0TLugdFuPPu10dpNxx4p+IL+7yT6wJ2OfGdoqx3oVIi4w9CKipIYsuylHE7nWHuO9z7wP0zs72SsM0yiFU2JOGytU4LFp5qLPqeYId6RM0w9JcNUs+YCsaoXuZEeD3S8Ox6KOA909FPtAe2iKidaUvzpwBk6vndAYMeuLRSaOo3xCotyGLn37gw+s9A+ZzR7LBVVPZnijcZBbzqRqd546Hjd6XjqBe9cp/eI40mvM6K9NBmTCaMrzMP0HcORPJ2OvDyrgfnt278ZrqezlIjUIzDhSyp0ZFMowdZoTk91t3TvTs1Bmqv6xc+iqB2i9q9m69fXyHzReh6as+cvn5mw/fpZG6FnrV8RklbB73hzlvLmeiX/n1UKmst1kAocN1MitX9z/y2LkdvP8Z/ffZU/SRZWs7ChCodln3FtDZye5TvjUWC7bqdVq9WsiZOVCfSVHdf2Xcf2Oi9b+R6XIJSkOh3wcyO7bRZjctP4eVt4hzC2W+q2rnLg6qLODuJ70Pkf8N8fW+brT3/7s1H9b/3gUr2Rp1b6UFxMft5qlbf9oWycQv8qQ1+6I3kyqv3hWO3L69SfHLIGmGDpNREb8ZjSmzQxgFHc+yHZGGiD9sttue6RfV8h96yDJH+e73Wyy65bVVk5XsFu3fM9yVRrnx95dIGCsv1FdxoKdddWZvmz0X71W+PV80b72etG+5XxM6huCuxosqrdvP/NC0rL6JqYlMBgPH4vY8a8PLnH3pkYD+HK06wyytxv79xG1k66/Zu+jlzB2I/+uDcGT6J/8vju6ZvsAhkQS8wBJSECairAnFwIwNMkoUygCEByt6IMnVVr3uhSt6xFpSuCW7tVtuF7fZmMhMBc/6vKgl+8eK6qxHr3j4FJqDNEXlwjPLxxJ/nspix+JKdhymJgrmXoC0PEsvxbxkqMIIF4Uw7yZggbIRNgKUTC3zSb+xy/2RLMw7AaZ6B9lCQztZ3jTc3pkO/Ofen/M50qRTLf50qpKn2fulQKIInADQ5vJCCdz3PgDC5hVH3yAkXenNDFHF1WP3SXVH0NknKm6kUrSKKZpF7TleGfY4L5EkXZQlsrgJ+KMGq7C7PL5AVDM0oFYDrij34BekDyQmiEACagDVaYpAJdaKryChYwQ2DwZSoi+oUAk4E2+Ml4RGRW9blPSrIPfnY1+mGod64wTEeW79ujnt0LppO+a/Vs72CYnf+m0/zU7zluR+daMBHyP5VFqdJighimEQ6NA53u+pMIM3VfRB4hZYz3xtOdpnZeitwB2wLKSpCvXrw4Bak32Zr4b95MMiLfvNG6Zma3WswB5tL428bvF+Dt28dhJFAIRCIUmdNkwWCEzsa3+QAnJSvIb9Q3PBHE8V2eWW5GzFQjL3LOakRINT//LxBJp8Uq0KjxA0jy74pMk1BzFtPw5lyEZXyPQV7FXFWT+aQFquL9+a3x72B25ZuUlm+dhN9opu58bxQy10fM1QXgTZA1uwM3UEB9RZb/Ar7gOFYgM5RtfHSxrfm7ocr2VmQ3wUFE5mbRADEJFXh+R0m+10cQcEGTx8/OrGd7fn5JPDeAreao98Hz7WHXH+z2+x+xgNbXfwP9zoWF77dKSc83EdLmOyvdbgH6y73iTG3I0AnoGAiElBAUCkwJCJcovAEhjdAbA9S3g5MjFxAQiao/ENR87OCp1X60x5f/GwAA///qNetTrDsAAA== + H4sIAAAAAAAC/9w7a5PbNpLf9SsQRpWxs6EefiV2Vt6iJY6GZb2OpCbnc3wsiIQk7FAADYDyzNpzv/0KAElREvWYWV8+nKoSD8FGo7vR3ehuNH/8oTnDpDmDfFmzXTe4dAZ28Ifld68C3xna46nfeQVqHAlg3tbwHHwE5hw0aSKa8F8pQ82QEgExQYw3E0bXmGNKGiFdJTESCHz6HYglIjWgfihcUmBYMUMwugMMEiAo4GkYIs4BusUCk0Wj0TBy8FssQKs2x7UaTMQKsps/rAEm6a21QESAJY0j8FOtNhj3g57jdppryJoxXWSEwRteW91EmAEzAfWvGdR9LSbA5GAHOIxTLhAzNyzEdAH+zAg5BWyGHJk0FUkqtudtxPRz45+ckqo3YUzTyMQEC3OOY8QbCVyjqApyvZRwXMA43kg4h9tw2KzVkjuxpOT5qX0KGIpgKAJFQhBSMseLRnKX4TRNTZoeNxMolpkk8ExT3VTUkDBnIsMgbkWBQktFTy6RuAtfq03fTUf+NHDtgW15dqf+JOazgKEYQY6AyYDJnyr1+wjqX7dh70GnA4z2q0brhQE+lTWOpxEFMBHmQqrvHYCpoAyt6BqBcMkouasVWln/x2YGv+MCrUIRA4a4gExkI5Ep8ArxOxJGSin1xCcRFOjpL/UnS8oFgSv09BegZoUpF3TFQ4YT8fat2opVrTanDGCACag/4egzaIPnr1qtp7+DiCoCtIVxYNS/dj07uLIHE9v1lFVOLP/q3tgxKQAWDCXAvPwMLn7MoO3x5cURBD/9BGYMwRuFYY43y9YxMNFnRdDeKsoW69UOQksx5qiA5jFCCWjnK0SUoBpHETAxMJolMpuRcZjQGqcpC9ERgB2InuP57vg0Jmfk+dZgcBggQ3QSrjseXTr9LYq0ihr1rz3Hs94N7MDzpMylhgqWoh0FjTCHsxh53hX49q0k49LkjaYZCcNrKBBACyYdZsLo7R2AUaSeMAcX9a8T17m2fDuw+67tecHEHf/nh8Dq9eTT/UWZPu9qPB30Mhamrh1c+f5ETzhM7zmzg651GIH8aatPGZJzJpKJrrXN/nTSk0x0raBru75XVtRisi1Cm6wxo2SFiFBSOsJcd+r546HE6LtTzz9MYIG/q6y3C7uICTzHoRT8USIlBZoAk0gaxlP/3Xg6klQMh9aod18pSw2rBXdtud59hcDQGsagvoEpy4Mhwe7CVRTgeTCHOE4ZAi9boA1egvouBeDt2wcfZc/e/tTe5ruEdTQKLi1n8LviPaYLHggaoDUiggPDeu81up7d4Eh0J1OLhUsDbP7OLamJRNik3Mw8fa3w8U7vHvzQAcYKMnlqSbFIz7X1TvEQy4hgR2raXlzp6jFZgBUkZjRT7t9ME+mvwTyGCyDP2yLeOES/PjCGkPRmViroVM2/jOHiEsfIAEdfa+O9TSgTMmziS5rGUcBvcBKQNY4wDCKG14jx2v5YkB31nfqTik0OCA24gIKDttztdgvICA6Y4e2RVZ7WGBKd+j8KQ2FIGEqSrUoBXkIco0gGaRESiK0wQVJtNVKgkYKMzGxZMENArpygSIt1ozija6fnWEHPda5tN3euJbMx6l/7k2kwGvfse01Vbp9SATXAYTEdNulDGxvGCJJp0p9Me1o8BtgbOqrZuffWwYGLOI3XKDJA9fhhPIXPsaIVJlMutX1/rFa7vuoFg3F/c7J1TgSHRbxe35sK9ndb7nEoUAQWNI4QAXgFFwgkDOV4jXPE2c3jTEdO38h0Z1yhupwOBsUp69r/MXVcu9eZQxlKFPFEoRyOF1xfSTfaAXKXK/ykYmPKpclfX/XkPghGwSwVytKrpECoAHOaksioiHQkuIp2RmM/uJQ+r+x5q4mXlJV0uj72pFrWs4h17AUja2jnvgwY9UosksVck89Q5Gx7eijhBig9bGSoJdMv7evv2kqlqCKUIBIhEmLE8+lQYEqMo9qfQRb76qZEhscFBbsvtDIa9a8j2+558vTwLWdku71ty80F89W3B/Zk7PqBPZKx0A6YFgs4Ry4+ipH0wNEkTheYFATujCtmORJp0h05Pcz4SdZHSHyh7GYH7dZoreDa8YL3MvQY2H4VJxkjIYyB9DuYEv4H5KtO/ck/P8v056IxgeGNtJyPn8A3wFGMQvGkIfMNhaxI7yLzC+Qrky/xihtPwTfQiOgXElMYTV2HNyI0h2ksGmHKGCKikS92/ezjp0YMBeLiWg/JFKI7Hk7GI3vkb0zGeFoiNUc9oKHSmO9Nco73IbRM3cFfIrnSeqfIO8+AIkm2p1YHh98Bo14ldaM0nklADpV1yahVKJmXYPI+naFzxcUTTG7SGfrLVeuhhBo5pd9DoR69+F+oRzmNhfLkA1uasYHa16Pyu139MIpDTToz7ZIDz+7K5MofeMG78dj3fNeaTJxR/4iDOxBJZZR4KEwZ8gfeO0oFFwwmcu0YCfsWhbmffQCwItq1JXE74cWR4o3hqZpPHoHJI7I/mWbhLjcqo9UiJMlylFOh6g8PC1UR4SlD5Uh1d2Q7VMr2RxLYs6+drh1MBtO+Mwqcy0Aev/axMKrAMnT6BX/laFyzaM6BobK3rDiW/dvULJsRWuMQmYnahwZHTD5WJLfyV5RpH4ywUQrc5E8g9BgkzXbLXOFFILVIoMWdCskN8BY0I7RukjSOwd//fmGPLy9qHz096VOtVH7oGFJWUv99u/+hY0pkZo4MyIA0RkZN6qXSrU7pz2bKZUIewjijUZXjq8gF9fIiktuaPb4s2M/C0mNqpMqSjSrcBjCKqqdNZPZikUjbQTX4VklgX88833J9VRzYLw4epo4mJ4nr6dxKUUeTauLyKH3bJpS1qtDz0nrnOt1gaI2svu0eL1bhOcB8qGsQY2bJVEtdQQCjPvaMCl0+FTMqgi/hjOFwCAlcyGTv8LuH7G4mi7mav8pxn9rXHfD9fVXpure7o3viPeAsdiS044tVtpS/O8mg9nlDvJhAJrDKUMD+WE7e8Qq9YZPosIvfyVV64+5725WpozM6eLZxJMDfbnVZl4Y3iEk+MAFmCuqe7WrrcJ1R15lYg6A7cOyRHzg9dTt18L1nd13bl5RY/yWP2ry+69p9x/PdD4GcKXW4IMG8PSdry05K+U8oYotE8i9Viy208TBIrRYyBAWSA0NI8Bxx0cNsI7Ury8srrp5tud2roDceWkdkZ9S/VsGXby3eHrjMUhmbqe9aTI4gC5dmRFcQkwP1y6qFPK3Yqoh8/DC60VIpnz+n6zqZKNXJQRal4s72i3Mw/cbL03/jZ8zpjpzSnO7IKSWlk+tXQW9qDaR5d98fS7XPiE96V93J+lVuk/opDxvPc6IneclqalOOemqPy9LYe7cVsh6vOpzN4yYjy/ncjIBNweWEoJR/KASlnrYLoUPb86y+HYwvA//KDnrWhyxo3L9EOCJZXUsx57rKHpF5E6aCrqDAoRLpzi1ffkPHm2iFRbDGEHTAioqo/MxFhGlzYRzCmZ33W+UvY6f+VY4io8zOdF3elMs1oso4Ed5wfSkzpCLSdfYJFMvO/vTm69cmvOG5V5CDJTyCpuFSCvkAwvtySBkuVzQCrV9fvjx3hjpzTASMUmfFnySEQktMEiO92Uls2YmvS3cHNOIbmEGOXr2QYny7wb+tS77l9m0/6A7G01zrlaJ0l5jAbkzTXXEzJOBi2HV1pfaSMgW5jTTLMK7Gnu/l96BW3x75j6jDKwOe6MvNrr6QuqJcFLZd8WrLtLdu+wLftUbexHLl8Xk17dvBxOrbD7b2wqv4DBKeQJmqX6ULNIELVPI5FW+PkOb9YU3UmfZ4crwvMNEXT3tDVe6u746nk+tnB9c7mC/tnXMyRQoXjKbJ+llleiRzkQPJ0fvpO3sgVVCRE1wOrL7XMTN0po66OhkBhkpqHuW5i5NbMbSp623ZkaRlZPuBbw8nA8u3q61oM1lJgiARCLRKYiiQ9nKPkd6m0CjXM+cxXDw80SxkWcijkCfThXaToc8p4kJ1q9BUdNovV8DcLF/AIRIlFBPRSQm+fdNsNllKypxv/mxwGt6AzQp653gn47fBYxyiLfgs3y8y1Py0+gFwtFoj1qUraTZAb4g7sn3bC2Si4YxHb0yj1Wg1WsY9MNqNZ782WruJ1iMFX9D/nUQfuNOR7wxttQOdChF3GFpRURJDlpeUA+Uca8/x3gf+h4n9nYx1hkm0oikRh611SrD4VHPR5xQzxDtyhqmnZJhq1lwgVvUiN9LjgY53x0MR54GOfqo94CKoyomWFH86cIaO7x0Q2LGGhEJTpzFeYVEOI/fencFnFsfnjGaPpXKpJ5O30TjoTScyiRsPHa87HU+94J3r9B5xPOl1RrSXJmMyYXSFeZi+YziSp9ORl2ddTX779m+G6+ksJSL1CEz4kgod2RRKsDWa01N9D7rXLXOQ5qqb4GdR1A5R+1ez9etrZL5oPQ/N2fOXz0zYfv2sjdCz1q8ISavgd7w5S3lzvZL/z2oAzeU6SAWOmymR2r/pbMti5PZz/Od3X+VPkoXVLGyokmDZZ1xbA6dn+c54FNiu22nVajVr4mQFAN2M49q+69he52Ur3+MShJJUpwN+bmR9ZDEmN42ft4V3CGO7pfpwlQNXLTg7iO9B53/Af39sma8//e3PRvW/9YNL9UaeWulD0XL8vNUqb/tD2TiF/lWGvtT9eDKq/eFYVcvr1J8csgaYYOk1ERvxmNKbNDGAUXT0kGwMtEH75bZc98i+r5B7djckf57vdbI21q16qxyvYLfu+Z5kqrXPjzy6QEHZ/qI7VwV111Zm+bPRfvVb49XzRvvZ60b7lfEzqC7372iyqsq8/80LSsvoapeUwGA8fi9jxrzwuMfemRgP4crTrDLK3G/v9BlrJ93+TTcaVzD2oz/ujcGT6J88vnv6JmsNA2KJOaAkREBNBZiTCwF4miSUCRQBSO5WlKGzqsgbXeqWtajU/Le1W2UbvtdtYiQE5vpfVRb84sVzVf/Vu38MTEKdIfKiQfDwxp3ks5uy+JGchimLgbmWoS8MEcvybxkrMYIE4k05yJshbIRMgKUQCX/TbO5z/GZLMA/DapyB9lGSzNR2jjc1p0O+O/el/890qhTJfJ9mUVXUPtUuCiCJwA0ObyQgnc9z4AwuYVR9zAJFfu2gizm6YH6oS1R955FypupFK0iimaRe05Xhn2OC+RJF2UJbK4CfijBq+35ll8kLhmaUCsB0xB/9AvSA5IXQCAFMQBusMEkFutBU5RUsYIbA4MtURPQLASYDbfCT8YjIrOpDnpRkn/LsavTDUO80J0xHlu/bo57dC6aTvmv1bO9gmJ3/ptP81O85bkfnWjAR8j+VRanSYoIYphEOjQN32PUnEWaqE0QeIWWM98bTnevqvBS5A7YFlJUgX714cQpSb7I18d+8mWREvnmjdc3M+lXMAebS+NvG7xfg7dvHYSRQCEQiFJnTZMFghM7Gt/m0JiUryG/U1zkRxPFdnlluRsxUIy9yzmpESF1r/l8gkk6LVaBR4weQ5F8MmSah5iym4c25CMv4HoO8irmq6+OTFqiK9+dfen8Hsyv3SFq+dRJ+o5n6TnujkLk+Yq5aezdB1uwO3EABdfMr/wV8wXGsQGYo2/joYlvzd0OV7a3IerxBROZmcQFiEirw/I6SfK+PIOCCJo+fnVnP9vy8/Ts3gK1rT++D59vDrj/Yvcl/xAJaX/8N9DutCN9vlZKebyKkzRdU+roF6G/yijO1IUMnoGMgEFJCUCgwJSBcovAGhDRCbwxQ3w5OjrQWIBJVf/qn+djBU6v9aI8v/zcAAP//cv6oLIY7AAA= - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -65,7 +65,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=false/line32.sh b/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=false/line32.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=false/line32.sh +++ b/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=false/line32.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=false/line68.sh b/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=false/line68.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=false/line68.sh +++ b/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=false/line68.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=false/line9.sh b/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=false/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=false/line9.sh +++ b/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=false/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=true/CustomData b/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=true/CustomData index b464a93f51f..30a47d222cd 100644 --- a/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=true/CustomData +++ b/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=true/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/9xcfVujSLb/P5/iDMOMOiNJiLbt2EvvYII217xdIPb0tV0eDJXISCANhd2u5n72+1RRQEGIre3s3Nl1n342oU6dl995qVNVZL7/rnXlBa0rJ75uaIZhmx9MSxt0rb5tWqph2Seq3lf2gY51+6NJz9aHumVb+kAbTSzlVTpyovc1+71qdd/lIwfpyLtRv2e/V/v6cPKbeqoNLeV1OmBofU01tRqCw5RAHVu2PjQttd/Pmf6SDvVG3TPNWBvttEvDvdH7YX+k9opxuTR+pn2ooemUaIgShC4f3isNcxh1GEiD0fEHOq2vmwVOHQbUwLRPx6cbRB9wHNZsY7B1R0NL1Yea0VsnYcAZk2F3fZBBd3ZoEoKhPjzNx/baxdiaVnsMtLPJsUbCYjiy7JPRZNhT9hhU+uC0ZtpeMa2vWTxSe/tlLw5O7fGEU3Xv1ZqpXauO7mCdztCJjuukm9GjocsZdbhGea4Zpj4a2vrwXO3rPWWPQdkd6ut278u5o8fGqGf3tOMaos460fjs1FZ7PZZwDL2RoXIu0QxjZCj7DJ40UzlD6MTDLIZ6Y2N0rLGnTOPRxDomVhLrhunQK8736li3Tc041wyeQK4l6A1Nuz8anU3GjKxTS6b+z8TQ1omz4FAttT4XDtocRTUJD2RusBroB0yR83e9qm8P1gNrTfDrNpdE66NMcndiWqOBbWqq0X1n90YDVR+aqW2HjMHpeLI+/3CPGzR0Ell8Zhzurw9X7Tt8xdFo53pXs8f9yak+LDE6KIj04cnINkYDuzsyjMnY0nrKIUsH8/S3jXJ+aa/TcBJ+kYsq3VP1fuGdX7j6PRn3VEsrhrLMMTUS+Oc6zSuza+hji/rJ0NRewUlutzkhpJxOxqeG2tM4Ck6N8cQ4ZQEvtzt5kpCCYGjEDYrcZvh3ddNWTVM/HdrGaGTZ4/eKLMtrYzR+xpox0E2iqSLLjO1YpaWrOxp/oESKLPOcx+P+B3usmub7kUGT7UQ/VWS5krj5GjJiaSHLWUVLy9ha+Mjy6xLBaKwZqkUwTEuDLGfVyzJqBn+BRgoWTUrTUrtn9qlm2aoxsK3RmTZU5GwJrZIMNev9yDhjtkxSxoqcrahVcnNyPNQse2xoJ/pvikwW1Twpjyd6P6tlMlkXU1Deq2O7a2gkXFIwslWJH9GH5uTkRO/q2pBGxJltjtWupshklaLUltbXxiPD6pXKpiJnda4YzwI+Hc4MMSz9RO2S9crQ1AFZJTM+ipzVuBoixkyRSWlLGx/LGpMg/+2D3VUJbueaYSlyVthYZpAhzbBMRT7ImxOmtql1CahW37SPRyPLtAx1nC+n2m9aN8v7PDoOMgf3dPNY7Wu2PrbU475mKjIpa2nNNCamRTisB1dW3Hq6SWbZpvlOkV9nEW/oA9X4YA/1rq2PuaIqv2aRrw9NzbBsfdAzbUMzLRKiJPqMCdFkaI3sgTo87Ws21UmRX+8/dd6J3rc0I5/H0qhHgNA2zDshBa8i7+Cp8yryXnPBa2jEF7ah/fdEN7Se0slK1HBEi4J6qpkMmE5Wm8yhOjbfjfJqyDeN7SwzxoZ+TgbJ+klaARKVnaxckYd8uHba+1na5O36QDXPGFM21jW0nja0dLWfFttebU/czjKQtDPVVqfTPoBGo2hFaFNFtGHav4bKGHlOUCWrvy0rnfZhlYJbfN+r5kDptH95lMme0pHbj1LsK52sdm+geKV05AwV1odkQZ73p5pxThKZZKN+oneJL4yRlRZQSz1VOvJeo+HNYOYFLrQQnoKE75YIZrs+SIGzQCD8JEXIR06MBJCWkRdgkD4lHobO25aLbltB4vvwAPMILUH6BFvNrTeAr1HQAAAYmYq4HYcRBimi7Fs5NzLH+XwDWwsHT6+3xfYutP6xrffsvn6mKdvTMEJhvPOg95Tt5k87O2JrF5wduIdUBRwmyyWKtp2LziU4F3uXO28AffEwrLZ2mOTM7c/UIA+WZwuGB8ARSC5sCVs7DeTHiGqCptchCBXRQYhhFiaBKzRmXqMxOZ4MrYk9Mu2hOtAUIf0uNAaqQYKqGGAPihHaLVaHyUOhQZcvugMtCIpnQoPtfZRWEkctP5w6Pt003yRXaIr9RrqQp6PkuRtOb1DUQF+WBE3aqJ0rgnhftHUZ4kfKSijRaabFSwluPddzmIDcTXJT3mvKkpzNHJ7rPV3NWOsD9VSzzXdqJjJ/wEurm0PCPFPzfCWJ9xsYr3HhDLM+jLWKreTRV0QrwmIaNRfeNArjcIab03DRcm5i8k+aL5NClQrbginpeNJuNy2T3UFPEaYkygK4OYybXghREoBEEvPW89EcuSBJ0QIkKUBYug5jDJL02cPXUhDD0nOPWssonLbkVhC3lh4hXoQJCeu7JVKuvMDdjaOp0gqXuDVfJrtujJXWIki/hEvshUGsRITusZnOlBIWs7MHJQ65kSwO1uxMA67OwABhhdm29Fz28RYytY8ylfOHTIEjXhsKlNAgPXZX7b7T7J5uKK1bJ2pNnek1ajlkXjS99m5R3GqQflkdkgaNI47CEBO6dEJDO9eGFtkTnp7SFivj54fzlvPPJEKtQR4LKvne1L5gFMREm2Y3iXG4MKeRt8QtdIsCHLca3YnRJ/vb8cRSWnixbE2TyLdvUXQVxqgZJrhB1waeIoyceJ3C0E510zI+sFY3be9pTSL0rWkYzLx5885Z+NBoRAhHd9OFa3sze+Z4fhKh7R24p9WMjHkoVkT5DXx2PGzHPkJLRey8AewtUJhgRdx7A/G1N8Pw44+VD5TFLIzAAy8AcTtGn0AGkTHdeQNuSEnIH2MHYvZBEO9/XQmE11WEnBt4eICPObU3gwsQPZDQp5wfXHJLUfZHy7H2BU0TjFz4KIi/fhTIRCIlflMijRBOogDk/GFe07M/ajyIBRD56MyjH90w4FaBzWJXtajbseejAP/ngP9HIcrDFcR+GN4kyxwlHhmZQ4agFGLHt3msIjQNI1cR9+nUGDsRpuOKuO06GMHPP8RpQ/H52vMR4ChBJaAy6SDlXDPIJKqi0iaQECEbwJsmUYSCDVILdLe3eUKQOF13dkCaIxBL1m0OfsEidJyLS9MiRIqZu/ssy0i8Ild43NfMgZu9nCfLo5CkNuSp9Cw1w+hrQMZoGgZuLJCUrMvIILRj7OD4r5CTJCX/OhmZozVH2MZOdOX4fo4SdiL7MaRScopUEvlZOqauFu+52asMcGEDdBxtBT4nAgn/c0ZJiLSnQMdx+0b4MmcdtElY+yDNYrN/CyL9HBbKvAWRW+2h8/ZHucSHqHUB4t/hOwXacFmnDE0dB5cYlQi4DHypZ+1ZFC7sCM29GEd3NmkxbdJKvNDjZNYs9F0Ukbz3onQLmoEk7PwnhgWBDZZkG80HBYOBdKkMZCnt0kC839jSrUgYcS3hy8KIY/SHh9GVFzjR3VejiJE9EkiMYung62owZTLW44mbVImpssBKWG2IrfKccnjRsJFmFZm1QUODbnPElAKwLBI2uXEtDms5fz0eS0j+0SH5jLD8amjWhOfjIVqZsCFi6bZr5vnFPog+eeLaTyam8bnP4vNVKeZ4Xl8tZDxxOdQuaKCJmTS4vMxLWX0V41m9sIzlPUntGper9Bde5CjBLIzKbn7Ew4VX9yjp0rlFLjsAoZv9qR8mruQFHpYIbdykFJQ2PS09+US8n/FZCSBSCuI1hnz7Of1hznTre210ssXB/ngY/BntIaVELkgeCC2iXssVCgWLbOBC5S2Do7FqxHcxRospJtFKu/Xndd8Q305J4c/WhW/tt3M1wHXQIgykCPmh4z5lAtMbRKbKn9C257LJfiWJC9GSFITS0pmTSu6X5vweJlHg+GSSlOQTvimdCpfFOFz+2/mLKP1nOuvZqLpe7Fz56N8OWKb3XxPbtMIQU56H60vBpAknpSD9dQC5RVHshYE9x1mYYRRjEMRtehU2g60f4o/BFgjirwI8ALtkO4cHuEaOC1IA8o4AigKCKAuNVaOIXi0gMaAGrlkq5mtlHuR2G17BXhvE1B5DS6+ZTUu1JqYi/r1RX+rkcpGDt1A5iBdlKaVt+uG8UQBcFgBSgEgfUoGZ9W0yTMPEd+ld3hVKj5H4Q7CSJxi03gy+g5pzJZA7xNLOK84YFKSZIj9JfErtwtVdwWKzLrw3emlKUndwpdqbcbr4XoylJPBwDJI0I3sDSXJKF7+CKDdjFN16UyRUFC6vBZBZKsokxDeBGS6XPJhrle9JbBgt48PsRotbFHXDxdLh7jWya19VEbfTTkSGB5gmGCQXhJ8F0lrLOyXS45y0s4n04oJ0eDnvFUuH/MnxSmBteqnhI6mE3Jw9xwD4uemF8xb5H8nDLAXPIRV+7c2vUYzP0zRWxG39xFTyTUcqYyXkqouUiTTrPKK6eF9muqrTPo+1VcMNPweknPbQ1fhmboUnfG89PjtNb6VZcpPv+Z19J3/U0w2ta42MD1mhXdy4XgTSEsTScNqEJ/G1C+J9aWSVV/K1rCMxdNBug7PE0hxhyBRmLIh6KyX9zFRb/ZQKCpekM3WWmB5nZPOYcY+sGuXz3zcNAHopTqYoBD9mQelakgQ4l8FPWGnc5c0cJLY9J5ZKDkncMJoi+tBFs+KuhOx6iCF+OL2J6eMMDimE3vJmfnQ0Sm9uj44UnkvouwVi0l31kqjxtYWLGi2/oUvU+rL0Ji2abP9AAK/gwD4Sro1VY45wdzxRo+l1HmFONL1WxO0kbXsXOw1uj3lPBnd3VzQjHfLlYF8gAioj0YI8X9+LpnmUDjfW1lk2unCzUVp7vFg1Bgf7fIklqmwXqu/wQutlyhuktbka58UGO6GZRMUhfBpo7CyHnkPILDPY+VuE5uiLsvWP5s8fW+m/o+bP4lYJtmL6CpT/JeDzk3Odobr0tIFfBzMvAtHWD+exjUM7vfWuqIud+IbmUXFfkg6k1KSiDJ3SNdEPe8OdBkdIF2aLv0oSfjiBH6zmD3tDdvpH4jbTK+sqmJTA3TyV0v0eh4Ed48gL5oq4Db9/Ip1P0bhJkhPNgfCIsbNYAtDim6m0EtZIR0sUOSTbdJeQMgVqCFkNpk8EudnZWyexnPiGoAOpWIJlDSONINlHt8gHEPRgFkYLqoDjr9MOUBw7c5QKJYuojzByj0D8aQPfsedS2vaGcatufOs+B+wIxPzzLg/OEYjct90MjiMQ2afd3HzCg33c5aw9ArH4spuZdgQi+7SbW5BRjj13N1c7e2h57irNEe4oWbzn4oKegd6vvx6yEu/LUbxqklmNonAKpLgJ8J1CASrXA778ce3NNWmA7PjGW9rpi1a2G3mkly/6bFLZv6RH5KF7p4jbxakdSO9AGCDsuA52juh9t0Cb6WUUfrkD4ScBhGuMl0etlnzwS7Pzar/J/r+1YLNaXhBjJ5iivztLT2K7CKXT7shSuyO1ZZZzXKp9i6nUkMLWrFkSRGIS6WpIIiLYak7DxTLBqImdedz3YgwPsHCW2zHy0RRvN+na8EC3NtuCeeMtT5dJjwKmEzN8X3gDgifs7OxctC+bt46fIGi1QJg5foyEfCYFKqXcKt0ocDoKnH9YZ2rfJFfIR9imrXMwt6cowt7MmzoY2VGIaXT/xzqOgVDvu6jGdxeXpMvlPUeXy5tYYqwkhqfE8JQ4PKUMT2EHHiB1Za2vGC8hXUkHTuQFKBpF9JWtvhckXypLVBhnKylbJMOYNsuVtzdJr/zwUEfAv8S5TrX+Hud6Z1A+L/aqfXgD3Tr+2JneOHPUYw3bxOhX7KAtwb18JK04Y6QABDGJ/Jp2BAhXECIUJz5WxHvSE3DvgKR1MB1tVM4neD1T8FO005T7r09MszDBywQr4jYJiCwiicvSazWiWkpSjjvmTjbU4Lolbwa1HgVBHJnlfWucuCFgN5gB04p0uL9/It1tyv/3T/DZibNRugiW9VzrC7PdQsbwFchw0P4WphS6tOAnS9KZGOmLxRWPLlOXK/QEphSwgtgpP8m2iYK4J7CzFvpTVkVgr8uUyfvhZxR1nZhL3vswpttJsie9OKKvSR9dbpHPPiE+umTJ9v1JGEH6hvMucYiYCwcvBvmw2d4HJ3BBiOTD9r5AHjp+HIKLZl6AXLLxIXUhDMjKSRfM3bTlFLO3q72YlkocZjxSuaa38Hwn8u/oDqrTzgR1Os32fhNG+BpFn70Y1TFqMhSahQkse6lw4GY4/mfnrtAggw+C8DM3u8jqGhD2mu0Ugtu9Zvs5CDCn8QhQFl8Lfuq7Snpnu5PMvSyYVqxAC003ryR63CQs8qBYNT8Kt+RJdk7wURB26AoRJH5tKeEDbn1u3TtkdSWvEszvPXwdJrgX4lKUZozpqSVyYStufWy2WvOt0gbxiXYnV0mAk2bEMS7Erh63mrN4w/zMdj7VWR1nxPG/POVLBaYMSJb0ZVj/qELBfnqUnbyYyvZOo/HSyBTSLfYGj/D6Ci6aOYmPcw+8WHZTvGcQr5qsnsfnncdjJMXRd3Bx6hYr2xvlS9G3qFDqq0qyiGpEM9oylUaEnZ2KkssI3XphEvf/RGVrZZaUrqXglSeLwW1We0lLcV9G++LXS1IbuTucuuD8WdkWxPvbLAcK9vn9d72setD+SJnVQvkvCePH02pzrb7910TJxWXm4XXEbzdi/CR8c2xzo/LKPEh87KnR9LpSm1NTvYUzR1Z4jMYJ6ezSCt0A+P73T7SFWJsNsyhc0KFpGGCHLNs64RE3QZ9Bt/zswrtsLqoczjukEwhCTNNhN1MZXzt4Nz11ZU+ewqyxHjUVkzKP1Smysch9rcBtkEGjokbOS0rZU8vYS1R6YcF6brEaTPqWbtP/oMPTovpbK9SzBeUbwbQkbS4Hz0I7S/ynpv3T1M5+dFJqwDZvpLMejJ0KFKcEndr+i91r/cW6r3Sr4s3gsdoL6IsXY7b7mJMdxzWCgr6fl7AIsb1PmO+yNpKXBbIuDP6Izu+RPovTQnn5sshxE0CKipWZ3qpyoysBCp3gxx/zNSj/TTtRSKA3U/VDFXaNzQct32IiQ/+rtv05drHVikTnqtFwXPcsPe4bhi7qO1eoetfVV4+1vm1ahj485c7o0ncWPBBEnkCAv/3tbyCI2Y/nh6OeZlMCU4C3UPzavfP2x/p3MtjhIwShi8An+kBJQrqRj5Dj3pFVJkYB3iWr87UXzMle3XHXXx8pt23sXtF1yYw6CTiEdS3iZrMpFAe29Nys1spqUtQQEcfUPF7tive8IquaS9E6biXtua1uhBbhLXqJexEIazq9wMNPh6JVFdvKweCVqxDt/knKVcU+Sbn/H90y1dKI+P6d1h9rhqmNThr/FwAA//+Ej9uW4E8AAA== + H4sIAAAAAAAC/9xcfXubRrb/X5/ilNLabo0kZMdxnCVbLGGFa71dQE5zHS8PFiOZGoECIydeW/ez32eGAQaEHDtuc7P1PnlWYs6cl995mTMzqD/+0Lj0gsalE1/VNMOwzfempfXbVs82LdWw7BNV7yn7QMfaveG4Y+sD3bItva8Nx5byIhk50Xua/U612m+zkYNk5O2w17HfqT19MP5d7WoDS3mZDBhaT1NNrYLgMCFQR5atD0xL7fUypq+Soc6wfaoZa6OtZmG4M3w36A3VTj4uF8ZPtfcVNK0CDVGC0GXDe4VhDqMWA6k/PH5Pp/V0M8epxYDqm3Z31N0g+oDjsGYbg609HFiqPtCMzjoJA84YD9rrgwy600OTEAz0QTcb22vmY2ta7THQTsfHGgmLwdCyT4bjQUfZY1Dp/W7FtL18Wk+zeKT29ote7Hft0ZhTde/Fmqltq4ruYJ3O0ImO66Sb0aOhyxl1uEZ5phmmPhzY+uBM7ekdZY9B2R7o63bvy5mjR8awY3e04wqi1jrR6LRrq50OSziG3tBQOZdohjE0lH0GT5KpnCF04mEaQ52RMTzW2FOm8XBsHRMriXWDZOgF53t1pNumZpxpBk8gVxJ0BqbdGw5PxyNG1qokU/9nbGjrxGlwqJZanQsHTY6inIQHMjdYDvQDpsjZ207ZtwfrgbUm+GWTS6L1USa5PTatYd82NdVov7U7w76qD8zEtkPGoDsar88/3OMGDZ1EFp8Zh/vrw2X7Dl9wNNqZ3tbsUW/c1QcFRgc5kT44GdrGsG+3h4YxHllaRzlk6WB2f98o51VznYaT8ErOq3RH1Xu5d15x9Xs86qiWlg+lmWNqJPDPdJpXZtvQRxb1k6GpnZyT3GxyQkg5HY+6htrROApOjdHY6LKAl5utLElIQTA04gZFbjL827ppq6apdwe2MRxa9uidIsvy2hiNn5Fm9HWTaKrIMmM7Umnpag9H7ymRIss859Go994eqab5bmjQZDvRu4oslxI3W0OGLC1kOa1oSRlbCx9ZflkgGI40Q7UIhklpkOW0ellGxeArqCVg0aQ0LbV9anc1y1aNvm0NT7WBIqdLaJlkoFnvhsYps2WcMFbkdEUtk5vj44Fm2SNDO9F/V2SyqGZJeTzWe2ktk8m6mIDyTh3ZbUMj4ZKAka5K/Ig+MMcnJ3pb1wY0Ik5tc6S2NUUmqxSltrSeNhoaVqdQNhU5rXP5eBrwyXBqiGHpJ2qbrFeGpvbJKpnyUeS0xlUQMWaKTEpb0vhY1ogE+e/v7bZKcDvTDEuR08LGMoMMaYZlKvJB1pwwtU2tTUC1eqZ9PBxapmWoo2w51X7X2mneZ9FxkDq4o5vHak+z9ZGlHvc0U5FJWUtqpjE2LcJhPbjS4tbRTTLLNs23ivwyjXhD76vGe3ugt219xBVV+SWLfH1gaoZl6/2OaRuaaZEQJdFnjIkmA2to99VBt6fZVCdFfrn/2Hknes/SjGweS6MOAULbMO+EFLySvIPHzivJe8kFr6ERX9iG9t9j3dA6SistUYMhLQpqVzMZMK20NpkDdWS+HWbVkG8am2lmjAz9jAyS9ZO0AiQqW2m5Ig/5cG0199O0ydr1vmqeMqZsrG1oHW1g6WovKbadyp64mWYgaWfKrU6reQC1Wt6K0KaKaMO0fwmlMfKcoEpWf1tWWs3DMgW3+L5Tzb7Sar56kMme0pKbD1LsK620dm+geKG05BQV1oekQZ71p5pxRhKZZKN+oreJL4yhlRRQS+0qLXmvVvOmMPUCFxoIT0DCtwsE010fpMCZIxB+kSLkIydGAkiLyAswSB+XHobWm4aLbhrB0vfhHmYRWoD0EbbqW68BX6GgBgAwNBVxOw4jDFJE2TcybmSO8+katuYOnlxti81daPxrW+/YPf1UU7YnYYTCeOde7yjb9V92dsTGLjg7cAeJCjhcLhYo2nbOWxfgnO9d7LwG9NnDsNraYZJTtz9RgyxYniwY7gFHILmwJWzt1JAfI6oJmlyFIJREByGGabgMXKE29Wq18fF4YI3toWkP1L6mCMl3odZXDRJU+QB7kI/QbrE8TB4KNbp80R1oTpA/E2ps76M0lnHU8MOJ49NN8/XyEk2wX0sW8mSUPHfDyTWKaujzgqBJG7UzRRDv8rYuRfxIWQkFOs20eCnBjed6DhOQuUmuy3t1WZLTmYMzvaOrKWu9r3Y123yrpiKzB7y0qjkkzFM1z1aSeLeB8RoXzjDr/Ugr2UoefUG0IswnUX3uTaIwDqe4PgnnDec6Jv+k2WKZq1JimzMlHU/S7SZlst3vKMKERFkA14dx3QshWgYgkcS88Xw0Qy5IUjQHSQoQlq7CGIMkffLwlRTEsPDco8YiCicNuRHEjYVHiOfhkoT17QIpl17g7sbRRGmEC9yYLZa7boyVxjxIvoQL7IVBrESE7qGZzoQS5rPTBwUOmZEsDtbsTAKuysAAYYXZtvBc9vEGUrWPUpWzh0yBI14bCpRQIz12W22/1eyObiiNGydqTJzJFWo4ZF40ufJuUNyokX5ZHZAGjSOOwhATumRCTTvTBhbZE3a7tMVK+fnhrOH8exmhRj+LBZV8r2ufMQpiok29vYxxODcnkbfADXSDAhw3au2x0SP729HYUhp4vmhMlpFv36DoMoxRPVziGl0beIowcuJ1CkPr6qZlvGetbtLe05pE6BuTMJh6s/qtM/ehVosQjm4nc9f2pvbU8fxlhLZ34I5WMzLmoVgR5dfwyfGwHfsILRSx9RqwN0fhEivi3muIr7wphp9/Ln2gLKZhBB54AYjbMfoIMoiM6c5rcENKQv4YOxDTD4J499tKILwuI+Rcw/09fMiovSmcg+iBhD5m/OCCW4rSP1qOtc9ossTIhQ+C+NsHgUwkUuLXBdII4WUUgJw9zGp6+keNBzEHIhudevSjGwbcKrBZ7KoSdTv2fBTgvw/4fxaiPFxB7Ifh9XKRocQjI3PIEJRC7Pg2j1WEJmHkKuI+nRpjJ8J0XBG3XQcj+PWnOGkoPl15PgIcLVEBqFQ6SBnXFDKJqqg0CSREyAbwJssoQsEGqTm629s8IUicrjs7IM0QiAXrNge/YBE6zsWFaREixczdfZJlJF6RKzzsa+bAzV7OkuVBSBIbslR6kpph9CUgYzQJAzcWSEpWZWQQ2jF2cPw95CRJye8nIzO0Zgjb2IkuHd/PUMJOZD+EVEJOkVpGfpqOiavFO272KgVc2AAdR1uCz4lAwv+eUhIi7THQcdy+Er7UWQdNEtY+SNPY7N2ASD+HuTJvQORWe2i9+Vku8CFqnYP4T/hBgSZcVClDU8fBBUYFAi4Dn+tZexqFcztCMy/G0a1NWkybtBLP9DiZNQ19F0Uk770o2YKmIAk7f8ewILDBgmyj+aBgMJAulYEsJV0aiHcbW7oVCSOuJXxeGHGM/vQwuvQCJ7r9YhQxsgcCiVEsHHxVDqZUxno8cZNKMVUUWAqrDbFVnFMMLxo20rQkszJoaNBtjphCABZFwiY3rsVhJecvx2MByT87JJ8Qll8MzYrwfDhESxM2RCzddk09P98H0SePXPvJxCQ+91l8vijEHM/ri4WMJy6G2jkNNDGVBhcXWSmrrmI8q2eWsawnqVzjMpW+40WOEkzDqOjmBzyce3WPki6cG+SyAxC62Z/44dKVvMDDEqGN65SC0ianpScfifdTPisBREpBvMaQbz6lP8yYbv2oDU+2ONgfDoNv0R5SSuSC5IHQIOo1XCFXMM8GLlTeMDhqq1p8G2M0n2ASrbRbf1r3DfHNhBT+dF342n47UwNcB83DQIqQHzruYyYwvUFkqnyDtj2TTfYryzgXLUlBKC2cGankfmHOH+EyChyfTJKW2YSvSqfcZTEOF/9x/iJKf0tnPRlV14udSx/9xwHL9P4+sU0qDDHlabg+F0yacFIC0vcDyA2KYi8M7BlOwwyjGIMgbtOrsCls/RR/CLZAEH8T4B7YJdsZ3MMVclyQApB3BFAUEERZqK1qefRqAYkBNXDNQjFfK/MgN5vwAvaaICb2GFpyzWxaqjU2FfGftepSJxeLHLyB0kG8KEsJbd0PZ7Uc4KIAkAJE+pASzKxvk2ESLn2X3uVdouQYiT8EK3iCQetN4QeoOFcCuUUsbb3gjEFBkinyo8Qn1C5c3uYsNuvCe6OTpCR1B1eqvSmni+/FWFoGHo5BkqZkbyBJTuHiVxDleoyiG2+ChJLCxbUAUktFmYT4JjDDxYIHc63yPYoNo2V8mN1ofoOidjhfONy9RnrtqyridtKJyHAPkyUGyQXhV4G01vJOgfQ4I21tIj0/Jx1exnvF0iF7crwSWJteaPhIKiE3Y88xAH5ucuG8Rf5H8jBNwTNIhF95sysU47MkjRVxWz8xlWzTkchYCZnqImUiTVsPqC7eFZmuqrTPYm1Vc8NPASmnHXQ5up5Z4QnfW49Ou8mtNEtu8j27s29ljzq6obWtofE+LbTza9eLQFqAWBhOmvBlfOWCeFcYWWWVfC3rSAwdNJvgLLA0QxhShRkLot5KST4z1Va/JILCBelMnQWmxxnpPGbcA6tG8fz3dQ2AXoqTKQrBj1lQuJYkAc5l8CNWGndxPQOJbc+JpZJDEjeMJog+dNE0vyshux5iiB9OrmP6OIVDCqGzuJ4dHQ2Tm9ujI4XnEvpujph0W74kqn1p4aJGy6/pErW+LL1OiibbPxDASziwj4RrbVWbIdwejdVocpVFmBNNrhRxe5m0vfOdGrfHvCODu7srmpEO+XKwLxABpZFoTp6v70WTPEqGa2vrLBudu+korT1erBr9g32+xBJVtnPVd3ih1TLlDdKaXI3zYoOd0Iyj/BA+CTR2lkPPIWSWGez8LUIz9FnZ+lf91w+N5N9R/VdxqwBbPn0Fyv8S8PnJmc5QXnqawK+DqReBaOuHs9jGoZ3cepfUxU58TfMovy9JBhJqUlEGTuGa6Ke9wU6NI6QLs8VfJQk/ncBPVv2nvQE7/SNxm+qVdhVMSuBunkrp/ojDwI5x5AUzRdyGPz6Szidv3CTJiWZAeMTYmS8AaPFNVVoJa6TDBYockm26S0iZAhWErAbTJ4Jcb+2tk1hOfE3QgUQswbKCkUaQ7KEb5AMIejANozlVwPHXafsojp0ZSoSSRdRHGLlHIP6yge/Icyltc8O4VTW+dZcBdgRi9nmXB+cIRO7bbgrHEYjs025mPuHBPu5y1h6BmH/ZTU07ApF92s0sSClHnrubqZ0+tDx3leQId5Qs3nFxQc9A79ZfD1mJd8UoXtXJrFpeOAVS3AT4QaEAFesBX/649uaKNEB2fO0t7ORFK9uNPNLL5302qeyfkyPy0L1VxO381A6ktyD0EXZcBztH9L5boM30Igo/34LwiwDCFcaLo0ZDPnhVb73Yr7P/b8zZrIYXxNgJJuifzsKT2C5CaTVbstRsSU2Z5RyXal9jKjUktzVtlgSRmES6GpKICLbqk3C+WGJUx84s7nkxhnuYO4vtGPlogrfrdG24p1ubbcG89hbdxbJDAdOJGb4vvAbBE3Z2ds6bF/Ubx18iaDRAmDp+jIRsJgUqodwq3ChwOgqcf1hnal8vL5GPsE1b52BmT1CEvak3cTCyoxDT6P7bOo6BUO27qMJ35xeky+U9R5fL61hirCSGp8TwlDg8pRRPYQfuIXFl0Vd3Rb12d1dCspr2ncgLUDSM6GtbPS9Yfi4tU2GcrqZsoQxj2jCX3uAk/fL9fRUB/yLnOtX6u5zr3UHxzNgr9+I1dOP4I2dy7cxQhzVtY6NXsoO2BXfykbTijJECEMRl5Fe0JEC4ghCheOljRbwjfQH3HkhSC5PRWumMgtczcUCCdpJ2//WRaRYu8WKJFXGbBEUalcRtydUaUS0hKcYecykbqnEdkzeFSo+CIA7N4t41XrohYDeYAtOKdLl/fCQdbsL/j4/wyYnTUboQFvVc6w3THUPK8AXIcND8GqYUuqToLxekOzGSl4tLHl0kLlfoKUwhYAWxVXySbhUFcU9g5y3056yKwF6ZKZL3wk8oajsxl8B3YUy3lGRfen5EX5U+utgin31CfHTBEu7HkzCC5C3nXeIQMRMOXgzyYb25D07gghDJh819gTx0/DgEF029ALlk80NqQxiQ1ZMumrtJ2ymmb1h7MS2XOEx5JHJNb+75TuTf0l1Uq5kKarXqzf06DPEVij55MapiVGco1HMTWPZS4cDNcPxPzm2uQQofBOEnbnae1RUg7NWbCQQ3e/XmUxBgTuMRoCy+FPzUd6X0TncoqXtZMK1YkRbqblZJ9LhOWGRBsap/EG7Ik/Ss4IMg7NBVIlj6laWED7j1uVXvkVWVvFIwv/PwVbjEnRAXojRlTE8ukQtbceNDvdGYbRU2iY+0e3m5DPCyHnGMc7Grh63mLN4wP7WdT3VWxxlx/JenfKHAFAFJk74I659VKNjPj9LTF1PZ3qnVnhuZQrLN3uARXl/BRVNn6ePMA8+WXRfvGMSrOqvn8Vnr4RhJcPQdnJ+8xcr2RvlS9DUqFHqrgiyiGtGMtk2FEWFnp6TkIkI3XriMe99Q2UqZBaUrKXjlyWJwk9Ze0lLcFdE+/+2C1EbuHqcqOH9VtgXx7ibNgZx9dgdeLasatD9TZrlQ/iVh/HBaba7VN39NlJxfpB5eR/xmI8aPwjfDNjMqq8z9pY89NZpclWpzYqo3d2bICo/RaEk6u6RC1wB+/OMjbSHWZsM0Cud0aBIG2CHLtk54xHXQp9AuPjv3LurzMoezFukEghDTdNhNVcZXDt5NTl7Zk8cwq61HTcmk1GNVimwscl8qcBtk0KiokPOcUvbYMvYclZ5ZsJ5arPrjnqXb9D/q8Lio/toK9WRB2UYwKUmby8GT0E4T/7Fp/zi10x+eFBqwzRvptAdjpwL5KUGrsv9id1vfWfeVbFW8KTxUewF99mLMdh8zsuO4QpDT97ISFiG29wmzXdZG8qJA1oXBn9H5PdBncVooz18WOW4CSFG+MtObVW50JUCuE/z8c7YGZb9rJwoJ9HaqeqjErrb5oOVrTGTof9G2b2MXW61IdK5qNcd1T5Mjv0Hoop5zicr3XT31WOvZpmXogy53Rpe8t+CBIPIEAvzjH/8AQUx/QD8YdjSbEpgCvIH8F++tNz9Xv5fBDiAhCF0EPtEHChKSjXyEHPeWrDIxCvAuWZ2vvGBG9uqOu/4KSbFtY3eLrktmVEnAIaxrEdfrdSE/tKXnZpVWlpOigog4puLxale84xVZVVyMVnEraM9tdSM0D2/Qc9yLQFjT6RkefjwUjbLYRgYGr1yJaPcbKVcW+yjl/n90S1WriIgT35mVguGkp3YfjgWOYs0iMvZ4Wyg1bwV90CjJ2AQtT7P7lyhSkvEYRb6BHkV//vhW6400w9SGJ7X/CwAA//+ee/h8tFEAAA== @@ -29,7 +29,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/9w7a5PbNpLf9SsQRpWxs6EefiV2Vt6iJY6GZb2OpCbnc3wsiIQk7FAADYDyzNpzv/0KAElREvWYWV8+nKoSD8FGo7vR3egH+OMPzRkmzRnky5rtusGlM7CDPyy/exX4ztAeT/3OK1DjSADztobn4CMw56BJE9GE/0oZaoaUCIgJYryZMLrGHFPSCOkqiZFA4NPvQCwRqQH1Q+GSAsOKGYLRHWCQAEEBT8MQcQ7QLRaYLBqNhpGD32IBWrU5rtVgIlaQ3fxhDTBJb60FIgIsaRyBn2q1wbgf9By301xD1ozpIiMM3vDa6ibCDJgJqH/NoO5rMQEmBzvAYZxygZi5YSGmC/BnRsgpYDPkyKSpSFKxPW8jpp8b/+SUVL0JY5pGJiZYmHMcI95I4BpFVZDrpYTjAsbxRsI53IbDZq2W3IklJc9P7VPAUARDESgSgpCSOV40krsMp2lq0vS4mUCxzCSBZ5rqpqKGhDkTGQZxKwoUWip6conEXfhabfpuOvKngWsPbMuzO/UnMZ8FDMUIcgRMBkz+VKnfR1D/ug17DzodYLRfNVovDPCprHE8jSiAiTAXUn3vAEwFZWhF1wiES0bJXa3Qyvo/NjP4HRdoFYoYMMQFZCIbiUyBV4jfkTBSSqknPomgQE9/qT9ZUi4IXKGnvwA1K0y5oCseMpyIt2/VVqxqtTllAANMQP0JR59BGzx/1Wo9/R1EVBGgLYwDo/6169nBlT2Y2K6nrHJi+Vf3xo5JAbBgKAHm5Wdw8WMGbY8vL44g+OknMGMI3igMc7xZto6BiT4rgvZWUbZYr3YQWooxRwU0jxFKQDtfIaIE1TiKgImB0SyR2YyMw4TWOE1ZiI4A7ED0HM93x6cxOSPPtwaDwwAZopNw3fHo0ulvUaRV1Kh/7Tme9W5gB54nZS41VLAU7ShohDmcxcjzrsC3byUZlyZvNM1IGF5DgQBaMOkwE0Zv7wCMIvWEObiof524zrXl24Hdd23PCybu+D8/BFavJ5/uL8r0eVfj6aCXsTB17eDK9yd6wmF6z5kddK3DCORPW33KkJwzkUx0rW32p5OeZKJrBV3b9b2yohaTbRHaZI0ZJStEhJLSEea6U88fDyVG3516/mECC/xdZb1d2EVM4DkOpeCPEikp0ASYRNIwnvrvxtORpGI4tEa9+0pZalgtuGvL9e4rBIbWMAb1DUxZHgwJdheuogDPgznEccoQeNkCbfAS1HcpAG/fPvgoe/b2p/Y23yWso1FwaTmD3xXvMV3wQNAArRERHBjWe6/R9ewGR6I7mVosXBpg83duSU0kwiblZubpa4WPd3r34IcOMFaQyVNLikV6rq13iodYRgQ7UtP24kpXj8kCrCAxo5ly/2aaSH8N5jFcAHneFvHGIfr1gTGEpDezUkGnav5lDBeXOEYGOPpaG+9tQpmQYRNf0jSOAn6Dk4CscYRhEDG8RozX9seC7Kjv1J9UbHJAaMAFFBy05W63W0BGcMAMb4+s8rTGkOjU/1EYCkPCUJJsVQrwEuIYRTJIi5BAbIUJkmqrkQKNFGRkZsuCGQJy5QRFWqwbxRldOz3HCnquc227uXMtmY1R/9qfTIPRuGffa6py+5QKqAEOi+mwSR/a2DBGkEyT/mTa0+IxwN7QUc3OvbcODlzEabxGkQGqxw/jKXyOFa0wmXKp7ftjtdr1VS8YjPubk61zIjgs4vX63lSwv9tyj0OBIrCgcYQIwCu4QCBhKMdrnCPObh5nOnL6RqY74wrV5XQwKE5Z1/6PqePavc4cylCiiCcK5XC84PpKutEOkLtc4ScVG1MuTf76qif3QTAKZqlQll4lBUIFmNOUREZFpCPBVbQzGvvBpfR5Zc9bTbykrKTT9bEn1bKeRaxjLxhZQzv3ZcCoV2KRLOaafIYiZ9vTQwk3QOlhI0MtmX5pX3/XVipFFaEEkQiRECOeT4cCU2Ic1f4MsthXNyUyPC4o2H2hldGofx3Zds+Tp4dvOSPb7W1bbi6Yr749sCdj1w/skYyFdsC0WMA5cvFRjKQHjiZxusCkIHBnXDHLkUiT7sjpYcZPsj5C4gtlNztot0ZrBdeOF7yXocfA9qs4yRgJYQyk38GU8D8gX3XqT/75WaY/F40JDG+k5Xz8BL4BjmIUiicNmW8oZEV6F5lfIF+ZfIlX3HgKvoFGRL+QmMJo6jq8EaE5TGPRCFPGEBGNfLHrZx8/NWIoEBfXekimEN3xcDIe2SN/YzLG0xKpOeoBDZXGfG+Sc7wPoWXqDv4SyZXWO0XeeQYUSbI9tTo4/A4Y9SqpG6XxTAJyqKxLRq1CybwEk/fpDJ0rLp5gcpPO0F+uWg8l1Mgp/R4K9ejF/0I9ymkslCcf2NKMDdS+HpXf7eqHURxq0plplxx4dlcmV/7AC96Nx77nu9Zk4oz6RxzcgUgqo8RDYcqQP/DeUSq4YDCRa8dI2LcozP3sA4AV0a4tidsJL44UbwxP1XzyCEwekf3JNAt3uVEZrRYhSZajnApVf3hYqIoITxkqR6q7I9uhUrY/ksCefe107WAymPadUeBcBvL4tY+FUQWWodMv+CtH45pFcw4Mlb1lxbHs36Zm2YzQGofITNQ+NDhi8rEiuZW/okz7YISNUuAmfwKhxyBptlvmCi8CqUUCLe5USG6At6AZoXWTpHEM/v73C3t8eVH76OlJn2ql8kPHkLKS+u/b/Q8dUyIzc2RABqQxMmpSL5VudUp/NlMuE/IQxhmNqhxfRS6olxeR3Nbs8WXBfhaWHlMjVZZsVOE2gFFUPW0isxeLRNoOqsG3SgL7eub5luur4sB+cfAwdTQ5SVxP51aKOppUE5dH6ds2oaxVhZ6X1jvX6QZDa2T1bfd4sQrPAeZDXYMYM0umWqoFAYz62DMqdPlUzKgIvoQzhsMhJHAhk73D7x6yu5ks5mr+Ksd9al93wPf3VaXr3u6O7on3gLPYkdCOL1bZUv7uJIPa5w3xYgKZwCpDAftjOXnHK/SGTaLDLn4nV+mNu+9tV6aOzujg2caRAH+71WVdGt4gJvnABJgpqHu2q63DdUZdZ2INgu7AsUd+4PRUd+rge8/uurYvKbH+Sx61eX3XtfuO57sfAjlT6nBBgnl7TtaWnZTyn1DEFonkX6oWW2jjYZBaLWQICiQHhpDgOeKih9lGaleWl1dcPdtyu1dBbzy0jsjOqH+tgi93Ld4eaGapjM3UvRaTI8jCpRnRFcTkQP2yaiFPK7YqIh8/jG60VMrnz+m6TiZKdXKQRami7FKhM21wPuw56/3Gyxh/42fM6Y6c0pzuyCmlrpPrV0Fvag2kE+i+P5aQnxHF9K66k/Wr3HL1Ux5cnudqT/KSVd6mHPWUJpSlsfduK7A9Xps4m8dN3pbzuRkBm7LMCUEpL1IISj1tl0uHtudZfTsYXwb+lR30rA9ZaLnfajgiWV1xMee6Fh+ReROmgq6gwKES6U4vMO/j8SZaYRGsMQQdsKIiKj9zEWHaXBiHcGZRwVaRzNipkpVjzSizRl29N+VyjagymoQ3XLduhlREuho/gWLZ2Z/efP3ahDc89x1ysIRH0DRcSiEfQHhfDjzD5YpGoPXry5fnzlAnk4mAUbp/8ScJodASk8RIn3cSWxYX6ALfAY34BmaQo1cvpBjfbvBv65JvuX3bD7qD8TTXeqUo3SUmsBvTdFfcDAm4GHZdXc+9pExBbiPN8pCrsed7ebfU6tsj/xHVemXAE90C7eq21RXlorDtildbpr3VEwx81xp5E8uVh+zVtG8HE6tvP9jaC6/iM0h4AmVCf5Uu0AQuUMnnVLw9Qpr3hzVRJ9/jyfG+wES3p/aGqtxd3x1PJ9fPDq53MKvaOw1lIhUuGE2T9bPKJEpmLAdSqPfTd/ZAqqAiJ7gcWH2vY2boTB2bdTICDJX6PMpzF+e7YmhT/duyI0nLyPYD3x5OBpZvV1vRZrKSBEEiEGiVxFAg7eUeI71NOVKuZ85juHh4OlrIspBHIU+my/EmQ59TxIW600JT0Wm/XAFzs3wBh0iUUExEJyX49k2z2WQpKXO++bPBaXgDNivoneOdjN8Gj3GItuCzqkCRx+an1Q+Ao9UasS5dSbMBekPcke3bXiDTEWc8emMarUar0TLugdFuPPu10dpNxx4p+IL+7yT6wJ2OfGdoqx3oVIi4w9CKipIYsuylHE7nWHuO9z7wP0zs72SsM0yiFU2JOGytU4LFp5qLPqeYId6RM0w9JcNUs+YCsaoXuZEeD3S8Ox6KOA909FPtAe2iKidaUvzpwBk6vndAYMeuLRSaOo3xCotyGLn37gw+s9A+ZzR7LBVVPZnijcZBbzqRqd546Hjd6XjqBe9cp/eI40mvM6K9NBmTCaMrzMP0HcORPJ2OvDyrgfnt278ZrqezlIjUIzDhSyp0ZFMowdZoTk91t3TvTs1Bmqv6xc+iqB2i9q9m69fXyHzReh6as+cvn5mw/fpZG6FnrV8RklbB73hzlvLmeiX/n1UKmst1kAocN1MitX9z/y2LkdvP8Z/ffZU/SRZWs7ChCodln3FtDZye5TvjUWC7bqdVq9WsiZOVCfSVHdf2Xcf2Oi9b+R6XIJSkOh3wcyO7bRZjctP4eVt4hzC2W+q2rnLg6qLODuJ70Pkf8N8fW+brT3/7s1H9b/3gUr2Rp1b6UFxMft5qlbf9oWycQv8qQ1+6I3kyqv3hWO3L69SfHLIGmGDpNREb8ZjSmzQxgFHc+yHZGGiD9sttue6RfV8h96yDJH+e73Wyy65bVVk5XsFu3fM9yVRrnx95dIGCsv1FdxoKdddWZvmz0X71W+PV80b72etG+5XxM6huCuxosqrdvP/NC0rL6JqYlMBgPH4vY8a8PLnH3pkYD+HK06wyytxv79xG1k66/Zu+jlzB2I/+uDcGT6J/8vju6ZvsAhkQS8wBJSECairAnFwIwNMkoUygCEByt6IMnVVr3uhSt6xFpSuCW7tVtuF7fZmMhMBc/6vKgl+8eK6qxHr3j4FJqDNEXlwjPLxxJ/nspix+JKdhymJgrmXoC0PEsvxbxkqMIIF4Uw7yZggbIRNgKUTC3zSb+xy/2RLMw7AaZ6B9lCQztZ3jTc3pkO/Ofen/M50qRTLf50qpKn2fulQKIInADQ5vJCCdz3PgDC5hVH3yAkXenNDFHF1WP3SXVH0NknKm6kUrSKKZpF7TleGfY4L5EkXZQlsrgJ+KMGq7C7PL5AVDM0oFYDrij34BekDyQmiEACagDVaYpAJdaKryChYwQ2DwZSoi+oUAk4E2+Ml4RGRW9blPSrIPfnY1+mGod64wTEeW79ujnt0LppO+a/Vs72CYnf+m0/zU7zluR+daMBHyP5VFqdJighimEQ6NA53u+pMIM3VfRB4hZYz3xtOdpnZeitwB2wLKSpCvXrw4Bak32Zr4b95MMiLfvNG6Zma3WswB5tL428bvF+Dt28dhJFAIRCIUmdNkwWCEzsa3+QAnJSvIb9Q3PBHE8V2eWW5GzFQjL3LOakRINT//LxBJp8Uq0KjxA0jy74pMk1BzFtPw5lyEZXyPQV7FXFWT+aQFquL9+a3x72B25ZuUlm+dhN9opu58bxQy10fM1QXgTZA1uwM3UEB9RZb/Ar7gOFYgM5RtfHSxrfm7ocr2VmQ3wUFE5mbRADEJFXh+R0m+10cQcEGTx8/OrGd7fn5JPDeAreao98Hz7WHXH+z2+x+xgNbXfwP9zoWF77dKSc83EdLmOyvdbgH6y73iTG3I0AnoGAiElBAUCkwJCJcovAEhjdAbA9S3g5MjFxAQiao/ENR87OCp1X60x5f/GwAA///qNetTrDsAAA== + H4sIAAAAAAAC/9w7a5PbNpLf9SsQRpWxs6EefiV2Vt6iJY6GZb2OpCbnc3wsiIQk7FAADYDyzNpzv/0KAElREvWYWV8+nKoSD8FGo7vR3ehuNH/8oTnDpDmDfFmzXTe4dAZ28Ifld68C3xna46nfeQVqHAlg3tbwHHwE5hw0aSKa8F8pQ82QEgExQYw3E0bXmGNKGiFdJTESCHz6HYglIjWgfihcUmBYMUMwugMMEiAo4GkYIs4BusUCk0Wj0TBy8FssQKs2x7UaTMQKsps/rAEm6a21QESAJY0j8FOtNhj3g57jdppryJoxXWSEwRteW91EmAEzAfWvGdR9LSbA5GAHOIxTLhAzNyzEdAH+zAg5BWyGHJk0FUkqtudtxPRz45+ckqo3YUzTyMQEC3OOY8QbCVyjqApyvZRwXMA43kg4h9tw2KzVkjuxpOT5qX0KGIpgKAJFQhBSMseLRnKX4TRNTZoeNxMolpkk8ExT3VTUkDBnIsMgbkWBQktFTy6RuAtfq03fTUf+NHDtgW15dqf+JOazgKEYQY6AyYDJnyr1+wjqX7dh70GnA4z2q0brhQE+lTWOpxEFMBHmQqrvHYCpoAyt6BqBcMkouasVWln/x2YGv+MCrUIRA4a4gExkI5Ep8ArxOxJGSin1xCcRFOjpL/UnS8oFgSv09BegZoUpF3TFQ4YT8fat2opVrTanDGCACag/4egzaIPnr1qtp7+DiCoCtIVxYNS/dj07uLIHE9v1lFVOLP/q3tgxKQAWDCXAvPwMLn7MoO3x5cURBD/9BGYMwRuFYY43y9YxMNFnRdDeKsoW69UOQksx5qiA5jFCCWjnK0SUoBpHETAxMJolMpuRcZjQGqcpC9ERgB2InuP57vg0Jmfk+dZgcBggQ3QSrjseXTr9LYq0ihr1rz3Hs94N7MDzpMylhgqWoh0FjTCHsxh53hX49q0k49LkjaYZCcNrKBBACyYdZsLo7R2AUaSeMAcX9a8T17m2fDuw+67tecHEHf/nh8Dq9eTT/UWZPu9qPB30Mhamrh1c+f5ETzhM7zmzg651GIH8aatPGZJzJpKJrrXN/nTSk0x0raBru75XVtRisi1Cm6wxo2SFiFBSOsJcd+r546HE6LtTzz9MYIG/q6y3C7uICTzHoRT8USIlBZoAk0gaxlP/3Xg6klQMh9aod18pSw2rBXdtud59hcDQGsagvoEpy4Mhwe7CVRTgeTCHOE4ZAi9boA1egvouBeDt2wcfZc/e/tTe5ruEdTQKLi1n8LviPaYLHggaoDUiggPDeu81up7d4Eh0J1OLhUsDbP7OLamJRNik3Mw8fa3w8U7vHvzQAcYKMnlqSbFIz7X1TvEQy4hgR2raXlzp6jFZgBUkZjRT7t9ME+mvwTyGCyDP2yLeOES/PjCGkPRmViroVM2/jOHiEsfIAEdfa+O9TSgTMmziS5rGUcBvcBKQNY4wDCKG14jx2v5YkB31nfqTik0OCA24gIKDttztdgvICA6Y4e2RVZ7WGBKd+j8KQ2FIGEqSrUoBXkIco0gGaRESiK0wQVJtNVKgkYKMzGxZMENArpygSIt1ozija6fnWEHPda5tN3euJbMx6l/7k2kwGvfse01Vbp9SATXAYTEdNulDGxvGCJJp0p9Me1o8BtgbOqrZuffWwYGLOI3XKDJA9fhhPIXPsaIVJlMutX1/rFa7vuoFg3F/c7J1TgSHRbxe35sK9ndb7nEoUAQWNI4QAXgFFwgkDOV4jXPE2c3jTEdO38h0Z1yhupwOBsUp69r/MXVcu9eZQxlKFPFEoRyOF1xfSTfaAXKXK/ykYmPKpclfX/XkPghGwSwVytKrpECoAHOaksioiHQkuIp2RmM/uJQ+r+x5q4mXlJV0uj72pFrWs4h17AUja2jnvgwY9UosksVck89Q5Gx7eijhBig9bGSoJdMv7evv2kqlqCKUIBIhEmLE8+lQYEqMo9qfQRb76qZEhscFBbsvtDIa9a8j2+558vTwLWdku71ty80F89W3B/Zk7PqBPZKx0A6YFgs4Ry4+ipH0wNEkTheYFATujCtmORJp0h05Pcz4SdZHSHyh7GYH7dZoreDa8YL3MvQY2H4VJxkjIYyB9DuYEv4H5KtO/ck/P8v056IxgeGNtJyPn8A3wFGMQvGkIfMNhaxI7yLzC+Qrky/xihtPwTfQiOgXElMYTV2HNyI0h2ksGmHKGCKikS92/ezjp0YMBeLiWg/JFKI7Hk7GI3vkb0zGeFoiNUc9oKHSmO9Nco73IbRM3cFfIrnSeqfIO8+AIkm2p1YHh98Bo14ldaM0nklADpV1yahVKJmXYPI+naFzxcUTTG7SGfrLVeuhhBo5pd9DoR69+F+oRzmNhfLkA1uasYHa16Pyu139MIpDTToz7ZIDz+7K5MofeMG78dj3fNeaTJxR/4iDOxBJZZR4KEwZ8gfeO0oFFwwmcu0YCfsWhbmffQCwItq1JXE74cWR4o3hqZpPHoHJI7I/mWbhLjcqo9UiJMlylFOh6g8PC1UR4SlD5Uh1d2Q7VMr2RxLYs6+drh1MBtO+Mwqcy0Aev/axMKrAMnT6BX/laFyzaM6BobK3rDiW/dvULJsRWuMQmYnahwZHTD5WJLfyV5RpH4ywUQrc5E8g9BgkzXbLXOFFILVIoMWdCskN8BY0I7RukjSOwd//fmGPLy9qHz096VOtVH7oGFJWUv99u/+hY0pkZo4MyIA0RkZN6qXSrU7pz2bKZUIewjijUZXjq8gF9fIiktuaPb4s2M/C0mNqpMqSjSrcBjCKqqdNZPZikUjbQTX4VklgX88833J9VRzYLw4epo4mJ4nr6dxKUUeTauLyKH3bJpS1qtDz0nrnOt1gaI2svu0eL1bhOcB8qGsQY2bJVEtdQQCjPvaMCl0+FTMqgi/hjOFwCAlcyGTv8LuH7G4mi7mav8pxn9rXHfD9fVXpure7o3viPeAsdiS044tVtpS/O8mg9nlDvJhAJrDKUMD+WE7e8Qq9YZPosIvfyVV64+5725WpozM6eLZxJMDfbnVZl4Y3iEk+MAFmCuqe7WrrcJ1R15lYg6A7cOyRHzg9dTt18L1nd13bl5RY/yWP2ry+69p9x/PdD4GcKXW4IMG8PSdry05K+U8oYotE8i9Viy208TBIrRYyBAWSA0NI8Bxx0cNsI7Ury8srrp5tud2roDceWkdkZ9S/VsGXby3eHrjMUhmbqe9aTI4gC5dmRFcQkwP1y6qFPK3Yqoh8/DC60VIpnz+n6zqZKNXJQRal4s72i3Mw/cbL03/jZ8zpjpzSnO7IKSWlk+tXQW9qDaR5d98fS7XPiE96V93J+lVuk/opDxvPc6IneclqalOOemqPy9LYe7cVsh6vOpzN4yYjy/ncjIBNweWEoJR/KASlnrYLoUPb86y+HYwvA//KDnrWhyxo3L9EOCJZXUsx57rKHpF5E6aCrqDAoRLpzi1ffkPHm2iFRbDGEHTAioqo/MxFhGlzYRzCmZ33W+UvY6f+VY4io8zOdF3elMs1oso4Ed5wfSkzpCLSdfYJFMvO/vTm69cmvOG5V5CDJTyCpuFSCvkAwvtySBkuVzQCrV9fvjx3hjpzTASMUmfFnySEQktMEiO92Uls2YmvS3cHNOIbmEGOXr2QYny7wb+tS77l9m0/6A7G01zrlaJ0l5jAbkzTXXEzJOBi2HV1pfaSMgW5jTTLMK7Gnu/l96BW3x75j6jDKwOe6MvNrr6QuqJcFLZd8WrLtLdu+wLftUbexHLl8Xk17dvBxOrbD7b2wqv4DBKeQJmqX6ULNIELVPI5FW+PkOb9YU3UmfZ4crwvMNEXT3tDVe6u746nk+tnB9c7mC/tnXMyRQoXjKbJ+llleiRzkQPJ0fvpO3sgVVCRE1wOrL7XMTN0po66OhkBhkpqHuW5i5NbMbSp623ZkaRlZPuBbw8nA8u3q61oM1lJgiARCLRKYiiQ9nKPkd6m0CjXM+cxXDw80SxkWcijkCfThXaToc8p4kJ1q9BUdNovV8DcLF/AIRIlFBPRSQm+fdNsNllKypxv/mxwGt6AzQp653gn47fBYxyiLfgs3y8y1Py0+gFwtFoj1qUraTZAb4g7sn3bC2Si4YxHb0yj1Wg1WsY9MNqNZ782WruJ1iMFX9D/nUQfuNOR7wxttQOdChF3GFpRURJDlpeUA+Uca8/x3gf+h4n9nYx1hkm0oikRh611SrD4VHPR5xQzxDtyhqmnZJhq1lwgVvUiN9LjgY53x0MR54GOfqo94CKoyomWFH86cIaO7x0Q2LGGhEJTpzFeYVEOI/fencFnFsfnjGaPpXKpJ5O30TjoTScyiRsPHa87HU+94J3r9B5xPOl1RrSXJmMyYXSFeZi+YziSp9ORl2ddTX779m+G6+ksJSL1CEz4kgod2RRKsDWa01N9D7rXLXOQ5qqb4GdR1A5R+1ez9etrZL5oPQ/N2fOXz0zYfv2sjdCz1q8ISavgd7w5S3lzvZL/z2oAzeU6SAWOmymR2r/pbMti5PZz/Od3X+VPkoXVLGyokmDZZ1xbA6dn+c54FNiu22nVajVr4mQFAN2M49q+69he52Ur3+MShJJUpwN+bmR9ZDEmN42ft4V3CGO7pfpwlQNXLTg7iO9B53/Af39sma8//e3PRvW/9YNL9UaeWulD0XL8vNUqb/tD2TiF/lWGvtT9eDKq/eFYVcvr1J8csgaYYOk1ERvxmNKbNDGAUXT0kGwMtEH75bZc98i+r5B7djckf57vdbI21q16qxyvYLfu+Z5kqrXPjzy6QEHZ/qI7VwV111Zm+bPRfvVb49XzRvvZ60b7lfEzqC7372iyqsq8/80LSsvoapeUwGA8fi9jxrzwuMfemRgP4crTrDLK3G/v9BlrJ93+TTcaVzD2oz/ujcGT6J88vnv6JmsNA2KJOaAkREBNBZiTCwF4miSUCRQBSO5WlKGzqsgbXeqWtajU/Le1W2UbvtdtYiQE5vpfVRb84sVzVf/Vu38MTEKdIfKiQfDwxp3ks5uy+JGchimLgbmWoS8MEcvybxkrMYIE4k05yJshbIRMgKUQCX/TbO5z/GZLMA/DapyB9lGSzNR2jjc1p0O+O/el/890qhTJfJ9mUVXUPtUuCiCJwA0ObyQgnc9z4AwuYVR9zAJFfu2gizm6YH6oS1R955FypupFK0iimaRe05Xhn2OC+RJF2UJbK4CfijBq+35ll8kLhmaUCsB0xB/9AvSA5IXQCAFMQBusMEkFutBU5RUsYIbA4MtURPQLASYDbfCT8YjIrOpDnpRkn/LsavTDUO80J0xHlu/bo57dC6aTvmv1bO9gmJ3/ptP81O85bkfnWjAR8j+VRanSYoIYphEOjQN32PUnEWaqE0QeIWWM98bTnevqvBS5A7YFlJUgX714cQpSb7I18d+8mWREvnmjdc3M+lXMAebS+NvG7xfg7dvHYSRQCEQiFJnTZMFghM7Gt/m0JiUryG/U1zkRxPFdnlluRsxUIy9yzmpESF1r/l8gkk6LVaBR4weQ5F8MmSah5iym4c25CMv4HoO8irmq6+OTFqiK9+dfen8Hsyv3SFq+dRJ+o5n6TnujkLk+Yq5aezdB1uwO3EABdfMr/wV8wXGsQGYo2/joYlvzd0OV7a3IerxBROZmcQFiEirw/I6SfK+PIOCCJo+fnVnP9vy8/Ts3gK1rT++D59vDrj/Yvcl/xAJaX/8N9DutCN9vlZKebyKkzRdU+roF6G/yijO1IUMnoGMgEFJCUCgwJSBcovAGhDRCbwxQ3w5OjrQWIBJVf/qn+djBU6v9aI8v/zcAAP//cv6oLIY7AAA= - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -65,7 +65,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=true/line32.sh b/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=true/line32.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=true/line32.sh +++ b/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=true/line32.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=true/line68.sh b/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=true/line68.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=true/line68.sh +++ b/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=true/line68.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=true/line9.sh b/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=true/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=true/line9.sh +++ b/pkg/agent/testdata/AzureLinuxv2+Kata+DisableUnattendedUpgrades=true/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/CustomizedImage/CustomData b/pkg/agent/testdata/CustomizedImage/CustomData index c9377b8996a..e3aa681be91 100644 --- a/pkg/agent/testdata/CustomizedImage/CustomData +++ b/pkg/agent/testdata/CustomizedImage/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/9xcfVujSLb/P5/iDMOMOiNJiLbt2EvvYII217xdIPb0tV0eDJXISCANhd2u5n72+1RRQEGIre3s3Nl1n342oU6dl995qVNVZL7/rnXlBa0rJ75uaIZhmx9MSxt0rb5tWqph2Seq3lf2gY51+6NJz9aHumVb+kAbTSzlVTpyovc1+71qdd/lIwfpyLtRv2e/V/v6cPKbeqoNLeV1OmBofU01tRqCw5RAHVu2PjQttd/Pmf6SDvVG3TPNWBvttEvDvdH7YX+k9opxuTR+pn2ooemUaIgShC4f3isNcxh1GEiD0fEHOq2vmwVOHQbUwLRPx6cbRB9wHNZsY7B1R0NL1Yea0VsnYcAZk2F3fZBBd3ZoEoKhPjzNx/baxdiaVnsMtLPJsUbCYjiy7JPRZNhT9hhU+uC0ZtpeMa2vWTxSe/tlLw5O7fGEU3Xv1ZqpXauO7mCdztCJjuukm9GjocsZdbhGea4Zpj4a2vrwXO3rPWWPQdkd6ut278u5o8fGqGf3tOMaos460fjs1FZ7PZZwDL2RoXIu0QxjZCj7DJ40UzlD6MTDLIZ6Y2N0rLGnTOPRxDomVhLrhunQK8736li3Tc041wyeQK4l6A1Nuz8anU3GjKxTS6b+z8TQ1omz4FAttT4XDtocRTUJD2RusBroB0yR83e9qm8P1gNrTfDrNpdE66NMcndiWqOBbWqq0X1n90YDVR+aqW2HjMHpeLI+/3CPGzR0Ell8Zhzurw9X7Tt8xdFo53pXs8f9yak+LDE6KIj04cnINkYDuzsyjMnY0nrKIUsH8/S3jXJ+aa/TcBJ+kYsq3VP1fuGdX7j6PRn3VEsrhrLMMTUS+Oc6zSuza+hji/rJ0NRewUlutzkhpJxOxqeG2tM4Ck6N8cQ4ZQEvtzt5kpCCYGjEDYrcZvh3ddNWTVM/HdrGaGTZ4/eKLMtrYzR+xpox0E2iqSLLjO1YpaWrOxp/oESKLPOcx+P+B3usmub7kUGT7UQ/VWS5krj5GjJiaSHLWUVLy9ha+Mjy6xLBaKwZqkUwTEuDLGfVyzJqBn+BRgoWTUrTUrtn9qlm2aoxsK3RmTZU5GwJrZIMNev9yDhjtkxSxoqcrahVcnNyPNQse2xoJ/pvikwW1Twpjyd6P6tlMlkXU1Deq2O7a2gkXFIwslWJH9GH5uTkRO/q2pBGxJltjtWupshklaLUltbXxiPD6pXKpiJnda4YzwI+Hc4MMSz9RO2S9crQ1AFZJTM+ipzVuBoixkyRSWlLGx/LGpMg/+2D3VUJbueaYSlyVthYZpAhzbBMRT7ImxOmtql1CahW37SPRyPLtAx1nC+n2m9aN8v7PDoOMgf3dPNY7Wu2PrbU475mKjIpa2nNNCamRTisB1dW3Hq6SWbZpvlOkV9nEW/oA9X4YA/1rq2PuaIqv2aRrw9NzbBsfdAzbUMzLRKiJPqMCdFkaI3sgTo87Ws21UmRX+8/dd6J3rc0I5/H0qhHgNA2zDshBa8i7+Cp8yryXnPBa2jEF7ah/fdEN7Se0slK1HBEi4J6qpkMmE5Wm8yhOjbfjfJqyDeN7SwzxoZ+TgbJ+klaARKVnaxckYd8uHba+1na5O36QDXPGFM21jW0nja0dLWfFttebU/czjKQtDPVVqfTPoBGo2hFaFNFtGHav4bKGHlOUCWrvy0rnfZhlYJbfN+r5kDptH95lMme0pHbj1LsK52sdm+geKV05AwV1odkQZ73p5pxThKZZKN+oneJL4yRlRZQSz1VOvJeo+HNYOYFLrQQnoKE75YIZrs+SIGzQCD8JEXIR06MBJCWkRdgkD4lHobO25aLbltB4vvwAPMILUH6BFvNrTeAr1HQAAAYmYq4HYcRBimi7Fs5NzLH+XwDWwsHT6+3xfYutP6xrffsvn6mKdvTMEJhvPOg95Tt5k87O2JrF5wduIdUBRwmyyWKtp2LziU4F3uXO28AffEwrLZ2mOTM7c/UIA+WZwuGB8ARSC5sCVs7DeTHiGqCptchCBXRQYhhFiaBKzRmXqMxOZ4MrYk9Mu2hOtAUIf0uNAaqQYKqGGAPihHaLVaHyUOhQZcvugMtCIpnQoPtfZRWEkctP5w6Pt003yRXaIr9RrqQp6PkuRtOb1DUQF+WBE3aqJ0rgnhftHUZ4kfKSijRaabFSwluPddzmIDcTXJT3mvKkpzNHJ7rPV3NWOsD9VSzzXdqJjJ/wEurm0PCPFPzfCWJ9xsYr3HhDLM+jLWKreTRV0QrwmIaNRfeNArjcIab03DRcm5i8k+aL5NClQrbginpeNJuNy2T3UFPEaYkygK4OYybXghREoBEEvPW89EcuSBJ0QIkKUBYug5jDJL02cPXUhDD0nOPWssonLbkVhC3lh4hXoQJCeu7JVKuvMDdjaOp0gqXuDVfJrtujJXWIki/hEvshUGsRITusZnOlBIWs7MHJQ65kSwO1uxMA67OwABhhdm29Fz28RYytY8ylfOHTIEjXhsKlNAgPXZX7b7T7J5uKK1bJ2pNnek1ajlkXjS99m5R3GqQflkdkgaNI47CEBO6dEJDO9eGFtkTnp7SFivj54fzlvPPJEKtQR4LKvne1L5gFMREm2Y3iXG4MKeRt8QtdIsCHLca3YnRJ/vb8cRSWnixbE2TyLdvUXQVxqgZJrhB1waeIoyceJ3C0E510zI+sFY3be9pTSL0rWkYzLx5885Z+NBoRAhHd9OFa3sze+Z4fhKh7R24p9WMjHkoVkT5DXx2PGzHPkJLRey8AewtUJhgRdx7A/G1N8Pw44+VD5TFLIzAAy8AcTtGn0AGkTHdeQNuSEnIH2MHYvZBEO9/XQmE11WEnBt4eICPObU3gwsQPZDQp5wfXHJLUfZHy7H2BU0TjFz4KIi/fhTIRCIlflMijRBOogDk/GFe07M/ajyIBRD56MyjH90w4FaBzWJXtajbseejAP/ngP9HIcrDFcR+GN4kyxwlHhmZQ4agFGLHt3msIjQNI1cR9+nUGDsRpuOKuO06GMHPP8RpQ/H52vMR4ChBJaAy6SDlXDPIJKqi0iaQECEbwJsmUYSCDVILdLe3eUKQOF13dkCaIxBL1m0OfsEidJyLS9MiRIqZu/ssy0i8Ild43NfMgZu9nCfLo5CkNuSp9Cw1w+hrQMZoGgZuLJCUrMvIILRj7OD4r5CTJCX/OhmZozVH2MZOdOX4fo4SdiL7MaRScopUEvlZOqauFu+52asMcGEDdBxtBT4nAgn/c0ZJiLSnQMdx+0b4MmcdtElY+yDNYrN/CyL9HBbKvAWRW+2h8/ZHucSHqHUB4t/hOwXacFmnDE0dB5cYlQi4DHypZ+1ZFC7sCM29GEd3NmkxbdJKvNDjZNYs9F0Ukbz3onQLmoEk7PwnhgWBDZZkG80HBYOBdKkMZCnt0kC839jSrUgYcS3hy8KIY/SHh9GVFzjR3VejiJE9EkiMYung62owZTLW44mbVImpssBKWG2IrfKccnjRsJFmFZm1QUODbnPElAKwLBI2uXEtDms5fz0eS0j+0SH5jLD8amjWhOfjIVqZsCFi6bZr5vnFPog+eeLaTyam8bnP4vNVKeZ4Xl8tZDxxOdQuaKCJmTS4vMxLWX0V41m9sIzlPUntGper9Bde5CjBLIzKbn7Ew4VX9yjp0rlFLjsAoZv9qR8mruQFHpYIbdykFJQ2PS09+US8n/FZCSBSCuI1hnz7Of1hznTre210ssXB/ngY/BntIaVELkgeCC2iXssVCgWLbOBC5S2Do7FqxHcxRospJtFKu/Xndd8Q305J4c/WhW/tt3M1wHXQIgykCPmh4z5lAtMbRKbKn9C257LJfiWJC9GSFITS0pmTSu6X5vweJlHg+GSSlOQTvimdCpfFOFz+2/mLKP1nOuvZqLpe7Fz56N8OWKb3XxPbtMIQU56H60vBpAknpSD9dQC5RVHshYE9x1mYYRRjEMRtehU2g60f4o/BFgjirwI8ALtkO4cHuEaOC1IA8o4AigKCKAuNVaOIXi0gMaAGrlkq5mtlHuR2G17BXhvE1B5DS6+ZTUu1JqYi/r1RX+rkcpGDt1A5iBdlKaVt+uG8UQBcFgBSgEgfUoGZ9W0yTMPEd+ld3hVKj5H4Q7CSJxi03gy+g5pzJZA7xNLOK84YFKSZIj9JfErtwtVdwWKzLrw3emlKUndwpdqbcbr4XoylJPBwDJI0I3sDSXJKF7+CKDdjFN16UyRUFC6vBZBZKsokxDeBGS6XPJhrle9JbBgt48PsRotbFHXDxdLh7jWya19VEbfTTkSGB5gmGCQXhJ8F0lrLOyXS45y0s4n04oJ0eDnvFUuH/MnxSmBteqnhI6mE3Jw9xwD4uemF8xb5H8nDLAXPIRV+7c2vUYzP0zRWxG39xFTyTUcqYyXkqouUiTTrPKK6eF9muqrTPo+1VcMNPweknPbQ1fhmboUnfG89PjtNb6VZcpPv+Z19J3/U0w2ta42MD1mhXdy4XgTSEsTScNqEJ/G1C+J9aWSVV/K1rCMxdNBug7PE0hxhyBRmLIh6KyX9zFRb/ZQKCpekM3WWmB5nZPOYcY+sGuXz3zcNAHopTqYoBD9mQelakgQ4l8FPWGnc5c0cJLY9J5ZKDkncMJoi+tBFs+KuhOx6iCF+OL2J6eMMDimE3vJmfnQ0Sm9uj44UnkvouwVi0l31kqjxtYWLGi2/oUvU+rL0Ji2abP9AAK/gwD4Sro1VY45wdzxRo+l1HmFONL1WxO0kbXsXOw1uj3lPBnd3VzQjHfLlYF8gAioj0YI8X9+LpnmUDjfW1lk2unCzUVp7vFg1Bgf7fIklqmwXqu/wQutlyhuktbka58UGO6GZRMUhfBpo7CyHnkPILDPY+VuE5uiLsvWP5s8fW+m/o+bP4lYJtmL6CpT/JeDzk3Odobr0tIFfBzMvAtHWD+exjUM7vfWuqIud+IbmUXFfkg6k1KSiDJ3SNdEPe8OdBkdIF2aLv0oSfjiBH6zmD3tDdvpH4jbTK+sqmJTA3TyV0v0eh4Ed48gL5oq4Db9/Ip1P0bhJkhPNgfCIsbNYAtDim6m0EtZIR0sUOSTbdJeQMgVqCFkNpk8EudnZWyexnPiGoAOpWIJlDSONINlHt8gHEPRgFkYLqoDjr9MOUBw7c5QKJYuojzByj0D8aQPfsedS2vaGcatufOs+B+wIxPzzLg/OEYjct90MjiMQ2afd3HzCg33c5aw9ArH4spuZdgQi+7SbW5BRjj13N1c7e2h57irNEe4oWbzn4oKegd6vvx6yEu/LUbxqklmNonAKpLgJ8J1CASrXA778ce3NNWmA7PjGW9rpi1a2G3mkly/6bFLZv6RH5KF7p4jbxakdSO9AGCDsuA52juh9t0Cb6WUUfrkD4ScBhGuMl0etlnzwS7Pzar/J/r+1YLNaXhBjJ5iivztLT2K7CKXT7shSuyO1ZZZzXKp9i6nUkMLWrFkSRGIS6WpIIiLYak7DxTLBqImdedz3YgwPsHCW2zHy0RRvN+na8EC3NtuCeeMtT5dJjwKmEzN8X3gDgifs7OxctC+bt46fIGi1QJg5foyEfCYFKqXcKt0ocDoKnH9YZ2rfJFfIR9imrXMwt6cowt7MmzoY2VGIaXT/xzqOgVDvu6jGdxeXpMvlPUeXy5tYYqwkhqfE8JQ4PKUMT2EHHiB1Za2vGC8hXUkHTuQFKBpF9JWtvhckXypLVBhnKylbJMOYNsuVtzdJr/zwUEfAv8S5TrX+Hud6Z1A+L/aqfXgD3Tr+2JneOHPUYw3bxOhX7KAtwb18JK04Y6QABDGJ/Jp2BAhXECIUJz5WxHvSE3DvgKR1MB1tVM4neD1T8FO005T7r09MszDBywQr4jYJiCwiicvSazWiWkpSjjvmTjbU4Lolbwa1HgVBHJnlfWucuCFgN5gB04p0uL9/It1tyv/3T/DZibNRugiW9VzrC7PdQsbwFchw0P4WphS6tOAnS9KZGOmLxRWPLlOXK/QEphSwgtgpP8m2iYK4J7CzFvpTVkVgr8uUyfvhZxR1nZhL3vswpttJsie9OKKvSR9dbpHPPiE+umTJ9v1JGEH6hvMucYiYCwcvBvmw2d4HJ3BBiOTD9r5AHjp+HIKLZl6AXLLxIXUhDMjKSRfM3bTlFLO3q72YlkocZjxSuaa38Hwn8u/oDqrTzgR1Os32fhNG+BpFn70Y1TFqMhSahQkse6lw4GY4/mfnrtAggw+C8DM3u8jqGhD2mu0Ugtu9Zvs5CDCn8QhQFl8Lfuq7Snpnu5PMvSyYVqxAC003ryR63CQs8qBYNT8Kt+RJdk7wURB26AoRJH5tKeEDbn1u3TtkdSWvEszvPXwdJrgX4lKUZozpqSVyYStufWy2WvOt0gbxiXYnV0mAk2bEMS7Erh63mrN4w/zMdj7VWR1nxPG/POVLBaYMSJb0ZVj/qELBfnqUnbyYyvZOo/HSyBTSLfYGj/D6Ci6aOYmPcw+8WHZTvGcQr5qsnsfnncdjJMXRd3Bx6hYr2xvlS9G3qFDqq0qyiGpEM9oylUaEnZ2KkssI3XphEvf/RGVrZZaUrqXglSeLwW1We0lLcV9G++LXS1IbuTucuuD8WdkWxPvbLAcK9vn9d72setD+SJnVQvkvCePH02pzrb7910TJxWXm4XXEbzdi/CR8c2xzo/LKPEh87KnR9LpSm1NTvYUzR1Z4jMYJ6ezSCt0A+P73T7SFWJsNsyhc0KFpGGCHLNs64RE3QZ9Bt/zswrtsLqoczjukEwhCTNNhN1MZXzt4Nz11ZU+ewqyxHjUVkzKP1Smysch9rcBtkEGjokbOS0rZU8vYS1R6YcF6brEaTPqWbtP/oMPTovpbK9SzBeUbwbQkbS4Hz0I7S/ynpv3T1M5+dFJqwDZvpLMejJ0KFKcEndr+i91r/cW6r3Sr4s3gsdoL6IsXY7b7mJMdxzWCgr6fl7AIsb1PmO+yNpKXBbIuDP6Izu+RPovTQnn5sshxE0CKipWZ3qpyoysBCp3gxx/zNSj/TTtRSKA3U/VDFXaNzQct32IiQ/+rtv05drHVikTnqtFwXPcsPe4bhi7qO1eoetfVV4+1vm1ahj485c7o0ncWPBBEnkCAv/3tbyCI2Y/nh6OeZlMCU4C3UPzavfP2x/p3MtjhIwShi8An+kBJQrqRj5Dj3pFVJkYB3iWr87UXzMle3XHXXx8pt23sXtF1yYw6CTiEdS3iZrMpFAe29Nys1spqUtQQEcfUPF7tive8IquaS9E6biXtua1uhBbhLXqJexEIazq9wMNPh6JVFdvKweCVqxDt/knKVcU+Sbn/H90y1dKI+P6d1h9rhqmNThr/FwAA//+Ej9uW4E8AAA== + H4sIAAAAAAAC/9xcfXubRrb/X5/ilNLabo0kZMdxnCVbLGGFa71dQE5zHS8PFiOZGoECIydeW/ez32eGAQaEHDtuc7P1PnlWYs6cl995mTMzqD/+0Lj0gsalE1/VNMOwzfempfXbVs82LdWw7BNV7yn7QMfaveG4Y+sD3bItva8Nx5byIhk50Xua/U612m+zkYNk5O2w17HfqT19MP5d7WoDS3mZDBhaT1NNrYLgMCFQR5atD0xL7fUypq+Soc6wfaoZa6OtZmG4M3w36A3VTj4uF8ZPtfcVNK0CDVGC0GXDe4VhDqMWA6k/PH5Pp/V0M8epxYDqm3Z31N0g+oDjsGYbg609HFiqPtCMzjoJA84YD9rrgwy600OTEAz0QTcb22vmY2ta7THQTsfHGgmLwdCyT4bjQUfZY1Dp/W7FtL18Wk+zeKT29ote7Hft0ZhTde/Fmqltq4ruYJ3O0ImO66Sb0aOhyxl1uEZ5phmmPhzY+uBM7ekdZY9B2R7o63bvy5mjR8awY3e04wqi1jrR6LRrq50OSziG3tBQOZdohjE0lH0GT5KpnCF04mEaQ52RMTzW2FOm8XBsHRMriXWDZOgF53t1pNumZpxpBk8gVxJ0BqbdGw5PxyNG1qokU/9nbGjrxGlwqJZanQsHTY6inIQHMjdYDvQDpsjZ207ZtwfrgbUm+GWTS6L1USa5PTatYd82NdVov7U7w76qD8zEtkPGoDsar88/3OMGDZ1EFp8Zh/vrw2X7Dl9wNNqZ3tbsUW/c1QcFRgc5kT44GdrGsG+3h4YxHllaRzlk6WB2f98o51VznYaT8ErOq3RH1Xu5d15x9Xs86qiWlg+lmWNqJPDPdJpXZtvQRxb1k6GpnZyT3GxyQkg5HY+6htrROApOjdHY6LKAl5utLElIQTA04gZFbjL827ppq6apdwe2MRxa9uidIsvy2hiNn5Fm9HWTaKrIMmM7Umnpag9H7ymRIss859Go994eqab5bmjQZDvRu4oslxI3W0OGLC1kOa1oSRlbCx9ZflkgGI40Q7UIhklpkOW0ellGxeArqCVg0aQ0LbV9anc1y1aNvm0NT7WBIqdLaJlkoFnvhsYps2WcMFbkdEUtk5vj44Fm2SNDO9F/V2SyqGZJeTzWe2ktk8m6mIDyTh3ZbUMj4ZKAka5K/Ig+MMcnJ3pb1wY0Ik5tc6S2NUUmqxSltrSeNhoaVqdQNhU5rXP5eBrwyXBqiGHpJ2qbrFeGpvbJKpnyUeS0xlUQMWaKTEpb0vhY1ogE+e/v7bZKcDvTDEuR08LGMoMMaYZlKvJB1pwwtU2tTUC1eqZ9PBxapmWoo2w51X7X2mneZ9FxkDq4o5vHak+z9ZGlHvc0U5FJWUtqpjE2LcJhPbjS4tbRTTLLNs23ivwyjXhD76vGe3ugt219xBVV+SWLfH1gaoZl6/2OaRuaaZEQJdFnjIkmA2to99VBt6fZVCdFfrn/2Hknes/SjGweS6MOAULbMO+EFLySvIPHzivJe8kFr6ERX9iG9t9j3dA6SistUYMhLQpqVzMZMK20NpkDdWS+HWbVkG8am2lmjAz9jAyS9ZO0AiQqW2m5Ig/5cG0199O0ydr1vmqeMqZsrG1oHW1g6WovKbadyp64mWYgaWfKrU6reQC1Wt6K0KaKaMO0fwmlMfKcoEpWf1tWWs3DMgW3+L5Tzb7Sar56kMme0pKbD1LsK620dm+geKG05BQV1oekQZ71p5pxRhKZZKN+oreJL4yhlRRQS+0qLXmvVvOmMPUCFxoIT0DCtwsE010fpMCZIxB+kSLkIydGAkiLyAswSB+XHobWm4aLbhrB0vfhHmYRWoD0EbbqW68BX6GgBgAwNBVxOw4jDFJE2TcybmSO8+katuYOnlxti81daPxrW+/YPf1UU7YnYYTCeOde7yjb9V92dsTGLjg7cAeJCjhcLhYo2nbOWxfgnO9d7LwG9NnDsNraYZJTtz9RgyxYniwY7gFHILmwJWzt1JAfI6oJmlyFIJREByGGabgMXKE29Wq18fF4YI3toWkP1L6mCMl3odZXDRJU+QB7kI/QbrE8TB4KNbp80R1oTpA/E2ps76M0lnHU8MOJ49NN8/XyEk2wX0sW8mSUPHfDyTWKaujzgqBJG7UzRRDv8rYuRfxIWQkFOs20eCnBjed6DhOQuUmuy3t1WZLTmYMzvaOrKWu9r3Y123yrpiKzB7y0qjkkzFM1z1aSeLeB8RoXzjDr/Ugr2UoefUG0IswnUX3uTaIwDqe4PgnnDec6Jv+k2WKZq1JimzMlHU/S7SZlst3vKMKERFkA14dx3QshWgYgkcS88Xw0Qy5IUjQHSQoQlq7CGIMkffLwlRTEsPDco8YiCicNuRHEjYVHiOfhkoT17QIpl17g7sbRRGmEC9yYLZa7boyVxjxIvoQL7IVBrESE7qGZzoQS5rPTBwUOmZEsDtbsTAKuysAAYYXZtvBc9vEGUrWPUpWzh0yBI14bCpRQIz12W22/1eyObiiNGydqTJzJFWo4ZF40ufJuUNyokX5ZHZAGjSOOwhATumRCTTvTBhbZE3a7tMVK+fnhrOH8exmhRj+LBZV8r2ufMQpiok29vYxxODcnkbfADXSDAhw3au2x0SP729HYUhp4vmhMlpFv36DoMoxRPVziGl0beIowcuJ1CkPr6qZlvGetbtLe05pE6BuTMJh6s/qtM/ehVosQjm4nc9f2pvbU8fxlhLZ34I5WMzLmoVgR5dfwyfGwHfsILRSx9RqwN0fhEivi3muIr7wphp9/Ln2gLKZhBB54AYjbMfoIMoiM6c5rcENKQv4YOxDTD4J499tKILwuI+Rcw/09fMiovSmcg+iBhD5m/OCCW4rSP1qOtc9ossTIhQ+C+NsHgUwkUuLXBdII4WUUgJw9zGp6+keNBzEHIhudevSjGwbcKrBZ7KoSdTv2fBTgvw/4fxaiPFxB7Ifh9XKRocQjI3PIEJRC7Pg2j1WEJmHkKuI+nRpjJ8J0XBG3XQcj+PWnOGkoPl15PgIcLVEBqFQ6SBnXFDKJqqg0CSREyAbwJssoQsEGqTm629s8IUicrjs7IM0QiAXrNge/YBE6zsWFaREixczdfZJlJF6RKzzsa+bAzV7OkuVBSBIbslR6kpph9CUgYzQJAzcWSEpWZWQQ2jF2cPw95CRJye8nIzO0Zgjb2IkuHd/PUMJOZD+EVEJOkVpGfpqOiavFO272KgVc2AAdR1uCz4lAwv+eUhIi7THQcdy+Er7UWQdNEtY+SNPY7N2ASD+HuTJvQORWe2i9+Vku8CFqnYP4T/hBgSZcVClDU8fBBUYFAi4Dn+tZexqFcztCMy/G0a1NWkybtBLP9DiZNQ19F0Uk770o2YKmIAk7f8ewILDBgmyj+aBgMJAulYEsJV0aiHcbW7oVCSOuJXxeGHGM/vQwuvQCJ7r9YhQxsgcCiVEsHHxVDqZUxno8cZNKMVUUWAqrDbFVnFMMLxo20rQkszJoaNBtjphCABZFwiY3rsVhJecvx2MByT87JJ8Qll8MzYrwfDhESxM2RCzddk09P98H0SePXPvJxCQ+91l8vijEHM/ri4WMJy6G2jkNNDGVBhcXWSmrrmI8q2eWsawnqVzjMpW+40WOEkzDqOjmBzyce3WPki6cG+SyAxC62Z/44dKVvMDDEqGN65SC0ianpScfifdTPisBREpBvMaQbz6lP8yYbv2oDU+2ONgfDoNv0R5SSuSC5IHQIOo1XCFXMM8GLlTeMDhqq1p8G2M0n2ASrbRbf1r3DfHNhBT+dF342n47UwNcB83DQIqQHzruYyYwvUFkqnyDtj2TTfYryzgXLUlBKC2cGankfmHOH+EyChyfTJKW2YSvSqfcZTEOF/9x/iJKf0tnPRlV14udSx/9xwHL9P4+sU0qDDHlabg+F0yacFIC0vcDyA2KYi8M7BlOwwyjGIMgbtOrsCls/RR/CLZAEH8T4B7YJdsZ3MMVclyQApB3BFAUEERZqK1qefRqAYkBNXDNQjFfK/MgN5vwAvaaICb2GFpyzWxaqjU2FfGftepSJxeLHLyB0kG8KEsJbd0PZ7Uc4KIAkAJE+pASzKxvk2ESLn2X3uVdouQYiT8EK3iCQetN4QeoOFcCuUUsbb3gjEFBkinyo8Qn1C5c3uYsNuvCe6OTpCR1B1eqvSmni+/FWFoGHo5BkqZkbyBJTuHiVxDleoyiG2+ChJLCxbUAUktFmYT4JjDDxYIHc63yPYoNo2V8mN1ofoOidjhfONy9RnrtqyridtKJyHAPkyUGyQXhV4G01vJOgfQ4I21tIj0/Jx1exnvF0iF7crwSWJteaPhIKiE3Y88xAH5ucuG8Rf5H8jBNwTNIhF95sysU47MkjRVxWz8xlWzTkchYCZnqImUiTVsPqC7eFZmuqrTPYm1Vc8NPASmnHXQ5up5Z4QnfW49Ou8mtNEtu8j27s29ljzq6obWtofE+LbTza9eLQFqAWBhOmvBlfOWCeFcYWWWVfC3rSAwdNJvgLLA0QxhShRkLot5KST4z1Va/JILCBelMnQWmxxnpPGbcA6tG8fz3dQ2AXoqTKQrBj1lQuJYkAc5l8CNWGndxPQOJbc+JpZJDEjeMJog+dNE0vyshux5iiB9OrmP6OIVDCqGzuJ4dHQ2Tm9ujI4XnEvpujph0W74kqn1p4aJGy6/pErW+LL1OiibbPxDASziwj4RrbVWbIdwejdVocpVFmBNNrhRxe5m0vfOdGrfHvCODu7srmpEO+XKwLxABpZFoTp6v70WTPEqGa2vrLBudu+korT1erBr9g32+xBJVtnPVd3ih1TLlDdKaXI3zYoOd0Iyj/BA+CTR2lkPPIWSWGez8LUIz9FnZ+lf91w+N5N9R/VdxqwBbPn0Fyv8S8PnJmc5QXnqawK+DqReBaOuHs9jGoZ3cepfUxU58TfMovy9JBhJqUlEGTuGa6Ke9wU6NI6QLs8VfJQk/ncBPVv2nvQE7/SNxm+qVdhVMSuBunkrp/ojDwI5x5AUzRdyGPz6Szidv3CTJiWZAeMTYmS8AaPFNVVoJa6TDBYockm26S0iZAhWErAbTJ4Jcb+2tk1hOfE3QgUQswbKCkUaQ7KEb5AMIejANozlVwPHXafsojp0ZSoSSRdRHGLlHIP6yge/Icyltc8O4VTW+dZcBdgRi9nmXB+cIRO7bbgrHEYjs025mPuHBPu5y1h6BmH/ZTU07ApF92s0sSClHnrubqZ0+tDx3leQId5Qs3nFxQc9A79ZfD1mJd8UoXtXJrFpeOAVS3AT4QaEAFesBX/649uaKNEB2fO0t7ORFK9uNPNLL5302qeyfkyPy0L1VxO381A6ktyD0EXZcBztH9L5boM30Igo/34LwiwDCFcaLo0ZDPnhVb73Yr7P/b8zZrIYXxNgJJuifzsKT2C5CaTVbstRsSU2Z5RyXal9jKjUktzVtlgSRmES6GpKICLbqk3C+WGJUx84s7nkxhnuYO4vtGPlogrfrdG24p1ubbcG89hbdxbJDAdOJGb4vvAbBE3Z2ds6bF/Ubx18iaDRAmDp+jIRsJgUqodwq3ChwOgqcf1hnal8vL5GPsE1b52BmT1CEvak3cTCyoxDT6P7bOo6BUO27qMJ35xeky+U9R5fL61hirCSGp8TwlDg8pRRPYQfuIXFl0Vd3Rb12d1dCspr2ncgLUDSM6GtbPS9Yfi4tU2GcrqZsoQxj2jCX3uAk/fL9fRUB/yLnOtX6u5zr3UHxzNgr9+I1dOP4I2dy7cxQhzVtY6NXsoO2BXfykbTijJECEMRl5Fe0JEC4ghCheOljRbwjfQH3HkhSC5PRWumMgtczcUCCdpJ2//WRaRYu8WKJFXGbBEUalcRtydUaUS0hKcYecykbqnEdkzeFSo+CIA7N4t41XrohYDeYAtOKdLl/fCQdbsL/j4/wyYnTUboQFvVc6w3THUPK8AXIcND8GqYUuqToLxekOzGSl4tLHl0kLlfoKUwhYAWxVXySbhUFcU9g5y3056yKwF6ZKZL3wk8oajsxl8B3YUy3lGRfen5EX5U+utgin31CfHTBEu7HkzCC5C3nXeIQMRMOXgzyYb25D07gghDJh819gTx0/DgEF029ALlk80NqQxiQ1ZMumrtJ2ymmb1h7MS2XOEx5JHJNb+75TuTf0l1Uq5kKarXqzf06DPEVij55MapiVGco1HMTWPZS4cDNcPxPzm2uQQofBOEnbnae1RUg7NWbCQQ3e/XmUxBgTuMRoCy+FPzUd6X0TncoqXtZMK1YkRbqblZJ9LhOWGRBsap/EG7Ik/Ss4IMg7NBVIlj6laWED7j1uVXvkVWVvFIwv/PwVbjEnRAXojRlTE8ukQtbceNDvdGYbRU2iY+0e3m5DPCyHnGMc7Grh63mLN4wP7WdT3VWxxlx/JenfKHAFAFJk74I659VKNjPj9LTF1PZ3qnVnhuZQrLN3uARXl/BRVNn6ePMA8+WXRfvGMSrOqvn8Vnr4RhJcPQdnJ+8xcr2RvlS9DUqFHqrgiyiGtGMtk2FEWFnp6TkIkI3XriMe99Q2UqZBaUrKXjlyWJwk9Ze0lLcFdE+/+2C1EbuHqcqOH9VtgXx7ibNgZx9dgdeLasatD9TZrlQ/iVh/HBaba7VN39NlJxfpB5eR/xmI8aPwjfDNjMqq8z9pY89NZpclWpzYqo3d2bICo/RaEk6u6RC1wB+/OMjbSHWZsM0Cud0aBIG2CHLtk54xHXQp9AuPjv3LurzMoezFukEghDTdNhNVcZXDt5NTl7Zk8cwq61HTcmk1GNVimwscl8qcBtk0KiokPOcUvbYMvYclZ5ZsJ5arPrjnqXb9D/q8Lio/toK9WRB2UYwKUmby8GT0E4T/7Fp/zi10x+eFBqwzRvptAdjpwL5KUGrsv9id1vfWfeVbFW8KTxUewF99mLMdh8zsuO4QpDT97ISFiG29wmzXdZG8qJA1oXBn9H5PdBncVooz18WOW4CSFG+MtObVW50JUCuE/z8c7YGZb9rJwoJ9HaqeqjErrb5oOVrTGTof9G2b2MXW61IdK5qNcd1T5Mjv0Hoop5zicr3XT31WOvZpmXogy53Rpe8t+CBIPIEAvzjH/8AQUx/QD8YdjSbEpgCvIH8F++tNz9Xv5fBDiAhCF0EPtEHChKSjXyEHPeWrDIxCvAuWZ2vvGBG9uqOu/4KSbFtY3eLrktmVEnAIaxrEdfrdSE/tKXnZpVWlpOigog4puLxale84xVZVVyMVnEraM9tdSM0D2/Qc9yLQFjT6RkefjwUjbLYRgYGr1yJaPcbKVcW+yjl/n90S1WriIgT35mVguGkp3YfjgWOYs0iMvZ4Wyg1bwV90CjJ2AQtT7P7lyhSkvEYRb6BHkV//vhW6400w9SGJ7X/CwAA//+ee/h8tFEAAA== @@ -25,7 +25,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -62,7 +62,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/CustomizedImage/line28.sh b/pkg/agent/testdata/CustomizedImage/line28.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/CustomizedImage/line28.sh +++ b/pkg/agent/testdata/CustomizedImage/line28.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/CustomizedImage/line65.sh b/pkg/agent/testdata/CustomizedImage/line65.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/CustomizedImage/line65.sh +++ b/pkg/agent/testdata/CustomizedImage/line65.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/CustomizedImage/line9.sh b/pkg/agent/testdata/CustomizedImage/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/CustomizedImage/line9.sh +++ b/pkg/agent/testdata/CustomizedImage/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/CustomizedImageKata/CustomData b/pkg/agent/testdata/CustomizedImageKata/CustomData index c9377b8996a..e3aa681be91 100644 --- a/pkg/agent/testdata/CustomizedImageKata/CustomData +++ b/pkg/agent/testdata/CustomizedImageKata/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/9xcfVujSLb/P5/iDMOMOiNJiLbt2EvvYII217xdIPb0tV0eDJXISCANhd2u5n72+1RRQEGIre3s3Nl1n342oU6dl995qVNVZL7/rnXlBa0rJ75uaIZhmx9MSxt0rb5tWqph2Seq3lf2gY51+6NJz9aHumVb+kAbTSzlVTpyovc1+71qdd/lIwfpyLtRv2e/V/v6cPKbeqoNLeV1OmBofU01tRqCw5RAHVu2PjQttd/Pmf6SDvVG3TPNWBvttEvDvdH7YX+k9opxuTR+pn2ooemUaIgShC4f3isNcxh1GEiD0fEHOq2vmwVOHQbUwLRPx6cbRB9wHNZsY7B1R0NL1Yea0VsnYcAZk2F3fZBBd3ZoEoKhPjzNx/baxdiaVnsMtLPJsUbCYjiy7JPRZNhT9hhU+uC0ZtpeMa2vWTxSe/tlLw5O7fGEU3Xv1ZqpXauO7mCdztCJjuukm9GjocsZdbhGea4Zpj4a2vrwXO3rPWWPQdkd6ut278u5o8fGqGf3tOMaos460fjs1FZ7PZZwDL2RoXIu0QxjZCj7DJ40UzlD6MTDLIZ6Y2N0rLGnTOPRxDomVhLrhunQK8736li3Tc041wyeQK4l6A1Nuz8anU3GjKxTS6b+z8TQ1omz4FAttT4XDtocRTUJD2RusBroB0yR83e9qm8P1gNrTfDrNpdE66NMcndiWqOBbWqq0X1n90YDVR+aqW2HjMHpeLI+/3CPGzR0Ell8Zhzurw9X7Tt8xdFo53pXs8f9yak+LDE6KIj04cnINkYDuzsyjMnY0nrKIUsH8/S3jXJ+aa/TcBJ+kYsq3VP1fuGdX7j6PRn3VEsrhrLMMTUS+Oc6zSuza+hji/rJ0NRewUlutzkhpJxOxqeG2tM4Ck6N8cQ4ZQEvtzt5kpCCYGjEDYrcZvh3ddNWTVM/HdrGaGTZ4/eKLMtrYzR+xpox0E2iqSLLjO1YpaWrOxp/oESKLPOcx+P+B3usmub7kUGT7UQ/VWS5krj5GjJiaSHLWUVLy9ha+Mjy6xLBaKwZqkUwTEuDLGfVyzJqBn+BRgoWTUrTUrtn9qlm2aoxsK3RmTZU5GwJrZIMNev9yDhjtkxSxoqcrahVcnNyPNQse2xoJ/pvikwW1Twpjyd6P6tlMlkXU1Deq2O7a2gkXFIwslWJH9GH5uTkRO/q2pBGxJltjtWupshklaLUltbXxiPD6pXKpiJnda4YzwI+Hc4MMSz9RO2S9crQ1AFZJTM+ipzVuBoixkyRSWlLGx/LGpMg/+2D3VUJbueaYSlyVthYZpAhzbBMRT7ImxOmtql1CahW37SPRyPLtAx1nC+n2m9aN8v7PDoOMgf3dPNY7Wu2PrbU475mKjIpa2nNNCamRTisB1dW3Hq6SWbZpvlOkV9nEW/oA9X4YA/1rq2PuaIqv2aRrw9NzbBsfdAzbUMzLRKiJPqMCdFkaI3sgTo87Ws21UmRX+8/dd6J3rc0I5/H0qhHgNA2zDshBa8i7+Cp8yryXnPBa2jEF7ah/fdEN7Se0slK1HBEi4J6qpkMmE5Wm8yhOjbfjfJqyDeN7SwzxoZ+TgbJ+klaARKVnaxckYd8uHba+1na5O36QDXPGFM21jW0nja0dLWfFttebU/czjKQtDPVVqfTPoBGo2hFaFNFtGHav4bKGHlOUCWrvy0rnfZhlYJbfN+r5kDptH95lMme0pHbj1LsK52sdm+geKV05AwV1odkQZ73p5pxThKZZKN+oneJL4yRlRZQSz1VOvJeo+HNYOYFLrQQnoKE75YIZrs+SIGzQCD8JEXIR06MBJCWkRdgkD4lHobO25aLbltB4vvwAPMILUH6BFvNrTeAr1HQAAAYmYq4HYcRBimi7Fs5NzLH+XwDWwsHT6+3xfYutP6xrffsvn6mKdvTMEJhvPOg95Tt5k87O2JrF5wduIdUBRwmyyWKtp2LziU4F3uXO28AffEwrLZ2mOTM7c/UIA+WZwuGB8ARSC5sCVs7DeTHiGqCptchCBXRQYhhFiaBKzRmXqMxOZ4MrYk9Mu2hOtAUIf0uNAaqQYKqGGAPihHaLVaHyUOhQZcvugMtCIpnQoPtfZRWEkctP5w6Pt003yRXaIr9RrqQp6PkuRtOb1DUQF+WBE3aqJ0rgnhftHUZ4kfKSijRaabFSwluPddzmIDcTXJT3mvKkpzNHJ7rPV3NWOsD9VSzzXdqJjJ/wEurm0PCPFPzfCWJ9xsYr3HhDLM+jLWKreTRV0QrwmIaNRfeNArjcIab03DRcm5i8k+aL5NClQrbginpeNJuNy2T3UFPEaYkygK4OYybXghREoBEEvPW89EcuSBJ0QIkKUBYug5jDJL02cPXUhDD0nOPWssonLbkVhC3lh4hXoQJCeu7JVKuvMDdjaOp0gqXuDVfJrtujJXWIki/hEvshUGsRITusZnOlBIWs7MHJQ65kSwO1uxMA67OwABhhdm29Fz28RYytY8ylfOHTIEjXhsKlNAgPXZX7b7T7J5uKK1bJ2pNnek1ajlkXjS99m5R3GqQflkdkgaNI47CEBO6dEJDO9eGFtkTnp7SFivj54fzlvPPJEKtQR4LKvne1L5gFMREm2Y3iXG4MKeRt8QtdIsCHLca3YnRJ/vb8cRSWnixbE2TyLdvUXQVxqgZJrhB1waeIoyceJ3C0E510zI+sFY3be9pTSL0rWkYzLx5885Z+NBoRAhHd9OFa3sze+Z4fhKh7R24p9WMjHkoVkT5DXx2PGzHPkJLRey8AewtUJhgRdx7A/G1N8Pw44+VD5TFLIzAAy8AcTtGn0AGkTHdeQNuSEnIH2MHYvZBEO9/XQmE11WEnBt4eICPObU3gwsQPZDQp5wfXHJLUfZHy7H2BU0TjFz4KIi/fhTIRCIlflMijRBOogDk/GFe07M/ajyIBRD56MyjH90w4FaBzWJXtajbseejAP/ngP9HIcrDFcR+GN4kyxwlHhmZQ4agFGLHt3msIjQNI1cR9+nUGDsRpuOKuO06GMHPP8RpQ/H52vMR4ChBJaAy6SDlXDPIJKqi0iaQECEbwJsmUYSCDVILdLe3eUKQOF13dkCaIxBL1m0OfsEidJyLS9MiRIqZu/ssy0i8Ild43NfMgZu9nCfLo5CkNuSp9Cw1w+hrQMZoGgZuLJCUrMvIILRj7OD4r5CTJCX/OhmZozVH2MZOdOX4fo4SdiL7MaRScopUEvlZOqauFu+52asMcGEDdBxtBT4nAgn/c0ZJiLSnQMdx+0b4MmcdtElY+yDNYrN/CyL9HBbKvAWRW+2h8/ZHucSHqHUB4t/hOwXacFmnDE0dB5cYlQi4DHypZ+1ZFC7sCM29GEd3NmkxbdJKvNDjZNYs9F0Ukbz3onQLmoEk7PwnhgWBDZZkG80HBYOBdKkMZCnt0kC839jSrUgYcS3hy8KIY/SHh9GVFzjR3VejiJE9EkiMYung62owZTLW44mbVImpssBKWG2IrfKccnjRsJFmFZm1QUODbnPElAKwLBI2uXEtDms5fz0eS0j+0SH5jLD8amjWhOfjIVqZsCFi6bZr5vnFPog+eeLaTyam8bnP4vNVKeZ4Xl8tZDxxOdQuaKCJmTS4vMxLWX0V41m9sIzlPUntGper9Bde5CjBLIzKbn7Ew4VX9yjp0rlFLjsAoZv9qR8mruQFHpYIbdykFJQ2PS09+US8n/FZCSBSCuI1hnz7Of1hznTre210ssXB/ngY/BntIaVELkgeCC2iXssVCgWLbOBC5S2Do7FqxHcxRospJtFKu/Xndd8Q305J4c/WhW/tt3M1wHXQIgykCPmh4z5lAtMbRKbKn9C257LJfiWJC9GSFITS0pmTSu6X5vweJlHg+GSSlOQTvimdCpfFOFz+2/mLKP1nOuvZqLpe7Fz56N8OWKb3XxPbtMIQU56H60vBpAknpSD9dQC5RVHshYE9x1mYYRRjEMRtehU2g60f4o/BFgjirwI8ALtkO4cHuEaOC1IA8o4AigKCKAuNVaOIXi0gMaAGrlkq5mtlHuR2G17BXhvE1B5DS6+ZTUu1JqYi/r1RX+rkcpGDt1A5iBdlKaVt+uG8UQBcFgBSgEgfUoGZ9W0yTMPEd+ld3hVKj5H4Q7CSJxi03gy+g5pzJZA7xNLOK84YFKSZIj9JfErtwtVdwWKzLrw3emlKUndwpdqbcbr4XoylJPBwDJI0I3sDSXJKF7+CKDdjFN16UyRUFC6vBZBZKsokxDeBGS6XPJhrle9JbBgt48PsRotbFHXDxdLh7jWya19VEbfTTkSGB5gmGCQXhJ8F0lrLOyXS45y0s4n04oJ0eDnvFUuH/MnxSmBteqnhI6mE3Jw9xwD4uemF8xb5H8nDLAXPIRV+7c2vUYzP0zRWxG39xFTyTUcqYyXkqouUiTTrPKK6eF9muqrTPo+1VcMNPweknPbQ1fhmboUnfG89PjtNb6VZcpPv+Z19J3/U0w2ta42MD1mhXdy4XgTSEsTScNqEJ/G1C+J9aWSVV/K1rCMxdNBug7PE0hxhyBRmLIh6KyX9zFRb/ZQKCpekM3WWmB5nZPOYcY+sGuXz3zcNAHopTqYoBD9mQelakgQ4l8FPWGnc5c0cJLY9J5ZKDkncMJoi+tBFs+KuhOx6iCF+OL2J6eMMDimE3vJmfnQ0Sm9uj44UnkvouwVi0l31kqjxtYWLGi2/oUvU+rL0Ji2abP9AAK/gwD4Sro1VY45wdzxRo+l1HmFONL1WxO0kbXsXOw1uj3lPBnd3VzQjHfLlYF8gAioj0YI8X9+LpnmUDjfW1lk2unCzUVp7vFg1Bgf7fIklqmwXqu/wQutlyhuktbka58UGO6GZRMUhfBpo7CyHnkPILDPY+VuE5uiLsvWP5s8fW+m/o+bP4lYJtmL6CpT/JeDzk3Odobr0tIFfBzMvAtHWD+exjUM7vfWuqIud+IbmUXFfkg6k1KSiDJ3SNdEPe8OdBkdIF2aLv0oSfjiBH6zmD3tDdvpH4jbTK+sqmJTA3TyV0v0eh4Ed48gL5oq4Db9/Ip1P0bhJkhPNgfCIsbNYAtDim6m0EtZIR0sUOSTbdJeQMgVqCFkNpk8EudnZWyexnPiGoAOpWIJlDSONINlHt8gHEPRgFkYLqoDjr9MOUBw7c5QKJYuojzByj0D8aQPfsedS2vaGcatufOs+B+wIxPzzLg/OEYjct90MjiMQ2afd3HzCg33c5aw9ArH4spuZdgQi+7SbW5BRjj13N1c7e2h57irNEe4oWbzn4oKegd6vvx6yEu/LUbxqklmNonAKpLgJ8J1CASrXA778ce3NNWmA7PjGW9rpi1a2G3mkly/6bFLZv6RH5KF7p4jbxakdSO9AGCDsuA52juh9t0Cb6WUUfrkD4ScBhGuMl0etlnzwS7Pzar/J/r+1YLNaXhBjJ5iivztLT2K7CKXT7shSuyO1ZZZzXKp9i6nUkMLWrFkSRGIS6WpIIiLYak7DxTLBqImdedz3YgwPsHCW2zHy0RRvN+na8EC3NtuCeeMtT5dJjwKmEzN8X3gDgifs7OxctC+bt46fIGi1QJg5foyEfCYFKqXcKt0ocDoKnH9YZ2rfJFfIR9imrXMwt6cowt7MmzoY2VGIaXT/xzqOgVDvu6jGdxeXpMvlPUeXy5tYYqwkhqfE8JQ4PKUMT2EHHiB1Za2vGC8hXUkHTuQFKBpF9JWtvhckXypLVBhnKylbJMOYNsuVtzdJr/zwUEfAv8S5TrX+Hud6Z1A+L/aqfXgD3Tr+2JneOHPUYw3bxOhX7KAtwb18JK04Y6QABDGJ/Jp2BAhXECIUJz5WxHvSE3DvgKR1MB1tVM4neD1T8FO005T7r09MszDBywQr4jYJiCwiicvSazWiWkpSjjvmTjbU4Lolbwa1HgVBHJnlfWucuCFgN5gB04p0uL9/It1tyv/3T/DZibNRugiW9VzrC7PdQsbwFchw0P4WphS6tOAnS9KZGOmLxRWPLlOXK/QEphSwgtgpP8m2iYK4J7CzFvpTVkVgr8uUyfvhZxR1nZhL3vswpttJsie9OKKvSR9dbpHPPiE+umTJ9v1JGEH6hvMucYiYCwcvBvmw2d4HJ3BBiOTD9r5AHjp+HIKLZl6AXLLxIXUhDMjKSRfM3bTlFLO3q72YlkocZjxSuaa38Hwn8u/oDqrTzgR1Os32fhNG+BpFn70Y1TFqMhSahQkse6lw4GY4/mfnrtAggw+C8DM3u8jqGhD2mu0Ugtu9Zvs5CDCn8QhQFl8Lfuq7Snpnu5PMvSyYVqxAC003ryR63CQs8qBYNT8Kt+RJdk7wURB26AoRJH5tKeEDbn1u3TtkdSWvEszvPXwdJrgX4lKUZozpqSVyYStufWy2WvOt0gbxiXYnV0mAk2bEMS7Erh63mrN4w/zMdj7VWR1nxPG/POVLBaYMSJb0ZVj/qELBfnqUnbyYyvZOo/HSyBTSLfYGj/D6Ci6aOYmPcw+8WHZTvGcQr5qsnsfnncdjJMXRd3Bx6hYr2xvlS9G3qFDqq0qyiGpEM9oylUaEnZ2KkssI3XphEvf/RGVrZZaUrqXglSeLwW1We0lLcV9G++LXS1IbuTucuuD8WdkWxPvbLAcK9vn9d72setD+SJnVQvkvCePH02pzrb7910TJxWXm4XXEbzdi/CR8c2xzo/LKPEh87KnR9LpSm1NTvYUzR1Z4jMYJ6ezSCt0A+P73T7SFWJsNsyhc0KFpGGCHLNs64RE3QZ9Bt/zswrtsLqoczjukEwhCTNNhN1MZXzt4Nz11ZU+ewqyxHjUVkzKP1Smysch9rcBtkEGjokbOS0rZU8vYS1R6YcF6brEaTPqWbtP/oMPTovpbK9SzBeUbwbQkbS4Hz0I7S/ynpv3T1M5+dFJqwDZvpLMejJ0KFKcEndr+i91r/cW6r3Sr4s3gsdoL6IsXY7b7mJMdxzWCgr6fl7AIsb1PmO+yNpKXBbIuDP6Izu+RPovTQnn5sshxE0CKipWZ3qpyoysBCp3gxx/zNSj/TTtRSKA3U/VDFXaNzQct32IiQ/+rtv05drHVikTnqtFwXPcsPe4bhi7qO1eoetfVV4+1vm1ahj485c7o0ncWPBBEnkCAv/3tbyCI2Y/nh6OeZlMCU4C3UPzavfP2x/p3MtjhIwShi8An+kBJQrqRj5Dj3pFVJkYB3iWr87UXzMle3XHXXx8pt23sXtF1yYw6CTiEdS3iZrMpFAe29Nys1spqUtQQEcfUPF7tive8IquaS9E6biXtua1uhBbhLXqJexEIazq9wMNPh6JVFdvKweCVqxDt/knKVcU+Sbn/H90y1dKI+P6d1h9rhqmNThr/FwAA//+Ej9uW4E8AAA== + H4sIAAAAAAAC/9xcfXubRrb/X5/ilNLabo0kZMdxnCVbLGGFa71dQE5zHS8PFiOZGoECIydeW/ez32eGAQaEHDtuc7P1PnlWYs6cl995mTMzqD/+0Lj0gsalE1/VNMOwzfempfXbVs82LdWw7BNV7yn7QMfaveG4Y+sD3bItva8Nx5byIhk50Xua/U612m+zkYNk5O2w17HfqT19MP5d7WoDS3mZDBhaT1NNrYLgMCFQR5atD0xL7fUypq+Soc6wfaoZa6OtZmG4M3w36A3VTj4uF8ZPtfcVNK0CDVGC0GXDe4VhDqMWA6k/PH5Pp/V0M8epxYDqm3Z31N0g+oDjsGYbg609HFiqPtCMzjoJA84YD9rrgwy600OTEAz0QTcb22vmY2ta7THQTsfHGgmLwdCyT4bjQUfZY1Dp/W7FtL18Wk+zeKT29ote7Hft0ZhTde/Fmqltq4ruYJ3O0ImO66Sb0aOhyxl1uEZ5phmmPhzY+uBM7ekdZY9B2R7o63bvy5mjR8awY3e04wqi1jrR6LRrq50OSziG3tBQOZdohjE0lH0GT5KpnCF04mEaQ52RMTzW2FOm8XBsHRMriXWDZOgF53t1pNumZpxpBk8gVxJ0BqbdGw5PxyNG1qokU/9nbGjrxGlwqJZanQsHTY6inIQHMjdYDvQDpsjZ207ZtwfrgbUm+GWTS6L1USa5PTatYd82NdVov7U7w76qD8zEtkPGoDsar88/3OMGDZ1EFp8Zh/vrw2X7Dl9wNNqZ3tbsUW/c1QcFRgc5kT44GdrGsG+3h4YxHllaRzlk6WB2f98o51VznYaT8ErOq3RH1Xu5d15x9Xs86qiWlg+lmWNqJPDPdJpXZtvQRxb1k6GpnZyT3GxyQkg5HY+6htrROApOjdHY6LKAl5utLElIQTA04gZFbjL827ppq6apdwe2MRxa9uidIsvy2hiNn5Fm9HWTaKrIMmM7Umnpag9H7ymRIss859Go994eqab5bmjQZDvRu4oslxI3W0OGLC1kOa1oSRlbCx9ZflkgGI40Q7UIhklpkOW0ellGxeArqCVg0aQ0LbV9anc1y1aNvm0NT7WBIqdLaJlkoFnvhsYps2WcMFbkdEUtk5vj44Fm2SNDO9F/V2SyqGZJeTzWe2ktk8m6mIDyTh3ZbUMj4ZKAka5K/Ig+MMcnJ3pb1wY0Ik5tc6S2NUUmqxSltrSeNhoaVqdQNhU5rXP5eBrwyXBqiGHpJ2qbrFeGpvbJKpnyUeS0xlUQMWaKTEpb0vhY1ogE+e/v7bZKcDvTDEuR08LGMoMMaYZlKvJB1pwwtU2tTUC1eqZ9PBxapmWoo2w51X7X2mneZ9FxkDq4o5vHak+z9ZGlHvc0U5FJWUtqpjE2LcJhPbjS4tbRTTLLNs23ivwyjXhD76vGe3ugt219xBVV+SWLfH1gaoZl6/2OaRuaaZEQJdFnjIkmA2to99VBt6fZVCdFfrn/2Hknes/SjGweS6MOAULbMO+EFLySvIPHzivJe8kFr6ERX9iG9t9j3dA6SistUYMhLQpqVzMZMK20NpkDdWS+HWbVkG8am2lmjAz9jAyS9ZO0AiQqW2m5Ig/5cG0199O0ydr1vmqeMqZsrG1oHW1g6WovKbadyp64mWYgaWfKrU6reQC1Wt6K0KaKaMO0fwmlMfKcoEpWf1tWWs3DMgW3+L5Tzb7Sar56kMme0pKbD1LsK620dm+geKG05BQV1oekQZ71p5pxRhKZZKN+oreJL4yhlRRQS+0qLXmvVvOmMPUCFxoIT0DCtwsE010fpMCZIxB+kSLkIydGAkiLyAswSB+XHobWm4aLbhrB0vfhHmYRWoD0EbbqW68BX6GgBgAwNBVxOw4jDFJE2TcybmSO8+katuYOnlxti81daPxrW+/YPf1UU7YnYYTCeOde7yjb9V92dsTGLjg7cAeJCjhcLhYo2nbOWxfgnO9d7LwG9NnDsNraYZJTtz9RgyxYniwY7gFHILmwJWzt1JAfI6oJmlyFIJREByGGabgMXKE29Wq18fF4YI3toWkP1L6mCMl3odZXDRJU+QB7kI/QbrE8TB4KNbp80R1oTpA/E2ps76M0lnHU8MOJ49NN8/XyEk2wX0sW8mSUPHfDyTWKaujzgqBJG7UzRRDv8rYuRfxIWQkFOs20eCnBjed6DhOQuUmuy3t1WZLTmYMzvaOrKWu9r3Y123yrpiKzB7y0qjkkzFM1z1aSeLeB8RoXzjDr/Ugr2UoefUG0IswnUX3uTaIwDqe4PgnnDec6Jv+k2WKZq1JimzMlHU/S7SZlst3vKMKERFkA14dx3QshWgYgkcS88Xw0Qy5IUjQHSQoQlq7CGIMkffLwlRTEsPDco8YiCicNuRHEjYVHiOfhkoT17QIpl17g7sbRRGmEC9yYLZa7boyVxjxIvoQL7IVBrESE7qGZzoQS5rPTBwUOmZEsDtbsTAKuysAAYYXZtvBc9vEGUrWPUpWzh0yBI14bCpRQIz12W22/1eyObiiNGydqTJzJFWo4ZF40ufJuUNyokX5ZHZAGjSOOwhATumRCTTvTBhbZE3a7tMVK+fnhrOH8exmhRj+LBZV8r2ufMQpiok29vYxxODcnkbfADXSDAhw3au2x0SP729HYUhp4vmhMlpFv36DoMoxRPVziGl0beIowcuJ1CkPr6qZlvGetbtLe05pE6BuTMJh6s/qtM/ehVosQjm4nc9f2pvbU8fxlhLZ34I5WMzLmoVgR5dfwyfGwHfsILRSx9RqwN0fhEivi3muIr7wphp9/Ln2gLKZhBB54AYjbMfoIMoiM6c5rcENKQv4YOxDTD4J499tKILwuI+Rcw/09fMiovSmcg+iBhD5m/OCCW4rSP1qOtc9ossTIhQ+C+NsHgUwkUuLXBdII4WUUgJw9zGp6+keNBzEHIhudevSjGwbcKrBZ7KoSdTv2fBTgvw/4fxaiPFxB7Ifh9XKRocQjI3PIEJRC7Pg2j1WEJmHkKuI+nRpjJ8J0XBG3XQcj+PWnOGkoPl15PgIcLVEBqFQ6SBnXFDKJqqg0CSREyAbwJssoQsEGqTm629s8IUicrjs7IM0QiAXrNge/YBE6zsWFaREixczdfZJlJF6RKzzsa+bAzV7OkuVBSBIbslR6kpph9CUgYzQJAzcWSEpWZWQQ2jF2cPw95CRJye8nIzO0Zgjb2IkuHd/PUMJOZD+EVEJOkVpGfpqOiavFO272KgVc2AAdR1uCz4lAwv+eUhIi7THQcdy+Er7UWQdNEtY+SNPY7N2ASD+HuTJvQORWe2i9+Vku8CFqnYP4T/hBgSZcVClDU8fBBUYFAi4Dn+tZexqFcztCMy/G0a1NWkybtBLP9DiZNQ19F0Uk770o2YKmIAk7f8ewILDBgmyj+aBgMJAulYEsJV0aiHcbW7oVCSOuJXxeGHGM/vQwuvQCJ7r9YhQxsgcCiVEsHHxVDqZUxno8cZNKMVUUWAqrDbFVnFMMLxo20rQkszJoaNBtjphCABZFwiY3rsVhJecvx2MByT87JJ8Qll8MzYrwfDhESxM2RCzddk09P98H0SePXPvJxCQ+91l8vijEHM/ri4WMJy6G2jkNNDGVBhcXWSmrrmI8q2eWsawnqVzjMpW+40WOEkzDqOjmBzyce3WPki6cG+SyAxC62Z/44dKVvMDDEqGN65SC0ianpScfifdTPisBREpBvMaQbz6lP8yYbv2oDU+2ONgfDoNv0R5SSuSC5IHQIOo1XCFXMM8GLlTeMDhqq1p8G2M0n2ASrbRbf1r3DfHNhBT+dF342n47UwNcB83DQIqQHzruYyYwvUFkqnyDtj2TTfYryzgXLUlBKC2cGankfmHOH+EyChyfTJKW2YSvSqfcZTEOF/9x/iJKf0tnPRlV14udSx/9xwHL9P4+sU0qDDHlabg+F0yacFIC0vcDyA2KYi8M7BlOwwyjGIMgbtOrsCls/RR/CLZAEH8T4B7YJdsZ3MMVclyQApB3BFAUEERZqK1qefRqAYkBNXDNQjFfK/MgN5vwAvaaICb2GFpyzWxaqjU2FfGftepSJxeLHLyB0kG8KEsJbd0PZ7Uc4KIAkAJE+pASzKxvk2ESLn2X3uVdouQYiT8EK3iCQetN4QeoOFcCuUUsbb3gjEFBkinyo8Qn1C5c3uYsNuvCe6OTpCR1B1eqvSmni+/FWFoGHo5BkqZkbyBJTuHiVxDleoyiG2+ChJLCxbUAUktFmYT4JjDDxYIHc63yPYoNo2V8mN1ofoOidjhfONy9RnrtqyridtKJyHAPkyUGyQXhV4G01vJOgfQ4I21tIj0/Jx1exnvF0iF7crwSWJteaPhIKiE3Y88xAH5ucuG8Rf5H8jBNwTNIhF95sysU47MkjRVxWz8xlWzTkchYCZnqImUiTVsPqC7eFZmuqrTPYm1Vc8NPASmnHXQ5up5Z4QnfW49Ou8mtNEtu8j27s29ljzq6obWtofE+LbTza9eLQFqAWBhOmvBlfOWCeFcYWWWVfC3rSAwdNJvgLLA0QxhShRkLot5KST4z1Va/JILCBelMnQWmxxnpPGbcA6tG8fz3dQ2AXoqTKQrBj1lQuJYkAc5l8CNWGndxPQOJbc+JpZJDEjeMJog+dNE0vyshux5iiB9OrmP6OIVDCqGzuJ4dHQ2Tm9ujI4XnEvpujph0W74kqn1p4aJGy6/pErW+LL1OiibbPxDASziwj4RrbVWbIdwejdVocpVFmBNNrhRxe5m0vfOdGrfHvCODu7srmpEO+XKwLxABpZFoTp6v70WTPEqGa2vrLBudu+korT1erBr9g32+xBJVtnPVd3ih1TLlDdKaXI3zYoOd0Iyj/BA+CTR2lkPPIWSWGez8LUIz9FnZ+lf91w+N5N9R/VdxqwBbPn0Fyv8S8PnJmc5QXnqawK+DqReBaOuHs9jGoZ3cepfUxU58TfMovy9JBhJqUlEGTuGa6Ke9wU6NI6QLs8VfJQk/ncBPVv2nvQE7/SNxm+qVdhVMSuBunkrp/ojDwI5x5AUzRdyGPz6Szidv3CTJiWZAeMTYmS8AaPFNVVoJa6TDBYockm26S0iZAhWErAbTJ4Jcb+2tk1hOfE3QgUQswbKCkUaQ7KEb5AMIejANozlVwPHXafsojp0ZSoSSRdRHGLlHIP6yge/Icyltc8O4VTW+dZcBdgRi9nmXB+cIRO7bbgrHEYjs025mPuHBPu5y1h6BmH/ZTU07ApF92s0sSClHnrubqZ0+tDx3leQId5Qs3nFxQc9A79ZfD1mJd8UoXtXJrFpeOAVS3AT4QaEAFesBX/649uaKNEB2fO0t7ORFK9uNPNLL5302qeyfkyPy0L1VxO381A6ktyD0EXZcBztH9L5boM30Igo/34LwiwDCFcaLo0ZDPnhVb73Yr7P/b8zZrIYXxNgJJuifzsKT2C5CaTVbstRsSU2Z5RyXal9jKjUktzVtlgSRmES6GpKICLbqk3C+WGJUx84s7nkxhnuYO4vtGPlogrfrdG24p1ubbcG89hbdxbJDAdOJGb4vvAbBE3Z2ds6bF/Ubx18iaDRAmDp+jIRsJgUqodwq3ChwOgqcf1hnal8vL5GPsE1b52BmT1CEvak3cTCyoxDT6P7bOo6BUO27qMJ35xeky+U9R5fL61hirCSGp8TwlDg8pRRPYQfuIXFl0Vd3Rb12d1dCspr2ncgLUDSM6GtbPS9Yfi4tU2GcrqZsoQxj2jCX3uAk/fL9fRUB/yLnOtX6u5zr3UHxzNgr9+I1dOP4I2dy7cxQhzVtY6NXsoO2BXfykbTijJECEMRl5Fe0JEC4ghCheOljRbwjfQH3HkhSC5PRWumMgtczcUCCdpJ2//WRaRYu8WKJFXGbBEUalcRtydUaUS0hKcYecykbqnEdkzeFSo+CIA7N4t41XrohYDeYAtOKdLl/fCQdbsL/j4/wyYnTUboQFvVc6w3THUPK8AXIcND8GqYUuqToLxekOzGSl4tLHl0kLlfoKUwhYAWxVXySbhUFcU9g5y3056yKwF6ZKZL3wk8oajsxl8B3YUy3lGRfen5EX5U+utgin31CfHTBEu7HkzCC5C3nXeIQMRMOXgzyYb25D07gghDJh819gTx0/DgEF029ALlk80NqQxiQ1ZMumrtJ2ymmb1h7MS2XOEx5JHJNb+75TuTf0l1Uq5kKarXqzf06DPEVij55MapiVGco1HMTWPZS4cDNcPxPzm2uQQofBOEnbnae1RUg7NWbCQQ3e/XmUxBgTuMRoCy+FPzUd6X0TncoqXtZMK1YkRbqblZJ9LhOWGRBsap/EG7Ik/Ss4IMg7NBVIlj6laWED7j1uVXvkVWVvFIwv/PwVbjEnRAXojRlTE8ukQtbceNDvdGYbRU2iY+0e3m5DPCyHnGMc7Grh63mLN4wP7WdT3VWxxlx/JenfKHAFAFJk74I659VKNjPj9LTF1PZ3qnVnhuZQrLN3uARXl/BRVNn6ePMA8+WXRfvGMSrOqvn8Vnr4RhJcPQdnJ+8xcr2RvlS9DUqFHqrgiyiGtGMtk2FEWFnp6TkIkI3XriMe99Q2UqZBaUrKXjlyWJwk9Ze0lLcFdE+/+2C1EbuHqcqOH9VtgXx7ibNgZx9dgdeLasatD9TZrlQ/iVh/HBaba7VN39NlJxfpB5eR/xmI8aPwjfDNjMqq8z9pY89NZpclWpzYqo3d2bICo/RaEk6u6RC1wB+/OMjbSHWZsM0Cud0aBIG2CHLtk54xHXQp9AuPjv3LurzMoezFukEghDTdNhNVcZXDt5NTl7Zk8cwq61HTcmk1GNVimwscl8qcBtk0KiokPOcUvbYMvYclZ5ZsJ5arPrjnqXb9D/q8Lio/toK9WRB2UYwKUmby8GT0E4T/7Fp/zi10x+eFBqwzRvptAdjpwL5KUGrsv9id1vfWfeVbFW8KTxUewF99mLMdh8zsuO4QpDT97ISFiG29wmzXdZG8qJA1oXBn9H5PdBncVooz18WOW4CSFG+MtObVW50JUCuE/z8c7YGZb9rJwoJ9HaqeqjErrb5oOVrTGTof9G2b2MXW61IdK5qNcd1T5Mjv0Hoop5zicr3XT31WOvZpmXogy53Rpe8t+CBIPIEAvzjH/8AQUx/QD8YdjSbEpgCvIH8F++tNz9Xv5fBDiAhCF0EPtEHChKSjXyEHPeWrDIxCvAuWZ2vvGBG9uqOu/4KSbFtY3eLrktmVEnAIaxrEdfrdSE/tKXnZpVWlpOigog4puLxale84xVZVVyMVnEraM9tdSM0D2/Qc9yLQFjT6RkefjwUjbLYRgYGr1yJaPcbKVcW+yjl/n90S1WriIgT35mVguGkp3YfjgWOYs0iMvZ4Wyg1bwV90CjJ2AQtT7P7lyhSkvEYRb6BHkV//vhW6400w9SGJ7X/CwAA//+ee/h8tFEAAA== @@ -25,7 +25,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -62,7 +62,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/CustomizedImageKata/line28.sh b/pkg/agent/testdata/CustomizedImageKata/line28.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/CustomizedImageKata/line28.sh +++ b/pkg/agent/testdata/CustomizedImageKata/line28.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/CustomizedImageKata/line65.sh b/pkg/agent/testdata/CustomizedImageKata/line65.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/CustomizedImageKata/line65.sh +++ b/pkg/agent/testdata/CustomizedImageKata/line65.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/CustomizedImageKata/line9.sh b/pkg/agent/testdata/CustomizedImageKata/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/CustomizedImageKata/line9.sh +++ b/pkg/agent/testdata/CustomizedImageKata/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/MarinerV2+CustomCloud/CustomData b/pkg/agent/testdata/MarinerV2+CustomCloud/CustomData index 58bac65d80d..2714a0bcce6 100644 --- a/pkg/agent/testdata/MarinerV2+CustomCloud/CustomData +++ b/pkg/agent/testdata/MarinerV2+CustomCloud/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/9xcfVujSLb/P5/iDMOMOiNJiLbt2EvvYII217xdIPb0tV0eDJXISCANhd2u5n72+1RRQEGIre3s3Nl1n342oU6dl995qVNVZL7/rnXlBa0rJ75uaIZhmx9MSxt0rb5tWqph2Seq3lf2gY51+6NJz9aHumVb+kAbTSzlVTpyovc1+71qdd/lIwfpyLtRv2e/V/v6cPKbeqoNLeV1OmBofU01tRqCw5RAHVu2PjQttd/Pmf6SDvVG3TPNWBvttEvDvdH7YX+k9opxuTR+pn2ooemUaIgShC4f3isNcxh1GEiD0fEHOq2vmwVOHQbUwLRPx6cbRB9wHNZsY7B1R0NL1Yea0VsnYcAZk2F3fZBBd3ZoEoKhPjzNx/baxdiaVnsMtLPJsUbCYjiy7JPRZNhT9hhU+uC0ZtpeMa2vWTxSe/tlLw5O7fGEU3Xv1ZqpXauO7mCdztCJjuukm9GjocsZdbhGea4Zpj4a2vrwXO3rPWWPQdkd6ut278u5o8fGqGf3tOMaos460fjs1FZ7PZZwDL2RoXIu0QxjZCj7DJ40UzlD6MTDLIZ6Y2N0rLGnTOPRxDomVhLrhunQK8736li3Tc041wyeQK4l6A1Nuz8anU3GjKxTS6b+z8TQ1omz4FAttT4XDtocRTUJD2RusBroB0yR83e9qm8P1gNrTfDrNpdE66NMcndiWqOBbWqq0X1n90YDVR+aqW2HjMHpeLI+/3CPGzR0Ell8Zhzurw9X7Tt8xdFo53pXs8f9yak+LDE6KIj04cnINkYDuzsyjMnY0nrKIUsH8/S3jXJ+aa/TcBJ+kYsq3VP1fuGdX7j6PRn3VEsrhrLMMTUS+Oc6zSuza+hji/rJ0NRewUlutzkhpJxOxqeG2tM4Ck6N8cQ4ZQEvtzt5kpCCYGjEDYrcZvh3ddNWTVM/HdrGaGTZ4/eKLMtrYzR+xpox0E2iqSLLjO1YpaWrOxp/oESKLPOcx+P+B3usmub7kUGT7UQ/VWS5krj5GjJiaSHLWUVLy9ha+Mjy6xLBaKwZqkUwTEuDLGfVyzJqBn+BRgoWTUrTUrtn9qlm2aoxsK3RmTZU5GwJrZIMNev9yDhjtkxSxoqcrahVcnNyPNQse2xoJ/pvikwW1Twpjyd6P6tlMlkXU1Deq2O7a2gkXFIwslWJH9GH5uTkRO/q2pBGxJltjtWupshklaLUltbXxiPD6pXKpiJnda4YzwI+Hc4MMSz9RO2S9crQ1AFZJTM+ipzVuBoixkyRSWlLGx/LGpMg/+2D3VUJbueaYSlyVthYZpAhzbBMRT7ImxOmtql1CahW37SPRyPLtAx1nC+n2m9aN8v7PDoOMgf3dPNY7Wu2PrbU475mKjIpa2nNNCamRTisB1dW3Hq6SWbZpvlOkV9nEW/oA9X4YA/1rq2PuaIqv2aRrw9NzbBsfdAzbUMzLRKiJPqMCdFkaI3sgTo87Ws21UmRX+8/dd6J3rc0I5/H0qhHgNA2zDshBa8i7+Cp8yryXnPBa2jEF7ah/fdEN7Se0slK1HBEi4J6qpkMmE5Wm8yhOjbfjfJqyDeN7SwzxoZ+TgbJ+klaARKVnaxckYd8uHba+1na5O36QDXPGFM21jW0nja0dLWfFttebU/czjKQtDPVVqfTPoBGo2hFaFNFtGHav4bKGHlOUCWrvy0rnfZhlYJbfN+r5kDptH95lMme0pHbj1LsK52sdm+geKV05AwV1odkQZ73p5pxThKZZKN+oneJL4yRlRZQSz1VOvJeo+HNYOYFLrQQnoKE75YIZrs+SIGzQCD8JEXIR06MBJCWkRdgkD4lHobO25aLbltB4vvwAPMILUH6BFvNrTeAr1HQAAAYmYq4HYcRBimi7Fs5NzLH+XwDWwsHT6+3xfYutP6xrffsvn6mKdvTMEJhvPOg95Tt5k87O2JrF5wduIdUBRwmyyWKtp2LziU4F3uXO28AffEwrLZ2mOTM7c/UIA+WZwuGB8ARSC5sCVs7DeTHiGqCptchCBXRQYhhFiaBKzRmXqMxOZ4MrYk9Mu2hOtAUIf0uNAaqQYKqGGAPihHaLVaHyUOhQZcvugMtCIpnQoPtfZRWEkctP5w6Pt003yRXaIr9RrqQp6PkuRtOb1DUQF+WBE3aqJ0rgnhftHUZ4kfKSijRaabFSwluPddzmIDcTXJT3mvKkpzNHJ7rPV3NWOsD9VSzzXdqJjJ/wEurm0PCPFPzfCWJ9xsYr3HhDLM+jLWKreTRV0QrwmIaNRfeNArjcIab03DRcm5i8k+aL5NClQrbginpeNJuNy2T3UFPEaYkygK4OYybXghREoBEEvPW89EcuSBJ0QIkKUBYug5jDJL02cPXUhDD0nOPWssonLbkVhC3lh4hXoQJCeu7JVKuvMDdjaOp0gqXuDVfJrtujJXWIki/hEvshUGsRITusZnOlBIWs7MHJQ65kSwO1uxMA67OwABhhdm29Fz28RYytY8ylfOHTIEjXhsKlNAgPXZX7b7T7J5uKK1bJ2pNnek1ajlkXjS99m5R3GqQflkdkgaNI47CEBO6dEJDO9eGFtkTnp7SFivj54fzlvPPJEKtQR4LKvne1L5gFMREm2Y3iXG4MKeRt8QtdIsCHLca3YnRJ/vb8cRSWnixbE2TyLdvUXQVxqgZJrhB1waeIoyceJ3C0E510zI+sFY3be9pTSL0rWkYzLx5885Z+NBoRAhHd9OFa3sze+Z4fhKh7R24p9WMjHkoVkT5DXx2PGzHPkJLRey8AewtUJhgRdx7A/G1N8Pw44+VD5TFLIzAAy8AcTtGn0AGkTHdeQNuSEnIH2MHYvZBEO9/XQmE11WEnBt4eICPObU3gwsQPZDQp5wfXHJLUfZHy7H2BU0TjFz4KIi/fhTIRCIlflMijRBOogDk/GFe07M/ajyIBRD56MyjH90w4FaBzWJXtajbseejAP/ngP9HIcrDFcR+GN4kyxwlHhmZQ4agFGLHt3msIjQNI1cR9+nUGDsRpuOKuO06GMHPP8RpQ/H52vMR4ChBJaAy6SDlXDPIJKqi0iaQECEbwJsmUYSCDVILdLe3eUKQOF13dkCaIxBL1m0OfsEidJyLS9MiRIqZu/ssy0i8Ild43NfMgZu9nCfLo5CkNuSp9Cw1w+hrQMZoGgZuLJCUrMvIILRj7OD4r5CTJCX/OhmZozVH2MZOdOX4fo4SdiL7MaRScopUEvlZOqauFu+52asMcGEDdBxtBT4nAgn/c0ZJiLSnQMdx+0b4MmcdtElY+yDNYrN/CyL9HBbKvAWRW+2h8/ZHucSHqHUB4t/hOwXacFmnDE0dB5cYlQi4DHypZ+1ZFC7sCM29GEd3NmkxbdJKvNDjZNYs9F0Ukbz3onQLmoEk7PwnhgWBDZZkG80HBYOBdKkMZCnt0kC839jSrUgYcS3hy8KIY/SHh9GVFzjR3VejiJE9EkiMYung62owZTLW44mbVImpssBKWG2IrfKccnjRsJFmFZm1QUODbnPElAKwLBI2uXEtDms5fz0eS0j+0SH5jLD8amjWhOfjIVqZsCFi6bZr5vnFPog+eeLaTyam8bnP4vNVKeZ4Xl8tZDxxOdQuaKCJmTS4vMxLWX0V41m9sIzlPUntGper9Bde5CjBLIzKbn7Ew4VX9yjp0rlFLjsAoZv9qR8mruQFHpYIbdykFJQ2PS09+US8n/FZCSBSCuI1hnz7Of1hznTre210ssXB/ngY/BntIaVELkgeCC2iXssVCgWLbOBC5S2Do7FqxHcxRospJtFKu/Xndd8Q305J4c/WhW/tt3M1wHXQIgykCPmh4z5lAtMbRKbKn9C257LJfiWJC9GSFITS0pmTSu6X5vweJlHg+GSSlOQTvimdCpfFOFz+2/mLKP1nOuvZqLpe7Fz56N8OWKb3XxPbtMIQU56H60vBpAknpSD9dQC5RVHshYE9x1mYYRRjEMRtehU2g60f4o/BFgjirwI8ALtkO4cHuEaOC1IA8o4AigKCKAuNVaOIXi0gMaAGrlkq5mtlHuR2G17BXhvE1B5DS6+ZTUu1JqYi/r1RX+rkcpGDt1A5iBdlKaVt+uG8UQBcFgBSgEgfUoGZ9W0yTMPEd+ld3hVKj5H4Q7CSJxi03gy+g5pzJZA7xNLOK84YFKSZIj9JfErtwtVdwWKzLrw3emlKUndwpdqbcbr4XoylJPBwDJI0I3sDSXJKF7+CKDdjFN16UyRUFC6vBZBZKsokxDeBGS6XPJhrle9JbBgt48PsRotbFHXDxdLh7jWya19VEbfTTkSGB5gmGCQXhJ8F0lrLOyXS45y0s4n04oJ0eDnvFUuH/MnxSmBteqnhI6mE3Jw9xwD4uemF8xb5H8nDLAXPIRV+7c2vUYzP0zRWxG39xFTyTUcqYyXkqouUiTTrPKK6eF9muqrTPo+1VcMNPweknPbQ1fhmboUnfG89PjtNb6VZcpPv+Z19J3/U0w2ta42MD1mhXdy4XgTSEsTScNqEJ/G1C+J9aWSVV/K1rCMxdNBug7PE0hxhyBRmLIh6KyX9zFRb/ZQKCpekM3WWmB5nZPOYcY+sGuXz3zcNAHopTqYoBD9mQelakgQ4l8FPWGnc5c0cJLY9J5ZKDkncMJoi+tBFs+KuhOx6iCF+OL2J6eMMDimE3vJmfnQ0Sm9uj44UnkvouwVi0l31kqjxtYWLGi2/oUvU+rL0Ji2abP9AAK/gwD4Sro1VY45wdzxRo+l1HmFONL1WxO0kbXsXOw1uj3lPBnd3VzQjHfLlYF8gAioj0YI8X9+LpnmUDjfW1lk2unCzUVp7vFg1Bgf7fIklqmwXqu/wQutlyhuktbka58UGO6GZRMUhfBpo7CyHnkPILDPY+VuE5uiLsvWP5s8fW+m/o+bP4lYJtmL6CpT/JeDzk3Odobr0tIFfBzMvAtHWD+exjUM7vfWuqIud+IbmUXFfkg6k1KSiDJ3SNdEPe8OdBkdIF2aLv0oSfjiBH6zmD3tDdvpH4jbTK+sqmJTA3TyV0v0eh4Ed48gL5oq4Db9/Ip1P0bhJkhPNgfCIsbNYAtDim6m0EtZIR0sUOSTbdJeQMgVqCFkNpk8EudnZWyexnPiGoAOpWIJlDSONINlHt8gHEPRgFkYLqoDjr9MOUBw7c5QKJYuojzByj0D8aQPfsedS2vaGcatufOs+B+wIxPzzLg/OEYjct90MjiMQ2afd3HzCg33c5aw9ArH4spuZdgQi+7SbW5BRjj13N1c7e2h57irNEe4oWbzn4oKegd6vvx6yEu/LUbxqklmNonAKpLgJ8J1CASrXA778ce3NNWmA7PjGW9rpi1a2G3mkly/6bFLZv6RH5KF7p4jbxakdSO9AGCDsuA52juh9t0Cb6WUUfrkD4ScBhGuMl0etlnzwS7Pzar/J/r+1YLNaXhBjJ5iivztLT2K7CKXT7shSuyO1ZZZzXKp9i6nUkMLWrFkSRGIS6WpIIiLYak7DxTLBqImdedz3YgwPsHCW2zHy0RRvN+na8EC3NtuCeeMtT5dJjwKmEzN8X3gDgifs7OxctC+bt46fIGi1QJg5foyEfCYFKqXcKt0ocDoKnH9YZ2rfJFfIR9imrXMwt6cowt7MmzoY2VGIaXT/xzqOgVDvu6jGdxeXpMvlPUeXy5tYYqwkhqfE8JQ4PKUMT2EHHiB1Za2vGC8hXUkHTuQFKBpF9JWtvhckXypLVBhnKylbJMOYNsuVtzdJr/zwUEfAv8S5TrX+Hud6Z1A+L/aqfXgD3Tr+2JneOHPUYw3bxOhX7KAtwb18JK04Y6QABDGJ/Jp2BAhXECIUJz5WxHvSE3DvgKR1MB1tVM4neD1T8FO005T7r09MszDBywQr4jYJiCwiicvSazWiWkpSjjvmTjbU4Lolbwa1HgVBHJnlfWucuCFgN5gB04p0uL9/It1tyv/3T/DZibNRugiW9VzrC7PdQsbwFchw0P4WphS6tOAnS9KZGOmLxRWPLlOXK/QEphSwgtgpP8m2iYK4J7CzFvpTVkVgr8uUyfvhZxR1nZhL3vswpttJsie9OKKvSR9dbpHPPiE+umTJ9v1JGEH6hvMucYiYCwcvBvmw2d4HJ3BBiOTD9r5AHjp+HIKLZl6AXLLxIXUhDMjKSRfM3bTlFLO3q72YlkocZjxSuaa38Hwn8u/oDqrTzgR1Os32fhNG+BpFn70Y1TFqMhSahQkse6lw4GY4/mfnrtAggw+C8DM3u8jqGhD2mu0Ugtu9Zvs5CDCn8QhQFl8Lfuq7Snpnu5PMvSyYVqxAC003ryR63CQs8qBYNT8Kt+RJdk7wURB26AoRJH5tKeEDbn1u3TtkdSWvEszvPXwdJrgX4lKUZozpqSVyYStufWy2WvOt0gbxiXYnV0mAk2bEMS7Erh63mrN4w/zMdj7VWR1nxPG/POVLBaYMSJb0ZVj/qELBfnqUnbyYyvZOo/HSyBTSLfYGj/D6Ci6aOYmPcw+8WHZTvGcQr5qsnsfnncdjJMXRd3Bx6hYr2xvlS9G3qFDqq0qyiGpEM9oylUaEnZ2KkssI3XphEvf/RGVrZZaUrqXglSeLwW1We0lLcV9G++LXS1IbuTucuuD8WdkWxPvbLAcK9vn9d72setD+SJnVQvkvCePH02pzrb7910TJxWXm4XXEbzdi/CR8c2xzo/LKPEh87KnR9LpSm1NTvYUzR1Z4jMYJ6ezSCt0A+P73T7SFWJsNsyhc0KFpGGCHLNs64RE3QZ9Bt/zswrtsLqoczjukEwhCTNNhN1MZXzt4Nz11ZU+ewqyxHjUVkzKP1Smysch9rcBtkEGjokbOS0rZU8vYS1R6YcF6brEaTPqWbtP/oMPTovpbK9SzBeUbwbQkbS4Hz0I7S/ynpv3T1M5+dFJqwDZvpLMejJ0KFKcEndr+i91r/cW6r3Sr4s3gsdoL6IsXY7b7mJMdxzWCgr6fl7AIsb1PmO+yNpKXBbIuDP6Izu+RPovTQnn5sshxE0CKipWZ3qpyoysBCp3gxx/zNSj/TTtRSKA3U/VDFXaNzQct32IiQ/+rtv05drHVikTnqtFwXPcsPe4bhi7qO1eoetfVV4+1vm1ahj485c7o0ncWPBBEnkCAv/3tbyCI2Y/nh6OeZlMCU4C3UPzavfP2x/p3MtjhIwShi8An+kBJQrqRj5Dj3pFVJkYB3iWr87UXzMle3XHXXx8pt23sXtF1yYw6CTiEdS3iZrMpFAe29Nys1spqUtQQEcfUPF7tive8IquaS9E6biXtua1uhBbhLXqJexEIazq9wMNPh6JVFdvKweCVqxDt/knKVcU+Sbn/H90y1dKI+P6d1h9rhqmNThr/FwAA//+Ej9uW4E8AAA== + H4sIAAAAAAAC/9xcfXubRrb/X5/ilNLabo0kZMdxnCVbLGGFa71dQE5zHS8PFiOZGoECIydeW/ez32eGAQaEHDtuc7P1PnlWYs6cl995mTMzqD/+0Lj0gsalE1/VNMOwzfempfXbVs82LdWw7BNV7yn7QMfaveG4Y+sD3bItva8Nx5byIhk50Xua/U612m+zkYNk5O2w17HfqT19MP5d7WoDS3mZDBhaT1NNrYLgMCFQR5atD0xL7fUypq+Soc6wfaoZa6OtZmG4M3w36A3VTj4uF8ZPtfcVNK0CDVGC0GXDe4VhDqMWA6k/PH5Pp/V0M8epxYDqm3Z31N0g+oDjsGYbg609HFiqPtCMzjoJA84YD9rrgwy600OTEAz0QTcb22vmY2ta7THQTsfHGgmLwdCyT4bjQUfZY1Dp/W7FtL18Wk+zeKT29ote7Hft0ZhTde/Fmqltq4ruYJ3O0ImO66Sb0aOhyxl1uEZ5phmmPhzY+uBM7ekdZY9B2R7o63bvy5mjR8awY3e04wqi1jrR6LRrq50OSziG3tBQOZdohjE0lH0GT5KpnCF04mEaQ52RMTzW2FOm8XBsHRMriXWDZOgF53t1pNumZpxpBk8gVxJ0BqbdGw5PxyNG1qokU/9nbGjrxGlwqJZanQsHTY6inIQHMjdYDvQDpsjZ207ZtwfrgbUm+GWTS6L1USa5PTatYd82NdVov7U7w76qD8zEtkPGoDsar88/3OMGDZ1EFp8Zh/vrw2X7Dl9wNNqZ3tbsUW/c1QcFRgc5kT44GdrGsG+3h4YxHllaRzlk6WB2f98o51VznYaT8ErOq3RH1Xu5d15x9Xs86qiWlg+lmWNqJPDPdJpXZtvQRxb1k6GpnZyT3GxyQkg5HY+6htrROApOjdHY6LKAl5utLElIQTA04gZFbjL827ppq6apdwe2MRxa9uidIsvy2hiNn5Fm9HWTaKrIMmM7Umnpag9H7ymRIss859Go994eqab5bmjQZDvRu4oslxI3W0OGLC1kOa1oSRlbCx9ZflkgGI40Q7UIhklpkOW0ellGxeArqCVg0aQ0LbV9anc1y1aNvm0NT7WBIqdLaJlkoFnvhsYps2WcMFbkdEUtk5vj44Fm2SNDO9F/V2SyqGZJeTzWe2ktk8m6mIDyTh3ZbUMj4ZKAka5K/Ig+MMcnJ3pb1wY0Ik5tc6S2NUUmqxSltrSeNhoaVqdQNhU5rXP5eBrwyXBqiGHpJ2qbrFeGpvbJKpnyUeS0xlUQMWaKTEpb0vhY1ogE+e/v7bZKcDvTDEuR08LGMoMMaYZlKvJB1pwwtU2tTUC1eqZ9PBxapmWoo2w51X7X2mneZ9FxkDq4o5vHak+z9ZGlHvc0U5FJWUtqpjE2LcJhPbjS4tbRTTLLNs23ivwyjXhD76vGe3ugt219xBVV+SWLfH1gaoZl6/2OaRuaaZEQJdFnjIkmA2to99VBt6fZVCdFfrn/2Hknes/SjGweS6MOAULbMO+EFLySvIPHzivJe8kFr6ERX9iG9t9j3dA6SistUYMhLQpqVzMZMK20NpkDdWS+HWbVkG8am2lmjAz9jAyS9ZO0AiQqW2m5Ig/5cG0199O0ydr1vmqeMqZsrG1oHW1g6WovKbadyp64mWYgaWfKrU6reQC1Wt6K0KaKaMO0fwmlMfKcoEpWf1tWWs3DMgW3+L5Tzb7Sar56kMme0pKbD1LsK620dm+geKG05BQV1oekQZ71p5pxRhKZZKN+oreJL4yhlRRQS+0qLXmvVvOmMPUCFxoIT0DCtwsE010fpMCZIxB+kSLkIydGAkiLyAswSB+XHobWm4aLbhrB0vfhHmYRWoD0EbbqW68BX6GgBgAwNBVxOw4jDFJE2TcybmSO8+katuYOnlxti81daPxrW+/YPf1UU7YnYYTCeOde7yjb9V92dsTGLjg7cAeJCjhcLhYo2nbOWxfgnO9d7LwG9NnDsNraYZJTtz9RgyxYniwY7gFHILmwJWzt1JAfI6oJmlyFIJREByGGabgMXKE29Wq18fF4YI3toWkP1L6mCMl3odZXDRJU+QB7kI/QbrE8TB4KNbp80R1oTpA/E2ps76M0lnHU8MOJ49NN8/XyEk2wX0sW8mSUPHfDyTWKaujzgqBJG7UzRRDv8rYuRfxIWQkFOs20eCnBjed6DhOQuUmuy3t1WZLTmYMzvaOrKWu9r3Y123yrpiKzB7y0qjkkzFM1z1aSeLeB8RoXzjDr/Ugr2UoefUG0IswnUX3uTaIwDqe4PgnnDec6Jv+k2WKZq1JimzMlHU/S7SZlst3vKMKERFkA14dx3QshWgYgkcS88Xw0Qy5IUjQHSQoQlq7CGIMkffLwlRTEsPDco8YiCicNuRHEjYVHiOfhkoT17QIpl17g7sbRRGmEC9yYLZa7boyVxjxIvoQL7IVBrESE7qGZzoQS5rPTBwUOmZEsDtbsTAKuysAAYYXZtvBc9vEGUrWPUpWzh0yBI14bCpRQIz12W22/1eyObiiNGydqTJzJFWo4ZF40ufJuUNyokX5ZHZAGjSOOwhATumRCTTvTBhbZE3a7tMVK+fnhrOH8exmhRj+LBZV8r2ufMQpiok29vYxxODcnkbfADXSDAhw3au2x0SP729HYUhp4vmhMlpFv36DoMoxRPVziGl0beIowcuJ1CkPr6qZlvGetbtLe05pE6BuTMJh6s/qtM/ehVosQjm4nc9f2pvbU8fxlhLZ34I5WMzLmoVgR5dfwyfGwHfsILRSx9RqwN0fhEivi3muIr7wphp9/Ln2gLKZhBB54AYjbMfoIMoiM6c5rcENKQv4YOxDTD4J499tKILwuI+Rcw/09fMiovSmcg+iBhD5m/OCCW4rSP1qOtc9ossTIhQ+C+NsHgUwkUuLXBdII4WUUgJw9zGp6+keNBzEHIhudevSjGwbcKrBZ7KoSdTv2fBTgvw/4fxaiPFxB7Ifh9XKRocQjI3PIEJRC7Pg2j1WEJmHkKuI+nRpjJ8J0XBG3XQcj+PWnOGkoPl15PgIcLVEBqFQ6SBnXFDKJqqg0CSREyAbwJssoQsEGqTm629s8IUicrjs7IM0QiAXrNge/YBE6zsWFaREixczdfZJlJF6RKzzsa+bAzV7OkuVBSBIbslR6kpph9CUgYzQJAzcWSEpWZWQQ2jF2cPw95CRJye8nIzO0Zgjb2IkuHd/PUMJOZD+EVEJOkVpGfpqOiavFO272KgVc2AAdR1uCz4lAwv+eUhIi7THQcdy+Er7UWQdNEtY+SNPY7N2ASD+HuTJvQORWe2i9+Vku8CFqnYP4T/hBgSZcVClDU8fBBUYFAi4Dn+tZexqFcztCMy/G0a1NWkybtBLP9DiZNQ19F0Uk770o2YKmIAk7f8ewILDBgmyj+aBgMJAulYEsJV0aiHcbW7oVCSOuJXxeGHGM/vQwuvQCJ7r9YhQxsgcCiVEsHHxVDqZUxno8cZNKMVUUWAqrDbFVnFMMLxo20rQkszJoaNBtjphCABZFwiY3rsVhJecvx2MByT87JJ8Qll8MzYrwfDhESxM2RCzddk09P98H0SePXPvJxCQ+91l8vijEHM/ri4WMJy6G2jkNNDGVBhcXWSmrrmI8q2eWsawnqVzjMpW+40WOEkzDqOjmBzyce3WPki6cG+SyAxC62Z/44dKVvMDDEqGN65SC0ianpScfifdTPisBREpBvMaQbz6lP8yYbv2oDU+2ONgfDoNv0R5SSuSC5IHQIOo1XCFXMM8GLlTeMDhqq1p8G2M0n2ASrbRbf1r3DfHNhBT+dF342n47UwNcB83DQIqQHzruYyYwvUFkqnyDtj2TTfYryzgXLUlBKC2cGankfmHOH+EyChyfTJKW2YSvSqfcZTEOF/9x/iJKf0tnPRlV14udSx/9xwHL9P4+sU0qDDHlabg+F0yacFIC0vcDyA2KYi8M7BlOwwyjGIMgbtOrsCls/RR/CLZAEH8T4B7YJdsZ3MMVclyQApB3BFAUEERZqK1qefRqAYkBNXDNQjFfK/MgN5vwAvaaICb2GFpyzWxaqjU2FfGftepSJxeLHLyB0kG8KEsJbd0PZ7Uc4KIAkAJE+pASzKxvk2ESLn2X3uVdouQYiT8EK3iCQetN4QeoOFcCuUUsbb3gjEFBkinyo8Qn1C5c3uYsNuvCe6OTpCR1B1eqvSmni+/FWFoGHo5BkqZkbyBJTuHiVxDleoyiG2+ChJLCxbUAUktFmYT4JjDDxYIHc63yPYoNo2V8mN1ofoOidjhfONy9RnrtqyridtKJyHAPkyUGyQXhV4G01vJOgfQ4I21tIj0/Jx1exnvF0iF7crwSWJteaPhIKiE3Y88xAH5ucuG8Rf5H8jBNwTNIhF95sysU47MkjRVxWz8xlWzTkchYCZnqImUiTVsPqC7eFZmuqrTPYm1Vc8NPASmnHXQ5up5Z4QnfW49Ou8mtNEtu8j27s29ljzq6obWtofE+LbTza9eLQFqAWBhOmvBlfOWCeFcYWWWVfC3rSAwdNJvgLLA0QxhShRkLot5KST4z1Va/JILCBelMnQWmxxnpPGbcA6tG8fz3dQ2AXoqTKQrBj1lQuJYkAc5l8CNWGndxPQOJbc+JpZJDEjeMJog+dNE0vyshux5iiB9OrmP6OIVDCqGzuJ4dHQ2Tm9ujI4XnEvpujph0W74kqn1p4aJGy6/pErW+LL1OiibbPxDASziwj4RrbVWbIdwejdVocpVFmBNNrhRxe5m0vfOdGrfHvCODu7srmpEO+XKwLxABpZFoTp6v70WTPEqGa2vrLBudu+korT1erBr9g32+xBJVtnPVd3ih1TLlDdKaXI3zYoOd0Iyj/BA+CTR2lkPPIWSWGez8LUIz9FnZ+lf91w+N5N9R/VdxqwBbPn0Fyv8S8PnJmc5QXnqawK+DqReBaOuHs9jGoZ3cepfUxU58TfMovy9JBhJqUlEGTuGa6Ke9wU6NI6QLs8VfJQk/ncBPVv2nvQE7/SNxm+qVdhVMSuBunkrp/ojDwI5x5AUzRdyGPz6Szidv3CTJiWZAeMTYmS8AaPFNVVoJa6TDBYockm26S0iZAhWErAbTJ4Jcb+2tk1hOfE3QgUQswbKCkUaQ7KEb5AMIejANozlVwPHXafsojp0ZSoSSRdRHGLlHIP6yge/Icyltc8O4VTW+dZcBdgRi9nmXB+cIRO7bbgrHEYjs025mPuHBPu5y1h6BmH/ZTU07ApF92s0sSClHnrubqZ0+tDx3leQId5Qs3nFxQc9A79ZfD1mJd8UoXtXJrFpeOAVS3AT4QaEAFesBX/649uaKNEB2fO0t7ORFK9uNPNLL5302qeyfkyPy0L1VxO381A6ktyD0EXZcBztH9L5boM30Igo/34LwiwDCFcaLo0ZDPnhVb73Yr7P/b8zZrIYXxNgJJuifzsKT2C5CaTVbstRsSU2Z5RyXal9jKjUktzVtlgSRmES6GpKICLbqk3C+WGJUx84s7nkxhnuYO4vtGPlogrfrdG24p1ubbcG89hbdxbJDAdOJGb4vvAbBE3Z2ds6bF/Ubx18iaDRAmDp+jIRsJgUqodwq3ChwOgqcf1hnal8vL5GPsE1b52BmT1CEvak3cTCyoxDT6P7bOo6BUO27qMJ35xeky+U9R5fL61hirCSGp8TwlDg8pRRPYQfuIXFl0Vd3Rb12d1dCspr2ncgLUDSM6GtbPS9Yfi4tU2GcrqZsoQxj2jCX3uAk/fL9fRUB/yLnOtX6u5zr3UHxzNgr9+I1dOP4I2dy7cxQhzVtY6NXsoO2BXfykbTijJECEMRl5Fe0JEC4ghCheOljRbwjfQH3HkhSC5PRWumMgtczcUCCdpJ2//WRaRYu8WKJFXGbBEUalcRtydUaUS0hKcYecykbqnEdkzeFSo+CIA7N4t41XrohYDeYAtOKdLl/fCQdbsL/j4/wyYnTUboQFvVc6w3THUPK8AXIcND8GqYUuqToLxekOzGSl4tLHl0kLlfoKUwhYAWxVXySbhUFcU9g5y3056yKwF6ZKZL3wk8oajsxl8B3YUy3lGRfen5EX5U+utgin31CfHTBEu7HkzCC5C3nXeIQMRMOXgzyYb25D07gghDJh819gTx0/DgEF029ALlk80NqQxiQ1ZMumrtJ2ymmb1h7MS2XOEx5JHJNb+75TuTf0l1Uq5kKarXqzf06DPEVij55MapiVGco1HMTWPZS4cDNcPxPzm2uQQofBOEnbnae1RUg7NWbCQQ3e/XmUxBgTuMRoCy+FPzUd6X0TncoqXtZMK1YkRbqblZJ9LhOWGRBsap/EG7Ik/Ss4IMg7NBVIlj6laWED7j1uVXvkVWVvFIwv/PwVbjEnRAXojRlTE8ukQtbceNDvdGYbRU2iY+0e3m5DPCyHnGMc7Grh63mLN4wP7WdT3VWxxlx/JenfKHAFAFJk74I659VKNjPj9LTF1PZ3qnVnhuZQrLN3uARXl/BRVNn6ePMA8+WXRfvGMSrOqvn8Vnr4RhJcPQdnJ+8xcr2RvlS9DUqFHqrgiyiGtGMtk2FEWFnp6TkIkI3XriMe99Q2UqZBaUrKXjlyWJwk9Ze0lLcFdE+/+2C1EbuHqcqOH9VtgXx7ibNgZx9dgdeLasatD9TZrlQ/iVh/HBaba7VN39NlJxfpB5eR/xmI8aPwjfDNjMqq8z9pY89NZpclWpzYqo3d2bICo/RaEk6u6RC1wB+/OMjbSHWZsM0Cud0aBIG2CHLtk54xHXQp9AuPjv3LurzMoezFukEghDTdNhNVcZXDt5NTl7Zk8cwq61HTcmk1GNVimwscl8qcBtk0KiokPOcUvbYMvYclZ5ZsJ5arPrjnqXb9D/q8Lio/toK9WRB2UYwKUmby8GT0E4T/7Fp/zi10x+eFBqwzRvptAdjpwL5KUGrsv9id1vfWfeVbFW8KTxUewF99mLMdh8zsuO4QpDT97ISFiG29wmzXdZG8qJA1oXBn9H5PdBncVooz18WOW4CSFG+MtObVW50JUCuE/z8c7YGZb9rJwoJ9HaqeqjErrb5oOVrTGTof9G2b2MXW61IdK5qNcd1T5Mjv0Hoop5zicr3XT31WOvZpmXogy53Rpe8t+CBIPIEAvzjH/8AQUx/QD8YdjSbEpgCvIH8F++tNz9Xv5fBDiAhCF0EPtEHChKSjXyEHPeWrDIxCvAuWZ2vvGBG9uqOu/4KSbFtY3eLrktmVEnAIaxrEdfrdSE/tKXnZpVWlpOigog4puLxale84xVZVVyMVnEraM9tdSM0D2/Qc9yLQFjT6RkefjwUjbLYRgYGr1yJaPcbKVcW+yjl/n90S1WriIgT35mVguGkp3YfjgWOYs0iMvZ4Wyg1bwV90CjJ2AQtT7P7lyhSkvEYRb6BHkV//vhW6400w9SGJ7X/CwAA//+ee/h8tFEAAA== @@ -29,7 +29,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -65,7 +65,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/MarinerV2+CustomCloud/line32.sh b/pkg/agent/testdata/MarinerV2+CustomCloud/line32.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/MarinerV2+CustomCloud/line32.sh +++ b/pkg/agent/testdata/MarinerV2+CustomCloud/line32.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/MarinerV2+CustomCloud/line68.sh b/pkg/agent/testdata/MarinerV2+CustomCloud/line68.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/MarinerV2+CustomCloud/line68.sh +++ b/pkg/agent/testdata/MarinerV2+CustomCloud/line68.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/MarinerV2+CustomCloud/line9.sh b/pkg/agent/testdata/MarinerV2+CustomCloud/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/MarinerV2+CustomCloud/line9.sh +++ b/pkg/agent/testdata/MarinerV2+CustomCloud/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/MarinerV2+Kata/CustomData b/pkg/agent/testdata/MarinerV2+Kata/CustomData index 5f207d491ed..abb05802772 100644 --- a/pkg/agent/testdata/MarinerV2+Kata/CustomData +++ b/pkg/agent/testdata/MarinerV2+Kata/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -29,7 +29,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -65,7 +65,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/MarinerV2+Kata/line32.sh b/pkg/agent/testdata/MarinerV2+Kata/line32.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/MarinerV2+Kata/line32.sh +++ b/pkg/agent/testdata/MarinerV2+Kata/line32.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/MarinerV2+Kata/line68.sh b/pkg/agent/testdata/MarinerV2+Kata/line68.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/MarinerV2+Kata/line68.sh +++ b/pkg/agent/testdata/MarinerV2+Kata/line68.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/MarinerV2+Kata/line9.sh b/pkg/agent/testdata/MarinerV2+Kata/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/MarinerV2+Kata/line9.sh +++ b/pkg/agent/testdata/MarinerV2+Kata/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=false/CustomData b/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=false/CustomData index 5f207d491ed..abb05802772 100644 --- a/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=false/CustomData +++ b/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=false/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -29,7 +29,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -65,7 +65,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=false/line32.sh b/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=false/line32.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=false/line32.sh +++ b/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=false/line32.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=false/line68.sh b/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=false/line68.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=false/line68.sh +++ b/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=false/line68.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=false/line9.sh b/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=false/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=false/line9.sh +++ b/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=false/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=true/CustomData b/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=true/CustomData index 5f207d491ed..abb05802772 100644 --- a/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=true/CustomData +++ b/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=true/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -29,7 +29,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -65,7 +65,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=true/line32.sh b/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=true/line32.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=true/line32.sh +++ b/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=true/line32.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=true/line68.sh b/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=true/line68.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=true/line68.sh +++ b/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=true/line68.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=true/line9.sh b/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=true/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=true/line9.sh +++ b/pkg/agent/testdata/Marinerv2+DisableUnattendedUpgrades=true/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=false/CustomData b/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=false/CustomData index 5f207d491ed..abb05802772 100644 --- a/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=false/CustomData +++ b/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=false/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -29,7 +29,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -65,7 +65,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=false/line32.sh b/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=false/line32.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=false/line32.sh +++ b/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=false/line32.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=false/line68.sh b/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=false/line68.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=false/line68.sh +++ b/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=false/line68.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=false/line9.sh b/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=false/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=false/line9.sh +++ b/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=false/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=true/CustomData b/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=true/CustomData index 5f207d491ed..abb05802772 100644 --- a/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=true/CustomData +++ b/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=true/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -29,7 +29,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -65,7 +65,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=true/line32.sh b/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=true/line32.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=true/line32.sh +++ b/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=true/line32.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=true/line68.sh b/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=true/line68.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=true/line68.sh +++ b/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=true/line68.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=true/line9.sh b/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=true/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=true/line9.sh +++ b/pkg/agent/testdata/Marinerv2+Kata+DisableUnattendedUpgrades=true/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/RawUbuntu/CustomData b/pkg/agent/testdata/RawUbuntu/CustomData index 81258538b3e..d07c6b7d98c 100644 --- a/pkg/agent/testdata/RawUbuntu/CustomData +++ b/pkg/agent/testdata/RawUbuntu/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - H4sIAAAAAAAC/+x9+3fbNtLo7/4rsKxuYndDSXYcb+JW6aEl2uFaryWptPniXh6ahCTUFKkAoB/r6H+/Bw++qVfS3u8731n3NLbIwWAwGAwwL+iHv7VuUdi6dcn8YDjq6Y4x7Om/dRqH84jQ0F1A8BVQFwVA9cDJkQAZagM9B3F0cOBF4RTNYgw1f4HCCYH48Oj5AAAAvLk7g0DVgXoMVIP/uwBtoA7AO/YDlMaz1hsYw4mlmysl3yQov1sl/Ywxuncp7AYxoRB/iAglh0dA9Le48xEG6hK0IPVa5IlQuPDl7xaGXhR6KIDqUqBQ2RhIk0B8jzzY9FscB41ib/6NCI7b6vSLHzYZpQIZhH8CKvAetHx43wrjIAA//6yPLg8+WwLy9wM9vEc4ChcwpB3lenKhO9rYcCzd/KibcrKeS09WygHDAYCgxqOBHrq3AdRC36IupmANeeDrVwAfEQUN3TQd65Nl64Ou3XcsWzNt51Iz+gerTBps7IZk6WIY0g/xDI7dGUwnSre7rP2l5XRHw8uOkvBoSviAhSigKfj8mcmB/WHs6EPtoq/3Vgr4WwcoCvj9958AncOQQ7If6M2jKvB7wNC27iAOYdBaLFo0o8qZxzO4dGewBfnw/RKu3Rp1Kl2+B43n4gBXHPMUVYfV0y9N7Wq3UaWwuw3Kh1PszvYbk2jTKfe3YUSr3Pq3hJBPCOxFCxeF2cIc6vavI/OaNzWunEujr2eTzhdGCOlDhO98Of8Jp9yHO/Cy9X9vPvc+dMf3pze/t56ngTvrHP8EQvhIV4C9k8/aK8B+gxcvQOuHjIhOGLVeAqVRQ4NS4jaBPlBRqcNXvAtAyjhzn54gab0EdT0kbEpnnk2mMf545vQmGl853euc7HQ6QKE4hgooC0KFF2d/MS9q+XH2p/AjtxgS1qSaCGBIuA6SgqEmgrEODpMnEkSzoiA+uMtLFGT6hjy4S4egf0Pn7rbTOISPSwwaz9av2phT5VjGf+nO4GIFbn4Ex+12+yhrFUSeS1EUdhShlXJrWO0Lvewjctdy/x1j2MKQRDH2oLp0MT2urufkvcPaOEuXzjuNwykK/UVIgRpioEaAungGKVAt0DjE0PUDFN4Bdbqlr6OjtBOOe4qhHK0/BY3nascr8JVP8LEPvgrZel5iFFLQOF29PMoL3ufPoPGcR7oC6oyCxnOeravqYDO18ysKAhATmI6f0wimEeZMBlMUQKUoegXe19LfYjCsZabjAgJrejdCEk+nyEMwpKJjsnQ9CKKwRA+NgIehS2FG1TnA8EsMSXW4jBdlvrwCLqVwsaQonDFsUzcIwK3rcdQji/fSbDaVdctAytW/mZYocGBVszdExPEhOwR0tshJFNFNwqGOQeu/QxYkP3aXgj9jwlmnnGmg8ZwycPX9M1+kO3dKYjqma+qazU7X1uTy0uga+tB2eoZ17VhjrbtWJ4qxWAk94IEx7hYC4t5DH9DoHFSE5EDoGIqfvIXvoKkzdVEQYwhOTsEbcPKGCySD5kfs0riuK/hKB77cUPhhT5zXF5EPztrtSuOttCzuOK+/odNNWBmyKPyLsKoqmUcP4CuYYfhNlCfnuVLDMAql5JEH0AZtfubi56Mpoe5tYXPTqZc78+9k+/BD1VYDJ4Fa4ujxKbNhxAy3z05Pd2xUJEc0cpeU/S+hy3QU37beveHYantfA5pj7ueBG7oziH/PmLjTOJPT2QfbHjtjc/TbJ2di9q3sbF57NM+gO3VNEwpgNmMlBHNKlw4n5RsRaN6XGGF4fs4wnZ9zVOCmZiA3yk8Zvg0sz1D34NSNA5o3MW82j/hG2ZPrWzrbyJ29O8tZYMlMW/tNtVUYufUtk00K47G+a7pJeb6tv2jCN4z7r5jyDTz63kkfjnaf8QS2U222faLCKB3E/o1rObOWnD97CtaS/i3ML24HSp077C6+hQGkmftLSb1nu8G3jtsqk5usd6XkNHupjy5f1rvNmKXYqcyHProsbLtMEMcMfVdL91w0BYgMXIxCiEdYY6ftPgrjR6A0RlbZoPYgpo4PCe0orZjgFpm7GLaWd6jluSrFMaGqsEVabujNI0yyI2W89F0KHW/hdxTxt5q0EUCFc3C5I3bMCGR3nquy12iK2CFwaxdVWLmacqrYNieWrfecrsYsa3m+qX2/UsBX8OjiGTkqHIbWA9+6BJ6dAtUH7xlgOrKVkLOu1vQwVYrnrsm4x45cXc3p6qZt8Z4a2fA2A+dnvBsTGi26bjdjQs1pK1rSFqOLCPZEGCCAQtA4JPALaIPG4WHjuTux7NGA9cLH53RHk6G9Aio4Pjo6+gn4UWadQS9wMQT3Lg7dBexkLRl9TuMZrUDFOfg3CV1hWUZcq134Yc8YLsY+js6PQrjGwZKwjqFJVtx2jlfxeFFIXbZS/CKX08eTAC1Q6s3vjoa2Zgx1s+dM+sbAsJ2eORo7xlB4bMaa/aFTqxyyfnL6gUDqxAJ/6mEWB1Cl8bxDV9y0Ss6i7fY+rbgW2xG8xtOfrqkKAotNN8XgJfvvJnx5xHVW3q0PfBcuolDFMIhc/2CPWbkWGpapS4jZAkgl/3pyofd1O4knjE3jI5v8a/1Tfk6YhsYhpJBI+ZMqm3CEzTv4pNRh40K+Oxq2+MX+Ei1hSEgAZjDExAVqFFPQ2EIqOGmfvi20xvALUEP4ANTHN+13QPXdJwL+8brdBuodfNqOsLbbdExAJfHtH0BpdYd8Y5XBtJUCVNf34SMFCgOAHtUCOmSrvze0zguQxTl6WxP5qudbznWpjY2E/MlF3+hunTl3ifLszkw3hQeW6pGl0bzUetsJOnoIAY4ies7+2dZEDOe/Jqbu/NMaDdcMgvvAmn+QKCzTXmxZolis8XUwVTorgEILQgr+/pidP9WQAScC0u1zTxBb2PrQXq07hW5oUFL3tfPnBQiGlC25ynG4nhwmr/vTVGy1B2HJFlQljM280dXZOht2jbHWF6pyO21bG24mjyyb9JHW+OLq5bGAT/WhF/lQnFe2Cbw1zofCKhRIoMpgJMstvWvqdkdpHHouE0KJTTnarV0dmwoQrdbNTevm5uZm9afhUxg+RboGFzmaxbpyKfj5Z6CPLiX7KotKKDvFC6LYV855YFQzr7gUjia9lfJKvKcwdENqJCD6UBvajpG9J/Et8TBaUhSFCZQ1ubC6pjG2jdEwD+u6fpcLagq4bpR1jSzoYUi3NBTsSRsnMYkrHMVL0dTUrdHE7OrOlTmajFPIxIEogPqjrsaoT1/fL+ynJRQvPw4c+9NYz7MghHyXSYc/zNFAoBdjRJ84DRlUEtGz9O7ENOxPJXruCyg/GqY90fqObFSAMqtjLIE7a8aMo5hC270NYNaTOZrYumNrF/1sgEuMFi5+0u5dFLi3KED0ycpTNzaNgWZ+crSPmtHXLow+G46VY4FEYHluAGtbWl2trxeacLkc4+ge+RBfuN5dNJ0OIl+24zI6NkcfjZ5uOhda93p0eekMRj19IwLlHKxpu9rQyoQUI0jWN3ZM3TYN3dqERH9cRiEM6QYs+m/j0ZAp1Q1oejFOxHQdmt7EFLK7Ac0/EaUQb0DyT8O2dbMWhelS2GfH/5rmpmbr/EC9ueW/xtamxs6/xtZmBBexdwc3EuBcTLrX+nY6fsWIwm3EOL+ahq3vQtJ2dIKuIsaYQOFp9w0fhhTRJ/2RwpAkEz2xdGegDbUrvecYPX1oswWm/2brQys30TGBWCMEzcIMj9ETC2Zi6aajWZZxNczjyOnZmEAjJNQNPTiA1PVd6qZ9G0PL1oZd3RnottbTbG2Vak3Xv3AD1ghbd3GiPLWec6H1WQvTsa4naR8+IkzbjGJ6G8Whbw01m/dRbNEzLKZ+nNHEvhhNhj2HwSU9wkcviH04cAmF+BJHC4u6oe9iv3/BUem/dfuTHmOXZeumc2mOBg4jvqeZPad/sUo1kpi+j24c5PTR9YA7SMWcfdQmfVtaC7LZwn1Ei3jRzw3bjAPYjWK5sgfab8ZgMnDYiNIBmRN+YppkSzvp/ho+JZ3fvSVK9e1HiKUUKMxiEblm4jCsPhZzoDbpRNAByv1JTeBbpqUorU06q+UrYL0tsBsuoXF2wFTO8BEZPU7eEjSGV/yQbFwaXWY0miNb7tbcBV2f9bPeHq9PLLKcxGEkzkMbEopypgm3o66LbTeZVOmpSx9+NMzRcMD0f87EKppZaxHnYuYlq2u3JlUjbFO7ipEgIfXhRw5X52/ciZCcWJfnI7WRsgSonZK9SnNTQlOeGV+48BPfiJCZddOxDtfaydipQWUqdmhVMSRzTFpnqe2GOTcjNeyTbrfO7pEFL1oInSJZm6WobmKt7GdXxlbBpeNwHdx+WcFlDl/2tSuro6piSGCrICVKvJTy2R0aqQ+qLn/i+KQtkz0if4mjWwhusRNCOkUBhbjoRh6M2E5wUc6WUEOg5BspicW+iPw4gERl+3nTb+VhctkLOUqNMbcbSHkEyfN8XEdsT4ktMu5PrjjPO0Dhqr9mV1rcg0Z3aDgXxtDpGSYTHLFLsK4CRKh4nUyjYbZKgsGTaEogFSSlXKw8jaO+0f0k9YrnBsiLlLo8rCSpk/ygLLhtotxi5M+gkn7OpQYrP8xe7kEUDDaTxUM1616GUcj5Cl68KOFIzgNcYWa0/f8enfRQsZ8WuUVhC95SLjhApSB0KVDVFF6sE3l2lInRzOgN7qGfyllAgBpQLMQZ87c5yXVp/YvJxWRoTxxT7+uapXcahwG5dTAMoEsgUDFQZXgtnYpiA8nI47fN9mkyH7UQJ+2tECdbIU45xJq8diOcRRiFszTZF0sOgS8xxE8giTbdxhTEhAEiSkCOH6WUQYHVniMCEGEdAoIWywASCtzlEkeuNwc0Ag8RvnMxO8yDtENESAwJeEB0HsUUMJUfQAqDJxCHiJkYQQAQzbr6zDMtcRymO4hElZ8uwGWZxH4EghCoZIcWtTO+VVY2yosQRRiSQrRNCmFyVLH1vj4emfbW84nAY8MALiNM/QO5LDYH+Oticgo42BDir43iwUfoOTxuVRvjL22Bj9Dj5SzjiNCOWLBomSzYMbgcmb9qZg9o3a4+tpPYWcIPjZ3Uta7tWLapawN2et/GmSCaEYdGDryHISVA0a6tZtfSm2XOywcapmjqetSiGLoLFM4UsOZFcZusoYybuv3+QXICLeYC5kJ8OaVwNZ44w8TOYoMpaF5yh5ZOeI985Do+RvcQO3IVFIdfkAy++q5gCLHLE6DDKFSvxpNcjFFuxzxMzt6EkQ+BH0O2Kj8OAHVnMlSVHtKzoKdU0cORw0jf6MvPOmzJQwyNFkGRjfwU9Ktmdz84tjHQRxP7IJdHURlLZQxpGvd6Uv8aGsUUFxaOR4Om33r3Tp1G2IOq2PHYhwcX++uWCjgIIW2i5f1pEy0dCQw64Dh7znN63CBoyreMETmAs40Aggr5Sw2nqucGgZquQAYmDpUbz41idEBVhV6olKB17T7bckZarxDeRkR1PYruIVDVLzGCFPiRdwcxk/DDFMyR+zM4aYPXbd6pBKupdOs5vVH3Wjcdyx6N+Rn1aEMJXU5edqmak+p5GPXi5Sgc42iBiBdfcN5lVSxr+hJt1TBS/Xi5T3epFt/aBU0g90FfUWSym2yaRA0dcD2sLhDGEU6UfQFKZCrUA7G9lae5uB5u0SgKSCu6hzhwn279llRZTTLfCirWoBoTiFV3BkPaJHPAz4Fbm4pB8Pwz1Y3pfPfuWB9+9BByC0byYuoKHbRre8/15mxz4YYp+9tC/4ZXF+D1yR5I4CObXIglHkkK0/HfjoR9AO/enr1mG1Ji/YnaJseLMHQYrw8A8GIcAPU3MJ7Y4CXPVZtHhJ6/ffOPtxL5LyHpONI4fSFoc3iBx2OHz5CHmyh6QbiUMUW2cGknJfAlUEd1MscHlA0j/Uul3iKuFcP6hiR0l2QecUdhhiT3dINIFzvdCJBDuGZtsL10EYXZ8utxVZYu7UR7ySik/pveTVat0dc7dYcwoQzXH8A4XjaNzHxV3atEe+ZLt/N9D0aToS1cD6lS3b1zL4AudhZRHFJniaOlO+NRJWcauDOS0SP74o6hDLnA1hIJUTnHbTFf75jtAe1iSp5ISCCgUUYM6mqc/vgCXjZfgp9rwF+8ALcYund19iTvpIGAyog4abdrcW85GKwpiSIBhEtwXO61JuOvumnmdrFtG+fmDY+fiZLjUWEDXb/n1G3F6Rac7jY5eecVqlu3Mn/uLe/PdtjHdvdpoeWZI481Gzxaq4ODGaRjEVYeIs8YZ44ApvbETNloATvHuacL91EGczvH7dxz1Cl8WnYU6eR+mKMA8kI9xExG0Mgw8AN7XraXncahUMDE6gP1A1CSONo5EEd8no9/3modn71rnrw5bcrfrYWEE5ts6MGkhLuFQgrx1PXgL+4SqfciGNQ5aZ8cq+0TtX3MjsN/fAEqBi+bn9u/J0dQzfcxJIQ9kbcOGMmzSgkizw9CS4VJZeMXvmra9TWHa1ecWBaNlOdZD53G4SH6e1JQm64Tec5HS2VdpiQKZ7lcYTOiXD8VvIp/ZnBIVvSL/oWvhBkqGQUASxIAIkCuWP8VCCM6l/Wp6SiUXIUyjXEI2sX0J761A3UKyDyKAz9Z/47s3ZG9O7nenaR3oZVlfHSXUfN61sq6c8KIbT2UgOM2U9RtZlPNgeo9fgtRmYuMC1AIQXsNg1n3vN4S+JBCvEAhZO124rsgDNzClP3g9olbvcsoCnL2blG990ej68nY2Ydnjq1dFaZsp0Z97ULvd5QsttdMXJ9pKESVA1Q9t+OJS1eUYpRrHzJfvdoY+Po2ka7w9JW4wYSLNkOQIOQnBeCGvnA8BO4tDEguNJiMQARHcrEX/qClqrx3qIp82EJ1RIcNaDMEP9nnI5E7hAm38KsmWFgT8cqH1LIajQ1ARYcF19Yv0RQ0xajsvnURRZRQ7C4Zbdx5xMiqBxAWDT+XgCaAof8yxX5UGUgubJcIslBKi+g+UbXDyId9NnXFVOvNQr5Wv6WJ0fvJnrz95ZWoynb9vEixiQ0h9KGsY3J9/7tIT084EkslF7+nX/K0j9xxtxjKq6kQlhDpUiZwcc9st8XSxRAIoTSHuq1bzkfdtIzR8FxV2s12s62sgHLcPHnXbJdLnDZ7QK/T2CrNscMYXwbuTAF1T2tScItLtLRCeVA0t6DyfFkpNVhM/crgKTdW94Pem/TZmuuIpfZ+N0zFSFanJrT1fj+SjIF2pecGxj/vj4YXDXDxyXMp93QXlLlcbJGLm0v44HCyaqVeja9v0tmCbythct3WB9Rr4NPV4nS1NSnXMifdzaocspBG49BHvMIq6SZBs0qSrfPJDLwQylybvJC1XTOGHEDduZHn3uqO3beci9HItmxTG4+N4VVxo2CGSL7VFvDSBCasZK32z5egAblN9H8pWWIDT0v9paytzbEoAG5JsKiHLWVXFID2T60osDdNrmDcSRIs7l3cCtBtwrFW7p2qpuza2KQOqpCZ8e3iUpp/Teul+dcd5cx34enJ9K16+vrsrXp69o+36rvT6VR9/e6sDU/ewtdnr9tKyV/ClIZMnaqjwGE9yNoIbTx2jF794aZAyH4I64w+2TJrxeYvfynZTjzfJs3beqkX7e2tKnIuyqr2aCiFfnuLmhXgLpFM7DwH98cHdyj0z4Hw9R5Iw4CcH6iAceFceCXk4wMA5F/nB0mBsjxTcYd5hBF9OgebNLJMIGWny3Mgbj5otaoXG56fnr4+iEmBksSOSWfyQPgsz6VlC73zlD/5McryJEYgDCkSlRbNu7ekiaLW/XEuR3OxcBkvhIucX7mU14DsQ26BC7RZj3hGsv5VkKcyeaaqIXyk6hJHNOq4d0QtYCwAuq5IooixB9kum1s+q2yFhhRi4ekbRD48B0N4z2dJ/MhMXnnDphFOI+ELOvCikMJHynkr/5YTKme3POuS0bVTICYnxxeB8MCLMYYhTT7XgSQaT2QbffMm9xdrgT2X//7rfo8F/5+Vzjh9B0NREFbYOOzRtc4OBv/zpDvnyN8qobvL5U7SuKsMbpW8/83ylqryTMjEo7zf53y36lfZ8A4+nW+v4/1mUU0prrJyrYTWAeXOnAXzitvUk6FtDPTErySKKqXUZjtkGi4imQ0xP6g5mK9HVytL+Sutf+D/ZTlfRprzpfrg+Oxt8+x18/jkXfP4jK0S6i2Bqvrc0f22DdQ/ALMHvqn565M3J2cpBplZxjbWLPTTaRzu5i0phYwUUHogfGj60GInOmPQs9iGb5tGlzuQ9jfeZDIJWviEnSQoRh4/+GR23Bq9soWEVM+kOmZrgxr7eLc2UoS2Au9u5yU1n0Oj67DJe87P5UopAsvTSLnfTnpOKb8pIzCGlm7aVcJ5TZY9cgba8KovC147jed9wOXd37kE4UbBhcbOSz8qaOHOoOphyCvy3EBNqrtkvYDyI4+87dXyFoWqj7Dy47ps4G4SjAJZ8+Qwinmk/jaic7CNNu7f30pGEgvAEJAl9NAUQR+gsBgCUPb0bAoCummvSTmZAta92bMDmdBU18PaV/X3LJeC4onbuxC+Tl3UNbldlsxHmfDbgbYG3ZP0FVXcJtSkaFHJshtqY+vDyE6uE6rrdYBmYxdTJOKqO1z6v0Azfj0yb7H7Vf/rmh23Vf4KR1MUwO33/O+BZ3dddDWeZMWtY3PEt1aR0Ft+vMrcQ+tmpkBibn553mU6rzLTsnAELSWfvlPFB9W9y2XjrHORVPBV94c6mJpbZdaCpbeBpADrasrWoth4JWwxMzUXpXlLulFIcRSMAzeE+fh/w9SZ4WHq/5oYpt5LnLTDUVo3zEuM6u1VEbnKn7s2Zqdw7dy1++DkfSZY8hynonAalRb7W4udtYbG8CrNKVodHIhbkZn+GbghmkJCewgXAlADbWhc6pbdM8xO+eS6kG1IURYapXasoweMRD9iGyh0ISaGdzCPFrDVSNPLWk3WWwlQLIhCw1bONiqSkYLkhK9RxJW79Cfr+Tz7sw7RjuA59Eym/9Fu1yNL68NqmuYCwELkD1RVLRtVeTtqu8mkigygG6UhL3WTkckbpWAu5aiRxlJqWtwojaSa/V+94c0u5nWlSWa3FF+prr9AIQdY11nZiKlAFIzMkl23trdNdl7GshxTqqzL7LzaBtf6pxvlgB1M1820+pilH0kXnRbTiHhuALHm+7mEo25/wkehTewRv6zEdLRer5AWmS9pZ22ZmSk0hJsiVX24DKIntvk0n9xFcJCvmydffxZDMnrvv8rcgsaGK3Ky2P/XmQIaG0ms78iC3g49iTt1vqc3Et8WxlS8H+h7MMvriXLI0yuKvgctnmUIi5fn7IU1lS6ta3SjMIQejUqCpXV5xeRQ79oj0+maOr+aQ+tbncYh/96AKVCebxQpGP6NwsT8/5Ab5RVInoqLkYpvkmubik+LlzUV3wkndg9hTuSTHvrLCIV0ggMBl/hzgmiGwuYCeTgi0ZRGYYBCnuV0o7y6SS9ckheHr8Wy4O/5OsjSpGoJucLucp7ccZQQnaCZsZfNBxT60QNphpBKHORLMEh72IUIL8Iwj+f87enpa4ls5gYB3MAR+b4ykMV3UdC6UVYKUDYpgI2vxaplIOmK4PDFtZc/wT2A9tFB7SWOd/AJYOKen7bfnclbHcPIh6RwuePrszficscopmv8bq6H2D4i1gEDbS7hQlz1uEsD9ky0SG5/7EyslmV3ulqr37lHmMZukHhxR5UHk/KT7rD0RKlZktf6p07jUPJor2E9yO++KS1x3bT3Q5gN+yGZoCLK7TtREeG2TQhDn7z/2lirmrjmW0dCVZUO3QV8/7WkR/fCwThQJUg37b2w3MGnCpJr/dNmHJkKZ6t7HAXIeyppcJ5+I3KUdpkKhkddckTbZgKnau/911ZeeZNWeSG3ClfdkVYtu+spzcZ4NZ70eIVq+f6Gxoj7pBqyMH1kcU9+zcUNhbucn13u7ySvZst4Vb1tIS1jSBzTyYULafmDUp+I7lEM1BCI+LHwT4ElM8kaw49Gz9Ccnml81E2R73Ve9zBN8c0ZhBXz7w04bnNLQSZHA6XRtU0ndQ70+0530NuvUzBbxkkNfAuGFD/xjaFJ5onXSSnT1Wn8UniU8A9DKlLa22vYlFkxl2neddL31XgCRDHyK264onBW+DKlaiI1G7YYjVWu7KjJDlkzTQTgBTfzQ+8bJ6tSk5NNjixo+b75SWYB/K+ZBln7gxfoG1ku8fEUgd3v6E+KMTOdkkua4KMf8pr4tJjfjqLgDuUuQOHONQE0ZuY3oTD0eJpFGtQtX+AeEa6qwogCEi95DaUPXAroHBFA0QI2AblDy6UsQy+ovFL1wHHB2bvRPSSK+9W0hkmNgeq1iz6hDfO2HvfrdjtBThboT0B48gYEvvTt74LtG76agTu5xKxZT4sAhXd2pAVBj3872JCdGivhzu/bETaOdnmHggColnH1YTJeW1iXH32iOvLFgAWls0d/Yunt2Zm4Y+TeDZDvUrh+Sz5ERDMHZ6dHjEW134+Y93Fu9cGuEeIXL+TSmi1jqaoAW9bQ55fVlBfRzjL6MEfePCfc+ZH9wkZUU4RmDQzH1K1J364vaxJjKS6ao+oE7o6mwQegWzYPhJeRShFm6CxbsydWskXIYWQv2P5QM54cnKBHxv3CaWSOBgAR4EUYx0sK/bpQX3VjMIaXI8ccDZzuyDQnY1vvbfh6v123lFT95xBUROIhwndMqU5RCJXKVTl/qhDntcWlcZUj3zEunaGu98TFMslNLHsVVmSUNiv7Q0XYq3zZGXl1eSug+qz6Xce7HsR3JqS07BWgrItuVSB3XerF+7usD9UIZ0+8411FS0DIvFSqLMviLOtDzmNbCc9m3trUVs1uc92Y8rU+BJ7ZZWvCb1v6qsbitjY4KBXnVq7OzG2TvOjG/OT0hpbDvxHzt5odMvnalG0db8knuyuE5nPpuzIAUJkPGRJIOMqTc5PAgOvhupwCwWmXenOD2wtJPq8KlB+b2Q0VSt1jL6x97MPaxzHJP96XyaKeWdR9dV1vDpOLuc+BctxeyGK1fAp0OtZkqM2En8U86HwWs7rpstxKcuN/pnnDNP/PmCuhCuvq87KNceGTUUyXMc3uEwDqB5BeJsC3NVUNI/F1hcqPClDVhfuoMvsGvPlLbhk4yYnMUfGotubCgJCPTPN9TDqHuTsHlven7GFSO9vIhrv3VQag1QKKkrvQIL3MQPShiDsDc5T8vXOYe12g6mxnqs6+maqzzVSdlaiSIHjWaRwal1bnFfgpTcTINf/84+8r5QjUFA2lCOoLgmRpoc+vGlO5R19Fy07WDNCoWO+t1JZGJyXexRS2OoR1X9a9Ojj4QR9d/r8AAAD//2OpGGpAhQAA + H4sIAAAAAAAC/+y9eXfbOLIo/r8+BYatX2L3NCXZcTyJu5U+tEQ7HGsbkkonN+4fD01CMtoUqQCgl0n03d/Bwp3anO775t1zPWc6NlkoFAqFQqEW8Ie/tW9Q2L5xyW1jNO7rjjHq6x+7zYPbiNDQXUDwDVAXBUD1wPGhABlpQz0HcdhoeFE4Q/MYQ81foHBKID44/NoAAADv1p1DoOpAPQKqwf+7AB2gDsFb9gOU5letPzRGU0s3V0q+SVB+t0r6mWB071LYC2JCIX4fEUoODoHob3HnIwzUJWhD6rXJE6Fw4ct/2xh6UeihAKpLgUJlYyAtAvE98mDLb3McNIq922ciOOqosy9+2GKUCmQQ/gmowDvQ9uF9O4yDAPzyiz6+aHy2BOTvDT28RzgKFzCkXeVqeq472sRwLN38oJtysr6WnqyUBsMBgKDGo4EeujcB1ELfoi6mYA154Ns3AB8RBU3dNB3rk2Xrw549cCxbM23nQjMGjVUmDTZ2Q7J0MQzp+3gOJ+4cphOl2z3W/sJyeuPRRVdJeDQjfMBCFNAMfP7M5MB+P3H0kXY+0PsrBfytCxQF/P77z4DewpBDsh/o3UZV4HeAoW3fQRzCoL1YtGlGlXMbz+HSncM25MP3S7h2a9StdPkONL8WB7jimGeoOqy+fmFql7uNKoXdbVA+nGF3vt+YRJtuub8NI1rl1r8lhHxKYD9auCjMFuZIt38bm1e8qXHpXBgDPZt0vjBCSB8ifOfL+U845T7cgZft///6c/99b3J/cv17++sscOfdo59BCB/pCrB38llnBdi/4MUL0P4hI6IbRu2XQGnW0KCUuE2gD1RU6vAn3gUgZZy5v54gab8EdT0kbEpnnk2mMflw6vSnGl85vauc7HS7QKE4hgooC0KFF6d/MS9q+XH6p/AjtxgS1qSaCGBIuA6SgqEmgrEODpMnEkTzoiA+uMsLFGT6hjy4S4egf0Pn7qbbPICPSwyaX63ftAmnyrGM/9Kd4fkKXP8IjjqdzmHWKog8l6Io7CpCK+XWsDoQetlH5K7t/jvGsI0hiWLsQXXpYnpUXc/Je4e1cZYuve02D2Yo9BchBWqIgRoB6uI5pEC1QPMAQ9cPUHgH1NmWvg4P00447hmGcrT+DDS/VjtegW98go988E3I1tclRiEFzZPVy8O84H3+DJpf80hXQJ1T0PyaZ+uqOthM7fyGggDEBKbj5zSCWYQ5k8EMBVApil6B97X0txkMa5npuIDAmt6NkMSzGfIQDKnomCxdD4IoLNFDI+Bh6FKYUXUGMPwSQ1IdLuNFmS8/AZdSuFhSFM4ZtpkbBODG9TjqscV7abVayrplIOXq30xLFDiwqtkbIuL4kBkB3S1yEkV0k3CoE9D+vyELkh+7S8GfMeGsU8400PyaMnD1/TNfpDtnJTEd0zN1zWbWtTW9uDB6hj6ynb5hXTnWROut1YliLFZCD3hgjLuBgLj30Ac0OgMVIWkIHUPxk7fwHTRzZi4KYgzB8Ql4DY5fc4Fk0NzELo3rqoKvZPDlhsKNPWGvLyIfnHY6lcZbaVnccV4/o9NNWBmyKPyLsKoquY0ewDcwx/BZlCf2XKlhGIVS8sgD6IAOt7m4fTQj1L0pbG469XI2/05nH25UbT3gJFBLHD0+ZWcYMcOd05OTHRsVyRGN3CVl/5fQZTqKb9tvX3Nstb2vAc0x9/PQDd05xL9nTNxpnIl19t62J87EHH/85EzNgZXZ5rWmeQbdrWuaUACzGSshuKV06XBSnolA877ECMOzM4bp7IyjAtc1A7lWfs7wbWB5hroPZ24c0PwR83rziK+VPbm+pbON3Nm7s9wJLJlpa7+ptgojt54z2aQwHuu7ppuU59v6iyZ8w7j/iinfwKPvnfTRePcZT2C71WbbJyqM0kHs37iWM2vJ+bOnYC3pz2F+cTtQ6txhd/ENDCDN3F9K6j3bDb591FGZ3GS9KyWn2Ut9fPGy3m3GTordynzo44vCtssEccLQ97R0z0UzgMjQxSiEeIw1Zm0PUBg/AqU5tsoHag9i6viQ0K7Sjgluk1sXw/byDrU9V6U4JlQVZ5G2G3q3ESaZSRkvfZdCx1v4XUX8riZtBFDBDi53xMyMQHbnuSp7jWaIGYFbu6jCytWUU8W2ObVsve/0NHaylvZN7fuVAr6BRxfPyWHBGFoPfOMSeHoCVB+8Y4DpyFZCznpay8NUKdpd00mfmVw9zenppm3xnprZ8DYD52e8FxMaLXpuL2NCjbUVLWmb0UUEeyIMEEAhaB4Q+AV0QPPgoPm1N7Xs8ZD1wsfn9MbTkb0CKjg6PDz8GfhRdjqDXuBiCO5dHLoL2M1aMvqc5le0AhXn4N8kdIVlGXHtTuGHPWO4GPs4Oj8K4RoHS8I6hiZZcds5XsXjRSF12Urxi1xOH08DtECpN783HtmaMdLNvjMdGEPDdvrmeOIYI+GxmWj2+26tcsj6yekHAqkTC/yph1kYoErz6w5d8aNVYot2Ovu04lpsR/AaT3+6pioILDbdFIOX7H/X4ctDrrPybn3gu3ARhSqGQeT6jT1m5epNTVRFsJspXxxCCokQrZxbTJsYMswwmZ4PjJ5zpX/Kz1S5adtdIjZHEPN1nDsWKDxoUY8sjRSlJ4OdoKOHEOAoomfsP9uaiOH819TUnX9a49GaQXD/SusPEoVl2ostSxQL+VkHU6WzAihWGKTg74+ZbaOGDPhqeq4PdNvpDbiXgQmNPrJX6yycDQ1KqqR2/rwAwZC27uBTxdSqJ4cpsf1pKrbag7BEvVUJYzNv9HRnYhqjnjHRBmIZbqdta8PN5JFliz7SGj9PvTwW8Kk+9CIfir1wm8Bbk3yYpUKBBKoMRrLc0numbneV5oHnMiGU2JTD3drVsakA0W5fX7evr6+vV38aPoXhU6TbaZGjWawrl4JffgH6+EKyr7KohLJTvCCKfeWMB90085JL4XjaXyk/ifcUhm5IjQREH2kj2zGy9yS+IR5GS4qiMIGypudWzzQmtjEe5WFd1+9xQU0B142yrpEFPQzploaCPWnjxN99iaN4KZqaujWemj3duTTH00kKmTinBNBg3NMY9enr+4X9tITi5YehY3+a6HkWhJCO3AVMhz/K0UCgF2NEnzgNGVQSLbL03tQ07E8leu4LKD8Ypj3VBo5sVIAyq2MsgTtrxoyjmELbvQlg1pM5ntq6Y2vng2yAS4wWLn7S7l0UuDcoQPTJylM3MY2hZn5ytA+aMdDOjQEbjpVjgURgeW4Aa1taPW2gF5pwuZzg6B75EJ+73l00mw0jX7bjMjoxxx+Mvm4651rvanxx4QzHfX0jAuUMrGm72tDKhBQjSNY3dkzdNg3d2oREf1xGIQzpBiz6x8l4xJTqBjT9GCdiug5Nf2oK2d2A5p+IUog3IPmnYdu6WYvCdCkcMNOyprmp2To31ja3/NfE2tTY+dfE2ozgPPbu4EYCnPNp70rfTsdvGFG4jRjnN9Ow9V1I2o5O0FXEGBMovLi+4cOQIvqkP1IYkmSip5buDLWRdqn3HaOvj2y2wPSPtj6ychMdE4g1QtA8zPAYfbFgppZuOpplGZejPI6cno0JNEJC3dCDQ0hd36Vu2rcxsmxt1NOdoW5rfc3WVqnWdP1zN2CNsHUXJ8pT6zvn2oC1MB3rapr24SPCtM04pjdRHPrWSLN5H8UWfcNi6scZT+3z8XTUdxhc0iN89ILYh0OXUIgvcLSwqBv6LvYH5xyV/rE3mPYZuyxbN50Lczx0GPF9zew7g/NVqpHE9H1w4yCnj66G3Pkm5uyDNh3YMoNINlu4j2gRLwa5YZtxAHtRLFf2UPtoDKdDh40oHZA55RbTNFvaSfdX8Cnp/O4NUapvP0AspUBRGiuZxySMYfWxmF+zSSeCLlDuj2uCqjLlQWlv0lltXwHrzwK74RIaZwdMlewRy0m8AsIw2ZA1kjsj8APNVbHtprNNav7oow+GOR4NmSLOnXWK5521iHOB0dLxZ7cm1dPQpnYVa11C6qMPHK7OqbQTITn5Ks9HeljJslx2yugpzU0JTXlmfOGnTVyf4qC+bjrW4Vo7GTs1qEzFDq0qJ7ock9YdmXbDnJuRGvZJ30p3d/exFy3E4paszfIQN7FW9rMrY6vg0ju0Dm6/1M8yhy8G2qXVVVUxJLBVkBJtWsrr642M1BlUFyQ/Ou7IiH7kL3F0A8ENdkJIZyigEBd9hcMxU8nn5ZA4O5TnGynJ0XkR+XEAico21pbfzsPkQtQ5So0JN+BJeQTJ87zzXuwTyaFgMphecp53gcJ1cM32sLgHzd7IcM6NkdM3TCY4Ql2zrgJEqHidTKNhtkuCwTMlSiAVJKWEmzyN44HR+yT1iucGyIuUumSbJHOP/KAs+CFBucHIn0Ml/TuX/6n8MH+5B1Ew2EwW98evexlGIecrePGihCPZmLnCzGj77x6ddBWxnza5QWEb3lAuOEClIHQpUNUUXqwTacTJ7Fd2+gzuoZ/KWUCAGlAsxBnztznJdWn9i+n5dGRPHVMf6Jqld5sHAblxMAygSyBQMVBlDCWdimIDycijN63OSTIftRDHna0Qx1shTjjEmuRlI5xHGIXzNKMTSw6BLzHETyAJKdzEFMSEASJKQI4fpbwwgdW+RQQgwjoEBC2WASQUuMsljlzvFtAIPET4zsXMqgZph4iQGBLwgOhtFFPAVH4AKQyeQBwiZusHAUA06+ozT6fDcZjuIBJVfroAl2US+xEIQqCSHVrUzvhWWdkoL0IUYUgKIRUphImpYusDfTI27a32icBjwwAuI0z9hlwWm6O4dYEXBTQ2xHFrQzXwEXoOD07UBnJLW+Aj9HjNwiQitCsWLFomC3YCLsbmb5rZB1qvp0/sJECS8EMzbeNC69mOZZu6NjRGl1s5E0Rz4tDIgfcwpAQo2pXV6ll6q8x5+UDDFM1cj1oUQ3eBwrkC1rwobpM1lPEz52DQSCzQYsJXLo6TUwqXk6kzSg48bDAFzUvu0NIJ75GPXMfH6B5iR66C4vALksFX3yUMIXZ5lmsYherlZJoLJMntmMdC2Zsw8iHwY8hW5YchoO5cxoxSIz2LbEkVPRo7jPSNTvWsw7Y0Ymi0CIps5FbQb5rde+/YxlAfT+1GLlheGUtlDGmu7npS/xoaxRQXFo5Hg5bffvtWnUXYg6rY8dgfDy721y0V0AghbaHl/UkLLR0JDLrgKHvOEzfcIGjJt4wROYDTjQCCCvmPGs5Uzw0CNV2BDEwYlRvtRjE6oKpCL1TqjHr2gG05Y61fiGEioroeRfcQqOqXGEEK/Mi7g5hJ+EEK5sj9GRx3wKsO71SC1ZQz9Z3+uHelm45ljyfcRj3cUCeVk5ddSqOkeh5F/Xg5Dic4WiDixeecd1mpwpq+RFs1jFQ/Xu7TXarFt3ZBE8h90FcUmewmmyZRKAVcD6sLhHGEE2VfgBLh6HogtrfyXAbXw20aRQFpR/cQB+7Tjd+WKqtFbreCijWoxgRi1Z3DkLbILeB24NamYhA8yUh1Y3q7e3esDz96CPkJRvJi5godtGt7z/Vu2ebCD6bsdwv9G16eg1fHeyCBj2xyIZZ4JClMxz8fCfsDvH1z+optSMnpTxSwOF6EocN43QDAi3EA1I9gMrXBS56QdBsRevbm9T/eSOS/hqTryMPpC0Gbw7P4H7t8hjzcQtELwqWMKbKFS7spgS+BOq6TOT6gbBjpbyr1FnGtGNY3JKG7JLcR99hlSHJPN4h0sdONADmEa9YG20sXUZgtvz5XZenSTrSXDAfqH/VesmqNgd6tM8KEMlxvgHG8bBrZ8VV1LxPtma/Pzfc9HE9HtnA9pEp19869ALrYWURxSJ0ljpbunId3nFngzklGj+yLO4Yy5AJbW2S95DyoxaSsI7YHdIp5VyIzgIBmGTGoK2T54wt42XoJfqkBf/EC3GDo3tWdJ3knTQRURsRxp1OLe4thsKbuhQQQLsFRudeatK7qppnbxbZtnJs3PG4TJeZRYQNdv+fUbcXpFpzuNjl552WIW7cy/9Zb3p/usI/t7tNCy1NHmjUbPFqrRmMO6UTEd0fIMyaZI4CpPTFTNlrA7lHu6cJ9lFHV7lEn9xx1C38tu4p0cj/cogDyaizEjoygmWHgBntetpfd5oFQwMQaAPU9UJKA1hkQJj5Puj5rt49O37aOX5+05L/thYQTm2zowaROt41CCvHM9eCv7hKp9yIq0z3uHB+pnWO1c8TM4T++ABWDl63Pnd8TE1TzfQwJYU9kabmRPKvUmfFEHbRUmFQ2f+WrplNfWLZ2xYll0Ux5nvXQbR4coL8nVZPpOpF2PloqYib50QBaMJhZPIx4Jbym/PwZzusyQxM/bJKcYxofNFvfmgkn3bEyG+4OPil12Hgm1O5oeFIdxxMtYUhIAOYwxMQFahRT0NxCKjjunLwptMbwC1BD+ADUx9edt0D13ScC/vGq0wHqHXzajrC223RMQCXxzR9AafdGPPFcXjaxUoDq+j58pDyz5A/oUU2EKLv9kXVWgCzmMBbmquD3ZUc5cdJ38tSwYzYjx7gweoxwc2zLrBdeJlAfx5GF9aIz4c1iR8lMNACOKN/EACJA6lT/JzDPzp0EBjNVxKlrETwgeptMQuad2kM6c/XHNMYh6BQiWbuwwBlo5/qgq2QS10ocqGlARZW0q57b9cT9HMp/8JoQpixQZ4DcRnHgJ/udIxs4cjhObiqcZC6FFSID87swkBfpVvYZJ4yYqUUJOOoww6QDblxyC1Tv8TlEZS5hrjBDCDprxJV1z4tIgQ8pxAsUQtZuJykWhIEbmAozuHniXp5lFAU5/07RnBmMx1fTibMPzxxbu6yNue6DZGMQ9nmLt2a8JYz8BhWuhhi+BD83YoEbpi4yl4AQQh/6SiWQKWJ3udAgf9BWVU4QVIU4Fyo0umyMmyH4wTMXfvzeIHZNILsmGpsP92ZFIhuAis40bkm8RDPQEkOyB9Z5FFFCsbtktHHHJiOrHkCctrnNDFoAhv7LFPthZSC5kHIidNms/req7IpELaJ74XD1IQjcGxgUt9LNmlvJbQGL6D7ZHEeRDwf74qqWHO23jOTNOcraIaoqDQgXXJVXvrMVI54l9xHdwSfxaoajRXF9rRnpReDOgVLC3F1rjOyApUxLd5v98//ksvNhcNCiAWGieYECePiy9EJeyHUFn9LXz1pcru8/X7wZR8ua1PX975byfFhNIqtY+n39gifG5fwQxRyLmvp8CZHuagQu7iHuRYuliyEQgmGOdFu3nA+6aRnj0ZmqdFqdVkdZAeWodfy21SkXGG4OTV2lSS80xxVjwiRaAXVPa4oUiptTaW/i2So5oc7zZaXUYDH1S4MnJVq993p/OmBy3xUC/243TMUUg25NzsG7/UgyhtqlnhsY/3t/NPxIwqUoz6Xc011Q5qpVRLVCLhOPw8masXqbZn2T7hZ8WwmTB+z6TKca+HS1OD1tTVGKrNpxszqwLNbcPPARr29MuknQrJJylHyWGS9DNNdmlWVt14whB1B3XOTVCbpjDyznfDy2LdvUJhNjdFlU1+Dbt0KrLeClCUxYyVrtn8hGA3KTGD+lLLYNPC31l7K2NvmtALgl860etpT2VgDaP+etwN40641xJ8l8u3dxO0A3CcfauXeqmrJrY5M6qELK3PPFpTT/mtZPK1S6yqnvwpPj2Rv15NXpG/Xk9B9v1Lcns5n66u1pBx6/ga9OX3VKlgVXGjKntY4Ch/UgjRRtMnGMfr2JUSBkP4R13jjZMmvF5i9/JeBOPN8mzdt6qRft7a0qci4KT/doKIV+e4uaFeAukUx9PwP3R407FPpnQAThGtLXQs4aKmBcOBPuYvm4AYD87ayRXA8grXIeyYwwok9nYJNGlin27Gh1BsS9I+129VrRs5OTV42YFChJXEPpTDZEMOlMumCgd5YZbLkxygJORiAMKRK1aK27N6SFovZ9FujwosXCZbwQsUt+4VleA7I/cgtcoM16xHOS9a+CPJXJM1UN4SNVlziiUde9I2oBYwHQdUV2W4w9yHbZ3PJZZSs0pBCLEMww8uEZGMF7PkviR9Y6yPttjXAWCSd9w4tCCh8p5638XU6onN3yrEtG106BmJwcXwTChhdjDEOa/F0Hkmg8kQb67E3uL9YCey7//df9Hgv+f1c64/QdDEXJbGHjsMdXOjMM/vOkO+fe2Cqhu8vlTtK4qwxulbz/yfKWqvJMyMSjvMfzbLf7AWTDO/h0tv2mg2eLakpxlZVrJbQOKGdzFo5X/Ew9HdnGUE+8O6LsXEpttkOmcXySnSFuGzWG+Xp0tbKUv1D+B/6/LBnXSJNxVR8cnb5pnb5qHR2/bR2dslVCvSVQVZ9HZN50gPoHYOeBZzV/dfz6+DTFIFN+2caaxeS7zYPdvCWlWL4CSg+Ej0sfWcyiM4Z9i234tmn0uB9p/8ObzPJDC58wS4Ji5HHDJzvHrdErW0hI9UyqY7Y2qDkf79ZGitBW4N3PeUlV/MjoOWzyvubncqUUgaU1Uu63m9op5TdlBMbI0k27SjivWrXHzlAbXQ7klQDd5td9wOXN+7nKjWbBhcbspR8VtHDnUPUw5DXLbqAm9a+ykEv5kadE7NXyBoWqj7Dy47oyjV4SNgdZ88QYxTyF6iait2AbbdxXv5WMJBKGISBL6KEZgj5AYTH4pezp2RQE9NJek4JbBax7s2cHMtO0roe1r+pvOS9lKyXxi0JeUeqprkm6tWSi4JTfzbU1GyrJK1TFXV4tihaV9OeRNrHej+3kMq+6XodoPnExRUwjJZ/42PjJjQWa88vJeYvdP7SxrtlRR+WvcDRDAdz+lY098Oyuiy4n06z8f2KO+dYqKi3Kj1eZe2jdzBRIzM0vT4hP51WmwBdM0FJVwFtV/KG6d7k0yXUukgq+6v5QB1Nz79ZasPS+pBRgXbHvWhQbL2QulgzkojRvSC8KKY6CSeCGMJ/20zR1dvAw9X9NDVPvJ07a0Ti9WYHXftafV0XmTN7u2pg2yLVzzx6A43eZYEk7TkXhLCot9jcWs7VGxugyTfZcNRriTnKmf4ZuiGaQ0D7ChQDUUBsZF7pl9w2zW7ZcF7INKcpCs9SOdfSAkehHbAOFLsTE8A5uowVsN9O833aL9VYCFAui0LCdOxsVyUhBcsLXLOLKXYuW9XyW/VqHaEfwHHom0//odOqRpYW7NU1zYVgh8g1VVcuHqvw5avuRSRWpmddKU16pKAOU10rhuJSjRh6W0qPFtdJM7vv4V390vcvxutIkO7cUX6muv0AhB1jXWfkQU4EoHDJL57q1vW0652UsyzGlyrrsnFfb4Er/dK00mGG6bqbVxyzFULrotJhGxHMDiDXfZxujXDq9wZSPQpvaY36dk+lo/X4hXz1/6Qdry46ZQkO4KVLVh8sgemKbT+vJXQSN/M0i5NsvYkhG/903GeFvbrhELIvNf5sroLmRxPqOLOjt0JO4dex7eiPxTWFMxRvUvgezvMAthzy9xO170OJ5hrB4vdheWFPp0npGLwpD6NGoJFhaj5eyj/SePTadnqnzy4u0gdVtHvCvdsyA8vVakYLhXytMzP8/cq38BJKn4uq44pvkYrvi0+J1dsV3wondR5gT+aSH/jJCIZ3iQMAl/pwgmqOwtUAejkg0o1EYoJAnjl4rP12nV9LJa/vXYlnw93wdZJmntYRcYnd5m9wClxCdoJmzl60HFPrRA2mFkEoc5EswTHvYhQgvwjCP5+zNyckriWzuBgHcwBH5vjKQxXdR0L5WVgpQNimAja/FqmUg6Yrg8MW1l7fgHkDnsFGbIn4HnwAm7tlJ5+2pzBkPIx+SQur4q9PXInU8iukav5vrIbaPiHXAQFtLuBCJ5Ls0YM9EiyS3vDu12pbd7WntQfceYRq7QeLFHVceTMtPeqPSE6VmSV7pn7rNA8mjvYb1IL88VVriumnvhzAb9kMyQUWU23eiIsJtmxCGPnn3rblWNXHNt46EqioduQv47ltJj+6Fg3GgSpBu2nthuYNPFSRX+qfNODIVzlb3JAqQ91TS4Dz9RuQo7TIVDI+65Ii2zQRO1d67b+288ibt8kJuFy4DJe1adtdTmo3xcjLt86sDyhfrNMfcJ9WUN4aMLe7Jr7lRp3CT+leX+zvJT/NlvKpeg5PWlyWO6eQmnLQuTamvEPIoBmoIRPxY+KfAkh3JmqMPRt/QnL5pfNBNke91VvcwzUXPHQgrx7/X4KjDTwoyix8ozZ5tOqlzYDBwesP+fp2C+TJOLidpw5DiJ74xtMht4nVSynR1m78WHiX8w5CKSpbOGjZlp5iLtEAg6ftyMgXiloif+MEVhfPCp8yqGf9s2GI0VrnkriY7ZM00EYAX/Jgfes+crEqxZDY5stLw++YnmQXwP2YaZFEmXqBnslzi4ykCu38hI6mSz3RKLmmCj37ELytJb1mxoyi4Q7mbqbhzTQBN2PGbUBh6PM0iDeqWP58QEa6qwogCEi95cbsPXAroLSKAogVsAXKHlkt5P0hB5ZXKXI4Kzt6N7iFx64qaFpeqMVC9TtEntGHe1uN+1ekkyMkC/QkIj1+DwJe+/V2wPePDKNzJJWbNeloEKLyzIy0I+vzbfCNmNVbCnd+3I2wc7fIOBQFQLePy/XSytuI5P/pEdeSrtAtKZ4/+xNLbszORpX7vBsh3KVy/JR8gopnD05NDxqLar5PmfZxbfbBrhPjFi6RcZhlLVQXYsoY+v0WsvIh2ltGHW+Td5oQ7P7Jf2YhqqoOtoeGYujUd2PX1d2IsxUVzWJ3A3dE0+QB0y+aB8DJSKcIMnWVr9tRKtgg5jOwF2x9qxpODE/TIuF84i8zxECACvAjjeEmhXxfqq24Mxuhi7JjjodMbm+Z0Yuv9DR/X3HVLSdV/pUQoJxIPEb5jSnWGQqhUii3+VCHOa4sL4zJHvmNcOCNd74t6m+SKrL0KKzJKW5X9oSLsVb7sjLy6vBVQfVb90viuhvjOhJSWvQKUddGtCuSuS714saL1vhrh7It3vKtoCQi5Ld0hIStELet9zmNbCc9m3tr0rJrdd70x5Wt9CDw7l60Jv23pqxqL29qgUbo1oXKncW6b5EU35ienP7Ic/j3ajzU7ZPLRom0db8knuyuE5nPpuzIAUJkPGRJIOMqTc5PAgOvhupwCwWmXercGPy8k+bwqUH5sZVcHKXWPvbD2sQ9rH8ck/3hfJouLJkTdV8/1bmHy6YIzoBx1FuJ9IQU6HWsy1FbCz2IedD6LWd10nXglufF/p3nDNP9nzJVQhXX1ednGuPDJOKbLmGYXvQD1PUhveeHbmqqGkfhYqPKjAlR14T6q7HwDXv8l178c50TmsGiqrbnJJeQj03wfk+5B7jKY5f0Je5hUsDaz4e59xwxot4Gi5G6aSW+ZEX0o4jLXHCV/7x7kXheoOt2ZqtNnU3W6marTElUSBM+7zQPjwur+BH5OEzFyzT//+PtKOQQ1RUMpgvqCIFlaKCp1Ve7RV9GymzUDNFpXjV13uUExha0OYd2n8leNxg/6+OL/BAAA//8IyfRvvogAAA== - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/RawUbuntu/line33.sh b/pkg/agent/testdata/RawUbuntu/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/RawUbuntu/line33.sh +++ b/pkg/agent/testdata/RawUbuntu/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/RawUbuntu/line70.sh b/pkg/agent/testdata/RawUbuntu/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/RawUbuntu/line70.sh +++ b/pkg/agent/testdata/RawUbuntu/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/RawUbuntu/line9.sh b/pkg/agent/testdata/RawUbuntu/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/RawUbuntu/line9.sh +++ b/pkg/agent/testdata/RawUbuntu/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/pkg/agent/testdata/RawUbuntuContainerd/CustomData b/pkg/agent/testdata/RawUbuntuContainerd/CustomData index 3d103dfe261..2da82f253d9 100644 --- a/pkg/agent/testdata/RawUbuntuContainerd/CustomData +++ b/pkg/agent/testdata/RawUbuntuContainerd/CustomData @@ -6,7 +6,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 @@ -30,7 +30,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/containers/provision_installs.sh permissions: "0744" @@ -67,7 +67,7 @@ write_files: encoding: gzip owner: root content: !!binary | - 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 - path: /opt/azure/manifest.json permissions: "0644" diff --git a/pkg/agent/testdata/RawUbuntuContainerd/line33.sh b/pkg/agent/testdata/RawUbuntuContainerd/line33.sh index 5af06b28307..c334f5a6020 100644 --- a/pkg/agent/testdata/RawUbuntuContainerd/line33.sh +++ b/pkg/agent/testdata/RawUbuntuContainerd/line33.sh @@ -194,7 +194,7 @@ fi mkdir -p "/etc/systemd/system/kubelet.service.d" -logs_to_events "AKS.CSE.configureKubeletServingCertificateRotation" configureKubeletServingCertificateRotation +logs_to_events "AKS.CSE.configureKubeletServing" configureKubeletServing logs_to_events "AKS.CSE.configureK8s" configureK8s diff --git a/pkg/agent/testdata/RawUbuntuContainerd/line70.sh b/pkg/agent/testdata/RawUbuntuContainerd/line70.sh index 141a9193849..fb7731f9d10 100644 --- a/pkg/agent/testdata/RawUbuntuContainerd/line70.sh +++ b/pkg/agent/testdata/RawUbuntuContainerd/line70.sh @@ -155,14 +155,6 @@ EOF systemctl restart containerd } -configureKubeletServerCert() { - KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" - KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" - - openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 - openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" -} - configureK8s() { mkdir -p "/etc/kubernetes/certs" @@ -239,10 +231,6 @@ EOF sed -i "/cloudProviderBackoffJitter/d" /etc/kubernetes/azure.json fi - if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - configureKubeletServerCert - fi - if [ "${IS_CUSTOM_CLOUD}" == "true" ]; then set +x AKS_CUSTOM_CLOUD_JSON_PATH="/etc/kubernetes/${TARGET_ENVIRONMENT}.json" @@ -407,12 +395,25 @@ getPrimaryNicIP() { echo "$ip" } -configureKubeletServingCertificateRotation() { +generateSelfSignedKubeletServingCertificate() { + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + + openssl genrsa -out $KUBELET_SERVER_PRIVATE_KEY_PATH 2048 + openssl req -new -x509 -days 7300 -key $KUBELET_SERVER_PRIVATE_KEY_PATH -out $KUBELET_SERVER_CERT_PATH -subj "/CN=${NODE_NAME}" -addext "subjectAltName=DNS:${NODE_NAME}" +} + +configureKubeletServing() { if [ "${ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" != "true" ]; then - echo "kubelet serving certificate rotation is disabled, nothing to configure" + echo "kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate return 0 fi + KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" + KUBELET_SERVER_PRIVATE_KEY_PATH="/etc/kubernetes/certs/kubeletserver.key" + KUBELET_SERVER_CERT_PATH="/etc/kubernetes/certs/kubeletserver.crt" + export -f should_disable_kubelet_serving_certificate_rotation DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION=$(retrycmd_if_failure_no_stats 10 1 10 bash -cx should_disable_kubelet_serving_certificate_rotation) if [ $? -ne 0 ]; then @@ -420,25 +421,37 @@ configureKubeletServingCertificateRotation() { exit $ERR_LOOKUP_DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION_TAG fi - KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL="kubernetes.azure.com/kubelet-serving-ca=cluster" - - if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION,,}" == "true" ]; then - echo "kubelet serving certificate rotation is disabled by nodepool tags, reconfiguring kubelet flags and node labels" + if [ "${DISABLE_KUBELET_SERVING_CERTIFICATE_ROTATION}" == "true" ]; then + echo "kubelet serving certificate rotation is disabled by nodepool tags" + echo "reconfiguring kubelet flags and config as needed" KUBELET_FLAGS="${KUBELET_FLAGS/--rotate-server-certificates=true/--rotate-server-certificates=false}" - - if [ "${KUBELET_CONFIG_FILE_ENABLED,,}" == "true" ]; then + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then set +x KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'if .serverTLSBootstrap == true then .serverTLSBootstrap = false else . end' | base64) set -x fi + echo "generating self-signed serving certificate with openssl" + generateSelfSignedKubeletServingCertificate + + echo "removing node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL" removeKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL - return 0 + else + echo "kubelet serving certificate rotation is enabled" + + echo "removing --tls-cert-file and --tls-private-key-file from kubelet flags" + removeKubeletFlag "--tls-cert-file=$KUBELET_SERVER_CERT_PATH" + removeKubeletFlag "--tls-private-key-file=$KUBELET_SERVER_PRIVATE_KEY_PATH" + if [ "${KUBELET_CONFIG_FILE_ENABLED}" == "true" ]; then + set +x + KUBELET_CONFIG_FILE_CONTENT=$(echo "$KUBELET_CONFIG_FILE_CONTENT" | base64 -d | jq 'del(.tlsCertFile)' | jq 'del(.tlsPrivateKeyFile)' | base64) + set -x + fi + + echo "adding node label $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL if needed" + addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL fi - - echo "kubelet serving certificate rotation is enabled, will add node label if needed" - addKubeletNodeLabel $KUBELET_SERVING_CERTIFICATE_ROTATION_LABEL } ensureKubelet() { diff --git a/pkg/agent/testdata/RawUbuntuContainerd/line9.sh b/pkg/agent/testdata/RawUbuntuContainerd/line9.sh index 356a755d58d..caa9ab6a515 100644 --- a/pkg/agent/testdata/RawUbuntuContainerd/line9.sh +++ b/pkg/agent/testdata/RawUbuntuContainerd/line9.sh @@ -457,7 +457,7 @@ should_disable_kubelet_serving_certificate_rotation() { return $ret fi should_disable=$(echo "$body" | jq -r '.compute.tagsList[] | select(.name == "aks-disable-kubelet-serving-certificate-rotation") | .value') - echo "$should_disable" + echo "${should_disable,,}" } isMarinerOrAzureLinux() { @@ -616,4 +616,15 @@ removeKubeletNodeLabel() { fi } +removeKubeletFlag() { + local FLAG_STRING=$1 + if grep -e ",${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/,${FLAG_STRING}/}" + elif grep -e "${FLAG_STRING}," <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING},/}" + elif grep -e "${FLAG_STRING}" <<< "$KUBELET_FLAGS" > /dev/null 2>&1; then + KUBELET_FLAGS="${KUBELET_FLAGS/${FLAG_STRING}/}" + fi +} + #HELPERSEOF diff --git a/spec/parts/linux/cloud-init/artifacts/cse_config_spec.sh b/spec/parts/linux/cloud-init/artifacts/cse_config_spec.sh index 93e7435bafb..472ba74e524 100644 --- a/spec/parts/linux/cloud-init/artifacts/cse_config_spec.sh +++ b/spec/parts/linux/cloud-init/artifacts/cse_config_spec.sh @@ -21,81 +21,173 @@ Describe 'cse_config.sh' End End - Describe 'configureKubeletServingCertificateRotation' - It 'should no-op when EnableKubeletServingCertificateRotation is false' + Describe 'configureKubeletServing' + preserve_vars() { + %preserve KUBELET_FLAGS + %preserve KUBELET_NODE_LABELS + %preserve KUBELET_CONFIG_FILE_CONTENT + } + # preserve contents of variables on which to assert since we need to run configureKubeletServing + # in a subshell due to it modfiying shell opts (set +/-x), which would otherwise conflict with shellspec + AfterRun preserve_vars + + Mock openssl + echo "$@" + End + + It 'should only generate the self-signed serving cert when EnableKubeletServingCertificateRotation is false' retrycmd_if_failure_no_stats() { # for mocking IMDS calls echo "false" } - KUBELET_FLAGS="--rotate-certificates=true,--rotate-server-certificates=false,--node-ip=10.0.0.1,anonymous-auth=false" + KUBELET_FLAGS="--tls-cert-file=/etc/kubernetes/certs/kubeletserver.crt,--tls-private-key-file=/etc/kubernetes/certs/kubeletserver.key,--rotate-certificates=true,--rotate-server-certificates=false,--node-ip=10.0.0.1,anonymous-auth=false" KUBELET_NODE_LABELS="kubernetes.azure.com/agentpool=wp0" ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION="false" - When call configureKubeletServingCertificateRotation - The stdout should eq 'kubelet serving certificate rotation is disabled, nothing to configure' - The variable KUBELET_FLAGS should equal '--rotate-certificates=true,--rotate-server-certificates=false,--node-ip=10.0.0.1,anonymous-auth=false' + When run configureKubeletServing + The stdout should include 'kubelet serving certificate rotation is disabled, generating self-signed serving certificate with openssl' + The stdout should include 'genrsa -out /etc/kubernetes/certs/kubeletserver.key 2048' + The stdout should include 'req -new -x509 -days 7300 -key /etc/kubernetes/certs/kubeletserver.key -out /etc/kubernetes/certs/kubeletserver.crt' + The variable KUBELET_FLAGS should equal '--tls-cert-file=/etc/kubernetes/certs/kubeletserver.crt,--tls-private-key-file=/etc/kubernetes/certs/kubeletserver.key,--rotate-certificates=true,--rotate-server-certificates=false,--node-ip=10.0.0.1,anonymous-auth=false' The variable KUBELET_NODE_LABELS should equal 'kubernetes.azure.com/agentpool=wp0' End - It 'should reconfigure kubelet args to disable kubelet serving certificate rotation if opt-out tag is set' + It 'should reconfigure kubelet flags to disable kubelet serving certificate rotation if opt-out tag is set' retrycmd_if_failure_no_stats() { echo "true" } - KUBELET_FLAGS="--rotate-certificates=true,--rotate-server-certificates=true,--node-ip=10.0.0.1,anonymous-auth=false" + KUBELET_FLAGS="--tls-cert-file=/etc/kubernetes/certs/kubeletserver.crt,--tls-private-key-file=/etc/kubernetes/certs/kubeletserver.key,--rotate-certificates=true,--rotate-server-certificates=true,--node-ip=10.0.0.1,anonymous-auth=false" KUBELET_NODE_LABELS="kubernetes.azure.com/agentpool=wp0" ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION="true" - When call configureKubeletServingCertificateRotation - The stdout should not eq '' - The variable KUBELET_FLAGS should equal '--rotate-certificates=true,--rotate-server-certificates=false,--node-ip=10.0.0.1,anonymous-auth=false' + When run configureKubeletServing + The stdout should include 'genrsa -out /etc/kubernetes/certs/kubeletserver.key 2048' + The stdout should include 'req -new -x509 -days 7300 -key /etc/kubernetes/certs/kubeletserver.key -out /etc/kubernetes/certs/kubeletserver.crt' + The variable KUBELET_FLAGS should equal '--tls-cert-file=/etc/kubernetes/certs/kubeletserver.crt,--tls-private-key-file=/etc/kubernetes/certs/kubeletserver.key,--rotate-certificates=true,--rotate-server-certificates=false,--node-ip=10.0.0.1,anonymous-auth=false' The variable KUBELET_NODE_LABELS should equal 'kubernetes.azure.com/agentpool=wp0' End - It 'should reconfigure kubelet args and node labels to disable kubelet serving certificate rotation if opt-out tag is set' + It 'should reconfigure kubelet flags to disable kubelet serving certificate rotation if opt-out tag is set and kubelet config file is enabled' retrycmd_if_failure_no_stats() { echo "true" } - KUBELET_FLAGS="--rotate-certificates=true,--rotate-server-certificates=true,--node-ip=10.0.0.1,anonymous-auth=false" + kubelet_config_file() { + [ "$(echo "${kubelet_config_file:?}" | base64 -d | jq -r '.serverTLSBootstrap')" == "false" ] && \ + [ "$(echo "${kubelet_config_file:?}" | base64 -d | jq -r '.tlsCertFile')" == "/etc/kubernetes/certs/kubeletserver.crt" ] && \ + [ "$(echo "${kubelet_config_file:?}" | base64 -d | jq -r '.tlsPrivateKeyFile')" == "/etc/kubernetes/certs/kubeletserver.key" ] + } + KUBELET_CONFIG_FILE_ENABLED="true" + KUBELET_CONFIG_FILE_CONTENT=$(cat spec/parts/linux/cloud-init/artifacts/kubelet_mocks/config_file/server_tls_bootstrap_enabled.json | base64) + KUBELET_FLAGS="--tls-cert-file=/etc/kubernetes/certs/kubeletserver.crt,--tls-private-key-file=/etc/kubernetes/certs/kubeletserver.key,--rotate-certificates=true,--rotate-server-certificates=true,--node-ip=10.0.0.1,anonymous-auth=false" + KUBELET_NODE_LABELS="kubernetes.azure.com/agentpool=wp0" + ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION="true" + When run configureKubeletServing + The stderr should not eq '' + The stdout should include 'genrsa -out /etc/kubernetes/certs/kubeletserver.key 2048' + The stdout should include 'req -new -x509 -days 7300 -key /etc/kubernetes/certs/kubeletserver.key -out /etc/kubernetes/certs/kubeletserver.crt' + The variable KUBELET_CONFIG_FILE_CONTENT should satisfy kubelet_config_file + The variable KUBELET_FLAGS should equal '--tls-cert-file=/etc/kubernetes/certs/kubeletserver.crt,--tls-private-key-file=/etc/kubernetes/certs/kubeletserver.key,--rotate-certificates=true,--rotate-server-certificates=false,--node-ip=10.0.0.1,anonymous-auth=false' + The variable KUBELET_NODE_LABELS should equal 'kubernetes.azure.com/agentpool=wp0' + End + + It 'should reconfigure kubelet flags and node labels to disable kubelet serving certificate rotation if opt-out tag is set' + retrycmd_if_failure_no_stats() { + echo "true" + } + KUBELET_FLAGS="--tls-cert-file=/etc/kubernetes/certs/kubeletserver.crt,--tls-private-key-file=/etc/kubernetes/certs/kubeletserver.key,--rotate-certificates=true,--rotate-server-certificates=true,--node-ip=10.0.0.1,anonymous-auth=false" KUBELET_NODE_LABELS="kubernetes.azure.com/agentpool=wp0,kubernetes.azure.com/kubelet-serving-ca=cluster" ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION="true" - When call configureKubeletServingCertificateRotation - The stdout should not eq '' - The variable KUBELET_FLAGS should equal '--rotate-certificates=true,--rotate-server-certificates=false,--node-ip=10.0.0.1,anonymous-auth=false' + When run configureKubeletServing + The stdout should include 'genrsa -out /etc/kubernetes/certs/kubeletserver.key 2048' + The stdout should include 'req -new -x509 -days 7300 -key /etc/kubernetes/certs/kubeletserver.key -out /etc/kubernetes/certs/kubeletserver.crt' + The variable KUBELET_FLAGS should equal '--tls-cert-file=/etc/kubernetes/certs/kubeletserver.crt,--tls-private-key-file=/etc/kubernetes/certs/kubeletserver.key,--rotate-certificates=true,--rotate-server-certificates=false,--node-ip=10.0.0.1,anonymous-auth=false' + The variable KUBELET_NODE_LABELS should equal 'kubernetes.azure.com/agentpool=wp0' + End + + It 'should no-op if kubelet flags and node labels are already correct when the opt-out tag is set' + retrycmd_if_failure_no_stats() { + echo "true" + } + KUBELET_FLAGS="--tls-cert-file=/etc/kubernetes/certs/kubeletserver.crt,--tls-private-key-file=/etc/kubernetes/certs/kubeletserver.key,--rotate-certificates=true,--rotate-server-certificates=false,--node-ip=10.0.0.1,anonymous-auth=false" + KUBELET_NODE_LABELS="kubernetes.azure.com/agentpool=wp0" + ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION="true" + When run configureKubeletServing + The stdout should include 'genrsa -out /etc/kubernetes/certs/kubeletserver.key 2048' + The stdout should include 'req -new -x509 -days 7300 -key /etc/kubernetes/certs/kubeletserver.key -out /etc/kubernetes/certs/kubeletserver.crt' + The variable KUBELET_FLAGS should equal '--tls-cert-file=/etc/kubernetes/certs/kubeletserver.crt,--tls-private-key-file=/etc/kubernetes/certs/kubeletserver.key,--rotate-certificates=true,--rotate-server-certificates=false,--node-ip=10.0.0.1,anonymous-auth=false' The variable KUBELET_NODE_LABELS should equal 'kubernetes.azure.com/agentpool=wp0' End - It 'should no-op if kubelet args and node labels are already correct when the opt-out tag is set' + It 'should no-op if kubelet flags and node labels are already correct when the opt-out tag is set and kubelet config file is enabled' retrycmd_if_failure_no_stats() { echo "true" } - KUBELET_FLAGS="--rotate-certificates=true,--rotate-server-certificates=false,--node-ip=10.0.0.1,anonymous-auth=false" + kubelet_config_file() { + [ "$(echo "${kubelet_config_file:?}" | base64 -d | jq -r 'has("serverTLSBootstrap")')" == "false" ] && \ + [ "$(echo "${kubelet_config_file:?}" | base64 -d | jq -r '.tlsCertFile')" == "/etc/kubernetes/certs/kubeletserver.crt" ] && \ + [ "$(echo "${kubelet_config_file:?}" | base64 -d | jq -r '.tlsPrivateKeyFile')" == "/etc/kubernetes/certs/kubeletserver.key" ] + } + KUBELET_CONFIG_FILE_ENABLED="true" + KUBELET_CONFIG_FILE_CONTENT=$(cat spec/parts/linux/cloud-init/artifacts/kubelet_mocks/config_file/server_tls_bootstrap_disabled.json | base64) + KUBELET_FLAGS="--tls-cert-file=/etc/kubernetes/certs/kubeletserver.crt,--tls-private-key-file=/etc/kubernetes/certs/kubeletserver.key,--rotate-certificates=true,--rotate-server-certificates=false,--node-ip=10.0.0.1,anonymous-auth=false" KUBELET_NODE_LABELS="kubernetes.azure.com/agentpool=wp0" ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION="true" - When call configureKubeletServingCertificateRotation - The stdout should not eq '' - The variable KUBELET_FLAGS should equal '--rotate-certificates=true,--rotate-server-certificates=false,--node-ip=10.0.0.1,anonymous-auth=false' + When run configureKubeletServing + The stderr should not eq '' + The stdout should include 'genrsa -out /etc/kubernetes/certs/kubeletserver.key 2048' + The stdout should include 'req -new -x509 -days 7300 -key /etc/kubernetes/certs/kubeletserver.key -out /etc/kubernetes/certs/kubeletserver.crt' + The variable KUBELET_CONFIG_FILE_CONTENT should satisfy kubelet_config_file + The variable KUBELET_FLAGS should equal '--tls-cert-file=/etc/kubernetes/certs/kubeletserver.crt,--tls-private-key-file=/etc/kubernetes/certs/kubeletserver.key,--rotate-certificates=true,--rotate-server-certificates=false,--node-ip=10.0.0.1,anonymous-auth=false' The variable KUBELET_NODE_LABELS should equal 'kubernetes.azure.com/agentpool=wp0' End - It 'should reconfigure kubelet node labels to enable kubelet serving certificate rotation if opt-out tag is not set' + It 'should reconfigure kubelet flags node labels to enable kubelet serving certificate rotation if opt-out tag is not set' retrycmd_if_failure_no_stats() { echo "false" } - KUBELET_FLAGS="--rotate-certificates=true,--rotate-server-certificates=true,--node-ip=10.0.0.1,anonymous-auth=false" + KUBELET_FLAGS="--tls-cert-file=/etc/kubernetes/certs/kubeletserver.crt,--tls-private-key-file=/etc/kubernetes/certs/kubeletserver.key,--rotate-certificates=true,--rotate-server-certificates=true,--node-ip=10.0.0.1,anonymous-auth=false" + KUBELET_NODE_LABELS="kubernetes.azure.com/agentpool=wp0" + ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION="true" + When run configureKubeletServing + The stdout should include 'kubelet serving certificate rotation is enabled' + The stdout should include 'removing --tls-cert-file and --tls-private-key-file from kubelet flags' + The stdout should include 'adding node label' + The variable KUBELET_FLAGS should equal '--rotate-certificates=true,--rotate-server-certificates=true,--node-ip=10.0.0.1,anonymous-auth=false' + The variable KUBELET_NODE_LABELS should equal 'kubernetes.azure.com/agentpool=wp0,kubernetes.azure.com/kubelet-serving-ca=cluster' + End + + It 'should reconfigure kubelet flags and node labels to enable kubelet serving certificate rotation if opt-out tag is not set and kubelet config file is enabled' + retrycmd_if_failure_no_stats() { + echo "false" + } + kubelet_config_file() { + [ "$(echo "${kubelet_config_file:?}" | base64 -d | jq -r '.serverTLSBootstrap')" == "true" ] && \ + [ "$(echo "${kubelet_config_file:?}" | base64 -d | jq -r 'has("tlsCertFile")')" == "false" ] && \ + [ "$(echo "${kubelet_config_file:?}" | base64 -d | jq -r 'has("tlsPrivateKeyFile")')" == "false" ] + } + KUBELET_CONFIG_FILE_ENABLED="true" + KUBELET_CONFIG_FILE_CONTENT=$(cat spec/parts/linux/cloud-init/artifacts/kubelet_mocks/config_file/server_tls_bootstrap_enabled.json | base64) + KUBELET_FLAGS="--tls-cert-file=/etc/kubernetes/certs/kubeletserver.crt,--tls-private-key-file=/etc/kubernetes/certs/kubeletserver.key,--rotate-certificates=true,--rotate-server-certificates=true,--node-ip=10.0.0.1,anonymous-auth=false" KUBELET_NODE_LABELS="kubernetes.azure.com/agentpool=wp0" ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION="true" - When call configureKubeletServingCertificateRotation - The stdout should not eq '' + When run configureKubeletServing + The stderr should not eq '' + The stdout should include 'kubelet serving certificate rotation is enabled' + The stdout should include 'removing --tls-cert-file and --tls-private-key-file from kubelet flags' + The stdout should include 'adding node label' + The variable KUBELET_CONFIG_FILE_CONTENT should satisfy kubelet_config_file The variable KUBELET_FLAGS should equal '--rotate-certificates=true,--rotate-server-certificates=true,--node-ip=10.0.0.1,anonymous-auth=false' The variable KUBELET_NODE_LABELS should equal 'kubernetes.azure.com/agentpool=wp0,kubernetes.azure.com/kubelet-serving-ca=cluster' End - It 'should no-op if kubelet args and node labels are already correct when the opt-out tag is not set' + It 'should no-op if kubelet flags and node labels are already correct when the opt-out tag is not set' retrycmd_if_failure_no_stats() { echo "false" } KUBELET_FLAGS="--rotate-certificates=true,--rotate-server-certificates=true,--node-ip=10.0.0.1,anonymous-auth=false" KUBELET_NODE_LABELS="kubernetes.azure.com/agentpool=wp0,kubernetes.azure.com/kubelet-serving-ca=cluster" ENABLE_KUBELET_SERVING_CERTIFICATE_ROTATION="true" - When call configureKubeletServingCertificateRotation - The stdout should not eq '' + When run configureKubeletServing + The stdout should include 'kubelet serving certificate rotation is enabled' + The stdout should include 'removing --tls-cert-file and --tls-private-key-file from kubelet flags' + The stdout should include 'adding node label' The variable KUBELET_FLAGS should equal '--rotate-certificates=true,--rotate-server-certificates=true,--node-ip=10.0.0.1,anonymous-auth=false' The variable KUBELET_NODE_LABELS should equal 'kubernetes.azure.com/agentpool=wp0,kubernetes.azure.com/kubelet-serving-ca=cluster' End diff --git a/spec/parts/linux/cloud-init/artifacts/kubelet_mocks/config_file/server_tls_bootstrap_disabled.json b/spec/parts/linux/cloud-init/artifacts/kubelet_mocks/config_file/server_tls_bootstrap_disabled.json new file mode 100644 index 00000000000..52830052f13 --- /dev/null +++ b/spec/parts/linux/cloud-init/artifacts/kubelet_mocks/config_file/server_tls_bootstrap_disabled.json @@ -0,0 +1,71 @@ +{ + "kind": "KubeletConfiguration", + "apiVersion": "kubelet.config.k8s.io/v1beta1", + "staticPodPath": "/etc/kubernetes/manifests", + "address": "0.0.0.0", + "tlsCertFile": "/etc/kubernetes/certs/kubeletserver.crt", + "tlsPrivateKeyFile": "/etc/kubernetes/certs/kubeletserver.key", + "tlsCipherSuites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256" + ], + "rotateCertificates": true, + "authentication": { + "x509": { + "clientCAFile": "/etc/kubernetes/certs/ca.crt" + }, + "webhook": { + "enabled": true + }, + "anonymous": {} + }, + "authorization": { + "mode": "Webhook", + "webhook": {} + }, + "eventRecordQPS": 0, + "clusterDomain": "cluster.local", + "clusterDNS": [ + "10.0.0.10" + ], + "streamingConnectionIdleTimeout": "4h", + "nodeStatusUpdateFrequency": "10s", + "imageGCHighThresholdPercent": 90, + "imageGCLowThresholdPercent": 70, + "cgroupsPerQOS": true, + "cpuManagerPolicy": "static", + "topologyManagerPolicy": "best-effort", + "maxPods": 250, + "cpuCFSQuota": true, + "cpuCFSQuotaPeriod": "200ms", + "evictionHard": { + "memory.available": "100Mi", + "nodefs.available": "10%", + "nodefs.inodesFree": "5%", + "pid.available": "2000" + }, + "protectKernelDefaults": true, + "featureGates": { + "CustomCPUCFSQuotaPeriod": true + }, + "failSwapOn": false, + "containerLogMaxSize": "50M", + "kubeReserved": { + "cpu": "100m", + "memory": "1792Mi", + "pid": "1000" + }, + "enforceNodeAllocatable": [ + "pods" + ], + "allowedUnsafeSysctls": [ + "kernel.msg*", + "net.*" + ] +} \ No newline at end of file diff --git a/spec/parts/linux/cloud-init/artifacts/kubelet_mocks/config_file/server_tls_bootstrap_enabled.json b/spec/parts/linux/cloud-init/artifacts/kubelet_mocks/config_file/server_tls_bootstrap_enabled.json new file mode 100644 index 00000000000..c0f69f697ac --- /dev/null +++ b/spec/parts/linux/cloud-init/artifacts/kubelet_mocks/config_file/server_tls_bootstrap_enabled.json @@ -0,0 +1,72 @@ +{ + "kind": "KubeletConfiguration", + "apiVersion": "kubelet.config.k8s.io/v1beta1", + "staticPodPath": "/etc/kubernetes/manifests", + "address": "0.0.0.0", + "tlsCertFile": "/etc/kubernetes/certs/kubeletserver.crt", + "tlsPrivateKeyFile": "/etc/kubernetes/certs/kubeletserver.key", + "tlsCipherSuites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256" + ], + "rotateCertificates": true, + "serverTLSBootstrap": true, + "authentication": { + "x509": { + "clientCAFile": "/etc/kubernetes/certs/ca.crt" + }, + "webhook": { + "enabled": true + }, + "anonymous": {} + }, + "authorization": { + "mode": "Webhook", + "webhook": {} + }, + "eventRecordQPS": 0, + "clusterDomain": "cluster.local", + "clusterDNS": [ + "10.0.0.10" + ], + "streamingConnectionIdleTimeout": "4h", + "nodeStatusUpdateFrequency": "10s", + "imageGCHighThresholdPercent": 90, + "imageGCLowThresholdPercent": 70, + "cgroupsPerQOS": true, + "cpuManagerPolicy": "static", + "topologyManagerPolicy": "best-effort", + "maxPods": 250, + "cpuCFSQuota": true, + "cpuCFSQuotaPeriod": "200ms", + "evictionHard": { + "memory.available": "100Mi", + "nodefs.available": "10%", + "nodefs.inodesFree": "5%", + "pid.available": "2000" + }, + "protectKernelDefaults": true, + "featureGates": { + "CustomCPUCFSQuotaPeriod": true + }, + "failSwapOn": false, + "containerLogMaxSize": "50M", + "kubeReserved": { + "cpu": "100m", + "memory": "1792Mi", + "pid": "1000" + }, + "enforceNodeAllocatable": [ + "pods" + ], + "allowedUnsafeSysctls": [ + "kernel.msg*", + "net.*" + ] +} \ No newline at end of file