diff --git a/content/k3s/latest/en/installation/install-options/agent-config/_index.md b/content/k3s/latest/en/installation/install-options/agent-config/_index.md index 1ffdabc740c..a31cb029436 100644 --- a/content/k3s/latest/en/installation/install-options/agent-config/_index.md +++ b/content/k3s/latest/en/installation/install-options/agent-config/_index.md @@ -6,6 +6,7 @@ In this section, you'll learn how to configure the K3s agent. > Throughout the K3s documentation, you will see some options that can be passed in as both command flags and environment variables. For help with passing in options, refer to [How to Use Flags and Environment Variables.]({{}}/k3s/latest/en/installation/install-options/how-to-flags) +- [Config](#config) - [Logging](#logging) - [Cluster Options](#cluster-options) - [Data](#data) @@ -18,14 +19,21 @@ In this section, you'll learn how to configure the K3s agent. - [Node Labels and Taints for Agents](#node-labels-and-taints-for-agents) - [K3s Agent CLI Help](#k3s-agent-cli-help) -### Logging +### Config | Flag | Default | Description | |------|---------|-------------| -| `-v` value | 0 | Number for the log level verbosity | -| `--vmodule` value | N/A | Comma-separated list of pattern=N settings for file-filtered logging | -| `--log value, -l` value | N/A | Log to file | -| `--alsologtostderr` | N/A | Log to standard error as well as file (if set) | +| `--config FILE, -c` FILE | "/etc/rancher/k3s/config.yaml" | Load configuration from FILE | + +### Logging + +| Flag | Default | Environment Variable | Description | +|------|---------|----------------------|-------------| +| `--debug` | N/A | `K3S_DEBUG` | Turn on debug logs | +| `-v` value | 0 | N/A | Number for the log level verbosity | +| `--vmodule` value | N/A | N/A | Comma-separated list of pattern=N settings for file-filtered logging | +| `--log value, -l` value | N/A | N/A | Log to file | +| `--alsologtostderr` | N/A | N/A | Log to standard error as well as file (if set) | ### Cluster Options | Flag | Environment Variable | Description | @@ -41,12 +49,17 @@ In this section, you'll learn how to configure the K3s agent. | `--data-dir value, -d` value | "/var/lib/rancher/k3s" | Folder to hold state | ### Node -| Flag | Environment Variable | Description | -|------|----------------------|-------------| -| `--node-name` value | `K3S_NODE_NAME` | Node name | -| `--with-node-id` | N/A | Append id to node name | -| `--node-label` value | N/A | Registering and starting kubelet with set of labels | -| `--node-taint` value | N/A | Registering kubelet with set of taints | +| Flag | Default | Environment Variable | Description | +|------|---------|----------------------|-------------| +| `--node-name` value | N/A | `K3S_NODE_NAME` | Node name | +| `--with-node-id` | N/A | N/A | Append id to node name | +| `--node-label` value | N/A | N/A | Registering and starting kubelet with set of labels | +| `--node-taint` value | N/A | N/A | Registering kubelet with set of taints | +| `--image-credential-provider-bin-dir` value | "/var/lib/rancher/credentialprovider/bin" | N/A | The path to the directory where credential provider plugin binaries are located | +| `--image-credential-provider-config` value | "/var/lib/rancher/credentialprovider/config.yaml" | N/A | The path to the credential provider plugin config file | +| `--protect-kernel-defaults` | N/A | N/A | Kernel tuning behavior. If set, error if kernel tunables are different than kubelet defaults | +| `--selinux` | N/A | `K3S_SELINUX` | Enable SELinux in containerd. | +| `--lb-server-port` value | 6444 | `K3S_LB_SERVER_PORT` | Local port for supervisor client load-balancer. If the supervisor and apiserver are not colocated an additional port 1 less than this port will also be used for the apiserver client load-balancer. | ### Runtime | Flag | Default | Description | @@ -54,14 +67,15 @@ In this section, you'll learn how to configure the K3s agent. | `--docker` | N/A | Use docker instead of containerd | | `--container-runtime-endpoint` value | N/A | Disable embedded containerd and use alternative CRI implementation | | `--pause-image` value | "docker.io/rancher/pause:3.1" | Customized pause image for containerd or docker sandbox | (agent/runtime) (default: ) -| `--private-registry` value | "/etc/rancher/k3s/registries.yaml" | Private registry configuration file | +| `--snapshotter` value | `overlayfs` | Override default containerd snapshotter | +| `--private-registry` value | `/etc/rancher/k3s/registries.yaml` | Private registry configuration file | ### Networking | Flag | Environment Variable | Description | |------|----------------------|-------------| | `--node-ip value, -i` value | N/A | IP address to advertise for node | | `--node-external-ip` value | N/A | External IP address to advertise for node | -| `--resolv-conf` value | `K3S_RESOLV_CONF` | Kubelet resolv.conf file | +| `--resolv-conf` value | `K3S_RESOLV_CONF` | Kubelet resolv.conf file | | `--flannel-iface` value | N/A | Override default flannel interface | | `--flannel-conf` value | N/A | Override default flannel config file | @@ -69,7 +83,7 @@ In this section, you'll learn how to configure the K3s agent. ### Customized Flags | Flag | Description | |------|--------------| -| `--kubelet-arg` value | Customized flag for kubelet process | +| `--kubelet-arg` value | Customized flag for kubelet process | | `--kube-proxy-arg` value | Customized flag for kube-proxy process | ### Experimental @@ -80,7 +94,7 @@ In this section, you'll learn how to configure the K3s agent. ### Deprecated | Flag | Environment Variable | Description | |------|----------------------|-------------| -| `--no-flannel` | N/A | Use `--flannel-backend=none` | +| `--no-flannel` | N/A | Use `--flannel-backend=none` | | `--cluster-secret` value | `K3S_CLUSTER_SECRET` | Use `--token` | ### Node Labels and Taints for Agents diff --git a/content/k3s/latest/en/installation/network-options/_index.md b/content/k3s/latest/en/installation/network-options/_index.md index 652f22f6adc..138a0618713 100644 --- a/content/k3s/latest/en/installation/network-options/_index.md +++ b/content/k3s/latest/en/installation/network-options/_index.md @@ -89,8 +89,6 @@ If you are using a custom cni plugin, i.e. a cni plugin different from flannel, ### IPv6 only installation -IPv6 only setup is supported on k3s v1.22 or above. Note that network policy enforcement is not supported on IPv6-only clusters when using the default flannel CNI. This is an example of a valid configuration: +IPv6 only setup is supported on k3s v1.22 or above -``` -k3s server --disable-network-policy -``` +> **Warning:** If your IPv6 default route is set by a router advertisement (RA), you will need to set `net.ipv6.conf.all.accept_ra = 2`; otherwise, the node will drop the default route once it expires. Be aware that accepting RAs could increase the risk of [man-in-the-middle attacks](https://github.com/kubernetes/kubernetes/issues/91507). diff --git a/content/rancher/v2.6/en/installation/install-rancher-on-k8s/_index.md b/content/rancher/v2.6/en/installation/install-rancher-on-k8s/_index.md index 55522d6caa9..cf9b936c744 100644 --- a/content/rancher/v2.6/en/installation/install-rancher-on-k8s/_index.md +++ b/content/rancher/v2.6/en/installation/install-rancher-on-k8s/_index.md @@ -12,8 +12,8 @@ In this section, you'll learn how to deploy Rancher on a Kubernetes cluster usin # Prerequisites - [Kubernetes Cluster](#kubernetes-cluster) +- [Ingress Controller](#ingress-controller) - [CLI Tools](#cli-tools) -- [Ingress Controller (Only for Hosted Kubernetes)](#ingress-controller-for-hosted-kubernetes) ### Kubernetes Cluster @@ -26,9 +26,19 @@ For help setting up a Kubernetes cluster, we provide these tutorials: - **RKE:** For the tutorial to install an RKE Kubernetes cluster, refer to [this page.]({{}}/rancher/v2.6/en/installation/resources/k8s-tutorials/ha-rke/) For help setting up the infrastructure for a high-availability RKE cluster, refer to [this page.]({{}}/rancher/v2.6/en/installation/resources/k8s-tutorials/infrastructure-tutorials/infra-for-ha) - **K3s:** For the tutorial to install a K3s Kubernetes cluster, refer to [this page.]({{}}/rancher/v2.6/en/installation/resources/k8s-tutorials/ha-with-external-db) For help setting up the infrastructure for a high-availability K3s cluster, refer to [this page.]({{}}/rancher/v2.6/en/installation/resources/k8s-tutorials/infrastructure-tutorials/infra-for-ha-with-external-db) - **RKE2:** For the tutorial to install an RKE2 Kubernetes cluster, refer to [this page.]({{}}/rancher/v2.6/en/installation/resources/k8s-tutorials/ha-rke2) For help setting up the infrastructure for a high-availability RKE2 cluster, refer to [this page.]({{}}/rancher/v2.6/en/installation/resources/k8s-tutorials/infrastructure-tutorials/infra-for-rke2-ha) -- **Amazon EKS:** For details on how to install Rancher on Amazon EKS, including how to install an ingress so that the Rancher server can be accessed, refer to [this page.]({{}}/rancher/v2.6/en/installation/install-rancher-on-k8s/amazon-eks) -- **AKS:** For details on how to install Rancher with Azure Kubernetes Service, including how to install an ingress so that the Rancher server can be accessed, refer to [this page.]({{}}/rancher/v2.6/en/installation/install-rancher-on-k8s/aks) -- **GKE:** For details on how to install Rancher with Google Kubernetes Engine, including how to install an ingress so that the Rancher server can be accessed, refer to [this page.]({{}}/rancher/v2.6/en/installation/install-rancher-on-k8s/gke) +- **Amazon EKS:** For details on how to install Rancher on Amazon EKS, including how to install an Ingress controller so that the Rancher server can be accessed, refer to [this page.]({{}}/rancher/v2.6/en/installation/resources/k8s-tutorials/amazon-eks) +- **AKS:** For details on how to install Rancher with Azure Kubernetes Service, including how to install an Ingress controller so that the Rancher server can be accessed, refer to [this page.]({{}}/rancher/v2.6/en/installation/resources/k8s-tutorials/aks) +- **GKE:** For details on how to install Rancher with Google Kubernetes Engine, including how to install an Ingress controller so that the Rancher server can be accessed, refer to [this page.]({{}}/rancher/v2.6/en/installation/resources/k8s-tutorials/gke) + +### Ingress Controller + +The Rancher UI and API are exposed through an Ingress. This means the Kubernetes cluster that you install Rancher in must contain an Ingress controller. + +For RKE, RKE2, and K3s installations, you don't have to install the Ingress controller manually because one is installed by default. + +For distributions that do not include an Ingress Controller by default, like a hosted Kubernetes cluster such as EKS, GKE, or AKS, you have to deploy an Ingress controller first. Note that the Rancher Helm chart does not set an `ingressClassName` on the ingress by default. Because of this, you have to configure the Ingress controller to also watch ingresses without an `ingressClassName`. + +Examples are included in the **Amazon EKS**, **AKS**, and **GKE** tutorials above. ### CLI Tools @@ -37,12 +47,6 @@ The following CLI tools are required for setting up the Kubernetes cluster. Plea - [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/#install-kubectl) - Kubernetes command-line tool. - [helm](https://docs.helm.sh/using_helm/#installing-helm) - Package management for Kubernetes. Refer to the [Helm version requirements]({{}}/rancher/v2.6/en/installation/resources/helm-version) to choose a version of Helm to install Rancher. Refer to the [instructions provided by the Helm project](https://helm.sh/docs/intro/install/) for your specific platform. -### Ingress Controller (For Hosted Kubernetes) - -To deploy Rancher on a hosted Kubernetes cluster such as EKS, GKE, or AKS, you should deploy a compatible Ingress controller first to configure [SSL termination on Rancher.](#3-choose-your-ssl-configuration) - -For an example of how to deploy an ingress on EKS, refer to [this section.]({{}}/rancher/v2.6/en/installation/install-rancher-on-k8s/amazon-eks/#5-install-an-ingress) - # Install the Rancher Helm Chart Rancher is installed using the [Helm](https://helm.sh/) package manager for Kubernetes. Helm charts provide templating syntax for Kubernetes YAML manifest documents. With Helm, we can create configurable deployments instead of just using static files. diff --git a/content/rancher/v2.6/en/installation/requirements/_index.md b/content/rancher/v2.6/en/installation/requirements/_index.md index affe086b066..122f954de37 100644 --- a/content/rancher/v2.6/en/installation/requirements/_index.md +++ b/content/rancher/v2.6/en/installation/requirements/_index.md @@ -22,8 +22,6 @@ Make sure the node(s) for the Rancher server fulfill the following requirements: - [RKE2 Kubernetes](#rke2-kubernetes) - [Docker](#docker) - [Ingress](#ingress) - - [Ingress for RKE2](#ingress-for-rke2) - - [Ingress for EKS](#ingress-for-eks) - [Disks](#disks) - [Networking Requirements](#networking-requirements) - [Node IP Addresses](#node-ip-addresses) @@ -153,8 +151,9 @@ For RKE and K3s installations, you don't have to install the Ingress manually be For hosted Kubernetes clusters (EKS, GKE, AKS) and RKE2 Kubernetes installations, you will need to set up the ingress. -### Ingress for EKS -For an example of how to deploy an nginx-ingress-controller with a LoadBalancer service, refer to [this section.]({{}}/rancher/v2.6/en/installation/install-rancher-on-k8s/amazon-eks/#5-install-an-ingress) +- **Amazon EKS:** For details on how to install Rancher on Amazon EKS, including how to install an ingress so that the Rancher server can be accessed, refer to [this page.]({{}}/rancher/v2.6/en/installation/resources/k8s-tutorials/amazon-eks) +- **AKS:** For details on how to install Rancher with Azure Kubernetes Service, including how to install an ingress so that the Rancher server can be accessed, refer to [this page.]({{}}/rancher/v2.6/en/installation/resources/k8s-tutorials/aks) +- **GKE:** For details on how to install Rancher with Google Kubernetes Engine, including how to install an ingress so that the Rancher server can be accessed, refer to [this page.]({{}}/rancher/v2.6/en/installation/resources/k8s-tutorials/gke) # Disks diff --git a/content/rancher/v2.6/en/installation/install-rancher-on-k8s/aks/_index.md b/content/rancher/v2.6/en/installation/resources/k8s-tutorials/aks/_index.md similarity index 99% rename from content/rancher/v2.6/en/installation/install-rancher-on-k8s/aks/_index.md rename to content/rancher/v2.6/en/installation/resources/k8s-tutorials/aks/_index.md index b48aca076d9..89f32b12f68 100644 --- a/content/rancher/v2.6/en/installation/install-rancher-on-k8s/aks/_index.md +++ b/content/rancher/v2.6/en/installation/resources/k8s-tutorials/aks/_index.md @@ -1,7 +1,7 @@ --- title: Installing Rancher on Azure Kubernetes Service shortTitle: AKS -weight: 4 +weight: 3 --- This page covers how to install Rancher on Microsoft's Azure Kubernetes Service (AKS). diff --git a/content/rancher/v2.6/en/installation/install-rancher-on-k8s/amazon-eks/_index.md b/content/rancher/v2.6/en/installation/resources/k8s-tutorials/amazon-eks/_index.md similarity index 99% rename from content/rancher/v2.6/en/installation/install-rancher-on-k8s/amazon-eks/_index.md rename to content/rancher/v2.6/en/installation/resources/k8s-tutorials/amazon-eks/_index.md index 85e2f93bd56..f8da88bd61c 100644 --- a/content/rancher/v2.6/en/installation/install-rancher-on-k8s/amazon-eks/_index.md +++ b/content/rancher/v2.6/en/installation/resources/k8s-tutorials/amazon-eks/_index.md @@ -1,7 +1,7 @@ --- title: Installing Rancher on Amazon EKS shortTitle: Amazon EKS -weight: 4 +weight: 3 --- This page covers two ways to install Rancher on EKS. diff --git a/content/rancher/v2.6/en/installation/install-rancher-on-k8s/gke/_index.md b/content/rancher/v2.6/en/installation/resources/k8s-tutorials/gke/_index.md similarity index 99% rename from content/rancher/v2.6/en/installation/install-rancher-on-k8s/gke/_index.md rename to content/rancher/v2.6/en/installation/resources/k8s-tutorials/gke/_index.md index 1c84eb38083..0aab07851c7 100644 --- a/content/rancher/v2.6/en/installation/install-rancher-on-k8s/gke/_index.md +++ b/content/rancher/v2.6/en/installation/resources/k8s-tutorials/gke/_index.md @@ -1,7 +1,7 @@ --- title: Installing Rancher on a Google Kubernetes Engine Cluster shortTitle: GKE -weight: 5 +weight: 3 --- In this section, you'll learn how to install Rancher using Google Kubernetes Engine.