aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2020-09-18update the documentationsKuralamudhan Ramakrishnan11-525/+287
Signed-off-by: Kuralamudhan Ramakrishnan <kuralamudhan.ramakrishnan@intel.com> Change-Id: Iee2ed22a5002bffbd629188acf1ffcc60802c488
2020-09-18adding sfc demo with icn sdewan cnfKuralamudhan Ramakrishnan17-0/+1881
- vagrant is used to create 5 VMs master, minion01, minion02, TM1 and TM2 - node.sh enables nested VTx - README.md documentated all steps to bring up the sfc Signed-off-by: Kuralamudhan Ramakrishnan <kuralamudhan.ramakrishnan@intel.com> Change-Id: Id382f734dedb50354e7986fbf954663b374c1ff3
2020-09-18adding the example folderKuralamudhan Ramakrishan6-0/+915
- adding vlan and provider network Signed-off-by: Kuralamudhan Ramakrishnan <kuralamudhan.ramakrishnan@intel.com> Change-Id: Ic97c61b38b51a7391a4d4b1c2e918c6373bff3b4
2020-09-17adding centos 8 dockerfile for ovn & ovn4k8s-nfv imagesKuralamudhan Ramakrishnan4-11/+98
Signed-off-by: Kuralamudhan Ramakrishnan <kuralamudhan.ramakrishnan@intel.com> Change-Id: Ib161ea39fc6da9a7649142271a781b3140068d15
2020-09-17adding gwipaddress features in network annotationKuralamudhan Ramakrishnan6-12/+76
- check defautgateway is true only for one network - first network with defautgateway is only configured, rest is ignored - add node network and ovn4nfv0-* route info for eth0 interface Signed-off-by: Kuralamudhan Ramakrishnan <kuralamudhan.ramakrishnan@intel.com> Change-Id: I078dee22627b2fa92e34b6cc4fa2ec7c8cd58220
2020-09-17adding the sfc featuresKuralamudhan Ramakrishnan4-11/+164
- including the network/iface.go file - adding the default gw features in pod network namespaces - fixing insync message bug Signed-off-by: Kuralamudhan Ramakrishnan <kuralamudhan.ramakrishnan@intel.com> Change-Id: I9b595c5cae415cc594f7682f1ffdbdf6291ea909
2020-09-17Route based chainingRitu Sood12-46/+967
1) Adding controller for route based chaining 2) nfn agent code to insert route in container namespace 3) Calculate routes based on the Chaining Routes Based on the Ritu(ovn4nfv-k8s-plugin committer) patches Co-authored-by: Kuralamudhan Ramakrishnan <kuralamudhan.ramakrishnan@intel.com> Signed-off-by: Kuralamudhan Ramakrishnan <kuralamudhan.ramakrishnan@intel.com> Change-Id: I6757f269a5df7d98d650f273468c6ccbcc055d3e
2020-09-17Adding node interface, SNAT and OVN Node switch portKuralamudhan Ramakrishnan17-157/+592
- Adding nfn proto for node interface MAC and IP address - Adding node switch ports in NFN Operator - Adding grpc client in nfn agent to get mac and IP address for node interface - Adding feature to create Node interface with OVS internal port - Make sure pod controller requeue the pod request for empty node field in pod spec - Unique node interface name using SHA and maintain 15 charactor for OVS switch port - Adding SNAT for default interface in each node - Adding iptables modules for SNAT rules Signed-off-by: Kuralamudhan Ramakrishnan <kuralamudhan.ramakrishnan@intel.com> Change-Id: I6cfa36e45007e796eb651345f9f0751329defcf7
2020-09-17Adding cnishim and cniserverKuralamudhan Ramakrishnan15-361/+802
- inspired from ovn-kubernetes and sdn openshift - cniserver & cnishim concepts - removed cni binary to depend on the host ovs binary installation - encapsulated all the binaries within the ovn and ovs containers - ovn4nfv-k8s cni server run along with nfn-agent - cnishim act as the httpclient and cniserver as httpservers - cnishim wrap all the cni commands to cniserver - cniserver do the actual network pumping work and send result back to cnishim - cnishim print the results as per the cni spec requirement - currently supports only debian installation for ovn daemon - support for debian kernel installation - Consolidated all yaml into single ovn4nfv-k8s-plugin Signed-off-by: Kuralamudhan Ramakrishnan <kuralamudhan.ramakrishnan@intel.com> Change-Id: I1e2b114d90f717baa2ee94ff379c849d73b2754e
2020-09-17Adding the ovn containerizationAuthor Name4-21/+527
Referred multiple works on ovs and ovn ovs: https://github.com/openvswitch/ovs/tree/master/utilities/docker ovn: https://github.com/ovn-org/ovn/tree/master/utilities/docker ovn-kubernetes: https://github.com/ovn-org/ovn-kubernetes/tree/master/dist/images kube-ovn:https://github.com/alauda/kube-ovn/tree/master/dist/images Co-authored-by: Aliasgar Ginwala <aginwala@ebay.com> Signed-off-by: Kuralamudhan Ramakrishnan <kuralamudhan.ramakrishnan@intel.com> Change-Id: I3aee1a9f4ebce702ca22ec2ecba35463523af892
2020-09-17adding primary network featuresKuralamudhan Ramakrishnan10-405/+740
- adding docker build bugfixes - Removing the dependence on Multus - ovn4nfv-k8s CNI will be default or cluster networking - ovn4nfv-k8s creates ovn overlay mutli-networking using pod annotations itself - remove the outdated unit test Based on the Ritu(ovn4nfv-k8s-plugin committer) patches Change-Id: Ic48bd11d746e6339075fb3ba33f12463bb3f218d Co-authored-by: Ritu Sood <ritu.sood@intel.com> Signed-off-by: Kuralamudhan Ramakrishnan <kuralamudhan.ramakrishnan@intel.com> Change-Id: I9702bbd2d4aa23157052258ef6b363bc7b472a63
2020-03-26refactoring Dockerfilev0.1.0Kuralamudhan Ramakrishan1-10/+18
- building with latest golang version v1.14 - Removing the dependence of CI golang version Signed-off-by: Kuralamudhan Ramakrishnan <kuralamudhan.ramakrishnan@intel.com> Change-Id: Id1ddd154a5e5cf00937ed5adbb7cd8a90d800447
2020-03-26adding direct provider networkKuralamudhan Ramakrishnan11-168/+811
- update nfn.proto - update direct provider network crd and apis - modified nfn-agent to include the direct provider network - modified nfnNotify server to include the direct provider network Change-Id: I9c2d4cc62178088c8908c50c2b734772ed7f99f4 Co-authored-by: Ritu Sood <ritu.sood@intel.com> Signed-off-by: Kuralamudhan Ramakrishnan <kuralamudhan.ramakrishnan@intel.com>
2020-03-16Merge "Update Readme"Trinath Somanchi1-21/+101
2020-03-16Merge "Update Dockerfile for nfn-agent"Trinath Somanchi2-1/+7
2020-03-16Merge "Set vlan interface up"Trinath Somanchi1-0/+5
2019-12-29Adding generated code for service chainingRitu Sood16-21/+1008
API and generated code for route based chaining CRD Change-Id: I631ec38c08c76059f6e742c5c241763b33597bd4 Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-12-26Update Dockerfile for nfn-agentRitu Sood2-1/+7
Change-Id: Id6091d5a439eff3cde1ac0eeb4cb4541206c955e Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-12-26Set vlan interface upRitu Sood1-0/+5
Change-Id: I5b9467755b1a996febfa25dbcac14d9786ab58a8 Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-11-20Add Provider Network CRD controllerRitu Sood4-3/+236
CRD controller watches for Provider Network CR's and sends messages to all the nodes that needs to be configured for provider network, if subsribe message was already received from the agent running on the node. Change-Id: Idc3e2703a309113b325a2fb7c8eb244a02babeb3 Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-11-20nfn agent for configuring nodesRitu Sood2-1/+217
nfn-agent runs on all nodes in cluster and on starting subscribes for notifications from gRPC server and waits for message to configure provider network by adding vlan interface and ovs-bridge on the node Change-Id: Ibec7d0fda28db7b444900e13c705d15cf012aa48 Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-11-20Update OVN utils to add provider network supportRitu Sood4-41/+284
Currently provider networks support only VLAN based networks. Added functions for VLAN and ovs bridge. Change-Id: I63ac7266aac92021ee3a44f49644a8a79ce4fed6 Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-11-15Merge "Add a check for network creation"Trinath Somanchi1-3/+2
2019-09-29Adding gRPC proto and serverRitu Sood8-14/+904
gRPC server is required to send updates to nfn-agent running on all the nodes in the cluster, to setup provider networks as defined in the provider network CR. This patch includes proto file and generated code along with gRPC server code Change-Id: I891629d84932ae662ba7545ebfe4d9921448fdc1 Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-09-29Add a check for network creationRitu Sood1-3/+2
If network already exists consider that as not an error Change-Id: I279338e6e4d6f6ad0d7417bcabbd3f2027ff808e Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-09-27Add Generated code for CRDRitu Sood27-0/+2017
Adding generated code for Network and Provider Network CRD. Change-Id: Iff21107807ba1b5d5aafc3a756edc38c70003332 Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-09-25Update ReadmeRitu Sood1-21/+101
Updating readme to reflect new functionality Change-Id: I54c2a024a74c142b854bde8a4eeb1fb5a1a49a84 Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-08-29Add check for annotation presenceRitu Sood2-5/+3
If annotation is found on pod then pod is already processed, stop processing. This is different from "Failed to add ports" error. Change-Id: I101df641c150e007146bc1aeda9c5b372be329ca Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-08-16Add CRD Controller for NetworkRitu Sood8-33/+357
Add CRD controller functionality for Network creation and deletion. Related generated code is uploaded in patch: https://gerrit.opnfv.org/gerrit/#/c/ovn4nfv-k8s-plugin/+/68324/ Change-Id: Ibd3e652edc56aa1084f684438597e1b978977bbf Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-08-16Add types and generated code for CRDsRitu Sood13-5/+1063
Adding Network CRD and Provider Network CRD generated code as per the spec. https://wiki.onap.org/display/DW/K8s+Plugin+Network+Related+CRD%27s+for+R5 Change-Id: If75885205830cf2cef197754ea8f00b61095a4a1 Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-08-15Use controller runtime and operator sdkRitu Sood22-1529/+1447
Changing the framework to use controller runtime and operator sdk. This allows to add CRD controllers for Network, Provider Network etc in the same operator. Binary renamed to nfn-operator (Network funtion networking). Change-Id: Ic25a3c3f5f1418fc0614f3aede48b41d9c1156cd Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-07-30Consolidate OVN related code under ovn dirRitu Sood8-446/+353
This patch is a cleanup patch and doesn't introduce any fuctionality changes. Includes removing of unused code and rearranging code. Change-Id: Idf4a36e09a6d5c200cf191c995184076ffa0326d Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-07-11Fix build issue for go 1.12.5Ritu Sood2-1/+3
Build fails on go 1.12.5 Change-Id: I7f66e84ebaa3b105ca500426f2ee3851b56541e7 Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-06-07Fix for format issuesRitu Sood5-140/+139
No code change made. Only corrected the formatting of some files. Change-Id: I1ccb4a0fddcc65bd7d3f93312c5417e7830fed5a Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-03-26Add unit test caseRitu Sood1-0/+163
Adding unit test for config package Change-Id: I6897ac91f3ad55d2e48a0ab9255b224782fef5a5 Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-03-13Merge "Add Routes to Pod"Trinath Somanchi3-1/+151
2019-03-07Fix unit test failureRitu Sood1-4/+1
Updating unit test for matching the changes in another patches Change-Id: I1a6d7ecf00261a4a7b7514b45456f6ac17993d2e Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-03-07Merge "Code cleanup"Trinath Somanchi4-96/+13
2019-03-07Merge "Fixed missing external-ids"Trinath Somanchi1-1/+5
2019-03-05Add support for Provider network interfaceRitu Sood3-19/+110
To support provider networks added a new netType "provider". Static IP address required for provider network interface. Change-Id: I40f508ead2eefc352b735c6d4773d20fa821769a Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-02-27Fixed missing external-idsRitu Sood1-1/+5
Adding external-ids in static IP address port creation to match dynamic address port creation. Used to delete port etc. Change-Id: Ied6b1ae5091559ba4a593e34dd72cfaa067f44ab Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-02-17Add Routes to PodRitu Sood3-1/+151
Based on Pod annotations list ovnNetworkRoutes routes are added to the Pod namespace Change-Id: If6b8b6375d798dcbd45e51ccd5adae4b24369c5c Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-02-17Code cleanupRitu Sood4-96/+13
Remove unused options & function parameters from config Change-Id: Id4342cc149e6f8c3c83b6116bc38a893b28f25a4 Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2019-01-24Update Readme fileRitu Sood1-58/+106
Change-Id: Id38ef2e96379ad2a25b639aa7cff6d501ae75342 Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2018-11-20Seed code for the PluginRitu Sood30-165/+3337
The code includes ovn4nfvk8s Plugin & CNI. It implements multiple OVN interfaces for Pods and assumes Multus (or similar CNI) calls its CNI not as first CNI. Change-Id: I524c1d18752eb6dbc8d34addd3b60d5bbaa06ff4 Signed-off-by: Ritu Sood <ritu.sood@intel.com> Signed-off-by: Victor Morales <victor.morales@intel.com>
2018-11-03Initial check-inRitu Sood10-0/+184
Adding readme.rst and empty directory structure for the project Change-Id: I483caca5b14481b970a0716bd74c11ef5b3f2158 Signed-off-by: Ritu Sood <ritu.sood@intel.com>
2018-10-02Initial empty repositoryTrevor Bramwell0-0/+0