mirror of
https://github.com/rancher/rke.git
synced 2025-09-01 06:56:29 +00:00
Add custom flexvolume capabilities to canal and calico
This commit is contained in:
@@ -65,6 +65,10 @@ const (
|
|||||||
DefaultFlannelBackendVxLanPort = "8472"
|
DefaultFlannelBackendVxLanPort = "8472"
|
||||||
DefaultFlannelBackendVxLanVNI = "1"
|
DefaultFlannelBackendVxLanVNI = "1"
|
||||||
|
|
||||||
|
DefaultCalicoFlexVolPluginDirectory = "/usr/libexec/kubernetes/kubelet-plugins/volume/exec/nodeagent~uds"
|
||||||
|
|
||||||
|
DefaultCanalFlexVolPluginDirectory = "/usr/libexec/kubernetes/kubelet-plugins/volume/exec/nodeagent~uds"
|
||||||
|
|
||||||
KubeAPIArgAdmissionControlConfigFile = "admission-control-config-file"
|
KubeAPIArgAdmissionControlConfigFile = "admission-control-config-file"
|
||||||
DefaultKubeAPIArgAdmissionControlConfigFileValue = "/etc/kubernetes/admission.yaml"
|
DefaultKubeAPIArgAdmissionControlConfigFileValue = "/etc/kubernetes/admission.yaml"
|
||||||
|
|
||||||
@@ -503,7 +507,8 @@ func (c *Cluster) setClusterNetworkDefaults() {
|
|||||||
switch c.Network.Plugin {
|
switch c.Network.Plugin {
|
||||||
case CalicoNetworkPlugin:
|
case CalicoNetworkPlugin:
|
||||||
networkPluginConfigDefaultsMap = map[string]string{
|
networkPluginConfigDefaultsMap = map[string]string{
|
||||||
CalicoCloudProvider: DefaultNetworkCloudProvider,
|
CalicoCloudProvider: DefaultNetworkCloudProvider,
|
||||||
|
CalicoFlexVolPluginDirectory: DefaultCalicoFlexVolPluginDirectory,
|
||||||
}
|
}
|
||||||
case FlannelNetworkPlugin:
|
case FlannelNetworkPlugin:
|
||||||
networkPluginConfigDefaultsMap = map[string]string{
|
networkPluginConfigDefaultsMap = map[string]string{
|
||||||
@@ -516,6 +521,7 @@ func (c *Cluster) setClusterNetworkDefaults() {
|
|||||||
CanalFlannelBackendType: DefaultFlannelBackendVxLan,
|
CanalFlannelBackendType: DefaultFlannelBackendVxLan,
|
||||||
CanalFlannelBackendPort: DefaultFlannelBackendVxLanPort,
|
CanalFlannelBackendPort: DefaultFlannelBackendVxLanPort,
|
||||||
CanalFlannelBackendVxLanNetworkIdentify: DefaultFlannelBackendVxLanVNI,
|
CanalFlannelBackendVxLanNetworkIdentify: DefaultFlannelBackendVxLanVNI,
|
||||||
|
CanalFlexVolPluginDirectory: DefaultCanalFlexVolPluginDirectory,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if c.Network.CalicoNetworkProvider != nil {
|
if c.Network.CalicoNetworkProvider != nil {
|
||||||
|
@@ -52,10 +52,11 @@ const (
|
|||||||
// FlannelBackendVxLanNetworkIdentify should be greater than or equal to 4096 if using VxLan mode in the cluster with Windows nodes
|
// FlannelBackendVxLanNetworkIdentify should be greater than or equal to 4096 if using VxLan mode in the cluster with Windows nodes
|
||||||
FlannelBackendVxLanNetworkIdentify = "flannel_backend_vni"
|
FlannelBackendVxLanNetworkIdentify = "flannel_backend_vni"
|
||||||
|
|
||||||
CalicoNetworkPlugin = "calico"
|
CalicoNetworkPlugin = "calico"
|
||||||
CalicoNodeLabel = "calico-node"
|
CalicoNodeLabel = "calico-node"
|
||||||
CalicoControllerLabel = "calico-kube-controllers"
|
CalicoControllerLabel = "calico-kube-controllers"
|
||||||
CalicoCloudProvider = "calico_cloud_provider"
|
CalicoCloudProvider = "calico_cloud_provider"
|
||||||
|
CalicoFlexVolPluginDirectory = "calico_flex_volume_plugin_dir"
|
||||||
|
|
||||||
CanalNetworkPlugin = "canal"
|
CanalNetworkPlugin = "canal"
|
||||||
CanalIface = "canal_iface"
|
CanalIface = "canal_iface"
|
||||||
@@ -64,6 +65,7 @@ const (
|
|||||||
CanalFlannelBackendPort = "canal_flannel_backend_port"
|
CanalFlannelBackendPort = "canal_flannel_backend_port"
|
||||||
// CanalFlannelBackendVxLanNetworkIdentify should be greater than or equal to 4096 if using Flannel VxLan mode in the cluster with Windows nodes
|
// CanalFlannelBackendVxLanNetworkIdentify should be greater than or equal to 4096 if using Flannel VxLan mode in the cluster with Windows nodes
|
||||||
CanalFlannelBackendVxLanNetworkIdentify = "canal_flannel_backend_vni"
|
CanalFlannelBackendVxLanNetworkIdentify = "canal_flannel_backend_vni"
|
||||||
|
CanalFlexVolPluginDirectory = "canal_flex_volume_plugin_dir"
|
||||||
|
|
||||||
WeaveNetworkPlugin = "weave"
|
WeaveNetworkPlugin = "weave"
|
||||||
WeaveNetworkAppName = "weave-net"
|
WeaveNetworkAppName = "weave-net"
|
||||||
@@ -104,6 +106,7 @@ const (
|
|||||||
FlannelInterface = "FlannelInterface"
|
FlannelInterface = "FlannelInterface"
|
||||||
FlannelBackend = "FlannelBackend"
|
FlannelBackend = "FlannelBackend"
|
||||||
CanalInterface = "CanalInterface"
|
CanalInterface = "CanalInterface"
|
||||||
|
FlexVolPluginDir = "FlexVolPluginDir"
|
||||||
WeavePassword = "WeavePassword"
|
WeavePassword = "WeavePassword"
|
||||||
MTU = "MTU"
|
MTU = "MTU"
|
||||||
RBACConfig = "RBACConfig"
|
RBACConfig = "RBACConfig"
|
||||||
@@ -199,6 +202,7 @@ func (c *Cluster) doCalicoDeploy(ctx context.Context, data map[string]interface{
|
|||||||
NodeSelector: c.Network.NodeSelector,
|
NodeSelector: c.Network.NodeSelector,
|
||||||
MTU: c.Network.MTU,
|
MTU: c.Network.MTU,
|
||||||
UpdateStrategy: c.Network.UpdateStrategy,
|
UpdateStrategy: c.Network.UpdateStrategy,
|
||||||
|
FlexVolPluginDir: c.Network.Options[CalicoFlexVolPluginDirectory],
|
||||||
}
|
}
|
||||||
pluginYaml, err := c.getNetworkPluginManifest(calicoConfig, data)
|
pluginYaml, err := c.getNetworkPluginManifest(calicoConfig, data)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -236,9 +240,10 @@ func (c *Cluster) doCanalDeploy(ctx context.Context, data map[string]interface{}
|
|||||||
"VNI": flannelVni,
|
"VNI": flannelVni,
|
||||||
"Port": flannelPort,
|
"Port": flannelPort,
|
||||||
},
|
},
|
||||||
NodeSelector: c.Network.NodeSelector,
|
NodeSelector: c.Network.NodeSelector,
|
||||||
MTU: c.Network.MTU,
|
MTU: c.Network.MTU,
|
||||||
UpdateStrategy: c.Network.UpdateStrategy,
|
UpdateStrategy: c.Network.UpdateStrategy,
|
||||||
|
FlexVolPluginDir: c.Network.Options[CanalFlexVolPluginDirectory],
|
||||||
}
|
}
|
||||||
pluginYaml, err := c.getNetworkPluginManifest(canalConfig, data)
|
pluginYaml, err := c.getNetworkPluginManifest(canalConfig, data)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
Reference in New Issue
Block a user