You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: source/plugins/cloudstack-kubernetes-service.rst
+44-4Lines changed: 44 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,8 +15,7 @@ CloudStack Kubernetes Service
15
15
16
16
The Kubernetes Service plugin adds Kubernetes integration to CloudStack. The plugin is disabled by default and an admin can enable it using a Global Setting. It enables users to run containerized services using Kubernetes clusters.
17
17
18
-
With CoreOS having reached EOL, from 4.16 on the Kubernetes Service Plugin will use
19
-
the existing SystemVM Template by default for deploying kubernetes clusters. For
18
+
The Kubernetes Service Plugin will use the existing SystemVM Template by default for deploying kubernetes clusters. For
20
19
installation of Kubernetes binaries on the cluster nodes, a binaries ISO is used for each
21
20
Kubernetes version to be made available via CloudStack. This allows faster, offline
22
21
installation of Kubernetes binaries and docker images along with support for adding
@@ -26,7 +25,11 @@ multiple versions of Kubernetes for upgrades and running different clusters.
26
25
From version 4.21.0, users can choose different templates and service offerings for different types of nodes (worker, control, etcd nodes) for deploying Kubernetes clusters. The templates must be previously registered selecting the 'For CKS' option.
27
26
See :ref:`flexible-kubernetes-clusters`.
28
27
29
-
For deployment and setup of Kubernetes on cluster nodes, the plugin uses the Kubernetes tool, 'kubeadm'. kubeadm is the command-line tool for easily provisioning a secure Kubernetes cluster on top of physical or cloud servers or Instances. Under the hood, control node(s) of the cluster starts a Kubernetes cluster using kubeadm init command with a custom token, and worker nodes join this Kubernetes cluster using kubeadm join command with the same token. More about kubeadm here: https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm/. Weave Net CNI provider plugin is used for cluster networking. More about Weave Net provide plugin here: https://www.weave.works/docs/net/latest/kubernetes/kube-addon/.
28
+
For deployment and setup of Kubernetes on cluster nodes, the plugin uses the Kubernetes tool, 'kubeadm'. kubeadm is the command-line tool for easily provisioning a secure Kubernetes cluster on top of physical or cloud servers or Instances. Under the hood, control node(s) of the cluster starts a Kubernetes cluster using kubeadm init command with a custom token, and worker nodes join this Kubernetes cluster using kubeadm join command with the same token. More about kubeadm here: https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm/.
29
+
30
+
Weave Net CNI provider plugin is used for cluster networking. More about Weave Net provide plugin here: https://www.weave.works/docs/net/latest/kubernetes/kube-addon/.
31
+
32
+
Calico CNI provider plugin is also supported from ACS 4.21 onwards. More about Calico CNI plugin here: https://docs.projectcalico.org/getting-started/kubernetes/.
30
33
31
34
To access the Kubernetes dashboard securely, the plugin provides access to kubeconfig file data which uses the Kubernetes tool kubectl to run a local proxy and thereby access the dashboard. More about kubectl here: https://kubernetes.io/docs/reference/kubectl/overview/
32
35
@@ -76,6 +79,7 @@ Eg: To generate the latest kubernetes iso
76
79
1.3.0, CNI version, see https://github.com/containernetworking/plugins/releases
77
80
1.27.0, cri-tools version, see https://github.com/kubernetes-sigs/cri-tools/releases
78
81
1.11, weave addon for kubernetes, see https://github.com/weaveworks/weave/tree/master/prog/weave-kube
82
+
3.30.0, calico addon for kubernetes, see https://raw.githubusercontent.com/projectcalico/calico/v3.30.0/manifests/calico.yaml
79
83
2.7.0, kubernetes dashboard version, see https://github.com/kubernetes/dashboard/release
From ACS 4.16 onwards, Kubernetes versions >= 1.20.x are only supported (https://endoflife.date/kubernetes).
95
112
@@ -765,6 +782,29 @@ For verification of the applied CNI Configuration, the following commands can be
765
782
766
783
Events: <none>
767
784
785
+
There could be Calico routing edge case encountered in some environments. By default, Calico uses the 192.168.0.0/16 network for its pod IP pool when you install it with the standard manifests. To avoid potential routing conflicts with existing networks in your infrastructure, it's advisable to customize the Calico IP pool to use a different subnet that doesn't overlap with your current network setup.
786
+
787
+
kubectl get ippool.crd.projectcalico.org -o yaml
788
+
789
+
.. code-block:: bash
790
+
apiVersion: crd.projectcalico.org/v1
791
+
kind: IPPool
792
+
metadata:
793
+
name: default-ipv4-ippool
794
+
spec:
795
+
cidr: 192.168.0.0/16
796
+
ipipMode: Always
797
+
natOutgoing: true
798
+
disabled: false
799
+
800
+
You can edit the IP pool to change the CIDR to a different subnet that fits your network architecture better. For example, you might choose to use 10.0.0.0/16.
0 commit comments