Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge v2.10.0 release branch into main #1552

Merged
merged 46 commits into from
Nov 19, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
a7195c3
Initial draft, basic outline of SLO configuration through Rancher UI …
sunilarjun Jun 11, 2024
0d14c4a
Merge branch 'rancher:main' into 2.9.0-SLO-auth-update
sunilarjun Oct 11, 2024
fbf440f
Add docs for the new field RefreshInterval
rohitsakala Sep 13, 2024
f8ce43f
Apply fbf440f0 (Add docs for the new field RefreshInterval) to zh/en …
btat Oct 29, 2024
954b9fe
Add docs about enable/disable functionality in clusterrepo
rohitsakala Sep 13, 2024
4ccbbdf
Apply 954b9fe7 (Add docs about enable/disable functionality in cluste…
btat Oct 29, 2024
9c3755a
Remove OPA Gatekeeper docs
rohitsakala Oct 7, 2024
e12d7b2
Remove other OPA Gatekeeper refs
btat Oct 29, 2024
dbd4dfa
Apply 9c3755a7 and e12d7b2f (Remove OPA Gatekeeper docs) to en/zh 2.1…
btat Oct 29, 2024
770c5bf
Remove redirect to OPA Gatekeeper page
btat Oct 29, 2024
acd235e
Merge pull request #1432 from rohitsakala/main
btat Oct 29, 2024
3362b6a
Merge branch 'v2.10.0' into enable-disable-function-for-custom-helm-c…
btat Oct 29, 2024
d3f4a7d
Merge pull request #1497 from rohitsakala/remove-opa-gatekeeper-from-…
btat Oct 29, 2024
a6ff669
Merge pull request #1462 from rohitsakala/enable-disable-function-for…
btat Oct 30, 2024
ed29735
Merge branch 'rancher:main' into 2.9.0-SLO-auth-update
sunilarjun Nov 4, 2024
e9ccd16
Adding in configuration steps to SAML pages on setting up SAML SLO.
sunilarjun Nov 4, 2024
b772531
Add managed-system-upgrade-controller feature flag
btat Nov 5, 2024
40dbb58
Adding shared folder file and adding content to MS ADFS SAML/Shibbole…
sunilarjun Nov 5, 2024
6a47218
Porting changes to i18n docs
sunilarjun Nov 5, 2024
a6bb910
Merge pull request #1542 from btat/managed-system-upgrade-controller
btat Nov 5, 2024
ddaef63
Merge pull request #1544 from rancher/main
btat Nov 6, 2024
da8d7eb
Merge pull request #1335 from sunilarjun/2.9.0-SLO-auth-update
btat Nov 6, 2024
766d605
Expand on Project Public API workflows
pmatseykanets Oct 31, 2024
007e5c0
Add versioned docs
pmatseykanets Nov 1, 2024
6377690
Add missing EOLs
pmatseykanets Nov 6, 2024
6d0622b
Merge pull request #1540 from pmatseykanets/expand-project-resource-docs
btat Nov 6, 2024
8aa0eea
Remove OPA Gatekeeper since it is deleted
rohitsakala Nov 7, 2024
b9edf0d
Update rancher-istio supported versions
rohitsakala Nov 7, 2024
3b847a9
Adding note to SLO configuration file that the option is only availab…
sunilarjun Nov 7, 2024
1584fa9
Syncing with main
sunilarjun Nov 7, 2024
5751839
Merge branch 'v2.10.0' into slo-update-v2.10
sunilarjun Nov 7, 2024
14e81eb
Merge pull request #1551 from rancher/main
sunilarjun Nov 7, 2024
d346310
Revert "Syncing with main"
sunilarjun Nov 7, 2024
6e6318c
Merge pull request #1550 from sunilarjun/slo-update-v2.10
sunilarjun Nov 7, 2024
3b9a7be
updates csp-adapter docs
gbuenodevsuse Nov 12, 2024
08fa1d3
Merge pull request #1549 from rohitsakala/updates-docs-related-to-opa…
btat Nov 13, 2024
1e6107d
[2.10.0] versions table entry
LucasSaintarbor Nov 13, 2024
81dc8e8
[2.10.0] webhook table entry
LucasSaintarbor Nov 13, 2024
862c654
[2.10.0] deprecated features table entry
LucasSaintarbor Nov 13, 2024
f63efb5
Add command to get verbose CIS scan results
btat Nov 13, 2024
c7d0bc8
removing 2.9 versions
gbuenodevsuse Nov 14, 2024
407e7a6
Update CNI popularity
LucasSaintarbor Nov 14, 2024
6f4e731
Merge pull request #1566 from btat/cis-report
sunilarjun Nov 14, 2024
d9e5303
Merge pull request #1560 from gbuenodevsuse/csp-adapter-v5.0.1
sunilarjun Nov 14, 2024
ba2657c
[2.10.0] update deprecated features table entry
LucasSaintarbor Nov 18, 2024
412270a
Merge pull request #1565 from LucasSaintarbor/2.10.0-maintenance
LucasSaintarbor Nov 18, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
77 changes: 76 additions & 1 deletion docs/api/workflows/projects.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,10 @@ EOF

Setting the `field.cattle.io/creatorId` field allows the cluster member account to see project resources with the `get` command and view the project in the Rancher UI. Cluster owner and admin accounts don't need to set this annotation to perform these tasks.

Setting the `field.cattle.io/creator-principal-name` annotation to the user's principal preserves it in a projectroletemplatebinding automatically created for the project owner.

If you don't want the creator to be added as the owner member (e.g. if the creator is a cluster administrator) to the project you may set the `field.cattle.io/no-creator-rbac` annotation to `true`, which will prevent the corresponding projectroletemplatebinding from being created.

### Creating a Project With a Resource Quota

Refer to [Kubernetes Resource Quota](https://kubernetes.io/docs/concepts/policy/resource-quotas/).
Expand Down Expand Up @@ -91,6 +95,77 @@ spec:
limitsMemory: 100Mi
requestsCpu: 50m
requestsMemory: 50Mi
EOF
```

## Adding a Member to a Project

Look up the project ID to specify the `metadata.namespace` field and `projectName` field values.

```bash
kubectl --namespace c-m-abcde get projects
```

Look up the role template ID to specify the `roleTemplateName` field value (e.g. `project-member` or `project-owner`).

```bash
kubectl get roletemplates
```

When adding a user member specify the `userPrincipalName` field:

```bash
kubectl create -f - <<EOF
apiVersion: management.cattle.io/v3
kind: ProjectRoleTemplateBinding
metadata:
generateName: prtb-
namespace: p-vwxyz
projectName: c-m-abcde:p-vwxyz
roleTemplateName: project-member
userPrincipalName: keycloak_user://user
EOF
```

When adding a group member specify the `groupPrincipalName` field instead:

```bash
kubectl create -f - <<EOF
apiVersion: management.cattle.io/v3
kind: ProjectRoleTemplateBinding
metadata:
generateName: prtb-
namespace: p-vwxyz
projectName: c-m-abcde:p-vwxyz
roleTemplateName: project-member
groupPrincipalName: keycloak_group://group
EOF
```

Create a projectroletemplatebinding for each role you want to assign to the project member.

## Listing Project Members

Look up the project ID:

```bash
kubectl --namespace c-m-abcde get projects
```

to list projectroletemplatebindings in the project's namespace:

```bash
kubectl --namespace p-vwxyz get projectroletemplatebindings
```

## Deleting a Member From a Project

Lookup the projectroletemplatebinding IDs containing the member in the project's namespace as decribed in the [Listing Project Members](#listing-project-members) section.

Delete the projectroletemplatebinding from the project's namespace:

```bash
kubectl --namespace p-vwxyz delete projectroletemplatebindings prtb-qx874 prtb-7zw7s
```

## Creating a Namespace in a Project
Expand Down Expand Up @@ -132,4 +207,4 @@ Delete the project under the cluster namespace:
kubectl --namespace c-m-abcde delete project p-vwxyz
```

Note that this command doesn't delete the namespaces and resources that formerly belonged to the project.
Note that this command doesn't delete the namespaces and resources that formerly belonged to the project.
5 changes: 1 addition & 4 deletions docs/faq/deprecated-features.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,7 @@ Rancher will publish deprecated features as part of the [release notes](https://

| Patch Version | Release Date |
|---------------|---------------|
| [2.9.3](https://github.com/rancher/rancher/releases/tag/v2.9.3) | Oct 24, 2024 |
| [2.9.2](https://github.com/rancher/rancher/releases/tag/v2.9.2) | Sep 19, 2024 |
| [2.9.1](https://github.com/rancher/rancher/releases/tag/v2.9.1) | Aug 26, 2024 |
| [2.9.0](https://github.com/rancher/rancher/releases/tag/v2.9.0) | Jul 31, 2024 |
| [2.10.0](https://github.com/rancher/rancher/releases/tag/v2.10.0) | Nov 18, 2024 |

## What can I expect when a feature is marked for deprecation?

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ The following is a list of feature flags available in Rancher. If you've upgrade
- `harvester`: Manages access to the Virtualization Management page, where users can navigate directly to Harvester clusters and access the Harvester UI. See [Harvester Integration Overview](../../../integrations-in-rancher/harvester/overview.md) for more information.
- `istio-virtual-service-ui`: Enables a [visual interface](../../../how-to-guides/advanced-user-guides/enable-experimental-features/istio-traffic-management-features.md) to create, read, update, and delete Istio virtual services and destination rules, which are Istio traffic management features.
- `legacy`: Enables a set of features from 2.5.x and earlier, that are slowly being phased out in favor of newer implementations. These are a mix of deprecated features as well as features that will eventually be available to newer versions. This flag is disabled by default on new Rancher installations. If you're upgrading from a previous version of Rancher, this flag is enabled.
- `managed-system-upgrade-controller`: Enables the installation of the system-upgrade-controller app in downstream RKE2/K3s clusters, currently limited to imported clusters and the local cluster, with plans to expand support to node-driver clusters.
- `multi-cluster-management`: Allows multi-cluster provisioning and management of Kubernetes clusters. This flag can only be set at install time. It can't be enabled or disabled later.
- `rke1-custom-node-cleanup`: Enables cleanup of deleted RKE1 custom nodes. We recommend that you keep this flag enabled, to prevent removed nodes from attempting to rejoin the cluster.
- `rke2`: Enables provisioning RKE2 clusters. This flag is enabled by default.
Expand All @@ -42,8 +43,9 @@ The following table shows the availability and default values for some feature f
| `fleet` | `true` | GA | v2.5.0 | |
| `harvester` | `true` | Experimental | v2.6.1 | |
| `legacy` | `false` for new installs, `true` for upgrades | GA | v2.6.0 | |
| `managed-system-upgrade-controller` | `true` | GA | v2.10.0 | |
| `rke1-custom-node-cleanup`| `true` | GA | v2.6.0 | |
| `rke2` | `true` | Experimental | v2.6.0 | |
| `token-hashing` | `false` for new installs, `true` for upgrades | GA | v2.6.0 | |
| `uiextension` | `true` | GA | v2.9.0 |
| `ui-sql-cache` | `false` | Highly experimental | v2.9.0 |
| `uiextension` | `true` | GA | v2.9.0 | |
| `ui-sql-cache` | `false` | Highly experimental | v2.9.0 | |
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,11 @@ To view the generated CIS scan reports,
1. Click **CIS Benchmark > Scan**.
1. The **Scans** page will show the generated reports. To see a detailed report, go to a scan report and click the name.

One can download the report from the Scans list or from the scan detail page.
One can download the report from the Scans list or from the scan detail page.

To get the verbose version of the CIS scan results, run the following command on the cluster that was scanned. Note that the scan must be completed before this can be done.

```console
export REPORT="scan-report-name"
kubectl get clusterscanreport $REPORT -o json |jq ".spec.reportJSON | fromjson" | jq -r ".actual_value_map_data" | base64 -d | gunzip | jq .
```
Original file line number Diff line number Diff line change
Expand Up @@ -192,3 +192,7 @@ Try configuring and saving keycloak as your SAML provider and then accessing the

* Check your Keycloak log.
* If the log displays `request validation failed: org.keycloak.common.VerificationException: SigAlg was null`, set `Client Signature Required` to `OFF` in your Keycloak client.

## Configuring SAML Single Logout (SLO)

<ConfigureSLO />
Original file line number Diff line number Diff line change
Expand Up @@ -107,4 +107,8 @@ The OpenLDAP service account is used for all searches. Rancher users will see us
1. Click **Okta** or, if SAML is already configured, **Edit Config**
1. Under **User and Group Search**, check **Configure an OpenLDAP server**

If you experience issues when you test the connection to the OpenLDAP server, ensure that you entered the credentials for the service account and configured the search base correctly. Inspecting the Rancher logs can help pinpoint the root cause. Debug logs may contain more detailed information about the error. Please refer to [How can I enable debug logging](../../../../faq/technical-items.md#how-can-i-enable-debug-logging) for more information.
If you experience issues when you test the connection to the OpenLDAP server, ensure that you entered the credentials for the service account and configured the search base correctly. Inspecting the Rancher logs can help pinpoint the root cause. Debug logs may contain more detailed information about the error. Please refer to [How can I enable debug logging](../../../../faq/technical-items.md#how-can-i-enable-debug-logging) for more information.

## Configuring SAML Single Logout (SLO)

<ConfigureSLO />
Original file line number Diff line number Diff line change
Expand Up @@ -64,3 +64,7 @@ Note that these URLs will not return valid data until the authentication configu
- The group drop-down shows only the groups that you are a member of. You will not be able to add groups that you are not a member of.

:::

## Configuring SAML Single Logout (SLO)

<ConfigureSLO />
Original file line number Diff line number Diff line change
Expand Up @@ -51,3 +51,7 @@ You can generate a certificate using an openssl command. For example:
```
openssl req -x509 -newkey rsa:2048 -keyout myservice.key -out myservice.cert -days 365 -nodes -subj "/CN=myservice.example.com"
```

## Configuring SAML Single Logout (SLO)

<ConfigureSLO />
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,10 @@ If you configure Shibboleth without OpenLDAP, the following caveats apply due to

To enable searching for groups when assigning permissions in Rancher, you will need to configure a back end for the SAML provider that supports groups, such as OpenLDAP.

### Configuring SAML Single Logout (SLO)

<ConfigureSLO />

## Setting up OpenLDAP in Rancher

If you also configure OpenLDAP as the back end to Shibboleth, it will return a SAML assertion to Rancher with user attributes that include groups. Then authenticated users will be able to access resources in Rancher that their groups have permissions for.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ PSS define security levels for workloads. PSAs describe requirements for pod sec

## Upgrade to Pod Security Standards (PSS)

Ensure that you migrate all PSPs to another workload security mechanism. This includes mapping your current PSPs to Pod Security Standards for enforcement with the [PSA controller](https://kubernetes.io/docs/concepts/security/pod-security-admission/). If the PSA controller won't meet all of your organization's needs, we recommend that you use a policy engine, such as [OPA Gatekeeper](https://github.com/open-policy-agent/gatekeeper), [Kubewarden](https://www.kubewarden.io/), [Kyverno](https://kyverno.io/), or [NeuVector](https://neuvector.com/). Refer to the documentation of your policy engine of choice for more information on how to migrate from PSPs.
Ensure that you migrate all PSPs to another workload security mechanism. This includes mapping your current PSPs to Pod Security Standards for enforcement with the [PSA controller](https://kubernetes.io/docs/concepts/security/pod-security-admission/). If the PSA controller won't meet all of your organization's needs, we recommend that you use a policy engine, such as [Kubewarden](https://www.kubewarden.io/), [Kyverno](https://kyverno.io/), or [NeuVector](https://neuvector.com/). Refer to the documentation of your policy engine of choice for more information on how to migrate from PSPs.

:::caution
You must add your new policy enforcement mechanisms _before_ you remove the PodSecurityPolicy objects. If you don't, you may create an opportunity for privilege escalation attacks within the cluster.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,8 +53,7 @@ To display prerelease versions:
| rancher-alerting-drivers | 100.0.0 | 100.0.2 |
| rancher-backup | 2.0.1 | 2.1.2 |
| rancher-cis-benchmark | 2.0.1 | 2.0.4 |
| rancher-gatekeeper | 100.0.0+up3.6.0 | 100.1.0+up3.7.1 |
| rancher-istio | 100.0.0+up1.10.4 | 100.3.0+up1.13.3 |
| rancher-istio | 105.0.0+up1.19.6 | 105.4.0+up1.23.2 |
| rancher-logging | 100.0.0+up3.12.0 | 100.1.2+up3.17.4 |
| rancher-longhorn | 100.0.0+up1.1.2 | 100.1.2+up1.2.4 |
| rancher-monitoring | 100.0.0+up16.6.0 | 100.1.2+up19.0.3 |
Expand Down Expand Up @@ -194,14 +193,50 @@ Non-Airgap Rancher installations upon refresh will reflect any chart repository

Airgap installations where Rancher is configured to use the packaged copy of Helm system charts ([`useBundledSystemChart=true`](../../../getting-started/installation-and-upgrade/other-installation-methods/air-gapped-helm-cli-install/install-rancher-ha.md#helm-chart-options-for-air-gap-installations)) will only refer to the [system-chart](https://github.com/rancher/system-charts) repository that comes bundled and will not be able to be refreshed or synced.

#### Refresh Interval

Rancher v2.10.0 adds the `refreshInterval` field to the `ClusterRepo` CRD. The default value is 3600 seconds, meaning that Rancher syncs each Helm repository every 3600 seconds.

To modify the refresh interval of a chart repository:

1. Click **☰ > Cluster Management**.
1. Find the name of the cluster whose repositories you want to access. Click **Explore** at the end of the cluster's row.
1. In the left navigation menu on the **Cluster Dashboard**, click **Apps > Repositories**.
1. Find the repository you want to modify, and click **⋮ > Edit YAML**.
1. Set the **refreshInterval** field under **Spec** to the desired value in seconds.
1. Click **Save**.

### Enable/Disable Helm Chart Repositories

Rancher v2.10.0 adds the ability to enable and disable Helm repositories. Helm repositories are enabled by default.

To disable a chart repository:

1. Click **☰ > Cluster Management**.
1. Find the name of the cluster whose repositories you want to access. Click **Explore** at the end of the cluster's row.
1. In the left navigation menu on the **Cluster Dashboard**, click **Apps > Repositories**.
1. Find the repository you want to disable, and click **⋮ > Edit YAML**.
1. Set the **Enabled** field under **Spec** to **false**.
1. Click **Save**.
1. When you disable a repository, updates are disabled and new changes to the clusterRepo are not applied.

To enable a chart repository:

1. Click **☰ > Cluster Management**.
1. Find the name of the cluster whose repositories you want to access. Click **Explore** at the end of the cluster's row.
1. In the left navigation menu on the **Cluster Dashboard**, click **Apps > Repositories**.
1. Find the repository you want to disable, and click **⋮ > Edit YAML**.
1. Set the **Enabled** field under **Spec** to **true**.
1. Click **Save**.

## Deploy and Upgrade Charts

To install and deploy a chart:

1. Click **☰ > Cluster Management**.
1. Find the name of the cluster whose repositories you want to access. Click **Explore** at the end of the cluster's row.
1. In the left navigation menu on the **Cluster Dashboard**, click **Apps > Charts**.
1. Select a chart, and click **Install**.
1. Select a chart, and click **Install**.

Rancher and Partner charts may have extra configurations available through custom pages or questions.yaml files. However, all chart installations can modify the values.yaml and other basic settings. After you click **Install**, a Helm operation job is deployed, and the console for the job is displayed.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,5 @@ Rancher contains a variety of tools that aren't included in Kubernetes to assist
- Logging
- Monitoring
- Istio Service Mesh
- OPA Gatekeeper

Tools can be installed through **Apps.**
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,7 @@ In order to deploy and run the adapter successfully, you need to ensure its vers

| Rancher Version | Adapter Version |
|-----------------|------------------|
| v2.9.3 | v104.0.0+up4.0.0 |
| v2.9.2 | v104.0.0+up4.0.0 |
| v2.9.1 | v104.0.0+up4.0.0 |
| v2.9.0 | v104.0.0+up4.0.0 |
| v2.10.0 | v105.0.0+up5.0.1 |

### 1. Gain Access to the Local Cluster

Expand Down
Loading