Kubernetes Core
- Canonical Kubernetes | bundle
- Cloud
Channel | Revision | Published |
---|---|---|
latest/stable | 1845 | 04 Sep 2024 |
latest/candidate | 1826 | 16 Apr 2024 |
latest/beta | 1843 | 15 Aug 2024 |
latest/edge | 1841 | 02 Aug 2024 |
1.32/edge | 1846 | 10 Sep 2024 |
1.31/stable | 1844 | 04 Sep 2024 |
1.31/beta | 1842 | 12 Aug 2024 |
1.31/edge | 1840 | 02 Aug 2024 |
1.30/stable | 1834 | 11 Jul 2024 |
1.30/beta | 1831 | 18 Apr 2024 |
1.30/edge | 1839 | 26 Jul 2024 |
1.29/stable | 1823 | 12 Feb 2024 |
1.29/candidate | 1827 | 16 Apr 2024 |
1.29/beta | 1822 | 12 Feb 2024 |
1.29/edge | 1818 | 13 Dec 2023 |
1.28/stable | 1817 | 21 Aug 2023 |
1.28/candidate | 1809 | 07 Jun 2023 |
1.28/beta | 1816 | 21 Aug 2023 |
1.28/edge | 1811 | 07 Aug 2023 |
1.27/stable | 1805 | 21 Apr 2023 |
1.27/candidate | 1807 | 17 May 2023 |
1.27/beta | 1802 | 09 Apr 2023 |
1.27/edge | 1799 | 23 Feb 2023 |
1.26/stable | 1794 | 15 Dec 2022 |
1.26/candidate | 1796 | 13 Jan 2023 |
1.26/beta | 1801 | 08 Apr 2023 |
1.26/edge | 1786 | 22 Nov 2022 |
1.25/stable | 1779 | 01 Sep 2022 |
1.25/candidate | 1780 | 09 Sep 2022 |
1.25/beta | 1788 | 01 Dec 2022 |
1.25/edge | 1775 | 17 Aug 2022 |
1.24/stable | 1748 | 04 Aug 2022 |
1.24/candidate | 1742 | 02 Aug 2022 |
1.24/beta | 1605 | 06 May 2022 |
1.24/edge | 1772 | 15 Aug 2022 |
1.23/edge | 1542 | 16 Mar 2022 |
juju deploy kubernetes-core
Deploy universal operators easily with Juju, the Universal Operator Lifecycle Manager.
Platform:
-
channel | string
Default: 1.31/stable
Snap channel to install Kubernetes worker services from
-
ingress | boolean
Default: True
Deploy nginx-ingress-controller to handle Ingress resources. When set to true, the unit will open ports 80 and 443 to make the nginx-ingress-controller endpoint accessible.
-
ingress-default-ssl-certificate | string
SSL certificate to be used by the default HTTPS server. If one of the flag ingress-default-ssl-certificate or ingress-default-ssl-key is not provided ingress will use a self-signed certificate. This parameter is specific to nginx-ingress-controller.
-
ingress-default-ssl-key | string
Private key to be used by the default HTTPS server. If one of the flag ingress-default-ssl-certificate or ingress-default-ssl-key is not provided ingress will use a self-signed certificate. This parameter is specific to nginx-ingress-controller.
-
ingress-ssl-chain-completion | boolean
Enable chain completion for TLS certificates used by the nginx ingress controller. Set this to true if you would like the ingress controller to attempt auto-retrieval of intermediate certificates. The default (false) is recommended for all production kubernetes installations, and any environment which does not have outbound Internet access.
-
ingress-ssl-passthrough | boolean
Enable ssl passthrough on ingress server. This allows passing the ssl connection through to the workloads and not terminating it at the ingress controller.
-
ingress-use-forwarded-headers | boolean
If true, NGINX passes the incoming X-Forwarded-* headers to upstreams. Use this option when NGINX is behind another L7 proxy / load balancer that is setting these headers. If false, NGINX ignores incoming X-Forwarded-* headers, filling them with the request information it sees. Use this option if NGINX is exposed directly to the internet, or it's behind a L3/packet-based load balancer that doesn't alter the source IP in the packets. Reference: https://github.com/kubernetes/ingress-nginx/blob/a9c706be12a8be418c49ab1f60a02f52f9b14e55/ docs/user-guide/nginx-configuration/configmap.md#use-forwarded-headers.
-
kubelet-extra-args | string
Space separated list of flags and key=value pairs that will be passed as arguments to kubelet. For example a value like this: runtime-config=batch/v2alpha1=true profiling=true will result in kubelet being run with the following options: --runtime-config=batch/v2alpha1=true --profiling=true
-
kubelet-extra-config | string
Default: {}
Extra configuration to be passed to kubelet. Any values specified in this config will be merged into a KubeletConfiguration file that is passed to the kubelet service via the --config flag. This can be used to override values provided by the charm. The value for this config must be a YAML mapping that can be safely merged with a KubeletConfiguration file. For example: {evictionHard: {memory.available: 200Mi}} For more information about KubeletConfiguration, see upstream docs: https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/
-
labels | string
Labels can be used to organize and to select subsets of nodes in the cluster. Declare node labels in key=value format, separated by spaces.
-
nginx-image | string
Default: auto
Container image to use for the nginx ingress controller. Using "auto" will select an image based on architecture. Example: quay.io/kubernetes-ingress-controller/nginx-ingress-controller-amd64:0.32.0
-
proxy-extra-args | string
Space separated list of flags and key=value pairs that will be passed as arguments to kube-proxy. For example a value like this: runtime-config=batch/v2alpha1=true profiling=true will result in kube-apiserver being run with the following options: --runtime-config=batch/v2alpha1=true --profiling=true
-
proxy-extra-config | string
Default: {}
Extra configuration to be passed to kube-proxy. Any values specified in this config will be merged into a KubeProxyConfiguration file that is passed to the kube-proxy service via the --config flag. This can be used to override values provided by the charm. The value for this config must be a YAML mapping that can be safely merged with a KubeProxyConfiguration file. For example: {mode: ipvs, ipvs: {strictARP: true}} For more information about KubeProxyConfiguration, see upstream docs: https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/
-
sysctl | string
Default: {net.ipv4.conf.all.forwarding: 1, net.ipv4.conf.all.rp_filter: 1, net.ipv4.neigh.default.gc_thresh1: 128, net.ipv4.neigh.default.gc_thresh2: 28672, net.ipv4.neigh.default.gc_thresh3: 32768, net.ipv6.neigh.default.gc_thresh1: 128, net.ipv6.neigh.default.gc_thresh2: 28672, net.ipv6.neigh.default.gc_thresh3: 32768, fs.inotify.max_user_instances: 8192, fs.inotify.max_user_watches: 1048576, kernel.panic: 10, kernel.panic_on_oops: 1, vm.overcommit_memory: 1}
YAML formatted associative array of sysctl values, e.g.: '{kernel.pid_max: 4194303}'. Note that kube-proxy handles the conntrack settings. The proper way to alter them is to use the proxy-extra-args config to set them, e.g.: juju config kubernetes-control-plane proxy-extra-args="conntrack-min=1000000 conntrack-max-per-core=250000" juju config kubernetes-worker proxy-extra-args="conntrack-min=1000000 conntrack-max-per-core=250000" The proxy-extra-args conntrack-min and conntrack-max-per-core can be set to 0 to ignore kube-proxy's settings and use the sysctl settings instead. Note the fundamental difference between the setting of conntrack-max-per-core vs nf_conntrack_max.