Commit Graph

5329 Commits (9d6344aac791a7e9510b55fe2352addc39b5ee41)

Author SHA1 Message Date
ChengHao Yang e008e8ee01
Test: fix Molecule CRI-O default runtime to crun
Signed-off-by: ChengHao Yang <17496418+tico88612@users.noreply.github.com>
2024-10-07 07:40:39 +08:00
ChengHao Yang f3d4377a16
Feat: add skopeo new version hash & upgrade skopeo version to v1.16.1
Signed-off-by: ChengHao Yang <17496418+tico88612@users.noreply.github.com>
2024-10-07 00:47:23 +08:00
ChengHao Yang 2717a2e585
Feat: add crun new version hash & upgrade crun version to 1.17
Signed-off-by: ChengHao Yang <17496418+tico88612@users.noreply.github.com>
2024-10-07 00:46:46 +08:00
ChengHao Yang 461a480887
Feat: complete the missing hash crun ppc64le
Signed-off-by: ChengHao Yang <17496418+tico88612@users.noreply.github.com>
2024-10-07 00:45:08 +08:00
ChengHao Yang 24e115c8b9
Feat: change cri-o default runtime to crun
Signed-off-by: ChengHao Yang <17496418+tico88612@users.noreply.github.com>
2024-10-07 00:43:30 +08:00
Max Gautier 6b3eaf8312
Use correct secret name for csi-upcloud pull secret (#11597) 2024-10-04 13:44:28 +01:00
Max Gautier b0fb06054e
Assert correct limit usage
This should prevent confusing errors with undefined variables
2024-10-04 14:20:30 +02:00
Max Gautier 2826b357d4
Remove serialized collect of ansible_default_ipv4
The fallback_ips tasks are essentially serializing the gathering of one
fact on all the hosts, which can have dramatic performance implications
on large clusters (several minutes).

This is essentially a reversal of 35f248dff0
Being able to run without refreshing the cache facts is not worth it.

We keep fallback_ip for now, simply changing the access to a normal
hostvars variable instead of a custom dictionnary.
2024-10-04 14:19:20 +02:00
Kubernetes Prow Robot ddd92c998c
Merge pull request #11507 from VannTen/cleanup/shell_etcd_reset
Refactor remove-etcd-node
2024-10-03 11:58:27 +01:00
Baargav bb4f1b1168
update cilium to 1.15.9 (#11593) 2024-10-03 10:10:27 +01:00
Olivier Boudry 583583942c
Fix Flatcar bug #11268 missing default value for ansible_interpreter_python_fallback variable (#11270) 2024-10-03 09:54:27 +01:00
peterw 6b499186b0
add cilium hubble-ui enable flag (#10939) 2024-10-01 06:53:49 +01:00
kyrie d59a5bf431
update containerd_max_container_log_line_size default value (#11585)
Signed-off-by: KubeKyrie <shaolong.qin@daocloud.io>
2024-09-30 09:12:03 +01:00
Kay Yan fcbcf3c03b
cri-o Switch to libexecdir (#11584)
Signed-off-by: Kay Yan <kay.yan@daocloud.io>
2024-09-30 08:34:03 +01:00
Serge Hartmann 0eeac591ad
variables cilium_enable_host_firewall and cilium_policy_audit_mode for configmap/cilium-config (#11230)
capitalise values for Host Firewall and Policy Audit Mode
fix missing quotes
2024-09-30 08:22:02 +01:00
Baargav 860c15cec1
Update cluster-role for cilium to prevent errors in agent startup (#11466)
* Update cluster-role for cilium to prevent errors in agent startup

ciliumloadbalancerippools permissions exists in the cilium helm chart for version 1.13.0
https://github.com/cilium/cilium/blob/v1.13.0/install/kubernetes/cilium/templates/cilium-agent/clusterrole.yaml#L71

The agent also needs permissions to read/watch secrets for bgp auth secrets when using CiliumBGPPeeringPolicy with a secret.

* Remove list/watch permissions for secrets

* Remove secrets from list/watch permissions
2024-09-29 02:30:02 +01:00
Erwan Miran 8c3b2851f6
feat(calico): add support for numAllowedLocalASNumbers on bgppeers per node definition (#11570) 2024-09-28 10:06:01 +01:00
M. Hamzah Khan 24e1765ae2
Added containernetworking-plugins to fcos bootstrap packages (#11273) 2024-09-27 20:24:01 +01:00
Kubernetes Prow Robot bbd90f7657
Merge pull request #11568 from VannTen/cleanup/dont_rely_on_kube_node_existing
Only require minimum structure in inventory, part II
2024-09-27 11:30:02 +01:00
DirkTheDaring 3281c47f98
[kubernetes] Add hashes for kubernetes 1.29.8, 1.29.9, 1.30.5 (#11581)
* [kubernetes] Add hashes for kubernetes 1.29.8, 1.29.9, 1.30.5

* Update checksums.yml

reintroduce --- for yaml
2024-09-27 08:28:02 +01:00
janosbabik 6352fee0fd
Update nerdctl version to 1.7.7 (#11575) 2024-09-27 05:04:01 +01:00
janosbabik 9f6db4012c
Update runc version to v1.1.14 and add checksums (#11574) 2024-09-27 03:58:01 +01:00
Kubernetes Prow Robot 6c112a9b41
Merge pull request #11567 from VannTen/cleanup/remove_node_static_token_generation
Remove generation of static tokens for cluster members
2024-09-26 13:58:01 +01:00
janosbabik 656ed796b9
[etcd] make etcd 3.5.16 default (#11572)
* [etcd] make etcd 3.5.16 default

* Update etcd binary checksums for version 3.5.16 and lower
2024-09-26 09:12:01 +01:00
Bakke e355bef79b
fix: vsphere image repositories, tags and docs (#11564)
The old repository for these has been deleted, leaving the previous
configuration not possible to deploy, and even currently running clusters
fail after a restart as the DeameonSet has ImagePullPolicy: Always. More
details can be found here: kubernetes-sigs/vsphere-csi-driver#3053

As of writing, only CSI driver versions 3.1.2 to 3.3.1 is available in
this registry. This "officially" supports Kubernetes 1.26 to 1.30. Since
older drivers are not available, I have removed some feature-gating for
those unavailable versions while I was at it. For the cloud provider,
the `latest` image is now missing, and only 1.28.0 to 1.31.0 are
available. I've set the latest of these as the new default.

I also updated the documented default versions, as they were all out of
date and not aligned with actual code defaults.
2024-09-26 08:22:02 +01:00
Philip Sabri 15bb5b0789
[kubernetes] Support kubernetes 1.31.1 (#11533) 2024-09-25 05:10:01 +01:00
Max Gautier fbcc8cc336
control-plane: refactor group membership test
Testing with group_names does not require the groups to exist.
2024-09-24 11:16:32 +02:00
Max Gautier 0679d9c8e9
metrics-server: proper defaults, cleaner deploy template 2024-09-24 11:16:32 +02:00
Max Gautier dba00f2d85
metrics-server: Unconditional control-plane tolerations
There is no harm on having unneeded toleration when control-plane node
are not tainted, so simplify the template to always use the toleration.
2024-09-24 11:16:31 +02:00
Max Gautier 9f45552201
Cleanup redundancy
k8s_cluster = kube_control_plane + kube_node
2024-09-24 11:16:30 +02:00
Max Gautier ee0d9c5428
remove-etcd-node: cleanups, correct change semantics 2024-09-24 09:11:32 +02:00
Max Gautier 2a52e5f08c
remove-etcd-node: refactor shell to ansible filters
Remove unnecessary error handling. If the node ip is not defined, is
does not change anything whether we fail early of late.
2024-09-24 09:08:54 +02:00
Max Gautier a2a2dfa419
k8s/control-plane: cleanup excessive defaulting 2024-09-23 20:37:56 +02:00
Max Gautier baf0a331c9
Don't generate static tokens for nodes and control planes
Nodes to api-server relies by default certificates, and bootstrap
tokens, and there should be no need to generate tokens for every nodes,
even when enabling static token auth.
2024-09-23 16:58:42 +02:00
Baargav 1c0718bb7d
update containerd 1.7.22 (#11554) 2024-09-23 15:31:59 +01:00
Kubernetes Prow Robot 03a055c383
Merge pull request #10643 from VannTen/cleanup/k8s_node_templates
Refactor kubernetes/node templates
2024-09-23 14:16:00 +01:00
Max Gautier 2ec1c93897
Test group membership with group_names
Testing for group membership with group names makes Kubespray more
tolerant towards the structure of the inventory.
Where 'inventory_hostname in groups["some_group"] would fail if
"some_group" is not defined, '"some_group" in group_names' would not.
2024-09-21 14:09:09 +02:00
Kubernetes Prow Robot 93ee1226eb
Merge pull request #11521 from VannTen/cleanup/deduplicate_kubeadm_control_plane
Use in inventory variables rather than patch files for kubeadm_patches
2024-09-20 01:05:14 +01:00
Leeon Fu 4323e5d039
Reset operation, disable service enabled and clean container's logs. (#11501) 2024-09-19 19:14:37 +01:00
Kubernetes Prow Robot 893e9cb177
Merge pull request #11471 from VannTen/feat/config_plugin_list
Update the list of admission plugins which needs config
2024-09-18 13:18:44 +01:00
Qasim Mehmood e550118314
Allow setting annotations on ingress-nginx service (#11544) 2024-09-18 11:54:44 +01:00
Max Gautier c3de25c782
Move the CRI endpoint setting to kubelet config (#11550)
The `--container-runtime-endpoint` kubelet argument is deprecated in
favor of the config file alternative.
2024-09-18 01:34:45 +01:00
Kevin Huang c601c8faf2
fix: Swap kubespray-defaults & boostrap-os (#11441)
- Execute boostrap-os before so that Python is installed for kubespray-defaults
- Remove outdated kubespray-defaults dependency on boostrap-os
2024-09-12 22:21:12 +01:00
Max Gautier c87097fc35
Document how to use kubeadm patches 2024-09-12 10:31:09 +02:00
Max Gautier 8e254ec1e8
kubeadm: allow to provide patch inline in inventories
Specifying one directory for kubeadm patches is not ideal:
1. It does not allow working with multiples inventories easily
2. No ansible templating of the patch
3. Ansible path searching can sometimes be confusing

Instead, provide the patch directly in a variable, and add some quality
of life to handle components targeting and patch ordering more
explicitly (`target` and `type` which are translated to the kubeadm
scheme which is based on the file name)
2024-09-10 20:37:14 +02:00
Max Gautier a8b66fd207
Deduplicate kubeadm_patches tasks
kubernetes/control-plane and kubernetes/kubeadm roles both push kubeadm
patches in the same way.
Extract that code and make it a dependency of both.
This is safe because it's only configuration for kubeadm, which only
takes effect when kubeadm is run.
2024-09-10 17:39:31 +02:00
M. Hamzah Khan d54cfba6c2
Fix SAN check on newer versions versions of openssl (#11277) 2024-09-09 10:04:27 +01:00
Qasim Mehmood 538a1f2791
Update multus to v4.1.0 and clarify cilium compatibility (#11434)
* Update multus to v4.1.0 and clarify cilium compatibility

* Fix: bug introduced by #10934 where the template would break if multus was defined

* Set priorityClassName to system-node-critical for multus pods
2024-09-09 03:56:27 +01:00
Max Gautier fe60832a02
Remove kubelet_node_{custom_flags,config_extra_args}
There is no need to have an extra variables for this, just use different
values per host (using Ansible group_vars, for example)
2024-09-06 09:35:34 +02:00
Max Gautier 1bc61c9f35
Simplify kubelet-config template
Remove system|kube_master_<resource>_reserved variables.
Those variables are unnecessary because users can simply use the
variables in group_vars if they which to differentiate control plane
nodes from other nodes.

Set conservative defaults for ephemeral-storage and pids for both kube
and system reserved resources.
2024-09-06 09:33:07 +02:00
Max Gautier 1533d40411
Fix kube_reserved_cgroups_for_service_slice
The default value is used across kubespray but only defined in
kubernetes/node.
Move it to kubespray-defaults
2024-09-06 09:25:23 +02:00
Bogdan Sass 4b324cb0f0
Rename master to control plane - non-breaking changes only (#11394)
K8s is moving away from the "master" terminology, so kubespray should follow the same naming conventions. See 65d886bb30/sig-architecture/naming/recommendations/001-master-control-plane.md
2024-09-06 07:56:19 +01:00
Max Gautier f9ebd45c74
boostrap-os: use import_tasks instead of symlinks (#11508)
Working symlinks are dependant on git configuration (when using the playbook as
a git repository, which is common), precisely `git config
core.symlinks`.

While this is enabled by default, some company policies will disable it.

Instead, use import_tasks which should avoid that class of bugs.
2024-09-05 08:24:49 +01:00
Max Gautier 7f527f6195
Drop support for RHEL 7 / CentOS 7 (#11246)
* Simplify docker systemd unit

systemd handles missing unit by ignoring the dependency so we don't need
to template them.

* Remove RHEL 7/CentOS 7 support

- remove ref in kubespray roles
- move CI from centos 7 to 8
- remove docs related to centos7

* Remove container-storage-setup

Only used for RHEL 7 and CentOS 7
2024-09-05 07:41:01 +01:00
刘旭 3da6c4fc18
Allow for configuring etcd progress notify interval and default set to 5s (#11499) 2024-09-05 06:29:05 +01:00
Max Gautier e744a117d6
Remove systemd version + ostree check for docker TasksMax (#11493)
systemd ignores unknown keys (with a warning) so version checking is not
necessary.
There is no rationale for excluding it from ostree systems either.
2024-09-02 13:16:57 +01:00
Jongwoo Han 03372d883a
upgrade nerdctl to v1.7.6 (#11492)
Signed-off-by: Jongwoo Han <jongwooo.han@gmail.com>
2024-09-01 11:20:44 +01:00
ChengHao Yang 8a961a60c2
Feat: Gateway API CRDs install support (#11376)
* Feat: add Gateway API CRDs installation

Signed-off-by: ChengHao Yang <17496418+tico88612@users.noreply.github.com>

* Feat: add Gateway API CRDs variable in inventory

Signed-off-by: ChengHao Yang <17496418+tico88612@users.noreply.github.com>

---------

Signed-off-by: ChengHao Yang <17496418+tico88612@users.noreply.github.com>
2024-08-31 08:24:45 +01:00
ERIK db0138b2f9
fix: incorrect member matching when removing etcd nodes (#11488)
Signed-off-by: bo.jiang <bo.jiang@daocloud.io>
2024-08-31 08:20:44 +01:00
Kay Yan 27c7dc7008
upgrade helm to v3.15.4 (#11486) 2024-08-30 06:39:30 +01:00
Lihai Tu acc5e579f6
Add conditional checking on ubuntu kernel unattended_upgrades disabling (#11479)
Signed-off-by: tu1h <lihai.tu@daocloud.io>
2024-08-29 15:47:39 +01:00
Ehsan Golpayegani 924a979955
Calico v3.28.[0-1] checksums and change calico default version (#11234)
* make calico api server manifest backward compatible with version older than 3.27.3

Add 3.28.1 checksums
Add 3.28.0 checksums
Change default version to 3.27.3

* change default calico version to 3.28.1

* Set mount type to DirectoryOrCreate for hostPath needed by Calico
2024-08-29 12:10:28 +01:00
Kay Yan 6acb44eeaf
update containerd 1.7.21 (#11478) 2024-08-29 04:22:29 +01:00
Takuya Murakami c89ea7e4c7
Fix: remove --config option from kubeadm upgrade (#11350) (#11352)
We can't mix some options with --config for kubeadm upgrade.
The --config on upgrade is deprecated, and should be removed.
2024-08-29 03:08:29 +01:00
Selçuk Arıbalı 3d9e4951ce
fix static api server advertise address (#11457) 2024-08-28 15:20:56 +01:00
Max Gautier 776b40a329
Adjust task name since we allow empty kube_node (#11474) 2024-08-28 06:35:02 +01:00
Max Gautier a3d0ba230d
Remove kubeadm_version and use kube_version instead (#11473)
We explicitly check for equality so customizing kubeadm_version does not
work at the moment.

Use only one variable instead.
2024-08-28 06:34:56 +01:00
Vlad Korolev 9a7b021eb8
Do not use ‘yes/no’ for boolean values (#11472)
Consistent boolean values in ansible playbooks
2024-08-28 06:30:56 +01:00
kyrie 961a6a8c9e
fix reset network for tencent OS (#11459)
Signed-off-by: KubeKyrie <shaolong.qin@daocloud.io>
2024-08-26 15:32:08 +01:00
Max Gautier 5b057c7328
Update list of admission plugins with a config file 2024-08-26 14:53:20 +02:00
Max Gautier d3402736d4
Remove special case for PodNodeSelector
This is already handled by the previous task.
2024-08-26 14:43:00 +02:00
Max Gautier 47c3949477
Change plugins_needs_config list format
Makes easier diff when adding or removing plugins.
2024-08-26 14:42:04 +02:00
Lola Delannoy 2f84567a69
Add containerd config options (#11080)
* chore(containerd): add some config debug options

See: https://github.com/containerd/containerd/blob/v1.7.15/docs/man/containerd-config.toml.5.md

* chore(containerd): add CRI config options

See: https://github.com/containerd/containerd/blob/v1.7.15/docs/man/containerd-config.toml.5.md
See: https://github.com/containerd/containerd/blob/v1.7.15/docs/cri/config.md
2024-08-21 05:13:05 +01:00
Mohamed Omar Zaian c4338687e1
[ingress-nginx] upgrade to 1.11.2 (#11463) 2024-08-19 06:10:27 -07:00
Mohamed Omar Zaian ad1ce92b41
Update node-feature-discovery to v0.16.4 (#11250) 2024-08-19 05:59:30 -07:00
kokyhm 1093c76f9b
bump k8s version (#11455) 2024-08-19 00:12:33 -07:00
Ho Kim 0306771c29
fix: cleanup networkmanager dns conf on reset (#11440) 2024-08-15 06:43:19 -07:00
Mengxin Liu 390d74706c
[kube-ovn] update version to 1.12.21 (#11445)
Signed-off-by: Mengxin Liu <liumengxinfly@gmail.com>
2024-08-15 06:39:18 -07:00
Ho Kim fe4cbbccd1
fix: correct resolvconf typo (#11439) 2024-08-14 02:07:55 -07:00
Selçuk Arıbalı e43e08c7d1
fix: use super-admin.conf for kube-vip on first master when it exists (#11422)
* fix: use super-admin.conf for kube-vip when it exists

* Mathieu Parent add as co-author

Co-authored-by: Mathieu Parent <math.parent@gmail.com>

* template change for readability

* fix lint error

---------

Co-authored-by: Mathieu Parent <math.parent@gmail.com>
2024-08-10 21:35:58 -07:00
Cyclinder 28712045a5
bump cni version to v1.4.0 (#10698) 2024-08-10 05:25:58 -07:00
Not Darko 1968db9a52
fix: skip multus when not defined (#10934)
fix task failure:
TASK [kubernetes-apps/network_plugin/multus : Multus | Start resources] ************************************************
fatal: [hfal12k8n1 -> {{ groups['kube_control_plane'][0] }}]: FAILED! => {"msg": "Error in jmespath.search in json_query filter plugin:\n'ansible.vars.hostvars.HostVarsVars object' has no attribute 'multus_manifest_2'"}
2024-08-06 03:42:50 -07:00
Slavi Pantaleev cc03ca62be
Avoid empty "supersede domain-name-servers" directives for dhclient.conf (#10948)
Fixes https://github.com/kubernetes-sigs/kubespray/issues/10947

This patch aims to be minimal and intentionally:

- does not change the generation logic for `supersede_domain` and `supersede_search`
- does not change how `nameserverentries` (for NetworkManager) is built

It seems like `nameserverentries` in the "Generate nameservers for resolvconf, including cluster DNS"
task is built the same way as `dhclient_supersede_nameserver_entries_list`.
However, `nameserverentries` in the "Generate nameservers for resolvconf, not including cluster DNS"
task (below) is built differently for some reason. It includes `configured_nameservers` as well.
Due to these differences, I have refrained from reusing the same building logic
(`dhclient_supersede_nameserver_entries_list`) for both.

If the `configured_nameservers` addition can be removed or made to apply
to dhclient as well, we could potentially build a single list and then
generate the `nameserverentries` and `supersede_nameserver` strings from it.
2024-08-06 03:38:51 -07:00
Injun Baeg 5f18fe739e
Restart kube-proxy pods only on configmap changes (#11401) 2024-08-06 00:50:50 -07:00
kyrie 343d680371
fix kylin OS choose NetworkManager (#11406)
Signed-off-by: KubeKyrie <shaolong.qin@daocloud.io>
2024-08-05 03:34:59 -07:00
Mohamed Omar Zaian 3d1653f950
[containerd] add hashes for versions '1.6.32-34', 'v1.7.17-20' and make v1.7.20 default (#11413) 2024-08-05 02:48:07 -07:00
James 4e99b94dcc
Add generic post upgrade hooks for node (#11368) 2024-07-31 21:58:48 -07:00
Sanyam Shah 54ac5a6de4
Update cni-kube-ovn.yml.j2 (#11357)
Made corrections in Indentation at L658 which causes kubespray execution failed with YAML to Json conversion. #11356
2024-07-31 21:58:39 -07:00
Mohamed Omar Zaian 8d497b49a6
[kubernetes] Add hashes for kubernetes 1.29.7, 1.28.[11-12] (#11407) 2024-07-31 03:50:56 -07:00
Kay Yan 86f980393c
Merge pull request #11402 from tu1h/fix_centos_baserepo
Check CentOS-Base.repo exists for CentOS 7
2024-07-30 11:08:22 +08:00
Erwan Miran d469503e84
Make netchecker log levels configurable (#11334)
* Make netchecker log levels configurable

* use ETCD_LOG_LEVEL
2024-07-28 23:57:56 -07:00
tu1h 351832ba1d
Check CentOS-Base.repo exists for CentOS 7
Signed-off-by: tu1h <lihai.tu@daocloud.io>
2024-07-29 13:49:14 +08:00
R. P. Taylor 468c5641b2
fix kube_reserved so it only controls kubeReservedCgroup (#11367) 2024-07-26 01:39:20 -07:00
Ugur Can Ozturk 2299e49e0e
[containerd/tracing]: fix containerd tracing templating (#11372)
Signed-off-by: Ugur Ozturk <ugurozturk918@gmail.com>
2024-07-26 01:30:38 -07:00
Tom M. c0fabccaf6
Add missing advertise-address flag to Kubeadm config, so it's passed to api-server (#11387) 2024-07-26 01:22:05 -07:00
Kay Yan 2ac5b37aa9
Merge pull request #11391 from tico88612/bump/k8s-1.30.3
Make kubernetes v1.30.3 default
2024-07-26 16:15:01 +08:00
Lihai Tu 8208a3f04f
Rename systemd module to systemd_service (#11396)
Signed-off-by: tu1h <lihai.tu@daocloud.io>
2024-07-26 01:11:39 -07:00
Lihai Tu 2d194af85e
Limit nodes in gather ansible_default_ipv4 (#11370)
Signed-off-by: tu1h <lihai.tu@daocloud.io>
2024-07-25 19:17:48 -07:00
Tom M. 242edd14ff
Fix etcd certificate to acces address as SAN (#11388) 2024-07-25 18:49:23 -07:00
Bas 8f5f75211f
Improving yamllint configuration (#11389)
Signed-off-by: Bas Meijer <bas.meijer@enexis.nl>
2024-07-25 18:42:20 -07:00