summaryrefslogtreecommitdiffstats
path: root/recipes-containers/k3s
Commit message (Collapse)AuthorAgeFilesLines
* k3s: update recipe formatting and map googlesource to githubBruce Ashfield2022-06-202-2585/+3084
| | | | | | | | | | Reformat the k3s depedencies and src_uri into a more readible and maintainable format. We also map googlesoruce to github for better fetching, as suggested by Diego Sueiro <diego.sueiro@arm.com>. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: Add missing IP Virtual Server (ip_vs) feature to the kernel configRichard Neill2022-04-201-0/+4
| | | | | | | | | | | | | | | | | K3s (and Kubernetes) supports load balancing via IPVS, and by default reports errors when IPVS kernel modules cannot be loaded. This patch adds the missing reported kernel modules to the k3s recipe: * ip-vs * ip-vs-rr * ip-vs-wrr * ip-vs-sh The modules are configured by including the ip_vs kernel feature. Signed-off-by: Richard Neill <richard.neill@arm.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: do not use a go file as patchAdrian Freihofer2022-04-111-1/+1
| | | | | | | | | | | | | | | On some build hosts, one of our downloaded depedencies matches patch.bbclass' regex, and is then thought to be a patch. That leads to errors as follows: Compiling k3s failed with: do_patch: Importing patch 'github.com.andreyvit.diff' with striplevel '1' We add a noapply to the SRC_URI to ensure that it is not considered a patch. Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: clarify uprev version (1.22.6) and PVBruce Ashfield2022-03-311-15/+4
| | | | | | | | | | | | | | | | The shortlog of the previous uprev incorrectly stated that 1.23.x was the target. There are issues remaining with that version, so the uprev was contained to 1.22.x We also typically do NOT use the exact release tag, since fixes are continually arriving post release, and with the extensive go mod vendor process, it doesn't accurately represent the version. As such, we switch to: v1.22.6+k3s1+git${SRCREV_k3s}, for finer grained version tracking. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: update to 1.23.1Bruce Ashfield2022-03-212-2/+2819
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The significant commit in this series is: 0e72260df4 delete vendor dir Which means that we completely have to revamp the recipe to build without go accessing the network to pull in dependencies. This is an initial effort, and it is acknowledged that it isn't efficient or fast, due to the number of fetches and I/O required to complete the population of the vendor/ directory. The recipe can be iterated and made more efficient over time. Bumping k3s to version v1.23.1+k3s1-11-ge7464a17f7, which comprises the following commits: e7464a17f7 Fix use of agent creds for secrets-encrypt and config validate 8d8c8b0c6b Don't skip the dev image when skipping airgap 31f1a00b6f Fix a typo: advertise-up -> advertise-ip (#4827) 2ac8df3602 Integration tests utilities improvements (#4832) 612a9412fd Enable make generate to use dapper and standardize go and gzip versions (#4861) 66eeabbdfc linter doesn't actually run on windows, found these while getting it running on a windows machine 142b1d96f4 Update channel.yaml for 1.23 ff49dcf71e Export default parser d0f7e23328 Require integration test to be run as sudo/root (#4824) a02db0f2fa Fix cgroup smoke test (#4823) 08d538fb3a Update golang 87395e32d6 Update modules for Kubernetes v1.23 6656d48415 Add tests to use vagrantfile (#4722) 70902209b9 Bump stable to v1.22.5+k3s1 (#4821) 3ee3ecb3ac package rename wasnt approved yet, backing out cruft that snuck into last pr a5c6e6a68a Fix panic checking name of uninitialized etcd member 52e450f033 Add etcd sonobuoy tests 9919f229b6 Add variable to enforce max test concurrency 247298a20d Fix previous channel detection 6872e7da25 More codespell ignores 3ae550ae51 Update bootstrap logic to output all changed files on disk (#4800) 0e72260df4 delete vendor dir e6cf8f5982 code changes to drop the vendor dir 4eb282edac Move flannel logs to logrus 2e91913f54 Close agentReady channel only in k3s (#4792) 8ad7d141e8 Close etcd clients to avoid leaking GRPC connections 588d15db8f Remove Disables, Skips and DisableKubeProxy from the comparing configs 555dfc54db Add initial skeleton ADOPTERS.md to better track large use cases (#4764) baf865b836 Add ADR 6f4217a340 Build standalone containerd 8737e2e13f Build script cleanups 89e63972e9 Bump k3s-root to v0.10.1 17eebe0563 Fix cold boot and reconcilation on secondary servers (#4747) 73725a0882 docs: adrs: Dual-stack in network policy agent d71b335871 Fix snapshot restoration on fresh nodes (#4737) bf4e037fcf Resolve Bootstrap Migration Edge Case (#4730) 2f3bfc27c0 Add in docs/adr to ensure we capture decisions properly during design calls (#4707) a6fe2c0bc5 Resolve restore bootstrap (#4704) a70487d5ae Update wharfie usage in windows code path 3985fd0e26 [master] Add validation to certificate rotation (#4692) e8a30a87c8 Bump runc to v1.0.3 eb068da7f3 Add `SKIP_AIRGAP` enviroment variable for make (#4688) 8f389ab030 Include node-external-ip in serving-kubelet.crt SANs (#4620) bcb662926d Secrets-encryption rotation (#4372) 1b3187ea07 Check HA network parameters 7d3447ceff Bump wharfie to v0.5.1 and use shared decompression code 05d43278e2 bump kine to v0.8.1 3b6a3fe905 Update dynamiclistener a8f7e9f7e8 Nighlty automation vagrant rework (#4574) a0208058ae Bump stable to v1.21.7+k3s1 (#4636) 77fd3e99ec Add cert rotation command (#4495) 1e6e4db2bc Update maintainers list (#4622) d05c334a78 Improved cleanup for etcd unit test (#4537) ae4a1a144a etcd snapshot functionality enhancements (#4453) 0c1f816f24 go generate a7ba3e14ff Add package version to traefik helm chart 7685da3e24 Improve flannel logging d93c82f958 [master] Bump golang and containerd (#4538) 65110a4eec [master] Bump Kubernetes to v1.22.4-k3s1 (#4536) 03485632ea Fix regression with cluster reset (#4521) ef263bd2b0 Improved regex for double equals arguments (#4505) 535a919635 Removed value from warning about skipping flags (#4491) c77efe64e1 tests/vagrant: refactor vagrant smoke tests (#4484) f18b3252c0 [master] Add etcd extra args support for K3s (#4463) 41ff19de71 Feature: Add CoreDNS Customization Options 4b57951fb0 Fix to allow etcd-snapshot to use config file with flags that are only used with k3s server. (#4464) 5ab6d21a7d Increase agent's apiserver ready timeout (#4454) bc7cdc78ca go generate 2e9358934d Add dashboard annotations to Traefik helm chart 5d168a1d59 Allow svclb pod to enable ipv6 forwarding adaeae351c update bootstrap logic (#4438) d85b2468ea Corrected skip check for dualstack on CI (#4427) 559c8ad94b install: /usr/sbin/transactional-update (#4403) 7bd65047c3 Match to last After keyword for parser (#4383) 8915e4c7f7 Replace gzip with pigz for faster builds (#4411) 0a5c6b1088 Remove unit tests from drone CI (#4424) 36c6634cce [master] updating to new signals package in wrangler (#4399) f1d6e9bc4b install.sh: fix path detection for sle-micro (#4398) 86c6924119 containerd: v1.5.7-k3s2 (#4387) f7dcc139ff Bump klipper-lb image for arm fix aa3332085f Update k3s CI to run all integration tests (#4358) 94c1b988ca Enable Epics Action to automatically check off child issues in an epic (#4353) f1622129e4 refactor: Use plain channel send or receive f9f1cabe9c Fix log/reap reexec 702fe24afe containerd/cri: enable the btrfs snapshotter (#4316) 3da1bb3af2 Fix other uses of NewForConfigOrDie in contexts where we could return err 5acd0b9008 Watch the local Node object instead of get/sleep looping 3fe460d080 Block scheduler startup on untainted node when using embedded CCM 52eb6cac1c install.sh: initial support for sle-micro (#4331) 91cf835ec3 Update to v1.22.3 (#4354) 7c3f21e581 K3s Integration test fixes (#4341) ab3d25a2c5 Update peer address when running cluster-reset 0a0b915921 reset buffer after use (#4279) 02a314c69a Bump klipper-helm version 918945da45 Added configuration input to etcd-snapshot (#4280) 72a1925a34 install.sh: capture quoted environment variables (#4275) 6e410fad49 Update to the newest flannel b5b7033afd Bump klog fork version e11a4bf8bb set duration to second (#4231) 0452f017c1 Add etcd s3 timeout (#4207) 34080b23b1 Copy old bootstrap buffer data for use during migration (#4215) dbc14b8990 Fix race condition in cloud provider 5a923ab8dc Add containerd ready channel to delay etcd node join 6b4d75d245 maintainers: add Manuel and Michal (#4193) b282528ee2 Display cluster tls error only in debug mode (#4124) dc18ef2e51 Refactor log and reaper exec to omit MAINPID d6b6a3ee9f vagrant: Add Ubuntu 21.04 support 5e01201195 vagrant: Update package list for Ubuntu e420583684 vagrant: Add support for vagrant-libvirt f830d09d6e vagrant: Change OS environment variable to DISTRO feec44572d Improve error message when using a "K10" prefixed token (#4180) ac7a8d89c6 Add ability to reconcile bootstrap data between datastore and disk (#3398) 9e787bfacb moving fossa to being inline step with a sles image b6919adf62 Add "etcd-" prefix to etcd-snapshot commands as aliases (#4161) 00cf4578ec Dual-stack support LB controller 1f7151ed2f Update stable to v1.21.5+k3s2 9b35734e1a Add topologySpreadConstraints to support scaling of coredns e24e1332fd Bump containerd to v1.5.7+k3s1 12e675e2cc Don't evacuate the root cgroup when rootless cd5002ea37 Skip tests that violate version skew policy 5d1a37ee32 Send MAINPID to systemd when reexecing for logfile output a16105b348 Properly handle operation as init process f4cea90cb9 set transport to skip verify if se skip flag passed (#4102) fd495a6a5f Bump stable to v1.21.5+k3s1 (#4068) 87524a7ac7 Enable the inheritance of settings for ipv6 4ec71b360c Adding fossa anaylze/test drone step 73e21e739f Drop broken SupportNoneCgroupDriver support 8005885bad Add 1.22 channel 539e224159 Update build images to python3 for compat with recent gsutil change b99b943c17 Use the new klipper-lb image that has newer go and Alpine versions Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: update to 1.22.3Bruce Ashfield2021-11-081-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bumping k3s to version v1.22.3+k3s1, which comprises the following commits: 61a2aab25e Upgrade containerd e1883d0537 Bump klipper-lb image for arm fix 5eb13b6ba6 Fix log/reap reexec 259ceb452c Fix other uses of NewForConfigOrDie in contexts where we could return err cc23fce0a7 Watch the local Node object instead of get/sleep looping 6349aed8e8 Block scheduler startup on untainted node when using embedded CCM db8f54e6af Update to v1.22.3 (#4348) 46eea2f10a Revert "Add ability to reconcile bootstrap data between datastore and disk (#3398)" 9a4ca5978b reset buffer after use (#4279) (#4329) c9f6fa0be0 remove integration test 07f844cf95 Copy old bootstrap buffer data for use during migration (#4215) 48355dce10 Add ability to reconcile bootstrap data between datastore and disk (#3398) 84e9b829e0 Update peer address when running cluster-reset 06b8639068 Bump klipper-helm version f98934980d Added configuration input to etcd-snapshot (#4280) (#4281) 7ede7d2e7c Update to the newest flannel 971854c15b Refactor log and reaper exec to omit MAINPID 3988edef25 Add containerd ready channel to delay etcd node join b65bcdf963 Bump klog fork version 7c78e1c802 [Release-1.22] - Add etcd s3 timeout (#4207) (#4230) c10a0a2163 Fix race condition in cloud provider 6193b1af97 Display cluster tls error only in debug mode (#4200) 737f722315 set transport to skip verify if se skip flag passed (#4102) (#4103) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: Add additional required kernel modulesRichard Neill2021-11-081-0/+4
| | | | | | | | | | | | | | | Adds the following kernel modules for k3s: * xt-physdev * xt-nflog * xt-limit * nfnetlink-log Without them, the k3s network-policy-controller reports failures in the log related to iptables-restore. Signed-off-by: Richard Neill <richard.neill@arm.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* global: convert github SRC_URIs to use https protocolBruce Ashfield2021-11-021-1/+1
| | | | | | | | | | | github is removing git:// access, and fetches will start experiencing interruptions in service, and eventually will fail completely. bitbake will also begin to warn on github src_uri's that don't use https. So we convert the meta-virt instances to use protocol=https (done using the oe-core contrib conversion script) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: Add xt-statistic kernel module to rrecommendsKamil Dziezyk2021-10-211-0/+1
| | | | | | | | | Include the xt-statistic kernel module required by K3S for iptables configuration. Signed-off-by: Kamil Dziezyk <kamil.dziezyk@arm.com> Change-Id: I7592261c65c7c0831ce553ee907fba9e3e458b6f Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: Update k3s service configurationKamil Dziezyk2021-10-213-1/+95
| | | | | | | | | | | | | | Update k3s.service with the latest changes from install.sh script. Add k3s-killall.sh script to stop all of the K3s containers and reset the containerd state. The killall script cleans up containers, K3s directories, and networking components while also removing the iptables chain with all the associated rules. The cluster data will not be deleted. Signed-off-by: Kamil Dziezyk <kamil.dziezyk@arm.com> Change-Id: If1794367cabfc18fc8e3ecaf26badd4d0bc25114 Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: update to v1.22.xBruce Ashfield2021-10-121-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bumping k3s to version v1.22.2+k3s2-4-g737f722315, which comprises the following commits: 737f722315 set transport to skip verify if se skip flag passed (#4102) (#4103) dd4b36e034 Add "etcd-" prefix to etcd-snapshot commands as aliases (#4161) (#4170) cedcece9cc Dual-stack support LB controller 3f5774b41e Bump containerd to v1.5.7+k3s1 bdd597fb9e Don't evacuate the root cgroup when rootless 6d282b26c2 Skip tests that violate version skew policy a09bcba540 Properly handle operation as init process 44013ae899 Enable the inheritance of settings for ipv6 10bca343e8 Update build images to python3 for compat with recent gsutil change 28be0de4e8 Revert "Use the newer klipper-lb image" 64b502e92c Disable automounting service account token in servicelb pods 7826407a2e Make sure there are no duplicates in etcd member list (#4025) 1d21491094 Use the newer klipper-lb image 753e11ee3c Enable JobTrackingWithFinalizers FeatureGate dccee4e87b Fix regression from commit 137e80cd865efe51aa3ef0323fd6b0a014b7b9de 7a36c3f7f2 Bump golang version 77dfdda909 Update Kubernetes to v1.22.2-k3s1 eda65b19d9 Remove expiremental from cluster commands (#4024) debb508643 Nvidia container runtime discovery in containerd config template (#3890) 086ca8ba6a Fix premature etcd shutdown when joining an existing cluster 85e11c47d1 Add StargzSupported stub for Windows e732517712 Retrieve "CONTAINERD_" environment variables acf9036b63 No-op when etcd member was already removed and use existing name for etcd controller (#4014) 9fcd79baae Add tests to the dual-stack PR and enable dual-stack with flannel backend 681058bb40 Add dual-stack support 5e0fae914f Bump helm-controller and klipper-helm image version b72306ce3d Return the error since it just gets logged and retried anyways 5986898419 Use SubjectAccessReview to validate CCM RBAC dc556cbb72 Set controller authn/authz kubeconfigs 199424b608 Pass context into all Executor functions 137e80cd86 Handle cgroup v1/2/hybrid in check-config.sh more explicitly/accurately 928b8531c3 [master] Add `etcd-member-management` controller to K3s (#4001) 699ea16523 go mod tidy 57377d2cd4 Minor cleanup on cribbed function 3449d5b9f9 Wait for apiserver readyz instead of healthz 3d27804c77 Anything not EL7 is EL8 b4d8c641c6 Add exposed metrics listener instead of replacing loopback listener 29c8b238e5 Replace klog with non-exiting fork 90960ebf4e SupportPodPidsLimit is locked to true of 1.20, making pids cgroup support mandatory 741ba95b04 Migrate sqlite data to etcd when initializing the cluster a1ec43e0b7 feat: add option to disable s3 over https 8b857eef9c Ship Stargz Snapshotter (#2936) cf12a13175 Add missing node name entry to apiserver SAN list 74196acaea added raspberry installation hint (#2379) fdaa0c4210 Update maintainers to reflect team changes b8add39b07 Bump kine for metrics/tls changes ad1a40a96c Small updates to CONTRIBUTING (#3734) 933052a02c Fix condition for adding kubernetes endpoints (#3941) 4d6ddfea51 Bump stable to v1.21.4+k3s1 60297a1bbe Creation of K3s integration test Sonobuoy plugin (#3931) 84155ee313 Make consistent use of os-release vars 2a68c7c8a4 Fix issue where addon checksum was never stored 736c262612 Move cniplugins version to 0.9.1 96dcef478a Add functions to separate ipv4 from ipv6 functions a9fce84ab6 github actions: enable workflow_dispatch (#3923) 114b30277f Redux: Enable K3s integration test to run on existing cluster (#3905) f94d8d76a8 Check /etc/os-release exists before sourcing it 51b7451709 install.sh: Inform user of current k3s+SELinux support status for SUSE/openSUSE systems 331c6fed71 Remove runtime V1 (`containerd-shim`) c23e63aeea Update RootlessKit to v0.14.5 (#3902) 176451f4ea Fix rootless regression in 1.22 (Set KubeletInUserNamespace gate) (#3901) 66dacc6ee0 Revert "Enable K3s integration test to run on existing cluster (#3892)" (#3899) 703b5af950 Enable K3s integration test to run on existing cluster (#3892) 58315fe135 Set osImage for docker image 156bae2940 Fix PREVIOUS_CHANNEL lookup when current minor release is not stable e95b75409a Fix lint failures a5355f0827 Replace dropped v1beta1 APIs with v1 dc14f370c4 Update wrangler to v0.8.5 c434db7cc6 Wrap errors in runControllers for additional context 422d266da2 Disable deprecated insecure port 641ab26fde Update containerd to 1.5 16616c6b90 Update grpc 54a7c860c7 Update kine for etcd v3.5 compat 92b651e548 update golangci config to sync with RKE2 4ebd6009ea Bump gopls and golangci-lint 872855015c Update etcd to v3.5.0 e204d863a5 Update Kubernetes to v1.22.1 ed5991f13b K3s Flock Integration Test (#3887) e322924781 Reset load balancer state during restoraion (#3877) a55921b33d Add missing labels to stalebot config 8e90c56f5c Update Kubernetes to v1.21.4-k3s1 544cf406aa Bump containerd to v1.4.9-k3s1 a1097984c0 Bump helm-controller to work around tiller crashes b23955e835 Fix URL pruning when joining an etcd member (#3832) e87204c064 Added new testing documentation (#3823) a1e36153f9 Added locking system for integration tests (#3820) ae909c73e5 Updated the code to use GetNetworkByName and tweaked logic. 4cc781b5e3 Moved testing utils into tests directory. Improved gotests template. (#3805) dcf0657b20 account for an s3 folder when listing objects (#3807) b4eca61aeb Prevent snapshot commands from creating empty snapshot directory (#3783) 3b01157a3a Use New Image Names (#3749) bc96ffb5f3 Fix Node stuck at deletion (#3771) 338f9cae3f Bump helm-controller to v0.10.2 80a15bebc0 install.sh: Use built-in shell functionality instead of awk dfd4e42e57 Wrap context with lease before importing images 2069cdf4ee Fix initial start of etcd only nodes (#3748) 429af17e4d update rancher/local-path-provisioner to v0.0.20 56109f96b3 Update MAINTAINERS (#3744) 5ab3590d9b Improve config retrieval messages 869b98bc4c Sync DisableKubeProxy into control struct 4f03532f47 Add nightly automation tests 09457a57d5 Add in stalebot config, starting with 6mo old stale issues. (#3739) b1b5f72dc3 Notify systemd for etcd only node (#3732) 7704fb6ee5 Exporting the AddFeatureGate function and adding a unit test for it. (#3661) fc19b805d5 Added logic to strip any existing hyphens before processing the args. (#3662) a1d7a62493 Fix to allow non-root users access to storage volumes. (#3714) 90445bd581 Wait until server is ready before configuring kube-proxy (#3716) 21c8a33647 Introduction of Integration Tests (#3695) f99b1c8798 add gotests templates (#3709) 71e1f1df8c Ignore markdown files for github actions (#3676) 1f6806d940 Update 1.21 stable version 20a48734c2 more fixes 7ebcc4b134 more fixes b4401296ec replace error with warn in delete 2f82bfcf67 fix warning msg b377839148 migrate old token key format 997ed7b9b4 simplifying the code ad17292fa8 migrate empty string key properly a65e5b6466 Fix multiple bootstrap keys found 37fcb61f5e move go routines for api server ready beneath wait group c5832c1128 Bump Kubernetes to v1.21.3 b352d73511 Bump containerd to v1.4.8-k3s1 18bc98f60c adding startup hooks args to access to Disables and Skips (#3674) dcabe14edd Update .github/ISSUE_TEMPLATE/feature_request.md 8840c937e6 Update .github/ISSUE_TEMPLATE/bug_report.md bba49ea447 Fix to allow prune to correctly cleanup custom named snapshots (#3649) f6be76b4f7 Add checkbox to denote backporting required on issue templates aef8a6aafd Adding support for waitgroup to the Startuphooks (#3654) ad28d18b19 Bump helm-controller to v0.10.1 (#3644) d96fa8f727 Add issue template for creating release checklist issues (#3604) a939decf01 fix a runtime core panic (#3627) 55fe4ff5b0 Convert existing unit tests to standard layout (#3621) fbc41ed753 Upgrade k3s-root version 238dc2086e prevent snapshot save when snapshots are disabled (#3475) a4c992ce52 🐳 burp to inetaf/tcpproxy dd8398dc76 Bump the packaged runc binary version ada145641c Update etcd snapshot error message to be more informative when etcd database is not found (#3568) a62d143936 Fixing various bugs related to windows. e1cd9438ad Update ROADMAP.md 81b006c938 Dispatch to rancher/system-agent-installer-k3s when tagged (#3589) 73df2d806b Update embedded kube-router (#3557) 77fcf2dfc5 missing build tag for windows 18367e12d0 Set ulimits in docker-compose.yml 8faa70dced Update to v1.21.2 6b3285b7e3 Fix coverage reporting to include all packages, not just those with tests c833183517 Add unit tests for pkg/etcd (#3549) cbfe673c43 Fix spelling to satisfy codespell check cbacd7107e Allow passing targeted environment variables to containerd 4a6e87e5a2 Add user-facing change section to PR template a5cff7e143 (docs) Update README.md f5fbb9a9a8 Export cli server flags and etcd restoration functions (#3527) 246b378a27 Bump kine to resolve race condition and unrevisioned delete 3e1693bc97 Changes local storage pods to have 700 permissions (#3537) 7242ce9316 Redux: Add Unit Test Coverage to CI (#3524) 04398a2582 Move cloud-controller-manager into an embedded executor (#3525) f3d0a857d2 Bump stable version to v1.21.2+k3s1 (#3526) a84c75af62 Adds a command-line flag '--disable-helm-controller' that will disable the server's built-in helm controller. cf55712767 Revert "Add Unit Test Coverage to CI (#3494)" (#3499) 216b3beaef Add Unit Test Coverage to CI (#3494) 82394d7d36 Basic windows agent that will join a cluster without CNI. 136dddca11 Fix storing bootstrap data with empty token string (#3422) a629db023c Fail to start k3s if nm-cloud-setup is enabled 4b2ab8b515 Renamed client-cloud-controller crt and key (#3470) ef23c6c548 Redux: Change containerd image leases from context lifespan to permanent (#3464) b74c499709 Revert "Change containerd image leases from 24h to permanent (#3452)" (#3461) 86b3ba8dba Change containerd image leases from 24h to permanent (#3452) 88f95ec409 Send systemd notifications for both server and agent (#3430) a7d1159ba6 Emit events for AddOn lifecycle ea2cd6d727 Add comments, clean up imports and function names 6e48ca9b53 Tidy up function calls with many args 6ef000091a Add nodename to UA string for deploy controller 2afa3dbe1c Changed iptables version check for fail if version is between 1.8.0 and 1.8.3 and using nf_tables mode (#3425) f6cec4e75d Add kubernetes.default.svc to serving certs 243fd14cf1 Change Replace with ReplaceAll function afd506a595 fix possible race where bootstrap data might not save 2682183773 add log message indicating etcd snapshots are disabled 664a98919b Fix RBAC cloud-controller-manager name 3308 (#3388) 5e0527f304 cgroup2 CI: add rootless daf527ccaf k3s-rootless.service: use fuse-overlayfs snapshotter 1576030d6b Add a path for wireguard's privatekey 7345ac35ae Initial windows support for agent (#3375) 3abe7c7cef Bump stable version to v1.21.1+k3s1 and add v1.21 channel d415e41337 Update flannel version cb25835d84 containerd: v1.4.4-k3s2 79cf4a7c83 Bump channel stable version to v1.20.7+k3s1 25c2888d28 Fix shell expansion and file permission issues install.sh f11cbc5a8e runc: v1.0.0-rc95 (#3348) ecbf17e2ed move object channel defer close to goroutine 254b52077e add retention default and wire in s3 prune 7e175e8ad4 Handle conntrack-related sysctls in supervisor agent setup c824c3bcc1 Add support for multiple env files for systemd unit e8ecc00fc8 add etcd snapshot save subcommand Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: update to v1.21.5Bruce Ashfield2021-10-121-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | Bumping k3s to version v1.21.5+k3s2-2-gaa5a0a8c78, which comprises the following commits: aa5a0a8c78 set transport to skip verify if se skip flag passed (#4102) (#4104) 3ee5098225 Add "etcd-" prefix to etcd-snapshot commands as aliases (#4161) (#4171) 724ef700ba Bump containerd to v1.4.11+k3s1 69a9f46bce Don't evacuate the root cgroup when rootless 0af55a830a Skip tests that violate version skew policy 9e66f975d5 Fix PREVIOUS_CHANNEL lookup when current minor release is not stable 38ddda587a Properly handle operation as init process 15f3a2ebfb Enable the inheritance of settings for ipv6 273827d4ba Update build images to python3 for compat with recent gsutil change 8c2f7ac41c Remove experimental from cluster commands acad8ef840 [release-1.21] Update Kubernetes to v1.21.5 (#4032) 6acee2e2f5 No-op when etcd member was already removed and use existing name for etcd controller (#4015) 863512e055 Initial leader elected etcd member management controller (#4010) 37caf87d6d Add exposed metrics listener instead of replacing loopback listener a8a6edfb0d Add missing node name entry to apiserver SAN list 659307d327 Fix condition for adding kubernetes endpoints (#3941) (#3946) 7cf85c235a Fix issue where addon checksum was never stored 656c190629 Reset load balancer state during restoraion (#3878) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* virtual/containerd: don't rprovide virtual/Bruce Ashfield2021-09-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Similar to the oe-core commit: commit 93ac180d8c389f16964bce8bd5538d9389e970e6 Author: Michael Opdenacker <michael.opdenacker@bootlin.com> Date: Wed Sep 1 11:20:20 2021 +0200 meta: stop using "virtual/" in RPROVIDES and RDEPENDS Fixes [YOCTO #14538] Recipes shouldn't use the "virtual/" string in RPROVIDES and RDEPENDS. That's confusing because "virtual/" has no special meaning in RPROVIDES and RDEPENDS (unlike in PROVIDES and DEPENDS). Instead, using "virtual-" instead of "virtual/" as already done in the glibc recipe. We stop rproviding virtual/containerd to keep the namespace clean. There aren't many users of this virtual provides, but we keep it around (for now) to maintain compatibility. At the same time we convert the RPROVIDES to virtual-containerd, to keep it available and consistent with oe-core use virtual-libc, etc. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: update to 1.21.4Bruce Ashfield2021-08-271-2/+2
| | | | | | | | | | | | | | | | | | Bumping k3s to version v1.21.4+k3s1-1-g656c190629, which comprises the following commits: 656c190629 Reset load balancer state during restoraion (#3878) 3e250fdbab Update Kubernetes to v1.21.4-k3s1 5802b429f8 Bump containerd to v1.4.9-k3s1 abb6581a94 Bump helm-controller to work around tiller crashes e45726f610 Fix URL pruning when joining an etcd member 18bc38d838 account for an s3 folder when listing objects (#3807) (#3812) 12ec437605 fix Node stuck at deletion (#3775) 69047a35c0 Bump helm-controller to v0.10.2 cc694b1f09 Notify systemd for etcd only node (#3733) e6247d583c [Backport 1.21] Cannot write data to local PVC (#3721) 786f91b997 Fix multiple bootstrap keys found Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* global: overrides syntax conversionBruce Ashfield2021-08-021-11/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | OEcore/bitbake are moving to use the clearer ":" as an overrides separator. This is pass one of updating the meta-virt recipes to use that syntax. This has only been minimally build/runtime tested, more changes will be required for missed overrides, or incorrect conversions Note: A recent bitbake is required: commit 75fad23fc06c008a03414a1fc288a8614c6af9ca Author: Richard Purdie <richard.purdie@linuxfoundation.org> Date: Sun Jul 18 12:59:15 2021 +0100 bitbake: data_smart/parse: Allow ':' characters in variable/function names It is becomming increasingly clear we need to find a way to show what is/is not an override in our syntax. We need to do this in a way which is clear to users, readable and in a way we can transition to. The most effective way I've found to this is to use the ":" charater to directly replace "_" where an override is being specified. This includes "append", "prepend" and "remove" which are effectively special override directives. This patch simply adds the character to the parser so bitbake accepts the value but maps it back to "_" internally so there is no behaviour change. This change is simple enough it could potentially be backported to older version of bitbake meaning layers using the new syntax/markup could work with older releases. Even if other no other changes are accepted at this time and we don't backport, it does set us on a path where at some point in future we could require a more explict syntax. I've tested this patch by converting oe-core/meta-yocto to the new syntax for overrides (9000+ changes) and then seeing that builds continue to work with this patch. (Bitbake rev: 0dbbb4547cb2570d2ce607e9a53459df3c0ac284) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: update to v1.21.3Bruce Ashfield2021-07-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Bumping k3s to version v1.21.3+k3s1, which comprises the following commits: 786f91b997 Fix multiple bootstrap keys found b9cc6409f4 Bump containerd to v1.4.8-k3s1 c15259d925 Fix to allow prune to correctly cleanup custom named snapshots (#3649) (#3672) 659002f153 [release-1.21] Upgrade k3s-root version 9c981b0184 [release-1.21] Bump Kubernetes to v1.21.3 (#3652) 9859ec7a81 [release-1.21] - Backport Fix storing bootstrap data with empty token string (#3514) 5a88b5b3ea Emit events for AddOn lifecycle ab0520f44e Add comments, clean up imports and function names 411d7e6753 Tidy up function calls with many args ff0451c4dd Add nodename to UA string for deploy controller c3d134a405 prevent snapshot save when snapshots are disabled (#3475) (#3610) 267adf64dc Bump the packaged runc binary version 42ab13a869 Update etcd snapshot error message to be more informative when etcd database is not found (#3592) bbd4fb9888 Dispatch to rancher/system-agent-installer-k3s when tagged 0c5577a8ec [Backport 1.21] Update embedded kube-router (#3557) (#3595) 04d425289f Fix spelling to satisfy codespell check 733ca42b6a go mod vendor 9863b92eb4 Bump rancher/klipper-helm image in airgap image-list.txt 0a5bca7ea2 Bump helm-controller to v0.10.1 0c2d8376d0 Changes local storage pods to have 700 permissions (#3537) (#3548) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: bump to 1.21.2Bruce Ashfield2021-07-081-2/+2
| | | | | | | | | | | | | | | | Bumping k3s to version v1.21.2+k3s1-6-g0c2d8376d0, which comprises the following commits: 0c2d8376d0 Changes local storage pods to have 700 permissions (#3537) (#3548) 65e521140a [Backport 1.21] Move cloud-controller-manager into an embedded executor (#3530) 3224f6b56d fix possible race where bootstrap data might not save 5a67e8dc47 Update to v1.21.2 (#3479) c35761d169 Renamed client-cloud-controller crt and key (#3472) 8651d6af5f Send systemd notifications for both server and agent (#3430) (#3460) 32b02d1baf Send systemd notifications for both server and agent (#3430) c012e6ec6f Changed iptables version check for fail if version is between 1.8.0 and 1.8.3 and using nf_tables mode (#3454) eac48f69bc Add kubernetes.default.svc to serving certs Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: update to 1.21 latestBruce Ashfield2021-06-141-1/+1
| | | | | | | | | | | | | | Bumping k3s to version v1.21.1+k3s1-10-geac48f69bc, which comprises the following commits: eac48f69bc Add kubernetes.default.svc to serving certs 16ae282c7a Fix RBAC cloud-controller-manager name 3308 (#3388) (#3408) ff54d8c96d Add a path for wireguard's privatekey 1932979f44 Update flannel version 8fd180e0d9 move object channel defer close to goroutine 69795277be add retention default and wire in s3 prune 58649c5e85 add etcd snapshot save subcommand Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: update to v1.21.xBruce Ashfield2021-06-041-3/+3
| | | | Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: update to v1.20.6Bruce Ashfield2021-04-151-2/+2
| | | | | | | | | | | | | | | | | | | | | | | Bumping to the latest 1.20.x release, which comprises the following commits: b06a5ffc2f Update to v1.20.6 77390596e6 add cloud controller manager fixes from master ef28edaf9a Update to v1.20.6 1521e3b085 Resolve local retention issue when S3 in use. 221c9ae589 add hidden attribute to disable flags 9a572ecae0 delete nocluster file and remove build tag 3f73665131 remove hidden attribute from cluster flags and related code 29f6275aae add etcd s3 secret and access key flags and env vars to secret data 355fff3017 Update to Kubernetes v1.20.5 (#3094) c09142a3a7 put etcd bootstrap save call in goroutine and update comment a2b1d28c68 [release 1.20] containerd: v1.4.4-k3s1 (#3086) 62839b302a remove duplicate method 0167f86f5d Have Bootstrap Data Stored in etcd at Completed Start (#3038) 1da86eaa0b Etcd Snapshot/Restore to/from S3 Compatible Backends (#2902) 0a3360fc6f Add ability to perform an etcd on-demand snapshot via cli (#2819) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: clean up READMEBruce Ashfield2021-03-161-11/+41
| | | | Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: rrecommend required kernel modulesBruce Ashfield2021-03-161-1/+11
| | | | | | | | If the required modules aren't in the image, k3s will fail to start. Set the requirements as RRECOMMENDS for image types that don't install the kernel-modules meta-package. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: drop ctr symlinkBruce Ashfield2021-03-161-0/+3
| | | | | | | We build and depend on our own containerd, we don't need the ctr symlink to k3s for proper operation. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: add additional build tagsBruce Ashfield2021-03-161-1/+5
| | | | | | | | To more closely align with the rancher/upstream build, we add additional tags to the build. To make them easier to manage, we also introduce a variable and use it in the go build line. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: add seccomp distro feature requirementBruce Ashfield2021-03-161-0/+3
| | | | | | | | | k3s requires seccomp, and a runc with seccomp enabled for proper operation. runc has a distro feature check to enable seccomp, so if we enforce it as k3s feature, we'll also get a properly built runc and we'll work out of the box. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: bump to v1.20.4Bruce Ashfield2021-03-151-3/+3
| | | | Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: bump to v1.19.5Bruce Ashfield2021-03-151-2/+2
| | | | Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: bump to v1.19Bruce Ashfield2021-03-152-17/+14
| | | | Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: add kernel module rrecommends (and PV fix)Bruce Ashfield2021-03-151-2/+5
| | | | | | | | | | Fixing up the PV to use SRCPV for tracking future version bumps, if the tree is dirty or not, git will tell us. We also add some additional kernel module rrecommends, so that the tools called by k3s can find the support they need (mainly iptools) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: add notes / tips to READMEBruce Ashfield2021-03-151-0/+208
| | | | | | | Clarify some limitations / tweaks to get up and running in a qemu virtual machine. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: package remaining binaries into 'k3s'Bruce Ashfield2021-03-151-0/+1
| | | | | | | | Grab any remaning binaries into the main k3s package. Both k3s-agent and k3s-server rdepend on it, so we'll be sure to get them intalled in both scenarios. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: use cni-networking bbclass to install / package networking configurationBruce Ashfield2021-03-151-1/+4
| | | | Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* k3s: drop symlink to 'ctr'Bruce Ashfield2021-03-151-1/+0
| | | | | | | | | | containerd itself provides 'ctr', and it is in our rdepends. So on target, we have a conflict for the provider of the ctr binary. Dropping the ctr link from k3s, since having the actual containerd package provide its binary .. makes sense. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* containers: introduce k3s recipeJoakim Roubert2021-03-158-0/+342
See recipes-containers/k3s/README.md for basic usage and testing instructions. Signed-off-by: Joakim Roubert <joakimr@axis.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>