feat: update Kubernetes to v1.30.0-alpha.2
Talos Linux 1.7.0 will ship with Kubernetes v1.30.0. Drop some compatibility for Kubernetes < 1.25, as 1.25 is the minimum supported version now. Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
This commit is contained in:
parent
559308ef7e
commit
1366ce14a8
2
Makefile
2
Makefile
@ -88,7 +88,7 @@ INTEGRATION_TEST_DEFAULT_TARGET := integration-test-$(OPERATING_SYSTEM)
|
||||
MODULE_SIG_VERIFY_DEFAULT_TARGET := module-sig-verify-$(OPERATING_SYSTEM)
|
||||
INTEGRATION_TEST_PROVISION_DEFAULT_TARGET := integration-test-provision-$(OPERATING_SYSTEM)
|
||||
# renovate: datasource=github-releases depName=kubernetes/kubernetes
|
||||
KUBECTL_VERSION ?= v1.29.1
|
||||
KUBECTL_VERSION ?= v1.30.0-alpha.2
|
||||
# renovate: datasource=github-releases depName=kastenhq/kubestr
|
||||
KUBESTR_VERSION ?= v0.4.41
|
||||
# renovate: datasource=github-releases depName=helm/helm
|
||||
|
24
go.mod
24
go.mod
@ -15,15 +15,15 @@ replace (
|
||||
|
||||
// Kubernetes dependencies sharing the same version.
|
||||
require (
|
||||
k8s.io/api v0.29.1
|
||||
k8s.io/apimachinery v0.29.1
|
||||
k8s.io/apiserver v0.29.1
|
||||
k8s.io/client-go v0.29.1
|
||||
k8s.io/component-base v0.29.1
|
||||
k8s.io/cri-api v0.29.1
|
||||
k8s.io/kube-scheduler v0.29.1
|
||||
k8s.io/kubectl v0.29.1
|
||||
k8s.io/kubelet v0.29.1
|
||||
k8s.io/api v0.30.0-alpha.2
|
||||
k8s.io/apimachinery v0.30.0-alpha.2
|
||||
k8s.io/apiserver v0.30.0-alpha.2
|
||||
k8s.io/client-go v0.30.0-alpha.2
|
||||
k8s.io/component-base v0.30.0-alpha.2
|
||||
k8s.io/cri-api v0.30.0-alpha.2
|
||||
k8s.io/kube-scheduler v0.30.0-alpha.2
|
||||
k8s.io/kubectl v0.30.0-alpha.2
|
||||
k8s.io/kubelet v0.30.0-alpha.2
|
||||
)
|
||||
|
||||
require (
|
||||
@ -114,7 +114,7 @@ require (
|
||||
github.com/siderolabs/go-debug v0.3.0
|
||||
github.com/siderolabs/go-kmsg v0.1.4
|
||||
github.com/siderolabs/go-kubeconfig v0.1.0
|
||||
github.com/siderolabs/go-kubernetes v0.2.8
|
||||
github.com/siderolabs/go-kubernetes v0.2.9
|
||||
github.com/siderolabs/go-loadbalancer v0.3.2
|
||||
github.com/siderolabs/go-pcidb v0.2.0
|
||||
github.com/siderolabs/go-pointer v1.0.0
|
||||
@ -332,9 +332,9 @@ require (
|
||||
gopkg.in/inf.v0 v0.9.1 // indirect
|
||||
gopkg.in/ini.v1 v1.67.0 // indirect
|
||||
gopkg.in/yaml.v2 v2.4.0 // indirect
|
||||
k8s.io/cli-runtime v0.29.1 // indirect
|
||||
k8s.io/cli-runtime v0.30.0-alpha.2 // indirect
|
||||
k8s.io/klog v1.0.0 // indirect
|
||||
k8s.io/kube-openapi v0.0.0-20231010175941-2dd684a91f00 // indirect
|
||||
k8s.io/kube-openapi v0.0.0-20231113174909-778a5567bc1e // indirect
|
||||
k8s.io/utils v0.0.0-20230726121419-3b25d923346b // indirect
|
||||
kernel.org/pub/linux/libs/security/libcap/psx v1.2.69 // indirect
|
||||
rsc.io/qr v0.2.0 // indirect
|
||||
|
56
go.sum
56
go.sum
@ -564,13 +564,13 @@ github.com/onsi/ginkgo v1.12.1/go.mod h1:zj2OWP4+oCPe1qIXoGWkgMRwljMUYCdkwsT2108
|
||||
github.com/onsi/ginkgo v1.16.4 h1:29JGrr5oVBm5ulCWet69zQkzWipVXIol6ygQUe/EzNc=
|
||||
github.com/onsi/ginkgo v1.16.4/go.mod h1:dX+/inL/fNMqNlz0e9LfyB9TswhZpCVdJM/Z6Vvnwo0=
|
||||
github.com/onsi/ginkgo/v2 v2.1.3/go.mod h1:vw5CSIxN1JObi/U8gcbwft7ZxR2dgaR70JSE3/PpL4c=
|
||||
github.com/onsi/ginkgo/v2 v2.13.2 h1:Bi2gGVkfn6gQcjNjZJVO8Gf0FHzMPf2phUei9tejVMs=
|
||||
github.com/onsi/ginkgo/v2 v2.13.2/go.mod h1:XStQ8QcGwLyF4HdfcZB8SFOS/MWCgDuXMSBe6zrvLgM=
|
||||
github.com/onsi/ginkgo/v2 v2.15.0 h1:79HwNRBAZHOEwrczrgSOPy+eFTTlIGELKy5as+ClttY=
|
||||
github.com/onsi/ginkgo/v2 v2.15.0/go.mod h1:HlxMHtYF57y6Dpf+mc5529KKmSq9h2FpCF+/ZkwUxKM=
|
||||
github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY=
|
||||
github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo=
|
||||
github.com/onsi/gomega v1.17.0/go.mod h1:HnhC7FXeEQY45zxNK3PPoIUhzk/80Xly9PcubAlGdZY=
|
||||
github.com/onsi/gomega v1.30.0 h1:hvMK7xYz4D3HapigLTeGdId/NcfQx1VHMJc60ew99+8=
|
||||
github.com/onsi/gomega v1.30.0/go.mod h1:9sxs+SwGrKI0+PWe4Fxa9tFQQBG5xSsSbMXOI8PPpoQ=
|
||||
github.com/onsi/gomega v1.31.0 h1:54UJxxj6cPInHS3a35wm6BK/F9nHYueZ1NVujHDrnXE=
|
||||
github.com/onsi/gomega v1.31.0/go.mod h1:DW9aCi7U6Yi40wNVAvT6kzFnEVEI5n3DloYBiKiT6zk=
|
||||
github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U=
|
||||
github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM=
|
||||
github.com/opencontainers/image-spec v1.1.0-rc6 h1:XDqvyKsJEbRtATzkgItUqBA7QHk58yxX1Ov9HERHNqU=
|
||||
@ -671,8 +671,8 @@ github.com/siderolabs/go-kmsg v0.1.4 h1:RLAa90O9bWuhA3pXPAYAdrI+kzcqTshZASRA5yso
|
||||
github.com/siderolabs/go-kmsg v0.1.4/go.mod h1:BLkt2N2DHT0wsFMz32lMw6vNEZL90c8ZnBjpIUoBb/M=
|
||||
github.com/siderolabs/go-kubeconfig v0.1.0 h1:t/2oMWkLSdWHXglKPMz8ySXnx6ZjHckeGY79NaDcBTo=
|
||||
github.com/siderolabs/go-kubeconfig v0.1.0/go.mod h1:eM3mO02Td6wYDvdi9zTbMrj1Q4WqEFN8XQ6pNjCUWkI=
|
||||
github.com/siderolabs/go-kubernetes v0.2.8 h1:ks+xA0sZdYhdRTkSZlngaku+BWngbZxijidh2e+XX5Q=
|
||||
github.com/siderolabs/go-kubernetes v0.2.8/go.mod h1:JrhhdnHeeuEi+4nGCSrnkTjEy9oNQ6YJ/2/0Tzy+PQU=
|
||||
github.com/siderolabs/go-kubernetes v0.2.9 h1:EtaOcni9P0etJz+UDlIKQkgsTjCg2MWI2p1fKeRTo8Q=
|
||||
github.com/siderolabs/go-kubernetes v0.2.9/go.mod h1:AAydnLZrqG+MJrKTa82AszkWIytkqwDBt7PL+bfbupI=
|
||||
github.com/siderolabs/go-loadbalancer v0.3.2 h1:R2jKq8ifWOARxJ5blXwOOkiWCA5/46stGxUR8+qV8GE=
|
||||
github.com/siderolabs/go-loadbalancer v0.3.2/go.mod h1:sKP/xSN4R+1fifcqIjnk1FtM5sSW20d+pi+0FV6CpVo=
|
||||
github.com/siderolabs/go-pcidb v0.2.0 h1:ZCkF1cz6UjoEIHpP7+aeTI5BwmSxE627Jl1Wy2VZAwU=
|
||||
@ -1240,32 +1240,32 @@ honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWh
|
||||
honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg=
|
||||
honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k=
|
||||
honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k=
|
||||
k8s.io/api v0.29.1 h1:DAjwWX/9YT7NQD4INu49ROJuZAAAP/Ijki48GUPzxqw=
|
||||
k8s.io/api v0.29.1/go.mod h1:7Kl10vBRUXhnQQI8YR/R327zXC8eJ7887/+Ybta+RoQ=
|
||||
k8s.io/apimachinery v0.29.1 h1:KY4/E6km/wLBguvCZv8cKTeOwwOBqFNjwJIdMkMbbRc=
|
||||
k8s.io/apimachinery v0.29.1/go.mod h1:6HVkd1FwxIagpYrHSwJlQqZI3G9LfYWRPAkUvLnXTKU=
|
||||
k8s.io/apiserver v0.29.1 h1:e2wwHUfEmMsa8+cuft8MT56+16EONIEK8A/gpBSco+g=
|
||||
k8s.io/apiserver v0.29.1/go.mod h1:V0EpkTRrJymyVT3M49we8uh2RvXf7fWC5XLB0P3SwRw=
|
||||
k8s.io/cli-runtime v0.29.1 h1:By3WVOlEWYfyxhGko0f/IuAOLQcbBSMzwSaDren2JUs=
|
||||
k8s.io/cli-runtime v0.29.1/go.mod h1:vjEY9slFp8j8UoMhV5AlO8uulX9xk6ogfIesHobyBDU=
|
||||
k8s.io/client-go v0.29.1 h1:19B/+2NGEwnFLzt0uB5kNJnfTsbV8w6TgQRz9l7ti7A=
|
||||
k8s.io/client-go v0.29.1/go.mod h1:TDG/psL9hdet0TI9mGyHJSgRkW3H9JZk2dNEUS7bRks=
|
||||
k8s.io/component-base v0.29.1 h1:MUimqJPCRnnHsskTTjKD+IC1EHBbRCVyi37IoFBrkYw=
|
||||
k8s.io/component-base v0.29.1/go.mod h1:fP9GFjxYrLERq1GcWWZAE3bqbNcDKDytn2srWuHTtKc=
|
||||
k8s.io/cri-api v0.29.1 h1:pQwYDahnAX9K8KtdV8PD1eeNexMJojEj1t/5kAMX61E=
|
||||
k8s.io/cri-api v0.29.1/go.mod h1:9fQTFm+wi4FLyqrkVUoMJiUB3mE74XrVvHz8uFY/sSw=
|
||||
k8s.io/api v0.30.0-alpha.2 h1:Pk7rCBK4z2wzfHQGWFvpNYagfeQAlyy87MnkjngRDEI=
|
||||
k8s.io/api v0.30.0-alpha.2/go.mod h1:xyrt5SWiJP/5Lj6VkeIQd7e9rLQ/FRU5SaZE5D3YenM=
|
||||
k8s.io/apimachinery v0.30.0-alpha.2 h1:614MJReChyjEH03Il2Z10u/LTNmvzEVvg7d7VpxJwHI=
|
||||
k8s.io/apimachinery v0.30.0-alpha.2/go.mod h1:akBo0Z+IFaOazGhD1RG6NG75rWj9oAhmz7UHqmfygmw=
|
||||
k8s.io/apiserver v0.30.0-alpha.2 h1:dOoEijSMgTfpy+rm3W/p7h1KuSLgT20kM6v3NDMGxx8=
|
||||
k8s.io/apiserver v0.30.0-alpha.2/go.mod h1:KcPItgbscof3zv7LuE8XhJCuxF6wCcU1ZfeAjzKvI0E=
|
||||
k8s.io/cli-runtime v0.30.0-alpha.2 h1:3sRkhnkYkuzrga3WNfnyKgDAOHgXrkBcWQecmIFrw2w=
|
||||
k8s.io/cli-runtime v0.30.0-alpha.2/go.mod h1:Enk+w7IFQkiMSiJMoesw7Lazi7UwbeUZqrf2D8eNJUY=
|
||||
k8s.io/client-go v0.30.0-alpha.2 h1:tHzSny3eX0Qg1YWC+CE77+wnuWm3NHtAoVD6iQz56Zs=
|
||||
k8s.io/client-go v0.30.0-alpha.2/go.mod h1:ggOVaLmJOEjl9vmdoAnxL+pBfrLP4+h6dP4L9QNTpcU=
|
||||
k8s.io/component-base v0.30.0-alpha.2 h1:hdBSlB+OcBRTntNYio4YTKJRxb0rA59q42qf3qXDWIE=
|
||||
k8s.io/component-base v0.30.0-alpha.2/go.mod h1:YYb+ohTXvPYL290zXMWrQwd1A+xIqbSuAMrcQJ7h5uw=
|
||||
k8s.io/cri-api v0.30.0-alpha.2 h1:MHE8kSl2zeJw+0DWYDc4yfnzxE7OF095Hz4RVOG3/Gc=
|
||||
k8s.io/cri-api v0.30.0-alpha.2/go.mod h1:9fQTFm+wi4FLyqrkVUoMJiUB3mE74XrVvHz8uFY/sSw=
|
||||
k8s.io/klog v1.0.0 h1:Pt+yjF5aB1xDSVbau4VsWe+dQNzA0qv1LlXdC2dF6Q8=
|
||||
k8s.io/klog v1.0.0/go.mod h1:4Bi6QPql/J/LkTDqv7R/cd3hPo4k2DG6Ptcz060Ez5I=
|
||||
k8s.io/klog/v2 v2.120.1 h1:QXU6cPEOIslTGvZaXvFWiP9VKyeet3sawzTOvdXb4Vw=
|
||||
k8s.io/klog/v2 v2.120.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE=
|
||||
k8s.io/kube-openapi v0.0.0-20231010175941-2dd684a91f00 h1:aVUu9fTY98ivBPKR9Y5w/AuzbMm96cd3YHRTU83I780=
|
||||
k8s.io/kube-openapi v0.0.0-20231010175941-2dd684a91f00/go.mod h1:AsvuZPBlUDVuCdzJ87iajxtXuR9oktsTctW/R9wwouA=
|
||||
k8s.io/kube-scheduler v0.29.1 h1:EKhEBriMl5t/NVjPjUr4he11ghe5BZocur49NOXIrWk=
|
||||
k8s.io/kube-scheduler v0.29.1/go.mod h1:MQhjK51HUNq0WQ2z+qRWgEnDwD7/XQm3y9XfvrNSmek=
|
||||
k8s.io/kubectl v0.29.1 h1:rWnW3hi/rEUvvg7jp4iYB68qW5un/urKbv7fu3Vj0/s=
|
||||
k8s.io/kubectl v0.29.1/go.mod h1:SZzvLqtuOJYSvZzPZR9weSuP0wDQ+N37CENJf0FhDF4=
|
||||
k8s.io/kubelet v0.29.1 h1:cso8Dk8dymkj8q+EvW/aCbIYU2aOkH27gho48tYza/8=
|
||||
k8s.io/kubelet v0.29.1/go.mod h1:hTl/naFcCVG1Ku17fMgj/krbheBwBkf3gnFhaboMx7E=
|
||||
k8s.io/kube-openapi v0.0.0-20231113174909-778a5567bc1e h1:snPmy96t93RredGRjKfMFt+gvxuVAncqSAyBveJtr4Q=
|
||||
k8s.io/kube-openapi v0.0.0-20231113174909-778a5567bc1e/go.mod h1:AsvuZPBlUDVuCdzJ87iajxtXuR9oktsTctW/R9wwouA=
|
||||
k8s.io/kube-scheduler v0.30.0-alpha.2 h1:YNrPwMg87VMdUnHo+OAMesYpk7rxATNVcICnxzULTCs=
|
||||
k8s.io/kube-scheduler v0.30.0-alpha.2/go.mod h1:MsTYeYZDwv64XTdd5y8gCW8YPLCgr8IKCUOl7CWPEl8=
|
||||
k8s.io/kubectl v0.30.0-alpha.2 h1:fw+2Ijv4gqQdFgzYK1nJJR3MFopCdBAZEjnETcM+y4Y=
|
||||
k8s.io/kubectl v0.30.0-alpha.2/go.mod h1:74X1grqoxhb93ZLxjQo8FurqpWdSAgnNYiUhyYYiWoA=
|
||||
k8s.io/kubelet v0.30.0-alpha.2 h1:35RaAFKiBA3iBGg8fxFefDdKrBhcakTpbPxZdHMRml8=
|
||||
k8s.io/kubelet v0.30.0-alpha.2/go.mod h1:wP9oBhAREIMKYXiV7xK92P9OfeMi7TFHGm+EbYtn5ZQ=
|
||||
k8s.io/utils v0.0.0-20230726121419-3b25d923346b h1:sgn3ZU783SCgtaSJjpcVVlRqd6GSnlTLKgpAAttJvpI=
|
||||
k8s.io/utils v0.0.0-20230726121419-3b25d923346b/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0=
|
||||
kernel.org/pub/linux/libs/security/libcap/cap v1.2.69 h1:N0m3tKYbkRMmDobh/47ngz+AWeV7PcfXMDi8xu3Vrag=
|
||||
|
@ -19,7 +19,7 @@ preface = """\
|
||||
description = """\
|
||||
Linux: 6.6.16
|
||||
etcd: 3.5.11
|
||||
Kubernetes: 1.29.1
|
||||
Kubernetes: 1.30.0-alpha.2
|
||||
containerd: 1.7.13
|
||||
runc: 1.1.12
|
||||
Flannel: 0.24.1
|
||||
|
@ -40,7 +40,7 @@ export TALOS_VERSION=v1.1
|
||||
# Kubernetes
|
||||
|
||||
export KUBECONFIG="${TMP}/kubeconfig"
|
||||
export KUBERNETES_VERSION=${KUBERNETES_VERSION:-1.29.1}
|
||||
export KUBERNETES_VERSION=${KUBERNETES_VERSION:-1.30.0-alpha.2}
|
||||
|
||||
export NAME_PREFIX="talos-e2e-${SHA}-${PLATFORM}"
|
||||
export TIMEOUT=1200
|
||||
|
@ -285,17 +285,8 @@ func NewKubeletConfiguration(cfgSpec *k8s.KubeletConfigSpec, kubeletVersion comp
|
||||
config.ContainerRuntimeEndpoint = "unix://" + constants.CRIContainerdAddress
|
||||
}
|
||||
|
||||
// SeccompDefault feature gate is enabled by default Kubernetes 1.25+, GA in 1.27
|
||||
if cfgSpec.DefaultRuntimeSeccompEnabled {
|
||||
config.SeccompDefault = pointer.To(true)
|
||||
|
||||
if !kubeletVersion.FeatureFlagSeccompDefaultEnabledByDefault() {
|
||||
if config.FeatureGates == nil {
|
||||
config.FeatureGates = map[string]bool{}
|
||||
}
|
||||
|
||||
config.FeatureGates["SeccompDefault"] = true
|
||||
}
|
||||
}
|
||||
|
||||
if cfgSpec.EnableFSQuotaMonitoring {
|
||||
|
@ -420,22 +420,6 @@ func TestNewKubeletConfigurationMerge(t *testing.T) {
|
||||
kc.SeccompDefault = pointer.To(true)
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "enable seccomp default + feature flag",
|
||||
cfgSpec: &k8s.KubeletConfigSpec{
|
||||
ClusterDNS: []string{"10.0.0.5"},
|
||||
ClusterDomain: "cluster.local",
|
||||
DefaultRuntimeSeccompEnabled: true,
|
||||
},
|
||||
kubeletVersion: compatibility.VersionFromImageRef("ghcr.io/siderolabs/kubelet:v1.24.0"),
|
||||
expectedOverrides: func(kc *kubeletconfig.KubeletConfiguration) {
|
||||
kc.ContainerRuntimeEndpoint = ""
|
||||
kc.SeccompDefault = pointer.To(true)
|
||||
kc.FeatureGates = map[string]bool{
|
||||
"SeccompDefault": true,
|
||||
}
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "enable skipNodeRegistration",
|
||||
cfgSpec: &k8s.KubeletConfigSpec{
|
||||
|
@ -15,7 +15,6 @@ import (
|
||||
"github.com/cosi-project/runtime/pkg/controller"
|
||||
"github.com/cosi-project/runtime/pkg/safe"
|
||||
"github.com/cosi-project/runtime/pkg/state"
|
||||
"github.com/siderolabs/go-kubernetes/kubernetes/compatibility"
|
||||
"go.uber.org/zap"
|
||||
"k8s.io/apimachinery/pkg/runtime"
|
||||
k8sjson "k8s.io/apimachinery/pkg/runtime/serializer/json"
|
||||
@ -110,8 +109,6 @@ func (ctrl *RenderConfigsStaticPodController) Run(ctx context.Context, r control
|
||||
|
||||
kubeSchedulerConfig := kubeSchedulerRes.TypedSpec()
|
||||
|
||||
kubeSchedulerVersion := compatibility.VersionFromImageRef(kubeSchedulerConfig.Image)
|
||||
|
||||
type configFile struct {
|
||||
filename string
|
||||
f func() (runtime.Object, error)
|
||||
@ -157,7 +154,7 @@ func (ctrl *RenderConfigsStaticPodController) Run(ctx context.Context, r control
|
||||
configs: []configFile{
|
||||
{
|
||||
filename: "scheduler-config.yaml",
|
||||
f: schedulerConfig(kubeSchedulerConfig, kubeSchedulerVersion),
|
||||
f: schedulerConfig(kubeSchedulerConfig),
|
||||
},
|
||||
},
|
||||
},
|
||||
@ -243,7 +240,7 @@ func auditPolicyConfig(spec *k8s.AuditPolicyConfigSpec) func() (runtime.Object,
|
||||
}
|
||||
}
|
||||
|
||||
func schedulerConfig(spec *k8s.SchedulerConfigSpec, kubeSchedulerVersion compatibility.Version) func() (runtime.Object, error) {
|
||||
func schedulerConfig(spec *k8s.SchedulerConfigSpec) func() (runtime.Object, error) {
|
||||
return func() (runtime.Object, error) {
|
||||
var cfg schedulerv1.KubeSchedulerConfiguration
|
||||
|
||||
@ -251,7 +248,7 @@ func schedulerConfig(spec *k8s.SchedulerConfigSpec, kubeSchedulerVersion compati
|
||||
return nil, fmt.Errorf("error unmarshaling scheduler configuration: %w", err)
|
||||
}
|
||||
|
||||
cfg.APIVersion = kubeSchedulerVersion.KubeSchedulerConfigurationAPIVersion()
|
||||
cfg.APIVersion = "kubescheduler.config.k8s.io/v1"
|
||||
cfg.Kind = "KubeSchedulerConfiguration"
|
||||
cfg.ClientConnection.Kubeconfig = filepath.Join(constants.KubernetesSchedulerSecretsDir, "kubeconfig")
|
||||
|
||||
|
@ -344,7 +344,7 @@ const (
|
||||
|
||||
// DefaultKubernetesVersion is the default target version of the control plane.
|
||||
// renovate: datasource=github-releases depName=kubernetes/kubernetes
|
||||
DefaultKubernetesVersion = "1.29.1"
|
||||
DefaultKubernetesVersion = "1.30.0-alpha.2"
|
||||
|
||||
// SupportedKubernetesVersions is the number of Kubernetes versions supported by Talos starting from DefaultKubernesVersion going backwards.
|
||||
SupportedKubernetesVersions = 6
|
||||
|
@ -5,7 +5,7 @@ linkTitle: "Documentation"
|
||||
cascade:
|
||||
type: docs
|
||||
lastRelease: v1.7.0-alpha.0
|
||||
kubernetesRelease: "1.29.0"
|
||||
kubernetesRelease: "1.30.0-alpha.2"
|
||||
prevKubernetesRelease: "1.28.3"
|
||||
nvidiaContainerToolkitRelease: "v1.13.5"
|
||||
nvidiaDriverRelease: "535.129.03"
|
||||
|
@ -134,7 +134,7 @@ talosctl cluster create [flags]
|
||||
--ipxe-boot-script string iPXE boot script (URL) to use
|
||||
--iso-path string the ISO path to use for the initial boot (VM only)
|
||||
--kubeprism-port int KubePrism port (set to 0 to disable) (default 7445)
|
||||
--kubernetes-version string desired kubernetes version to run (default "1.29.1")
|
||||
--kubernetes-version string desired kubernetes version to run (default "1.30.0-alpha.2")
|
||||
--memory int the limit on memory usage in MB (each control plane/VM) (default 2048)
|
||||
--memory-workers int the limit on memory usage in MB (each worker/VM) (default 2048)
|
||||
--mtu int MTU of the cluster network (default 1500)
|
||||
@ -1331,7 +1331,7 @@ talosctl gen config <cluster name> <cluster endpoint> [flags]
|
||||
-h, --help help for config
|
||||
--install-disk string the disk to install to (default "/dev/sda")
|
||||
--install-image string the image used to perform an installation (default "ghcr.io/siderolabs/installer:latest")
|
||||
--kubernetes-version string desired kubernetes version to run (default "1.29.1")
|
||||
--kubernetes-version string desired kubernetes version to run (default "1.30.0-alpha.2")
|
||||
-o, --output string destination to output generated files. when multiple output types are specified, it must be a directory. for a single output type, it must either be a file path, or "-" for stdout
|
||||
-t, --output-types strings types of outputs to be generated. valid types are: ["controlplane" "worker" "talosconfig"] (default [controlplane,worker,talosconfig])
|
||||
-p, --persist the desired persist value for configs (default true)
|
||||
@ -2897,7 +2897,7 @@ talosctl upgrade-k8s [flags]
|
||||
--pre-pull-images pre-pull images before upgrade (default true)
|
||||
--proxy-image string kube-proxy image to use (default "registry.k8s.io/kube-proxy")
|
||||
--scheduler-image string kube-scheduler image to use (default "registry.k8s.io/kube-scheduler")
|
||||
--to string the Kubernetes control plane version to upgrade to (default "1.29.1")
|
||||
--to string the Kubernetes control plane version to upgrade to (default "1.30.0-alpha.2")
|
||||
--upgrade-kubelet upgrade kubelet service (default true)
|
||||
--with-docs patch all machine configs adding the documentation for each field (default true)
|
||||
--with-examples patch all machine configs with the commented examples (default true)
|
||||
|
@ -89,7 +89,7 @@ controlPlane:
|
||||
{{< /highlight >}}</details> | |
|
||||
|`kubelet` |<a href="#Config.machine.kubelet">KubeletConfig</a> |Used to provide additional options to the kubelet. <details><summary>Show example(s)</summary>{{< highlight yaml >}}
|
||||
kubelet:
|
||||
image: ghcr.io/siderolabs/kubelet:v1.29.1 # The `image` field is an optional reference to an alternative kubelet image.
|
||||
image: ghcr.io/siderolabs/kubelet:v1.30.0-alpha.2 # The `image` field is an optional reference to an alternative kubelet image.
|
||||
# The `extraArgs` field is used to provide additional flags to the kubelet.
|
||||
extraArgs:
|
||||
feature-gates: ServerSideApply=true
|
||||
@ -498,7 +498,7 @@ KubeletConfig represents the kubelet config values.
|
||||
{{< highlight yaml >}}
|
||||
machine:
|
||||
kubelet:
|
||||
image: ghcr.io/siderolabs/kubelet:v1.29.1 # The `image` field is an optional reference to an alternative kubelet image.
|
||||
image: ghcr.io/siderolabs/kubelet:v1.30.0-alpha.2 # The `image` field is an optional reference to an alternative kubelet image.
|
||||
# The `extraArgs` field is used to provide additional flags to the kubelet.
|
||||
extraArgs:
|
||||
feature-gates: ServerSideApply=true
|
||||
@ -551,7 +551,7 @@ machine:
|
||||
| Field | Type | Description | Value(s) |
|
||||
|-------|------|-------------|----------|
|
||||
|`image` |string |The `image` field is an optional reference to an alternative kubelet image. <details><summary>Show example(s)</summary>{{< highlight yaml >}}
|
||||
image: ghcr.io/siderolabs/kubelet:v1.29.1
|
||||
image: ghcr.io/siderolabs/kubelet:v1.30.0-alpha.2
|
||||
{{< /highlight >}}</details> | |
|
||||
|`clusterDNS` |[]string |The `ClusterDNS` field is an optional reference to an alternative kubelet clusterDNS ip list. <details><summary>Show example(s)</summary>{{< highlight yaml >}}
|
||||
clusterDNS:
|
||||
@ -2862,7 +2862,7 @@ serviceAccount:
|
||||
{{< /highlight >}}</details> | |
|
||||
|`apiServer` |<a href="#Config.cluster.apiServer">APIServerConfig</a> |API server specific configuration options. <details><summary>Show example(s)</summary>{{< highlight yaml >}}
|
||||
apiServer:
|
||||
image: registry.k8s.io/kube-apiserver:v1.29.1 # The container image used in the API server manifest.
|
||||
image: registry.k8s.io/kube-apiserver:v1.30.0-alpha.2 # The container image used in the API server manifest.
|
||||
# Extra arguments to supply to the API server.
|
||||
extraArgs:
|
||||
feature-gates: ServerSideApply=true
|
||||
@ -2901,14 +2901,14 @@ apiServer:
|
||||
{{< /highlight >}}</details> | |
|
||||
|`controllerManager` |<a href="#Config.cluster.controllerManager">ControllerManagerConfig</a> |Controller manager server specific configuration options. <details><summary>Show example(s)</summary>{{< highlight yaml >}}
|
||||
controllerManager:
|
||||
image: registry.k8s.io/kube-controller-manager:v1.29.1 # The container image used in the controller manager manifest.
|
||||
image: registry.k8s.io/kube-controller-manager:v1.30.0-alpha.2 # The container image used in the controller manager manifest.
|
||||
# Extra arguments to supply to the controller manager.
|
||||
extraArgs:
|
||||
feature-gates: ServerSideApply=true
|
||||
{{< /highlight >}}</details> | |
|
||||
|`proxy` |<a href="#Config.cluster.proxy">ProxyConfig</a> |Kube-proxy server-specific configuration options <details><summary>Show example(s)</summary>{{< highlight yaml >}}
|
||||
proxy:
|
||||
image: registry.k8s.io/kube-proxy:v1.29.1 # The container image used in the kube-proxy manifest.
|
||||
image: registry.k8s.io/kube-proxy:v1.30.0-alpha.2 # The container image used in the kube-proxy manifest.
|
||||
mode: ipvs # proxy mode of kube-proxy.
|
||||
# Extra arguments to supply to kube-proxy.
|
||||
extraArgs:
|
||||
@ -2919,7 +2919,7 @@ proxy:
|
||||
{{< /highlight >}}</details> | |
|
||||
|`scheduler` |<a href="#Config.cluster.scheduler">SchedulerConfig</a> |Scheduler server specific configuration options. <details><summary>Show example(s)</summary>{{< highlight yaml >}}
|
||||
scheduler:
|
||||
image: registry.k8s.io/kube-scheduler:v1.29.1 # The container image used in the scheduler manifest.
|
||||
image: registry.k8s.io/kube-scheduler:v1.30.0-alpha.2 # The container image used in the scheduler manifest.
|
||||
# Extra arguments to supply to the scheduler.
|
||||
extraArgs:
|
||||
feature-gates: AllBeta=true
|
||||
@ -3163,7 +3163,7 @@ APIServerConfig represents the kube apiserver configuration options.
|
||||
{{< highlight yaml >}}
|
||||
cluster:
|
||||
apiServer:
|
||||
image: registry.k8s.io/kube-apiserver:v1.29.1 # The container image used in the API server manifest.
|
||||
image: registry.k8s.io/kube-apiserver:v1.30.0-alpha.2 # The container image used in the API server manifest.
|
||||
# Extra arguments to supply to the API server.
|
||||
extraArgs:
|
||||
feature-gates: ServerSideApply=true
|
||||
@ -3205,7 +3205,7 @@ cluster:
|
||||
| Field | Type | Description | Value(s) |
|
||||
|-------|------|-------------|----------|
|
||||
|`image` |string |The container image used in the API server manifest. <details><summary>Show example(s)</summary>{{< highlight yaml >}}
|
||||
image: registry.k8s.io/kube-apiserver:v1.29.1
|
||||
image: registry.k8s.io/kube-apiserver:v1.30.0-alpha.2
|
||||
{{< /highlight >}}</details> | |
|
||||
|`extraArgs` |map[string]string |Extra arguments to supply to the API server. | |
|
||||
|`extraVolumes` |<a href="#Config.cluster.apiServer.extraVolumes.">[]VolumeMountConfig</a> |Extra volumes to mount to the API server static pod. | |
|
||||
@ -3344,7 +3344,7 @@ ControllerManagerConfig represents the kube controller manager configuration opt
|
||||
{{< highlight yaml >}}
|
||||
cluster:
|
||||
controllerManager:
|
||||
image: registry.k8s.io/kube-controller-manager:v1.29.1 # The container image used in the controller manager manifest.
|
||||
image: registry.k8s.io/kube-controller-manager:v1.30.0-alpha.2 # The container image used in the controller manager manifest.
|
||||
# Extra arguments to supply to the controller manager.
|
||||
extraArgs:
|
||||
feature-gates: ServerSideApply=true
|
||||
@ -3354,7 +3354,7 @@ cluster:
|
||||
| Field | Type | Description | Value(s) |
|
||||
|-------|------|-------------|----------|
|
||||
|`image` |string |The container image used in the controller manager manifest. <details><summary>Show example(s)</summary>{{< highlight yaml >}}
|
||||
image: registry.k8s.io/kube-controller-manager:v1.29.1
|
||||
image: registry.k8s.io/kube-controller-manager:v1.30.0-alpha.2
|
||||
{{< /highlight >}}</details> | |
|
||||
|`extraArgs` |map[string]string |Extra arguments to supply to the controller manager. | |
|
||||
|`extraVolumes` |<a href="#Config.cluster.controllerManager.extraVolumes.">[]VolumeMountConfig</a> |Extra volumes to mount to the controller manager static pod. | |
|
||||
@ -3424,7 +3424,7 @@ ProxyConfig represents the kube proxy configuration options.
|
||||
{{< highlight yaml >}}
|
||||
cluster:
|
||||
proxy:
|
||||
image: registry.k8s.io/kube-proxy:v1.29.1 # The container image used in the kube-proxy manifest.
|
||||
image: registry.k8s.io/kube-proxy:v1.30.0-alpha.2 # The container image used in the kube-proxy manifest.
|
||||
mode: ipvs # proxy mode of kube-proxy.
|
||||
# Extra arguments to supply to kube-proxy.
|
||||
extraArgs:
|
||||
@ -3441,7 +3441,7 @@ cluster:
|
||||
disabled: false
|
||||
{{< /highlight >}}</details> | |
|
||||
|`image` |string |The container image used in the kube-proxy manifest. <details><summary>Show example(s)</summary>{{< highlight yaml >}}
|
||||
image: registry.k8s.io/kube-proxy:v1.29.1
|
||||
image: registry.k8s.io/kube-proxy:v1.30.0-alpha.2
|
||||
{{< /highlight >}}</details> | |
|
||||
|`mode` |string |<details><summary>proxy mode of kube-proxy.</summary>The default is 'iptables'.</details> | |
|
||||
|`extraArgs` |map[string]string |Extra arguments to supply to kube-proxy. | |
|
||||
@ -3460,7 +3460,7 @@ SchedulerConfig represents the kube scheduler configuration options.
|
||||
{{< highlight yaml >}}
|
||||
cluster:
|
||||
scheduler:
|
||||
image: registry.k8s.io/kube-scheduler:v1.29.1 # The container image used in the scheduler manifest.
|
||||
image: registry.k8s.io/kube-scheduler:v1.30.0-alpha.2 # The container image used in the scheduler manifest.
|
||||
# Extra arguments to supply to the scheduler.
|
||||
extraArgs:
|
||||
feature-gates: AllBeta=true
|
||||
@ -3470,7 +3470,7 @@ cluster:
|
||||
| Field | Type | Description | Value(s) |
|
||||
|-------|------|-------------|----------|
|
||||
|`image` |string |The container image used in the scheduler manifest. <details><summary>Show example(s)</summary>{{< highlight yaml >}}
|
||||
image: registry.k8s.io/kube-scheduler:v1.29.1
|
||||
image: registry.k8s.io/kube-scheduler:v1.30.0-alpha.2
|
||||
{{< /highlight >}}</details> | |
|
||||
|`extraArgs` |map[string]string |Extra arguments to supply to the scheduler. | |
|
||||
|`extraVolumes` |<a href="#Config.cluster.scheduler.extraVolumes.">[]VolumeMountConfig</a> |Extra volumes to mount to the scheduler static pod. | |
|
||||
|
Loading…
x
Reference in New Issue
Block a user