diff --git a/Dockerfile b/Dockerfile index 1e87df77..f4ca5149 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,9 +1,9 @@ -ARG ALPINE_VERSION=3.20 +ARG ALPINE_VERSION=3.21 FROM docker.io/alpine:${ALPINE_VERSION} ARG ALPINE_VERSION -ARG KUBE_VERSION=1.30.6 +ARG KUBE_VERSION=1.31.4 ARG SOPS_VERSION="3.9.1" ARG VALS_VERSION="0.37.6" @@ -12,7 +12,7 @@ ARG HELM_SECRETS_VERSION="4.6.2" RUN cd /etc/apk/keys && \ wget "https://cdn.zero-downtime.net/alpine/stefan@zero-downtime.net-61bb6bfb.rsa.pub" && \ echo "@kubezero https://cdn.zero-downtime.net/alpine/v${ALPINE_VERSION}/kubezero" >> /etc/apk/repositories && \ - echo "@edge-testing http://dl-cdn.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories && \ + echo "@testing http://dl-cdn.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories && \ echo "@edge-community http://dl-cdn.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories && \ apk upgrade -U -a --no-cache && \ apk --no-cache add \ @@ -24,6 +24,7 @@ RUN cd /etc/apk/keys && \ py3-yaml \ restic \ helm \ + ytt@testing \ etcd-ctl@edge-community \ cri-tools@kubezero \ etcdhelper@kubezero \ diff --git a/admin/kubezero.sh b/admin/kubezero.sh index cd41be02..95cbd740 100755 --- a/admin/kubezero.sh +++ b/admin/kubezero.sh @@ -69,9 +69,9 @@ render_kubeadm() { fi # "uncloak" the json patches after they got processed by helm - for s in apiserver controller-manager scheduler; do - yq eval '.json' ${WORKDIR}/kubeadm/templates/patches/kube-${s}1\+json.yaml > /tmp/_tmp.yaml && \ - mv /tmp/_tmp.yaml ${WORKDIR}/kubeadm/templates/patches/kube-${s}1\+json.yaml + for s in kube-apiserver kube-controller-manager kube-scheduler corednsdeployment; do + yq eval '.json' ${WORKDIR}/kubeadm/templates/patches/${s}1\+json.yaml > /tmp/_tmp.yaml && \ + mv /tmp/_tmp.yaml ${WORKDIR}/kubeadm/templates/patches/${s}1\+json.yaml done } @@ -117,40 +117,12 @@ post_kubeadm() { for f in ${WORKDIR}/kubeadm/templates/resources/*.yaml; do kubectl apply -f $f $LOG done - - # Patch coreDNS addon, ideally we prevent kubeadm to reset coreDNS to its defaults - kubectl patch deployment coredns -n kube-system --patch-file ${WORKDIR}/kubeadm/templates/patches/coredns0.yaml $LOG } kubeadm_upgrade() { # pre upgrade hook - ### Remove with 1.31 - # migrate kubezero CM to kubezero NS - # migrate ArgoCD app from values to valuesObject - create_ns kubezero - - if [ "$ARGOCD" == "True" ]; then - kubectl get app kubezero -n argocd -o yaml > $WORKDIR/kubezero-argo-app.yaml - if [ "$(yq '(.spec.source.helm | has "values")' $WORKDIR/kubezero-argo-app.yaml)" == "true" ]; then - yq '.spec.source.helm.valuesObject = (.spec.source.helm.values | from_yaml)' \ - $WORKDIR/kubezero-argo-app.yaml | kubectl apply --server-side --force-conflicts -f - - - kubectl patch app kubezero -n argocd --type json -p='[{"op": "remove", "path": "/spec/source/helm/values"}]' - kubectl delete cm kubezero-values -n kube-system > /dev/null || true - kubectl create configmap -n kubezero kubezero-values || true - fi - - else - kubectl get cm kubezero-values -n kubezero > /dev/null || \ - { kubectl get cm kubezero-values -n kube-system -o yaml | \ - sed 's/^ namespace: kube-system/ namespace: kubezero/' | \ - kubectl create -f - && \ - kubectl delete cm kubezero-values -n kube-system ; } - fi - ### - # get current values, argo app over cm get_kubezero_values $ARGOCD @@ -191,14 +163,6 @@ kubeadm_upgrade() { # post upgrade - # Update kubezero-values CM - kubectl get cm -n kube-system kubelet-config -o=yaml | \ - yq e '.data.kubelet' | yq e '.containerRuntimeEndpoint = "unix:///run/containerd/containerd.sock"' > $WORKDIR/new-kubelet.cm - - kubectl get cm -n kube-system kubelet-config -o=yaml | \ - yq e '.data.kubelet |= load_str("/tmp/kubezero/new-kubelet.cm")' | \ - kubectl apply --server-side --force-conflicts -f - - # Cleanup after kubeadm on the host rm -rf ${HOSTFS}/etc/kubernetes/tmp diff --git a/admin/libhelm.sh b/admin/libhelm.sh index c563d728..27aa0758 100644 --- a/admin/libhelm.sh +++ b/admin/libhelm.sh @@ -46,6 +46,16 @@ function get_kubezero_values() { } +# Update kubezero-values CM +function update_kubezero_cm() { + kubectl get application kubezero -n argocd -o yaml | yq .spec.source.helm.valuesObject > ${WORKDIR}/kubezero-values.yaml + + kubectl get cm -n kubezero kubezero-values -o=yaml | \ + yq e '.data."values.yaml" |= load_str("/tmp/kubezero/kubezero-values.yaml")' | \ + kubectl apply --server-side --force-conflicts -f - +} + + function disable_argo() { cat > _argoapp_patch.yaml < to continue" @@ -33,8 +28,7 @@ read -r # shellcheck disable=SC2015 #[ "$ARGOCD" == "True" ] && kubectl edit app kubezero -n argocd || kubectl edit cm kubezero-values -n kubezero -### v1.30 -kubectl delete runtimeclass crio || true +### v1.31 # upgrade modules # @@ -43,9 +37,8 @@ kubectl delete runtimeclass crio || true control_plane_upgrade "apply_network, apply_addons, apply_storage, apply_operators" -# Disabled during 1.30 due to nvidia runtime deadlock -#echo "Checking that all pods in kube-system are running ..." -#waitSystemPodsRunning +echo "Checking that all pods in kube-system are running ..." +waitSystemPodsRunning echo "Applying remaining KubeZero modules..." diff --git a/charts/kubeadm/Chart.yaml b/charts/kubeadm/Chart.yaml index 4a70a68e..6af3c51e 100644 --- a/charts/kubeadm/Chart.yaml +++ b/charts/kubeadm/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: kubeadm description: KubeZero Kubeadm cluster config type: application -version: 1.30.6 +version: 1.31.4 home: https://kubezero.com icon: https://cdn.zero-downtime.net/assets/kubezero/logo-small-64.png keywords: diff --git a/charts/kubeadm/templates/_helpers.tpl b/charts/kubeadm/templates/_helpers.tpl index e211fc7f..8390f8f1 100644 --- a/charts/kubeadm/templates/_helpers.tpl +++ b/charts/kubeadm/templates/_helpers.tpl @@ -3,7 +3,7 @@ {{- /* v1.28: PodAndContainerStatsFromCRI still not working */ -}} {{- /* v1.28: UnknownVersionInteroperabilityProxy requires StorageVersionAPI which is still alpha in 1.30 */ -}} {{- define "kubeadm.featuregates" }} -{{- $gates := list "CustomCPUCFSQuotaPeriod" }} +{{- $gates := list "CustomCPUCFSQuotaPeriod" "AuthorizeWithSelectors" "AuthorizeNodeWithSelectors" "ConsistentListFromCache" "VolumeAttributesClass"}} {{- if eq .return "csv" }} {{- range $key := $gates }} {{- $key }}=true, diff --git a/charts/kubeadm/templates/patches/coredns0.yaml b/charts/kubeadm/templates/patches/corednsdeployment0.yaml similarity index 81% rename from charts/kubeadm/templates/patches/coredns0.yaml rename to charts/kubeadm/templates/patches/corednsdeployment0.yaml index 21608adb..4720989c 100644 --- a/charts/kubeadm/templates/patches/coredns0.yaml +++ b/charts/kubeadm/templates/patches/corednsdeployment0.yaml @@ -1,5 +1,4 @@ spec: - replicas: {{ ternary 3 1 .Values.global.highAvailable }} template: spec: containers: diff --git a/charts/kubeadm/templates/patches/corednsdeployment1+json.yaml b/charts/kubeadm/templates/patches/corednsdeployment1+json.yaml new file mode 100644 index 00000000..cc89cc68 --- /dev/null +++ b/charts/kubeadm/templates/patches/corednsdeployment1+json.yaml @@ -0,0 +1,4 @@ +json: + - op: replace + path: /spec/replicas + value: {{ ternary 3 1 .Values.global.highAvailable }} diff --git a/charts/kubezero-argo/README.md b/charts/kubezero-argo/README.md index 961345a2..708b90e2 100644 --- a/charts/kubezero-argo/README.md +++ b/charts/kubezero-argo/README.md @@ -1,6 +1,6 @@ # kubezero-argo -![Version: 0.2.6](https://img.shields.io/badge/Version-0.2.6-informational?style=flat-square) +![Version: 0.2.7](https://img.shields.io/badge/Version-0.2.7-informational?style=flat-square) KubeZero Argo - Events, Workflow, CD @@ -18,8 +18,8 @@ Kubernetes: `>= 1.26.0-0` | Repository | Name | Version | |------------|------|---------| -| https://argoproj.github.io/argo-helm | argo-cd | 7.7.2 | -| https://argoproj.github.io/argo-helm | argo-events | 2.4.8 | +| https://argoproj.github.io/argo-helm | argo-cd | 7.7.7 | +| https://argoproj.github.io/argo-helm | argo-events | 2.4.9 | | https://argoproj.github.io/argo-helm | argocd-apps | 2.0.2 | | https://argoproj.github.io/argo-helm | argocd-image-updater | 0.11.2 | | https://cdn.zero-downtime.net/charts/ | kubezero-lib | >= 0.1.6 | @@ -28,12 +28,13 @@ Kubernetes: `>= 1.26.0-0` | Key | Type | Default | Description | |-----|------|---------|-------------| +| argo-cd.configs.cm."application.resourceTrackingMethod" | string | `"annotation"` | | | argo-cd.configs.cm."resource.customizations" | string | `"cert-manager.io/Certificate:\n # Lua script for customizing the health status assessment\n health.lua: |\n hs = {}\n if obj.status ~= nil then\n if obj.status.conditions ~= nil then\n for i, condition in ipairs(obj.status.conditions) do\n if condition.type == \"Ready\" and condition.status == \"False\" then\n hs.status = \"Degraded\"\n hs.message = condition.message\n return hs\n end\n if condition.type == \"Ready\" and condition.status == \"True\" then\n hs.status = \"Healthy\"\n hs.message = condition.message\n return hs\n end\n end\n end\n end\n hs.status = \"Progressing\"\n hs.message = \"Waiting for certificate\"\n return hs\n"` | | | argo-cd.configs.cm."timeout.reconciliation" | string | `"300s"` | | -| argo-cd.configs.cm."ui.bannercontent" | string | `"KubeZero v1.30 - Release notes"` | | +| argo-cd.configs.cm."ui.bannercontent" | string | `"KubeZero v1.31 - Release notes"` | | | argo-cd.configs.cm."ui.bannerpermanent" | string | `"true"` | | | argo-cd.configs.cm."ui.bannerposition" | string | `"bottom"` | | -| argo-cd.configs.cm."ui.bannerurl" | string | `"https://kubezero.com/releases/v1.30"` | | +| argo-cd.configs.cm."ui.bannerurl" | string | `"https://kubezero.com/releases/v1.31"` | | | argo-cd.configs.cm.url | string | `"https://argocd.example.com"` | | | argo-cd.configs.params."controller.diff.server.side" | string | `"true"` | | | argo-cd.configs.params."controller.operation.processors" | string | `"5"` | | @@ -51,8 +52,9 @@ Kubernetes: `>= 1.26.0-0` | argo-cd.dex.enabled | bool | `false` | | | argo-cd.enabled | bool | `false` | | | argo-cd.global.image.repository | string | `"public.ecr.aws/zero-downtime/zdt-argocd"` | | -| argo-cd.global.image.tag | string | `"v2.12.4"` | | +| argo-cd.global.image.tag | string | `"v2.13.1"` | | | argo-cd.global.logging.format | string | `"json"` | | +| argo-cd.global.networkPolicy.create | bool | `true` | | | argo-cd.istio.enabled | bool | `false` | | | argo-cd.istio.gateway | string | `"istio-ingress/ingressgateway"` | | | argo-cd.istio.ipBlocks | list | `[]` | | diff --git a/charts/kubezero-argo/values.yaml b/charts/kubezero-argo/values.yaml index 79e994df..0d1719d4 100644 --- a/charts/kubezero-argo/values.yaml +++ b/charts/kubezero-argo/values.yaml @@ -66,6 +66,10 @@ argo-cd: timeout.reconciliation: 300s + application.resourceTrackingMethod: annotation + installationID: "KubeZero-ArgoCD" + application.instanceLabelKey: Null + resource.customizations: | cert-manager.io/Certificate: # Lua script for customizing the health status assessment diff --git a/charts/kubezero-network/README.md b/charts/kubezero-network/README.md index 39f0b408..77bac577 100644 --- a/charts/kubezero-network/README.md +++ b/charts/kubezero-network/README.md @@ -1,6 +1,6 @@ # kubezero-network -![Version: 0.5.5](https://img.shields.io/badge/Version-0.5.5-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) +![Version: 0.5.6](https://img.shields.io/badge/Version-0.5.6-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) KubeZero umbrella chart for all things network @@ -20,8 +20,8 @@ Kubernetes: `>= 1.26.0` |------------|------|---------| | https://cdn.zero-downtime.net/charts/ | kubezero-lib | >= 0.1.6 | | https://haproxytech.github.io/helm-charts | haproxy | 1.23.0 | -| https://helm.cilium.io/ | cilium | 1.16.3 | -| https://metallb.github.io/metallb | metallb | 0.14.8 | +| https://helm.cilium.io/ | cilium | 1.16.5 | +| https://metallb.github.io/metallb | metallb | 0.14.9 | ## Values diff --git a/charts/kubezero-network/templates/cilium-grafana-dashboards.yaml b/charts/kubezero-network/templates/cilium-grafana-dashboards.yaml index 2a7497e3..358e8c67 100644 --- a/charts/kubezero-network/templates/cilium-grafana-dashboards.yaml +++ b/charts/kubezero-network/templates/cilium-grafana-dashboards.yaml @@ -11,7 +11,7 @@ metadata: k8s-sidecar-target-directory: KubeZero binaryData: cilium-agents.json.gz: - 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 cilium-operator.json.gz: H4sIAAAAAAAC/+2cbW/bNhCAv/dXECowJEOGWW6SBgP2wU3TLkDTGknaDWgDgZZomQglaiTlxDX830dSb5Qlv9StEy/lF1s+UuTx7sh7RMmaPgPA8TwcJ6ngzh/gs/wNwFR/ypIYRkhKnddXXv/yw8XZ9V9nH6+cg6KYwAEiqjxhNEJihFJeFQaI+wwnAtNYVakKxCTRjQZQQE5T5qOqLCFpiOPzYFGjWfn7XK1+VUNXmMnPG1XXgXFMBVR9q1Fl43EI5qIcYzVKWTJIMRHnSk/3oJIaCtY7M+qgGA6IKhcsRYZ8hIMWKfZpfEoJZapBFg7gXucAdF1XfhwdHQB332y6MH6vGgv4BfQIYqKmQmVPPhpQyAInL5vp7xv5OdNGQQEWc9o6YYyENnecEpJJGExG15QSgRMp72ghVlVO9CHB8a0OlczSCYwRaQkdSDDkeqyVB7KCcai0fe4Ph3A4LHUtXTyA+owhJBxVwSTH9g7FoRgpH3VqctRWfYXnnCFGJDil8RCHdfUCNIQpEXWlpdxPuaCRks5K8czwAh0jxqTTM9M0RjXEhBTWLAVvGQwwikWtIJSt9Omc0dSwj4ze7pQZuobg3mxD/p6o3w0tZFQGKL5CDLcYTfu4e1jNbhSiOGhzXu08bRvGsmHMl0Twvk2K4xYpH9G75pQRMvZJS+0xJGk1iMZIZZTqUrM1LbzDQRZEptQI6GzqycnQpzgWF1RPYy2ogocm9ZWljLl3ZVMNhRLoo7YITpCM0ljAEDUckigNVIik3HR/Jm/6T7ogQAzptWVIqKj05drhH8wILfWuBbmetOp85bcDs0SF6ytE6N011eXSg7Xywt6mN2oTZEE/a7aTH1Ue4ovsyQX0bxu24QIlCQqkf5pmFpCFSCyxCrpPWK7sHmZQoD0fE5xGHpXOg4IyT6YqH3Hu+UnqcSQX+YB7OnCnmHp5ZZgkf35xilO+OLPPbnSzvw8GE7CX0GAf/CqH0ZmzOmURVPPKEThCXubHehUZCoiN9RRx2kveQF/ojOPWLa2n95uyh4YrGBpmibjnrHRoYSK5PjxhE6nVr91Er9Y3kZxaTzmK5heO0kSnzpLpLEYMyfWfBHMLsVL4DdN5twCUUn6JwnwVnjvhaoSHonmG0OTjnPY/go9crrdAGhHEaoGvKpXYMzXzEmQoaGYmTpmYy7o6KXkFkOE4wGMcpNKsjXRQ1NG0VSlwD+/xXF4ZpP5ttjyZ41FZNM9Nasgt3DhXuz27llm0JWNN4P2yXFFFVZ7C5hby/NqgroYqoOEryFEjkjJUaFTPWKEhNoazcuZVmsqz2A7o2Qj/SdPtMkWGbZSk5e/QuFS6Bvu5CVZT+EXvH09OOYkDsfAiFFE28QYTgbiXjc95jo6g30E/GZ+72+TzmmBjQD9eDugqPHr8Or/Oa0TPFvmd4XAkrrLrXsv2j8j2j0vJCgEXkU3rirOMbvYfj2R6n96267sG36yBgE/BRMuTSLuZXn+DmeT11pMw0/n7RWZaeM11tiO0fJnrDTK9gVw4hJmnLTFvQswt64jl5V3gZZ8SAhOug3cJstbmykIgdOeAsNpbXbBhe9SIKI18xwZoFJvtN82pet7vXTTvsjBpz3UuDSzgr/TnybduwB9vwPcndv99Nxm9+1iMXjPh1hAdJzCSHzzbSlSrx+bEtCYXTaeqm9lsjW3nx0Sg8z7oBYHsjiMLPt8JPjsCFBZ8LA1snQYa232b4IBhXMsDlge2tGfXejsS+V0PJtgLUqafPirvSfI00ncdf/+203yaxkKfuH2wyLSRvc9mYDqVuTuR8YGkCsHu88bZaRf0+ufgXA1aDli3Ybnju7gjEEU42m0XSx9PgD5eztHHyYqtCPdwA/iwzwJa9tg6e7RuRKjHcvj2McGXABNSNtl5JnifRgPEAB2CumUsDthtCAsCFgQWg8DJjwCBaivDkoAlgQclATiGmOin2bZMA7r6UI6a7zgLPAeVquAOixGAxe0J0LSWJQRLCJYQLCEsJgT3+IcgwrFFBIsIj3KjQnOCTICT2M/+L/UgNxnKWwy7zgsXSEAVY+BSmwh8aCpuIWEjSKCJvZtgEeFnfLKx626CCPZ+gkWEbT/buPSZBFXoERxhselTDctaeKQHHP4HjzP4RK1FQP2VBCgLAm1BHIeWQL6PQBj61zKIZZCf83nKjSDE3smwDPIg/4FevFVRbt97PkMZQsgrSeNFLjwd6NeyHeR/t3wAnsg6ms3AnjzOu5/N/2l29/6aUVgSnOaWtEBhtzSeAk6Ub7KUc05NJzXqF53MNw73RyiCnxDj2cs1u0eZWExI/iZIdpvVlOtu5fb8BmtuN0fO8TsqK5ZdCRQlBGosX+OdmUte47nyzaGywr8pYpO513wueG+lnhSlRsNsCXFievebW0w3OdtzmVM7LcFywrHq5NyaXrE+mnPCcTsGQb0wf7hRdXxkHLvmjxcds8RYCLrGsZu/nfOm0Fut4FW+/byyF7PhY7Nhs5fuofkjqI5fBqa+hS41k32lOvM5eQCVr83SsZNvHsuUoktTjVSO+/a0c319+PfXTDquAvPZ7D/9aEz3YlYAAA== {{- end }} diff --git a/charts/kubezero-operators/values.yaml b/charts/kubezero-operators/values.yaml index c04b9598..861f2c7e 100644 --- a/charts/kubezero-operators/values.yaml +++ b/charts/kubezero-operators/values.yaml @@ -29,18 +29,22 @@ cloudnative-pg: strimzi-kafka-operator: enabled: false - revisionHistoryLimit: 3 + revisionHistoryLimit: 2 watchAnyNamespace: true leaderElection: enable: false - resources: - requests: - cpu: 20m - memory: 256Mi - limits: - memory: 384Mi +# extraEnvs: +# - name: JAVA_OPTS +# value: "-XX:MaxRAMPercentage=75 -XX:+UseParallelGC -XX:ActiveProcessorCount=2" + +# resources: +# requests: +# cpu: 10m +# memory: 256Mi +# limits: +# memory: 256Mi monitoring: podMonitorEnabled: false diff --git a/charts/kubezero/values.yaml b/charts/kubezero/values.yaml index 8aab092f..d1597e50 100644 --- a/charts/kubezero/values.yaml +++ b/charts/kubezero/values.yaml @@ -36,7 +36,7 @@ addons: network: enabled: true retain: true - targetRevision: 0.5.5 + targetRevision: 0.5.6 cilium: cluster: {} diff --git a/docs/v1.31.md b/docs/v1.31.md index 8808ad90..2dec77d7 100644 --- a/docs/v1.31.md +++ b/docs/v1.31.md @@ -1,15 +1,16 @@ # ![k8s-v1.31](images/k8s-1.31.png) KubeZero 1.31 - Elli ## What's new - Major themes -- all KubeZero and support AMIs based on Alpine 3.21 +- all KubeZero and support AMIs based on [Alpine 3.21](https://alpinelinux.org/posts/Alpine-3.21.0-released.html) +- network policies for ArgoCD ## Features and fixes +- ArgoCD now tracks ownership by annotations rather than labels ## Version upgrades - - cilium 1.16.3 - istio 1.22.3 -- ArgoCD 2.13.0 [custom ZDT image](https://git.zero-downtime.net/ZeroDownTime/zdt-argocd) +- ArgoCD 2.13.1 [custom ZDT image](https://git.zero-downtime.net/ZeroDownTime/zdt-argocd) - Prometheus 2.55.1 / Grafana 11.3.0 - Nvidia container toolkit 1.17, drivers 565.57.01, Cuda 12.7