mirror of
https://github.com/rancher/rke.git
synced 2025-09-01 15:06:23 +00:00
Add iface option to flannel
This commit is contained in:
@@ -15,6 +15,7 @@ const (
|
||||
FlannelNetworkPlugin = "flannel"
|
||||
FlannelImage = "flannel_image"
|
||||
FlannelCNIImage = "flannel_cni_image"
|
||||
FlannelIface = "flannel_iface"
|
||||
|
||||
CalicoNetworkPlugin = "calico"
|
||||
CalicoNodeImage = "calico_node_image"
|
||||
@@ -48,7 +49,13 @@ func (c *Cluster) DeployNetworkPlugin() error {
|
||||
}
|
||||
|
||||
func (c *Cluster) doFlannelDeploy() error {
|
||||
pluginYaml := network.GetFlannelManifest(c.ClusterCIDR, c.Network.Options[FlannelImage], c.Network.Options[FlannelCNIImage])
|
||||
flannelConfig := map[string]string{
|
||||
network.ClusterCIDR: c.ClusterCIDR,
|
||||
network.FlannelImage: c.Network.Options[FlannelImage],
|
||||
network.FlannelCNIImage: c.Network.Options[FlannelCNIImage],
|
||||
network.FlannelIface: c.Network.Options[FlannelIface],
|
||||
}
|
||||
pluginYaml := network.GetFlannelManifest(flannelConfig)
|
||||
return c.doAddonDeploy(pluginYaml, NetworkPluginResourceName)
|
||||
}
|
||||
|
||||
|
@@ -1,6 +1,12 @@
|
||||
package network
|
||||
|
||||
func GetFlannelManifest(clusterCIDR, image, cniImage string) string {
|
||||
import "fmt"
|
||||
|
||||
func GetFlannelManifest(flannelConfig map[string]string) string {
|
||||
var extraArgs string
|
||||
if len(flannelConfig[FlannelIface]) > 0 {
|
||||
extraArgs = fmt.Sprintf(",--iface=%s", flannelConfig[FlannelIface])
|
||||
}
|
||||
return `
|
||||
---
|
||||
kind: ConfigMap
|
||||
@@ -34,7 +40,7 @@ data:
|
||||
}
|
||||
net-conf.json: |
|
||||
{
|
||||
"Network": "` + clusterCIDR + `",
|
||||
"Network": "` + flannelConfig[ClusterCIDR] + `",
|
||||
"Backend": {
|
||||
"Type": "vxlan"
|
||||
}
|
||||
@@ -57,7 +63,7 @@ spec:
|
||||
spec:
|
||||
containers:
|
||||
- name: kube-flannel
|
||||
image: ` + image + `
|
||||
image: ` + flannelConfig[FlannelImage] + `
|
||||
imagePullPolicy: IfNotPresent
|
||||
resources:
|
||||
limits:
|
||||
@@ -66,7 +72,7 @@ spec:
|
||||
requests:
|
||||
cpu: 150m
|
||||
memory: 64M
|
||||
command: [ "/opt/bin/flanneld", "--ip-masq", "--kube-subnet-mgr" ]
|
||||
command: ["/opt/bin/flanneld","--ip-masq","--kube-subnet-mgr"` + extraArgs + `]
|
||||
securityContext:
|
||||
privileged: true
|
||||
env:
|
||||
@@ -86,7 +92,7 @@ spec:
|
||||
- name: flannel-cfg
|
||||
mountPath: /etc/kube-flannel/
|
||||
- name: install-cni
|
||||
image: ` + cniImage + `
|
||||
image: ` + flannelConfig[FlannelCNIImage] + `
|
||||
command: ["/install-cni.sh"]
|
||||
env:
|
||||
# The CNI network config to install on each node.
|
||||
|
@@ -13,4 +13,5 @@ const (
|
||||
ControllersImage = "controllersImage"
|
||||
FlannelImage = "flannelImage"
|
||||
FlannelCNIImage = "flannelCNIImage"
|
||||
FlannelIface = "flannelIface"
|
||||
)
|
||||
|
Reference in New Issue
Block a user