Adrian Chiris
2796202d8c
Add infinibandGUID runtime config to delegate netconf
...
This commit extend the various network conf methods
to translate `infiniband-guid` network attachment configuration
to `infinibandGUID` CNI runtime config.
- Update relevant methods in types package
- Update unit tests
2020-06-26 14:55:21 +09:00
Tomofumi Hayashi
c976f6bceb
Add deviceid in clusterNetwork
2020-05-28 10:00:29 +09:00
Tomofumi Hayashi
4eac660359
Introduce gopkg.in for go module
...
This change introduces gopkg.in to allow everyone to use multus
code as library. Currently multus-cni uses version 'v3', hence
it hits go modules limitation, as #504 describes.
This change fix #504 with gopkg.in.
2020-05-15 21:33:26 +09:00
dougbtv
92beb4bcdc
Sets the Kubernetes API calls timeout to 60 seconds
2020-04-23 10:47:11 +09:00
dougbtv
931c12531d
Allows namespaceIsolation to allow pods in any namespace refer to the default namespace
2020-04-22 09:08:11 +09:00
ashish-billore
ea95133ef4
Error log for network-attachment-definition
...
Corrected the error for missing network-attachment-definition
updated test for this error.
2020-04-02 17:40:32 +09:00
Tomofumi Hayashi
055a7568ad
Logging improvement (UID, net-attach-def)
...
This change adds pod UID and net-attach-def name in verbose log
and sends kubernetes event when net-attach-def is not found.
2020-03-23 21:32:33 +09:00
Tomofumi Hayashi
079c853eba
Add Kubernetes event log when the pod is launched
2020-03-16 22:08:03 +09:00
Tomofumi Hayashi
9874c14e23
Replace multus code with NPWG client library code
2019-12-10 14:38:09 +09:00
Tomofumi Hayashi
f4f2f65d1d
Use NPWG client library to manipulate net-attach-defs
...
This change introduce NPWG client library functions to manipulate
net-attach-defs. This also requires to change k8sclient and unit
test code as well.
2019-12-10 14:38:09 +09:00
dougbtv
3a9dd7ed76
Properly uses default-route in annotation to set the gateway. Fixes network status results.
2019-10-29 13:34:24 -04:00
Tomofumi Hayashi
165e23b72c
Support gateway in NetworkSelectionElement
...
Changes config JSON from gateway to default-route, adds Readme, fixes lint
Co-authored-by: dougbtv <dosmith@redhat.com >
2019-10-29 13:34:24 -04:00
Tomofumi Hayashi
8bdb7104d7
Update k8s npwg repo name due to its change
2019-10-29 09:06:27 -04:00
Tim Rozet
3fbfe40e12
Fixes K8sNetworkPlumbingWG package capitalization
...
Migrates package to use capitalized name, also cleans up dependencies.
Signed-off-by: Tim Rozet <trozet@redhat.com >
2019-10-21 10:42:49 -04:00
Tim Rozet
e8baccff16
Removes duplicate NetworkAttachment CRD ref
...
The CRD is now defined in the NetworkPlumbingWG org, along with
generated libs for client, listers, informers, and deep copy functions.
Therefore remove the duplicate definition here, and use the standard
definition.
Signed-off-by: Tim Rozet <trozet@redhat.com >
2019-10-21 10:42:49 -04:00
Tomofumi Hayashi
2745e46ed8
Support 'cni-args' in NetworkSelectionElement
2019-10-21 21:33:07 +09:00
Tomofumi Hayashi
adec211ae1
Support CNI RuntimeConfig for portmap/bandwidth/ip/mac
...
This changes introduce CNI RuntimeConfig for portmap, bandwidth,
ip and mac for latest specification. IP and Mac is previously
applied through CNI_ARGS, but it is changed to RuntimeConfig
for now.
2019-10-16 09:20:11 -04:00
Tomofumi Hayashi
0a2f7b18d3
Improve error/debug message
...
This diff changes error message with fixed format for easy-to-read
for users.
2019-10-10 10:32:45 -04:00
Tomofumi Hayashi
05df28a58c
Remove UnmarshalJSON() for NetworkSelectionElement ( #362 )
...
To support non-string variable in NetworkSelectionElement, remove
UnmarshalJSON(). interfaceRequest json is still supported in the
changes.
2019-08-22 11:19:06 -04:00
Tomofumi Hayashi
2fe42c11c7
Fix golint error and make it enable again in travis
2019-06-26 09:30:46 +09:00
Abdul Halim
d3c92b4aa2
add kubelet client for Pod resource info
...
This change introduces kubelet client to get allocated device
information of a Pod from newly added Kubelet grpc service.
For more information please see:
[kubernetes/kubernetes#70508 ](https://github.com/kubernetes/kubernetes/pull/70508 )
Change-Id: I11e58ccdd52662601f445fa24c7d55c225441efc
Signed-off-by: Abdul Halim <abdul.halim@intel.com >
2019-03-22 09:50:53 -04:00
maximshd
08a2623b8e
Properly initialize kubeClient in SetNetworkStatus method ( #283 )
...
* Properly initialize kubeClient in SetNetworkStatus method
* Fix typo
* Update error message
* Extend logging for setNetworkStatus function
2019-03-20 08:08:48 -04:00
Tomofumi Hayashi
5dc774a547
Caches all pod delegates json for pods deletion without k8s info
...
This fixes #243 with following changes:
+ Optimize to fetch Pod from k8s client
+ Change to use cache always in DEL.
+ If failed to fetch the pod info from k8s clinet in deletion,
use cached delegates as emergency bailout
+ Add test cases for cache
2019-03-07 23:50:07 +09:00
Tomofumi Hayashi
260316398f
Change ClusterNetwork/DefaultNetwork namespace to MultusNamespace
...
Fix #261 .
2019-02-22 14:08:30 +00:00
Doug Smith
8bf358071a
Changes configuration for kube api to use gRPC
2019-02-21 14:42:57 +00:00
Tomofumi Hayashi
f0bc4fb475
Add multusNamespace/systemNamespaces config
...
This change provides new configuration parameters, multusNamespace
and systemNamespaces for flexible namespace management.
The change addresses issue #252 and issue #253 .
2019-02-08 00:25:35 +09:00
knight
66595e8172
refactor k8sclient: rename some val
2019-01-25 09:54:53 +08:00
dougbtv
de4bed7a60
[feature] Adds a namespace isolation security feature
2018-12-20 06:43:59 +09:00
Michal Rostecki
f157f424b5
k8sclient: Add missing error check
...
Before this change, error returned by `libcni.ConfFiles` was
silently ignored.
Signed-off-by: Michal Rostecki <mrostecki@suse.de >
2018-12-06 23:56:24 +09:00
Tomofumi Hayashi
6bf296f54d
Change the namespace to 'kube-system'
2018-12-05 14:47:30 +09:00
Tomofumi Hayashi
e05de6260b
clusterNetwork/defaultNetworks and namespace spec fixed
...
This fix is to add declaration about clusterNetwork/defaultNetwork
net-attach-def is in 'default' namesspace. In addition, this code
changes to skip defaultNetwork in case of 'kube-system' namespace
as well (#202 ).
2018-12-05 14:47:30 +09:00
Peng Liu
96217dd16e
Change pod annotation name to 'v1.multus-cni.io/default-network'
2018-11-30 16:11:09 +09:00
Peng Liu
c3be74d7d6
Add more debug message
2018-11-30 16:11:09 +09:00
Peng Liu
555a734e21
Specify Pod default network in Annotations
...
Signed-off-by: Peng Liu <pliu@redhat.com >
2018-11-30 16:11:09 +09:00
Tomofumi Hayashi
9f00ea47f5
Fix rebase conflicts.
2018-11-09 00:15:35 +09:00
Tomofumi Hayashi
deb2f2f64c
Support MacRequest to specify MAC address for interface
2018-11-09 00:15:35 +09:00
Tomofumi Hayashi
8b94703a4c
Add clusterNetwork/defaultNetwork into multus
...
To support CRD/file/directory, add clusterNetwork/defaultNetwork
in multus.conf file.
2018-11-02 22:54:39 +09:00
Tomofumi Hayashi
4b231c6855
Add unit tests for clusterNetwork/defaultNetworks
2018-11-02 22:54:39 +09:00
Tomofumi Hayashi
5871c8744a
Add clusterNetwork/defaultNetwork into multus
...
To support CRD/file/directory, add clusterNetwork/defaultNetwork
in multus.conf file.
2018-11-02 22:54:39 +09:00
Abdul Halim
68da5dfb0d
fixed some typos in comments
...
Change-Id: Ieb650479b6b0fef1a4ecaeb2c3c1a7c15fff43d5
2018-10-10 11:52:58 +01:00
Abdul Halim
6e6c4c6cea
refactoring checkpoint.go code to be testable
...
this changes will allow mocking checkpoint instance for unit tests
Change-Id: I72fb25d15d5c9f28577a0fcbfcd385df523a5e57
2018-10-10 11:52:58 +01:00
Abdul Halim
632804ce51
only create resourceMap on demand
...
making resourceMap a singleton object and only initialize it once
if one or more CRDs have a resourceName annotation in them.
Added copyright header for checkpoint/checkpoint.go.
Replaced fmt.Errorf with logging.
Change-Id: I54628d69324833e70a75dcf6533e6642dedde9b5
2018-10-10 11:52:58 +01:00
Abdul Halim
e3d14b2732
parse kubelet checkpoint file for pod devices
...
Enabling kubelete checkpoint file parsing to get Pod device info
so that these device information can be passed into CNI plugins
that need specific device information to work on.
Change-Id: I6630f56adc0a8307f575fc09ce9090c1ffca0337
2018-10-10 11:52:58 +01:00
Tomofumi Hayashi
517f2d4b7a
Revert "Merge branch 'dev/k8s-deviceid-model' into master"
...
This reverts commit 194c27fadf
, reversing
changes made to 96d4d79d1f
.
2018-08-30 20:15:30 +09:00
Abdul Halim
194c27fadf
Merge branch 'dev/k8s-deviceid-model' into master
2018-08-30 10:48:18 +01:00
Tomofumi Hayashi
7d3626a5c0
Add logging message for debug/error
...
This changes adds logging message:debug and error. fmt.Errorf() is
wrapped by logging.Errorf() hence all error message is also put to
log file. logging.Debugf() is called at almost function call, so
we could track the code by logging message.
2018-08-17 00:43:31 +01:00
Abdul Halim
f30c688775
added deviceIDs insertions into delegates
...
this changes allow Multus to parse resourceName annotation from
network CRDs then add deviceIDs into the delegate object for CNI
plugin to consume it.
2018-08-03 13:51:46 +01:00
Kuralamudhan Ramakrishnan
88759d29de
updating nitpick issues in the source file.
2018-08-01 16:03:25 +01:00
rkamudhan
d71fe3447f
fixing multus runtime error for network status without pod network annotation
2018-08-01 16:03:25 +01:00
rkamudhan
8bb09518df
adding network status features
2018-07-30 14:58:30 +01:00