Skip to content

Allow disabling the network plugin configuration#664

Merged
mmahut merged 1 commit intoopenshift:masterfrom
tomassedovic:disable-network-plugin
Oct 20, 2015
Merged

Allow disabling the network plugin configuration#664
mmahut merged 1 commit intoopenshift:masterfrom
tomassedovic:disable-network-plugin

Conversation

@tomassedovic
Copy link
Contributor

This is useful when we want to use a different networking solution
without having any networking plugin code run when the services start
up.

@openshift-bot
Copy link

Can one of the admins verify this patch?

@tomassedovic
Copy link
Contributor Author

Not sure using the use_openshift_sdn fact is the best way to do this, but it's what I expected to happen when I set it to false.

@sdodson
Copy link
Member

sdodson commented Oct 9, 2015

Can this not be achieved by setting os_sdn_network_plugin_name="" ? Also setting openshift_use_openshift_sdn=false seems to do the same. This assumes that openshift actually does the right thing if networkPluginName is empty, my experience has been that it does, are you seeing otherwise?

@tomassedovic
Copy link
Contributor Author

I thought so, but it just ended up setting the config back to the default
plugin.
On Oct 9, 2015 7:51 PM, "Scott Dodson" notifications@github.com wrote:

Can this not be achieved by setting os_sdn_network_plugin_name="" ?


Reply to this email directly or view it on GitHub
#664 (comment)
.

@tomassedovic
Copy link
Contributor Author

I admit I haven't tried setting the network plugin to an empty string in the conf files, but I couldn't figure out how to do that via openshift-ansible anyway.

I've tried it again to make sure: using master (commit 8e776b0), and setting os_sdn_network_plugin_name="" in the inventory.

That resulted in networkConfig -> networkPluginName being set to redhat/openshift-ovs-subnet in both conf.yaml files and all the interfaces being created.

Then I added openshift_use_openshift_sdn=false and tested that (on a new set of VMs). Interestingly, while the config is the same, this caused the origin-node services to fail to start, because they couldn't find the redhat/openshift-ovs-subnet plugin. That in turn caused the ansible run failure because the nodes never registered back to master.

Started Origin Node.
I1012 03:47:55.544844   23682 manager.go:158] Machine: {NumCores:2 CpuFrequency:2099998 MemoryCapacity:3975819264 MachineID:19d82c8902374e7caa655973bd7a6e6a SystemUUID:314AFD1D-86BA-E44A-B451-5FB22DAE0134 BootID:3e51cecc-756d-44a5-8c60-4bc6b68fd27f Filesystems:[{Device:/dev/vda1 Capacity:42932649984}] DiskMap:map[252:0:{Name:dm-0 Major:252 Minor:0 Size:107374182400 Scheduler:none} 253:0:{Name:vda Major:253 Minor:0 Size:42949672960 Scheduler:none}] NetworkDevices:[{Name:eth0 MacAddress:fa:16:3e:a7:35:60 Speed:0 Mtu:1400} {Name:eth1 MacAddress:fa:16:3e:de:07:53 Speed:0 Mtu:1500}] Topology:[{Id:0 Memory:4294430720 Cores:[{Id:0 Threads:[0] Caches:[{Size:32768 Type:Data Level:1} {Size:32768 Type:Instruction Level:1} {Size:4194304 Type:Unified Level:2}]}] Caches:[]} {Id:1 Memory:0 Cores:[{Id:0 Threads:[1] Caches:[{Size:32768 Type:Data Level:1} {Size:32768 Type:Instruction Level:1} {Size:4194304 Type:Unified Level:2}]}] Caches:[]}] CloudProvider:Unknown InstanceType:Unknown}
I1012 03:47:55.632350   23682 manager.go:165] Version: {KernelVersion:3.10.0-229.7.2.el7.x86_64 ContainerOsVersion:CentOS Linux 7 (Core) DockerVersion:1.7.1 CadvisorVersion:0.16.0}
I1012 03:47:55.632699   23682 server.go:402] Using root directory: /var/lib/origin/openshift.local.volumes
I1012 03:47:55.633269   23682 server.go:704] Watching apiserver
F1012 03:47:55.634191   23682 node.go:141] failed to create kubelet: Network plugin "redhat/openshift-ovs-subnet" not found.
origin-node.service: main process exited, code=exited, status=255/n/a
Unit origin-node.service entered failed state.

I may be missing something here, but we need a way of making sure no network plugin code gets run when launching the node service (to integrate with external SDN solutions such as Neutron). Maybe it's just a bug/oversight somewhere in the fact-gathering process? I'll admit to not being too familiar with Ansible and this codebase.

@sdodson
Copy link
Member

sdodson commented Oct 16, 2015

Sorry, I thought something else was already taking care of this. LGTM just rebase

@mfojtik
Copy link
Contributor

mfojtik commented Oct 19, 2015

@tomassedovic care to rebase? :)

@tomassedovic
Copy link
Contributor Author

Sorry. I'm sick, will do it tomorrow.
On Oct 19, 2015 11:36, "Michal Fojtik" notifications@github.com wrote:

@tomassedovic https://github.com/tomassedovic care to rebase? :)


Reply to this email directly or view it on GitHub
#664 (comment)
.

This is useful when we want to use a different networking solution
without having any networking plugin code run when the services start
up.
@tomassedovic
Copy link
Contributor Author

@sdodson @mfojtik sorry for the delay. Rebased.

@mfojtik
Copy link
Contributor

mfojtik commented Oct 20, 2015

[merge]

@mfojtik
Copy link
Contributor

mfojtik commented Oct 20, 2015

my powers are weak in this repo :-) @sdodson

mmahut added a commit that referenced this pull request Oct 20, 2015
Allow disabling the network plugin configuration
@mmahut mmahut merged commit 25354bb into openshift:master Oct 20, 2015
@mfojtik
Copy link
Contributor

mfojtik commented Oct 20, 2015

@mmahut ❤️

@tomassedovic
Copy link
Contributor Author

Thanks!

@tomassedovic tomassedovic deleted the disable-network-plugin branch October 20, 2015 11:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants