-
Notifications
You must be signed in to change notification settings - Fork 91
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
OSSM-2082 CNI installer now creates the net.d directory if necessary #638
Conversation
/test unit Argh, that flaky StatusManager test. |
/test istio-gencheck-2-3 |
@luksa Should we submit this upstream as well? |
This isn't needed in upstream, since they always install the plugin into the cluster's main net.d dir, which always exists. |
Well, the |
Earlier versions did create the directory, so this was actually removed in upstream. |
/test lint |
@luksa: The specified target(s) for
Use In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
/test integration-pilot |
@luksa: The specified target(s) for
Use In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
…Istio CNI (#688) * [cni] MAISTRA-2132 Support deployment of multiple plugin versions in Istio CNI (#271) Includes: * MAISTRA-2135 Add unit tests for our CNI binary-prefix work (#325) * MAISTRA-2137 Make network namespace setup executable name configurable (#273) To support the deployment of multiple CNI plugin versions, the name of the executable that is invoked to set up the network namespace must be configurable. * OSSM-1430: CNI: Watch for modified files with a prefix (#510) Because our CNI pod contains more than one container, and they write to the same directory, and they watch for changes on those directories, changes made by one container trigger the watch on the other, which will responde by copying the files to the directory, which will in turn trigger the watcher of the other container in an endless loop. This leads to high CPU usage on the node. This PR changes the logic to only monitor for files that have the desired prefix. Thus, for example, the 2.2 container will only react to changes to files whose names start with "v2-2". This avoid this race condition and achieve the same end result. * [cni] MAISTRA-2051 use correct UID/GID in istio-iptables * OSSM-2082 CNI installer now creates the net.d directory if necessary (#638) * fix(lint): replaces deprecated pkg io/ioutil * fix: reverts back to t.TempDir() calls Co-authored-by: Marko Lukša <marko.luksa@gmail.com> Co-authored-by: rcernich <rcernich@redhat.com>
In response to a cherrypick label: #638 failed to apply on top of branch "maistra-2.2":
|
…Istio CNI (maistra#688) * [cni] MAISTRA-2132 Support deployment of multiple plugin versions in Istio CNI (maistra#271) Includes: * MAISTRA-2135 Add unit tests for our CNI binary-prefix work (maistra#325) * MAISTRA-2137 Make network namespace setup executable name configurable (maistra#273) To support the deployment of multiple CNI plugin versions, the name of the executable that is invoked to set up the network namespace must be configurable. * OSSM-1430: CNI: Watch for modified files with a prefix (maistra#510) Because our CNI pod contains more than one container, and they write to the same directory, and they watch for changes on those directories, changes made by one container trigger the watch on the other, which will responde by copying the files to the directory, which will in turn trigger the watcher of the other container in an endless loop. This leads to high CPU usage on the node. This PR changes the logic to only monitor for files that have the desired prefix. Thus, for example, the 2.2 container will only react to changes to files whose names start with "v2-2". This avoid this race condition and achieve the same end result. * [cni] MAISTRA-2051 use correct UID/GID in istio-iptables * OSSM-2082 CNI installer now creates the net.d directory if necessary (maistra#638) * fix(lint): replaces deprecated pkg io/ioutil * fix: reverts back to t.TempDir() calls Co-authored-by: Marko Lukša <marko.luksa@gmail.com> Co-authored-by: rcernich <rcernich@redhat.com>
…Istio CNI (maistra#688) * [cni] MAISTRA-2132 Support deployment of multiple plugin versions in Istio CNI (maistra#271) Includes: * MAISTRA-2135 Add unit tests for our CNI binary-prefix work (maistra#325) * MAISTRA-2137 Make network namespace setup executable name configurable (maistra#273) To support the deployment of multiple CNI plugin versions, the name of the executable that is invoked to set up the network namespace must be configurable. * OSSM-1430: CNI: Watch for modified files with a prefix (maistra#510) Because our CNI pod contains more than one container, and they write to the same directory, and they watch for changes on those directories, changes made by one container trigger the watch on the other, which will responde by copying the files to the directory, which will in turn trigger the watcher of the other container in an endless loop. This leads to high CPU usage on the node. This PR changes the logic to only monitor for files that have the desired prefix. Thus, for example, the 2.2 container will only react to changes to files whose names start with "v2-2". This avoid this race condition and achieve the same end result. * [cni] MAISTRA-2051 use correct UID/GID in istio-iptables * OSSM-2082 CNI installer now creates the net.d directory if necessary (maistra#638) * fix(lint): replaces deprecated pkg io/ioutil * fix: reverts back to t.TempDir() calls Co-authored-by: Marko Lukša <marko.luksa@gmail.com> Co-authored-by: rcernich <rcernich@redhat.com>
…Istio CNI (#688) * [cni] MAISTRA-2132 Support deployment of multiple plugin versions in Istio CNI (#271) Includes: * MAISTRA-2135 Add unit tests for our CNI binary-prefix work (#325) * MAISTRA-2137 Make network namespace setup executable name configurable (#273) To support the deployment of multiple CNI plugin versions, the name of the executable that is invoked to set up the network namespace must be configurable. * OSSM-1430: CNI: Watch for modified files with a prefix (#510) Because our CNI pod contains more than one container, and they write to the same directory, and they watch for changes on those directories, changes made by one container trigger the watch on the other, which will responde by copying the files to the directory, which will in turn trigger the watcher of the other container in an endless loop. This leads to high CPU usage on the node. This PR changes the logic to only monitor for files that have the desired prefix. Thus, for example, the 2.2 container will only react to changes to files whose names start with "v2-2". This avoid this race condition and achieve the same end result. * [cni] MAISTRA-2051 use correct UID/GID in istio-iptables * OSSM-2082 CNI installer now creates the net.d directory if necessary (#638) * fix(lint): replaces deprecated pkg io/ioutil * fix: reverts back to t.TempDir() calls Co-authored-by: Marko Lukša <marko.luksa@gmail.com> Co-authored-by: rcernich <rcernich@redhat.com>
…Istio CNI (maistra#688) * [cni] MAISTRA-2132 Support deployment of multiple plugin versions in Istio CNI (maistra#271) Includes: * MAISTRA-2135 Add unit tests for our CNI binary-prefix work (maistra#325) * MAISTRA-2137 Make network namespace setup executable name configurable (maistra#273) To support the deployment of multiple CNI plugin versions, the name of the executable that is invoked to set up the network namespace must be configurable. * OSSM-1430: CNI: Watch for modified files with a prefix (maistra#510) Because our CNI pod contains more than one container, and they write to the same directory, and they watch for changes on those directories, changes made by one container trigger the watch on the other, which will responde by copying the files to the directory, which will in turn trigger the watcher of the other container in an endless loop. This leads to high CPU usage on the node. This PR changes the logic to only monitor for files that have the desired prefix. Thus, for example, the 2.2 container will only react to changes to files whose names start with "v2-2". This avoid this race condition and achieve the same end result. * [cni] MAISTRA-2051 use correct UID/GID in istio-iptables * OSSM-2082 CNI installer now creates the net.d directory if necessary (maistra#638) * fix(lint): replaces deprecated pkg io/ioutil * fix: reverts back to t.TempDir() calls Co-authored-by: Marko Lukša <marko.luksa@gmail.com> Co-authored-by: rcernich <rcernich@redhat.com>
…Istio CNI (maistra#688) * [cni] MAISTRA-2132 Support deployment of multiple plugin versions in Istio CNI (maistra#271) Includes: * MAISTRA-2135 Add unit tests for our CNI binary-prefix work (maistra#325) * MAISTRA-2137 Make network namespace setup executable name configurable (maistra#273) To support the deployment of multiple CNI plugin versions, the name of the executable that is invoked to set up the network namespace must be configurable. * OSSM-1430: CNI: Watch for modified files with a prefix (maistra#510) Because our CNI pod contains more than one container, and they write to the same directory, and they watch for changes on those directories, changes made by one container trigger the watch on the other, which will responde by copying the files to the directory, which will in turn trigger the watcher of the other container in an endless loop. This leads to high CPU usage on the node. This PR changes the logic to only monitor for files that have the desired prefix. Thus, for example, the 2.2 container will only react to changes to files whose names start with "v2-2". This avoid this race condition and achieve the same end result. * [cni] MAISTRA-2051 use correct UID/GID in istio-iptables * OSSM-2082 CNI installer now creates the net.d directory if necessary (maistra#638) * fix(lint): replaces deprecated pkg io/ioutil * fix: reverts back to t.TempDir() calls Co-authored-by: Marko Lukša <marko.luksa@gmail.com> Co-authored-by: rcernich <rcernich@redhat.com>
…Istio CNI (maistra#688) * [cni] MAISTRA-2132 Support deployment of multiple plugin versions in Istio CNI (maistra#271) Includes: * MAISTRA-2135 Add unit tests for our CNI binary-prefix work (maistra#325) * MAISTRA-2137 Make network namespace setup executable name configurable (maistra#273) To support the deployment of multiple CNI plugin versions, the name of the executable that is invoked to set up the network namespace must be configurable. * OSSM-1430: CNI: Watch for modified files with a prefix (maistra#510) Because our CNI pod contains more than one container, and they write to the same directory, and they watch for changes on those directories, changes made by one container trigger the watch on the other, which will responde by copying the files to the directory, which will in turn trigger the watcher of the other container in an endless loop. This leads to high CPU usage on the node. This PR changes the logic to only monitor for files that have the desired prefix. Thus, for example, the 2.2 container will only react to changes to files whose names start with "v2-2". This avoid this race condition and achieve the same end result. * [cni] MAISTRA-2051 use correct UID/GID in istio-iptables * OSSM-2082 CNI installer now creates the net.d directory if necessary (maistra#638) * fix(lint): replaces deprecated pkg io/ioutil * fix: reverts back to t.TempDir() calls Co-authored-by: Marko Lukša <marko.luksa@gmail.com> Co-authored-by: rcernich <rcernich@redhat.com>
…Istio CNI (maistra#688) * [cni] MAISTRA-2132 Support deployment of multiple plugin versions in Istio CNI (maistra#271) Includes: * MAISTRA-2135 Add unit tests for our CNI binary-prefix work (maistra#325) * MAISTRA-2137 Make network namespace setup executable name configurable (maistra#273) To support the deployment of multiple CNI plugin versions, the name of the executable that is invoked to set up the network namespace must be configurable. * OSSM-1430: CNI: Watch for modified files with a prefix (maistra#510) Because our CNI pod contains more than one container, and they write to the same directory, and they watch for changes on those directories, changes made by one container trigger the watch on the other, which will responde by copying the files to the directory, which will in turn trigger the watcher of the other container in an endless loop. This leads to high CPU usage on the node. This PR changes the logic to only monitor for files that have the desired prefix. Thus, for example, the 2.2 container will only react to changes to files whose names start with "v2-2". This avoid this race condition and achieve the same end result. * [cni] MAISTRA-2051 use correct UID/GID in istio-iptables * OSSM-2082 CNI installer now creates the net.d directory if necessary (maistra#638) * fix(lint): replaces deprecated pkg io/ioutil * fix: reverts back to t.TempDir() calls Co-authored-by: Marko Lukša <marko.luksa@gmail.com> Co-authored-by: rcernich <rcernich@redhat.com>
…Istio CNI (maistra#688) * [cni] MAISTRA-2132 Support deployment of multiple plugin versions in Istio CNI (maistra#271) Includes: * MAISTRA-2135 Add unit tests for our CNI binary-prefix work (maistra#325) * MAISTRA-2137 Make network namespace setup executable name configurable (maistra#273) To support the deployment of multiple CNI plugin versions, the name of the executable that is invoked to set up the network namespace must be configurable. * OSSM-1430: CNI: Watch for modified files with a prefix (maistra#510) Because our CNI pod contains more than one container, and they write to the same directory, and they watch for changes on those directories, changes made by one container trigger the watch on the other, which will responde by copying the files to the directory, which will in turn trigger the watcher of the other container in an endless loop. This leads to high CPU usage on the node. This PR changes the logic to only monitor for files that have the desired prefix. Thus, for example, the 2.2 container will only react to changes to files whose names start with "v2-2". This avoid this race condition and achieve the same end result. * [cni] MAISTRA-2051 use correct UID/GID in istio-iptables * OSSM-2082 CNI installer now creates the net.d directory if necessary (maistra#638) * fix(lint): replaces deprecated pkg io/ioutil * fix: reverts back to t.TempDir() calls Co-authored-by: Marko Lukša <marko.luksa@gmail.com> Co-authored-by: rcernich <rcernich@redhat.com>
…Istio CNI (maistra#688) * [cni] MAISTRA-2132 Support deployment of multiple plugin versions in Istio CNI (maistra#271) Includes: * MAISTRA-2135 Add unit tests for our CNI binary-prefix work (maistra#325) * MAISTRA-2137 Make network namespace setup executable name configurable (maistra#273) To support the deployment of multiple CNI plugin versions, the name of the executable that is invoked to set up the network namespace must be configurable. * OSSM-1430: CNI: Watch for modified files with a prefix (maistra#510) Because our CNI pod contains more than one container, and they write to the same directory, and they watch for changes on those directories, changes made by one container trigger the watch on the other, which will responde by copying the files to the directory, which will in turn trigger the watcher of the other container in an endless loop. This leads to high CPU usage on the node. This PR changes the logic to only monitor for files that have the desired prefix. Thus, for example, the 2.2 container will only react to changes to files whose names start with "v2-2". This avoid this race condition and achieve the same end result. * [cni] MAISTRA-2051 use correct UID/GID in istio-iptables * OSSM-2082 CNI installer now creates the net.d directory if necessary (maistra#638) * fix(lint): replaces deprecated pkg io/ioutil * fix: reverts back to t.TempDir() calls Co-authored-by: Marko Lukša <marko.luksa@gmail.com> Co-authored-by: rcernich <rcernich@redhat.com>
…Istio CNI (maistra#688) * [cni] MAISTRA-2132 Support deployment of multiple plugin versions in Istio CNI (maistra#271) Includes: * MAISTRA-2135 Add unit tests for our CNI binary-prefix work (maistra#325) * MAISTRA-2137 Make network namespace setup executable name configurable (maistra#273) To support the deployment of multiple CNI plugin versions, the name of the executable that is invoked to set up the network namespace must be configurable. * OSSM-1430: CNI: Watch for modified files with a prefix (maistra#510) Because our CNI pod contains more than one container, and they write to the same directory, and they watch for changes on those directories, changes made by one container trigger the watch on the other, which will responde by copying the files to the directory, which will in turn trigger the watcher of the other container in an endless loop. This leads to high CPU usage on the node. This PR changes the logic to only monitor for files that have the desired prefix. Thus, for example, the 2.2 container will only react to changes to files whose names start with "v2-2". This avoid this race condition and achieve the same end result. * [cni] MAISTRA-2051 use correct UID/GID in istio-iptables * OSSM-2082 CNI installer now creates the net.d directory if necessary (maistra#638) * fix(lint): replaces deprecated pkg io/ioutil * fix: reverts back to t.TempDir() calls Co-authored-by: Marko Lukša <marko.luksa@gmail.com> Co-authored-by: rcernich <rcernich@redhat.com>
…Istio CNI (maistra#688) * [cni] MAISTRA-2132 Support deployment of multiple plugin versions in Istio CNI (maistra#271) Includes: * MAISTRA-2135 Add unit tests for our CNI binary-prefix work (maistra#325) * MAISTRA-2137 Make network namespace setup executable name configurable (maistra#273) To support the deployment of multiple CNI plugin versions, the name of the executable that is invoked to set up the network namespace must be configurable. * OSSM-1430: CNI: Watch for modified files with a prefix (maistra#510) Because our CNI pod contains more than one container, and they write to the same directory, and they watch for changes on those directories, changes made by one container trigger the watch on the other, which will responde by copying the files to the directory, which will in turn trigger the watcher of the other container in an endless loop. This leads to high CPU usage on the node. This PR changes the logic to only monitor for files that have the desired prefix. Thus, for example, the 2.2 container will only react to changes to files whose names start with "v2-2". This avoid this race condition and achieve the same end result. * [cni] MAISTRA-2051 use correct UID/GID in istio-iptables * OSSM-2082 CNI installer now creates the net.d directory if necessary (maistra#638) * fix(lint): replaces deprecated pkg io/ioutil * fix: reverts back to t.TempDir() calls Co-authored-by: Marko Lukša <marko.luksa@gmail.com> Co-authored-by: rcernich <rcernich@redhat.com>
…Istio CNI (maistra#688) * [cni] MAISTRA-2132 Support deployment of multiple plugin versions in Istio CNI (maistra#271) Includes: * MAISTRA-2135 Add unit tests for our CNI binary-prefix work (maistra#325) * MAISTRA-2137 Make network namespace setup executable name configurable (maistra#273) To support the deployment of multiple CNI plugin versions, the name of the executable that is invoked to set up the network namespace must be configurable. * OSSM-1430: CNI: Watch for modified files with a prefix (maistra#510) Because our CNI pod contains more than one container, and they write to the same directory, and they watch for changes on those directories, changes made by one container trigger the watch on the other, which will responde by copying the files to the directory, which will in turn trigger the watcher of the other container in an endless loop. This leads to high CPU usage on the node. This PR changes the logic to only monitor for files that have the desired prefix. Thus, for example, the 2.2 container will only react to changes to files whose names start with "v2-2". This avoid this race condition and achieve the same end result. * [cni] MAISTRA-2051 use correct UID/GID in istio-iptables * OSSM-2082 CNI installer now creates the net.d directory if necessary (maistra#638) * fix(lint): replaces deprecated pkg io/ioutil * fix: reverts back to t.TempDir() calls Co-authored-by: Marko Lukša <marko.luksa@gmail.com> Co-authored-by: rcernich <rcernich@redhat.com>
…Istio CNI (#688) * [cni] MAISTRA-2132 Support deployment of multiple plugin versions in Istio CNI (#271) Includes: * MAISTRA-2135 Add unit tests for our CNI binary-prefix work (#325) * MAISTRA-2137 Make network namespace setup executable name configurable (#273) To support the deployment of multiple CNI plugin versions, the name of the executable that is invoked to set up the network namespace must be configurable. * OSSM-1430: CNI: Watch for modified files with a prefix (#510) Because our CNI pod contains more than one container, and they write to the same directory, and they watch for changes on those directories, changes made by one container trigger the watch on the other, which will responde by copying the files to the directory, which will in turn trigger the watcher of the other container in an endless loop. This leads to high CPU usage on the node. This PR changes the logic to only monitor for files that have the desired prefix. Thus, for example, the 2.2 container will only react to changes to files whose names start with "v2-2". This avoid this race condition and achieve the same end result. * [cni] MAISTRA-2051 use correct UID/GID in istio-iptables * OSSM-2082 CNI installer now creates the net.d directory if necessary (#638) * fix(lint): replaces deprecated pkg io/ioutil * fix: reverts back to t.TempDir() calls Co-authored-by: Marko Lukša <marko.luksa@gmail.com> Co-authored-by: rcernich <rcernich@redhat.com>
No description provided.