Commit Graph

2351 Commits

Author SHA1 Message Date
ShylajaDevadiga
eca4c12705 Add scripts to run e2e test using ansible (#5134)
Signed-off-by: Shylaja Devadiga <shylaja.devadiga@suse.com>
Signed-off-by: Derek Nola <derek.nola@suse.com>
2022-09-01 15:08:49 -07:00
Abirdcfly
7a50e7803d fix checkError in terraform/testutils (#5893)
Signed-off-by: Abirdcfly <fp544037857@gmail.com>
Signed-off-by: Derek Nola <derek.nola@suse.com>
2022-09-01 15:08:49 -07:00
Derek Nola
5787c65810 Convert vagrant tests to yaml based config (#5992)
Signed-off-by: Derek Nola <derek.nola@suse.com>
2022-09-01 15:08:49 -07:00
Brooks Newberry
826b9498df Update to v1.23.10 (#6013)
Signed-off-by: Brooks Newberry <brooks@newberry.com>
v1.23.10-rc1+k3s1 v1.23.10+k3s1
2022-08-18 19:09:59 -07:00
Brooks Newberry
5b2d652a46 Merge pull request #6011 from brooksn/codespell-fix-release-1.23 2022-08-18 14:26:15 -07:00
Derek Nola
5c5201f724 Remove codespell from Drone, add to GH Actions (#6004)
Signed-off-by: Derek Nola <derek.nola@suse.com>
(cherry picked from commit 035c03cfaa)
2022-08-18 13:28:21 -07:00
Roberto Bonafiglia
d04af60aad Updated flannel to v0.19.1
Signed-off-by: Roberto Bonafiglia <roberto.bonafiglia@suse.com>
2022-08-08 09:58:17 +02:00
Roberto Bonafiglia
c366ee06de Fix comments and add check in case of IPv6 only node
Signed-off-by: Roberto Bonafiglia <roberto.bonafiglia@suse.com>
2022-08-04 18:47:13 +02:00
Roberto Bonafiglia
b5f2344283 Added NodeIP autodect in case of dualstack connection
Signed-off-by: Roberto Bonafiglia <roberto.bonafiglia@suse.com>
2022-08-04 18:47:13 +02:00
Brad Davidson
a079a653d5 Bump minio to v7.0.33
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
(cherry picked from commit 43508341c1)
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-08-04 09:39:34 -07:00
Vladimir Kochnev
c94dd33012 Save agent token to /var/lib/rancher/k3s/server/agent-token
Having separate tokens for server and agent nodes is a nice feature.

However, passing server's plain `K3S_AGENT_TOKEN` value
to `k3s agent --token` without CA hash is insecure when CA is
self-signed, and k3s warns about it in the logs:

```
Cluster CA certificate is not trusted by the host CA bundle, but the token does not include a CA hash.
Use the full token from the server's node-token file to enable Cluster CA validation.
```

Okay so I need CA hash but where should I get it?

This commit attempts to fix this issue by saving agent token value to
`agent-token` file with CA hash appended.

Signed-off-by: Vladimir Kochnev <hashtable@yandex.ru>
(cherry picked from commit 13af0b1d88)
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-08-04 09:39:34 -07:00
Brad Davidson
fab4d06ef5 Bump dynamiclistener to fix issue with cert expiration
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
(cherry picked from commit 049004455a)
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-08-04 09:39:34 -07:00
Brad Davidson
4afe65bff5 Replace getLocalhostIP with Loopback helper method
Requires tweaking existing method signature to allow specifying whether or not IPv6 addresses should be return URL-safe.

Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
(cherry picked from commit 5eaa0a9422)
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-08-04 09:39:34 -07:00
Brad Davidson
15100b5081 Add service-cluster-ip-range to controller-manager args
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
(cherry picked from commit 84fb8787f2)
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-08-04 09:39:34 -07:00
Brad Davidson
89f4bce6d7 Fix server systemd detection
* Use INVOCATION_ID to detect execution under systemd, since as of a9b5a1933f NOTIFY_SOCKET is now cleared by the server code.
* Set the unit type to notify by default for both server and agent, which is what Rancher-managed installs have done for a while.

Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
(cherry picked from commit bd5fdfce33)
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-08-04 09:39:34 -07:00
Brad Davidson
74d017cda2 Raise etcd connection test timeout to 30 seconds
Addressess issue where the compact may take more than 10 seconds on slower disks. These disks probably aren't really suitable for etcd, but apparently run fine otherwise.

Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
(cherry picked from commit 1674b9d640)
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-08-04 09:39:34 -07:00
Dirk Müller
8f76c3630b update rootlesskit to 1.0.1
This avoids an issue with u-root 7.0.0 which has been retracted by the
author:

  $ go list -u -m all
  $ go list -m: github.com/u-root/u-root@v7.0.0+incompatible: retracted by module author: Published v7 too early (before migrating to go modules)

Signed-off-by: Dirk Müller <dirk@dmllr.de>
(cherry picked from commit 93ca992cdb)
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-08-04 09:39:34 -07:00
Derek Nola
3bcd7cee81 [Release-1.23] Update etcd error to match correct url (#5949)
* Update etcd error to match correct url 
* Bump macos version used in GH actions.

Signed-off-by: Derek Nola <derek.nola@suse.com>
2022-08-03 20:10:07 -07:00
Derek Nola
313dd6e597 Fix secrets reencryption for 8K+ secrets (#5939)
Signed-off-by: Derek Nola <derek.nola@suse.com>
2022-08-03 09:10:04 -07:00
Nikolai Shields
f45cf32673 Update to v1.23.9 (#5871)
Signed-off-by: Nikolai Shields <nikolai@nikolaishields.com>
v1.23.9-rc1+k3s1 v1.23.9+k3s1
2022-07-15 02:16:51 -05:00
Brad Davidson
ea29d624ad Address issues with etcd snapshots
* Increase the default snapshot timeout. The timeout is not currently
  configurable from Rancher, and larger clusters are frequently seeing
  uploads fail at 30 seconds.
* Enable compression for scheduled snapshots if enabled on the
  command-line. The CLI flag was not being passed into the etcd config.
* Only set the S3 content-type to application/zip if the file is zipped.
* Don't run more than one snapshot at once, to prevent misconfigured
  etcd snapshot cron schedules from stacking up.

Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-07-12 14:42:10 -07:00
Brad Davidson
4c0de2183e Bump runc version to v1.1.3
Includes fix for ENOSYS/EPERM issue on s390x.

Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-07-12 12:29:04 -07:00
Brad Davidson
118f9a9f53 Bump remotedialer
Includes fix for recently identified memory leak.

Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-07-12 12:29:04 -07:00
Brad Davidson
beb6e4c8da Fix deletion of svclb DaemonSet when Service is deleted
87e1806697 removed the OwnerReferences
field from the DaemonSet, which makes sense since the Service may now be
in a different namespace than the DaemonSet and cross-namespace owner
references are not supported.  Unfortunately, we were relying on
garbage collection to delete the DameonSet, so this started leaving
orphaned DaemonSets when Services were deleted.

We don't want to add an a Service OnRemove handler, since this will add
finalizers to all Services, not just LoadBalancers services, causing
conformance tests to fail. Instead, manage our own finalizers, and
restore the DaemonSet removal Event that was removed by the same commit.

Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-07-12 12:28:20 -07:00
Brad Davidson
81c8f89c4b Remove legacy bidirectional datastore sync code
Since #4438 removed 2-way sync and treats any changed+newer files on disk as an error, we no longer need to determine if files are newer on disk/db or if there is a conflicting mix of both. Any changed+newer file is an error, unless we're doing a cluster reset in which case everything is unconditionally replaced.

Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-07-12 12:10:42 -07:00
Brad Davidson
b146f27bc9 Fix fatal error when reconciling bootstrap data
Properly skip restoring bootstrap data for files that don't have a path
set because the feature that would set it isn't enabled.

Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-07-12 12:10:42 -07:00
Brad Davidson
fe3cecc219 Bump kine to v0.9.3
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
v1.23.8-rc1+k3s2 v1.23.8+k3s2
2022-07-01 11:16:59 -07:00
Brad Davidson
9cee7bd5dd Don't crash when service IPFamiliyPolicy is not set
Service.Spec.IPFamilyPolicy may be a nil pointer on freshly upgraded clusters.

Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-07-01 11:16:59 -07:00
Brad Davidson
15ad163208 Fix egress selector proxy/bind-address support
Use same kubelet-preferred-address-types setting as RKE2 to improve reliability of the egress selector when using a HTTP proxy. Also, use BindAddressOrLoopback to ensure that the correct supervisor address is used when --bind-address is set.

Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-07-01 11:16:59 -07:00
Brad Davidson
fc9ffe6c17 Add tests for down-level etcd join
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-06-30 15:11:04 -07:00
Brad Davidson
7287947726 Handle egress-selector-mode change during upgrade
Properly handle unset egress-selector-mode from existing servers during cluster upgrade.

Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-06-30 15:11:04 -07:00
Derek Nola
243c741849 Remove go-powershell dependency (#5778)
Signed-off-by: Derek Nola <derek.nola@suse.com>
2022-06-30 10:15:12 -07:00
Nikolai Shields
53f2d4e7d8 Merge pull request #5751 from galal-hussein/v1.23.8-k3s1
Update to v1.23.8-k3s1
v1.23.8-rc1+k3s1 v1.23.8+k3s1
2022-06-22 14:10:54 -05:00
galal-hussein
aabc460fdf Update to v1.23.8
Signed-off-by: galal-hussein <hussein.galal.ahmed.11@gmail.com>
2022-06-21 23:17:25 +02:00
Brad Davidson
4dda76b0a9 Bump helm-controller
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-06-16 13:11:22 -07:00
Darren Shepherd
c9ae15c85d Introduce servicelb-namespace parameter
This parameter controls which namespace the klipper-lb pods will be create.
It defaults to kube-system so that k3s does not by default create a new
namespace. It can be changed if users wish to isolate the pods and apply
some policy to them.

Signed-off-by: Darren Shepherd <darren@acorn.io>
(cherry picked from commit e6009b1edf)
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-06-16 11:43:17 -07:00
Darren Shepherd
927ff06328 Move all klipper-lb daemonset to common namespace for PodSecurity
The baseline PodSecurity profile will reject klipper-lb pods from running.
Since klipper-lb pods are put in the same namespace as the Service this
means users can not use PodSecurity baseline profile in combination with
the k3s servicelb.

The solution is to move all klipper-lb pods to a klipper-lb-system where
the security policy of the klipper-lb pods can be different an uniformly
managed.

Signed-off-by: Darren Shepherd <darren@acorn.io>
(cherry picked from commit f4cc1b8788)
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-06-16 11:43:17 -07:00
Roberto Bonafiglia
0eb471de8f Merge pull request #5721 from rbrtbnfgl/release1.23-flannelupdate
[Release 1.23] Flannel version update to 0.18.1 and added the ability to configure additional options for wireguard backend
2022-06-16 10:52:31 +02:00
Roberto Bonafiglia
01c1eda8e9 Updated flannel to 0.18.1
Signed-off-by: Roberto Bonafiglia <roberto.bonafiglia@suse.com>
2022-06-16 10:00:32 +02:00
Sjoerd Simons
d29b621107 Add ability to pass configuration options to flannel backend
Allow the flannel backend to be specified as
backend=option=val,option2=val2 to select a given backend with extra options.

In particular this adds the following options to wireguard-native
backend:
* Mode - flannel wireguard tunnel mode
* PersistentKeepaliveInterval- wireguard persistent keepalive interval

Signed-off-by: Sjoerd Simons <sjoerd@collabora.com>
2022-06-16 09:56:47 +02:00
Derek Nola
330993e1eb Delay service readiness until after startuphooks have finished (#5649) (#5723)
* Move startup hooks wg into a runtime pointer, check before notifying systemd
* Switch default systemd notification to server
* Add 1 sec delay to allow etcd to write to disk
Signed-off-by: Derek Nola <derek.nola@suse.com>
2022-06-15 13:11:22 -07:00
Brad Davidson
ebd43f5311 Only listen on loopback when resetting
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-06-15 11:26:27 -07:00
Brad Davidson
b00bc5cfd3 Ensure that CONTAINERD_ variables are not shadowed by later entries
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-06-15 10:58:21 -07:00
Brad Davidson
c9e6b056a3 Sanitize filenames for use in configmap keys
If the user points S3 backups at a bucket containing other files, those
file names may not be valid configmap keys.

For example, RKE1 generates backup files with names like
`s3-c-zrjnb-rs-6hxpk_2022-05-05T12:05:15Z.zip`; the semicolons in the
timestamp portion of the name are not allowed for use in configmap keys.

Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-06-15 10:54:36 -07:00
Brad Davidson
cb5a3960c2 Disable urfave markdown/man docs generation
From https://github.com/urfave/cli/pull/1383 :
> This removes the resulting binary dependency on cpuguy83/md2man and
> russross/blackfriday (and a few more packages imported by those),
> which saves more than 400 KB (more than 300 KB
> once stripped) from the resulting binary.

Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
2022-06-15 10:53:56 -07:00
Manuel Buil
2507fd8c93 Merge pull request #5682 from manuelbuil/flannelcniconf123
[Release 1.23] Add FlannelConfCNI flag
2022-06-15 10:18:51 +02:00
Manuel Buil
8bbc089a8c Merge pull request #5680 from manuelbuil/ipvs0-remove-123
[Release 1.23] Remove kube-ipvs0 interface when cleaning up
2022-06-15 10:17:44 +02:00
Derek Nola
9f7eec9525 add support for pprof server (#5690)
Signed-off-by: igor <igor@igor.io>
Signed-off-by: Derek Nola <derek.nola@suse.com>

Co-authored-by: Igor <igorwwwwwwwwwwwwwwwwwwww@users.noreply.github.com>
2022-06-14 17:51:07 -07:00
Derek Nola
bd63aeccc2 [Release-1.23] Integration and E2E test improvements (#5686)
* Integration Test: Startup (#5630)

* New startup integration test
* Add testing section to PR template
* Move helper functions to direct k8s client calls

Signed-off-by: Derek Nola <derek.nola@suse.com>

* E2E Improvements and groundwork for test-pad tool (#5593)

* Add rancher install sript, taints to cp/etcd roles
* Revert back to generic/ubuntu2004, libvirt networking is unreliable on opensuse
* Added support for alpine
* Rancher deployment script
* Refactor installType into function
* Cleanup splitserver test
Signed-off-by: Derek Nola <derek.nola@suse.com>

* E2E: Dualstack test (#5617)

* E2E dualstack test
* Improve testing documentation

Signed-off-by: Derek Nola <derek.nola@suse.com>
2022-06-14 15:17:41 -07:00
Manuel Buil
3e747021a8 Add FlannelConfCNI flag
Signed-off-by: Manuel Buil <mbuil@suse.com>
2022-06-14 10:24:58 +02:00