Граф коммитов

186 Коммитов

Автор SHA1 Сообщение Дата
Evan Baker 030a522c7a
fix: lint changes vs the default branch only (#902) 2021-06-21 14:34:26 -07:00
Mathew Merrick ae9aedcfdf
[CNI] Parse CNI version in CNI client (#899)
* get CNI version

* update makefile to produce cni-manager image

* return proper type
2021-06-18 10:20:03 -07:00
Evan Baker 5e534da4bf
feat: add golangci to build tools (#896)
Signed-off-by: Evan Baker <rbtr@users.noreply.github.com>
2021-06-14 13:08:26 -05:00
Mathew Merrick b09ca83ef7
[CNI] Add GET_ENDPOINT_STATE command to dump CNI state to stdout (#891)
* inital dump state and ipam interface update

* add reconcile command to CNI

* add integration test

* pass endpoint id on add

* address some feedback

* fix test path and linting

* address feedback and logging

* remove return and rename to PodEndpointID
2021-06-11 14:01:42 -07:00
Evan Baker 16b3645937
feat: add more status fields to the nodenetworkconfig: status, allocated IPs, subnets (#889)
Signed-off-by: Evan Baker <rbtr@users.noreply.github.com>
2021-06-04 11:57:33 -05:00
Pengfei Ni de466f58e7
feat: add multi-tenant NetworkContainer controller (#876) 2021-06-03 20:49:00 -07:00
Evan Baker ee7538cf5f
chore: update to go1.16 (#887)
* chore: update to go1.16 for embed
* chore: update github.com/docker/libnetwork dependency to fix logrus package casing issue
* feat: move build-time binary dependencies to build/tools and compile locally

Signed-off-by: Evan Baker <rbtr@users.noreply.github.com>
2021-06-03 11:18:21 -05:00
Evan Baker 7f2cfc7b74
feat: use go mod to download tools like controller-gen (#884) 2021-05-28 11:34:04 -05:00
Mathew Merrick 3bc1a1f00e
[CI] Add Cyclonus to merge validation (#860) 2021-05-04 23:51:45 -07:00
Mathew Merrick d929d1acb0
chore: Specify CI build pool name (#841)
* Specify pool name
2021-04-13 11:00:49 -07:00
Paul Johnston 9365272a02
Aks swift test update (#838)
* AKS-Swift-test update to use underlay in runners sub
2021-04-02 13:24:01 -07:00
msvik 28cf37bc9d
CNI changes to support baremetal scenario (#835)
* Modify CNI for windows baremetal scenario in Azure

* Fix the CNI result for baremetal case

* Addressed PR comments from Tamilmani and Ramiro

* Remove azure-telemetry.exe from cni-baremetal package

* Fix formatting in logging

* Addressed Ramiro's PR review comments

* Formatting fix in printf

Co-authored-by: VK <abc@gmail.com>
2021-03-26 10:28:42 -07:00
Mathew Merrick fe66f5b03e
[build] Makefile update to generate image tarballs in artifacts (#804)
Consolidate CNS docker files into 1 only, and output docker images to neat images directory as part of build for release purposes
2021-03-25 14:08:02 -07:00
Mathew Merrick d78002d3c0
[build] Update pipeline and enable debug symbols in bins (#793)
* add symbols, add gcflags, update timeouts, only show azure core errors
2021-02-23 12:58:49 -08:00
Mathew Merrick 73ae4e0325
chore: update tools directory and deployments (#779) 2021-02-09 17:56:37 -08:00
Mathew Merrick 39c9ad3a72
test: Add Swift Testing Pipeline (#712)
* Add new Swift test scenarios
2021-01-20 11:00:32 -08:00
Paul Johnston c3aa60f7f9
chore: updating the base cnms image to reach compliance (#759)
* chore: updating the base cnms image to reach compliance
2020-12-23 15:00:33 -08:00
Paul Johnston fb3481ded3
Show codecoverage for entire repo (#754)
* test: include all packages in code coverage report
2020-12-16 13:25:15 -08:00
Mathew Merrick 2bb1fd9af5
fix: Move acncli to hack and update error message (#748)
* fix: update acncli error message

* fix: acncnli move to hack
2020-12-10 18:06:53 -08:00
Mathew Merrick c499075742
chore: Update pipeline yaml, replace hardcoded registries to env's (#744)
* fix: replace hardcoded image env's to env's
2020-12-02 11:26:08 -08:00
Mathew Merrick 3eb5f3cb1f
feat: produce Azure CNI Swift tarball (#711) 2020-10-29 10:32:21 -07:00
Mathew Merrick 7bd8a2644d
Add "acn" cli tool to install and manage Azure CNI (#688)
* tail azure-vnet.logs

* dockerfile update

* installer fixes

* remove external deps

* move to cli design

* manager cmd

* update vendor

* minor fixes

* logs

* update makefile

* Update manager-master.yaml

* Update manager-agent.yaml
2020-10-20 14:00:40 -07:00
Mathew Merrick 41232c134d
CNI using CNS IPAM (#597)
* Configure CNI to use CNS IPAM
2020-09-29 14:43:19 -07:00
neaggarwMS de95ffc399
Pass HostInterface PrimaryIP info to CNI (#662)
* Pass HostPrimaryInterface details to CNS
2020-08-21 14:04:50 -07:00
Paul Johnston 1d02a91420
Dockerfile for cns container (#636)
* CNS dockerfile for Aks Swift
2020-07-31 11:34:50 -07:00
Mathew Merrick dc37410502
Pipeline update (#627)
* pipeline update

* dockerfile update

* ipset update
2020-07-23 23:21:49 -07:00
neaggarwMS 8b14462489 Removed example directory 2020-07-23 08:40:13 -07:00
neaggarwMS 9d6a137de0 Fix build 2020-07-23 08:40:13 -07:00
neaggarwMS 8a32ddc462 Run the complete unit test suite in CNI 2020-07-17 12:26:19 -07:00
neaggarwMS 8e073e5f94 Enable restserver tests, commented faulty tests for now 2020-07-17 12:26:19 -07:00
Mathew Merrick 644642b100
CNS IPAM for CNI (#584)
* Add IPAM to CNS for CNI
2020-07-13 17:37:49 -07:00
Paul Johnston a15ff461c6
Request controller for CNS (#583)
* NewRequestController and StartRequestController

* Making Start Manager in go routine

* Lookup HOSTNAME env var

* Adding cnsipaminterface.go

* Created requestController interface and implemented updating CRD

* fix windows 1903 test apimodel.json (#585)

* Avoiding redundant calls into cns by only watching for status updates in reconcile loop, ignoring spec updates in reconcil loop. Also adding ability for updating CRD spec through k8sRequestController methods

* fixing comments

* Cleaned up code and added more comments

* Made client interface for testing purposes and changed structure of files to be less folder-y

* Addressed comments from Paul Miller and Wei

* Beginning unit tests

* Finished unit tests

* Fixing pipeline issues

* found issue, fixed HOSTNAME environment variable dependency

* review changes requested

* more review changes

* Addressed changes from yesterday's review

* Changing makefile line to run correct package

* Addressed Matt Long's suggestions

Co-authored-by: Mathew Merrick <matmerr@users.noreply.github.com>
2020-07-02 11:42:59 -07:00
PrIce Qian 7b5e817bd8
Improving and adding CNI unit tests (#543)
* Add ipam/pool_test.go & add network/*test.go

* add testing ./network/ in Makefile

* fix context
2020-06-26 14:16:45 -07:00
Mathew Merrick 9f3478f828
Add codecov.yml (#559)
* add codecov.yml

* add race flag to tests

* make covermode atomic
2020-05-09 08:19:37 -07:00
tamilmani1989 6ac5e8c9f0
CNI Ipv6 Dualstack Support (#538)
* added cniv6 plugin

* cni ipv6 base framework

* removed unwanted changes

* added ipv6 change

* added cni ipv6 changes

* drop neighbor discovery messages to other VMs

* fixed issues

* fixed unit tests

* fix nil dereference

* addressed comments

* ipv6 fixes and changes

* addressed comments
2020-04-15 22:30:48 -07:00
Jaeryn 38dc38e898
Move NPM from dep to go mod (#539)
* Moving NPM to use gomod

* Vendoring via go mod

* add more npm tests

* remove go dep specific commands

* adding pipeline changes
2020-04-06 16:18:17 -07:00
Mathew Merrick d2ba9bb2f3
IPv6 Node IPAM (#532)
* switch to go mod

* pull node spec from apiserver

* carve v6 addresses

* address pool

* update go mod vendor

* build image

* build image

* build image

* separate go mod for npm

* add manager ipv6 ipam test

* added comments and addressed feedback

* address comments

* address comments

* address comments

* check if loaded

* address comments

* update pipeline

* update pipeline

* update test message

Co-authored-by: Ubuntu <azureuser@k8s-agentpool1-23761303-0.2w0jm2xwiahebmp33klngrlq1d.xx.internal.cloudapp.net>
2020-04-02 11:01:05 -07:00
Paul Johnston 17e2c7d404
Adding network monitor capabilities for prerouting and postrouting ebrules (#527)
* About to take debugging comments out

* Removed debugging statements and tested again

* Removed more debugging statements and unused method

* Made changes suggested by Tamilmani, tested again.

* Made spacing changes suggested by Tamilmani

* Triggering new tests to run
2020-03-18 14:02:31 -07:00
tamilmani1989 a151c83894
AITelemetry support for CNS (#455)
* Added logger package for CNS

* added aitelemetry for cns

* Added AI Telemetry for CNS

* added respective folders in makefile and added config file

* added all config fields

* addressed review comments

* removing repetitive log

* logged configpath

* reverted to keep old telemetry channel and pulled new ai package

* removed unwanted logs..added log file
2020-01-24 13:29:52 -08:00
Jaeryn df012bcd1f
Adding AI metrics for NPM (#475)
* Adding AI metrics for NPM

* addressing tamilmani's comments
2020-01-23 13:52:30 -08:00
tamilmani1989 2d619b78fe
AppInsightTelemetry support for CNI (#458)
* Added AITelemetry support for CNI

* added new files

* added other configs in config file

* fixed ut

* updated disableall similar to cns

* added container name to report

* addressed review comments

* addressed review comments

* added check for azure environment

* added log

* close log handle in unit test

* addressed review comments

* addressed review comments

* fixed a condition

* keep the netagent channel for logs

* fixed error

* addressed review comments
2020-01-14 14:53:24 -08:00
Jaeryn f4a5dcbffa
add build and publish image capabilities for cns (#471) 2020-01-06 16:11:52 -08:00
Ashvin Deodhar cd236e1f59
Publish/Unpublish Network Containers via CNS (#430)
Expose 2 APIs to publish and unpublish network containers from CNS.
a. PublishNetworkContainer
b. UnpublishNetworkContainer

DNC calls CNS to publish and unpublish the network containers.
2019-11-13 18:07:36 -08:00
Ashvin Deodhar 84fb35b545
Add Host NC communication support in Windows with HnsV2 (#424)
This PR adds support for host NC bidirectional communication with windows HnsV2. This is supported in multitenant scenario only. AllowHostToNCCommunication and AllowNCToHostCommunication flags are used to enable Host to NC and NC to host communication respectively.
2019-10-18 13:12:03 -07:00
tamilmani1989 e0605e90f6
added application insights telemetry package to send metrics and logs (#421)
* added application insights telemetry package to send metrics and logs to appinsights

* moved a function common to both packages
acquired a lock before writing to file

* added read write lock as per chandan comment. Addressed jaeryn comments

* fixed telemetry unit test

* defined interface and added appinsights package as vendor to acn

* added vendor package.go(appinsights)

* dependencies of appinsights

* added AI dependencies

* updated unit tests

* addressed review comments
2019-10-16 13:08:42 -07:00
Ashvin Deodhar df4f226aaa
Optimize call flow to complete loopback adapter creation (#408)
Loopback adapter creation operation comprises of two operations - createInterface and setWeakHostOnInterface. These operations take place inside the lock. If there are simultaneous requests, it interleaves these calls causing every loopback adapter creation to absorb the delay due to interleaving. createInterface can take time in seconds (typically 2 to 7 seconds based on the tests) while setWeakHostOnInterface finishes very quickly ( less than a second ). This change calls setWeakHostOnInterface within the same lock if createInterface succeeds. The tests show this improves the loopback adapter creation times for simultaneous requests.
2019-09-30 10:19:43 -07:00
jaer-tsun 65f7869c60
Fixing full image name to push to MCR. (#409) 2019-09-26 20:18:19 -04:00
jaer-tsun 149062dbcd
Create and push images to ACR instead of dockerhub (#406) 2019-09-26 14:07:50 -04:00
Mathew Merrick c44e775344
NPM test fixes + Azure Pipelines (#402)
Initial Azure Pipelines config, run pipeline tests in container, CNM and NPM fixes
2019-09-20 16:15:08 -07:00
tamilmani1989 b027258240
Enable IP forwarding for Linux mulititenancy (#386)
* Enable ipforwarding, prevent ip spoofing and other security concern

* added ovssnat test to circleci

* fixed compiler error

* updated circleci image

* fixed circleci yaml

* updated circleci image

* fixed UT

* fixed UTs

* addressed review comments

* added comments

* addressed review comments

* fixed UT

* separating PRs - removing ip spoofing check changes

* added document for describing multitenancy fields

* fixed docs/cnimultitenancy.md

* removed a condition as it seems to be not working
2019-08-20 14:06:36 -07:00
Yongli Chen f6bff8e3af
change telemetry to message queue and add npm (#366)
* change telemetry to message queue and add npm

* remove [Azure-NPM] prefix

* remove npmreport url

* fair scheduling

* holds up to 1k reports for each type

* fix cap on reports
2019-06-19 14:08:35 -07:00
tamilmani1989 a11d5104a0
Config support for Telemetry service (#317)
* 1. Start telemetry service as separate process for all components cns/networkmonitor
2. Added telemetry config through which we can configure reportTohost interval
3. Added unit tests for changes

* added new files for telemetry testing

* added tests for invalid cases

* updated with dummy subid
2019-03-25 14:12:32 -07:00
Tamilmani Manoharan 4055fa9f51 Added support for CNI telmetry report to mds 2019-02-01 16:24:45 -08:00
Tamilmani Manoharan 63a4d0f469 temp changes 2019-01-22 17:07:32 -08:00
tamilmani1989 9a9c2cd8d4 Added support for InfraVnet connectivity in multitenancy CNI (#234)
* Added infravnet connectivity support for multitenancy CNI
2018-08-18 14:50:49 -07:00
Yongli Chen 8620eacfc6 smooth build process (#208) 2018-07-21 13:15:04 -07:00
Yongli Chen 7980d33666 build image inside build container (#204) (#205) 2018-07-20 16:42:23 -07:00
Yongli Chen 73f5aa859e archive npm image (#203) 2018-07-20 11:14:17 -07:00
Yongli Chen 3192f62539
only build npm for Linux (#202)
* only build npm for Linux

* add suffix
2018-07-19 18:20:01 -07:00
Yongli Chen 1c14dd0ad3
make archive for npm (#200) 2018-07-19 16:06:11 -07:00
Yongli Chen 6a0f9ff207
Add Azure-npm to provide k8s network policy support (#173)
* address comments

* make azure-npm versiona consistent with main version

* Npm telemetry (#12)

* azure-npm

* set logging file

* parameterize telemetry API

* avoid null ptr derefence

* add telemetry to npm

* address comments

* add descriptive comments

* add copyright info

* returns on err
2018-07-19 14:23:11 -07:00
tamilmani1989 f9c7cd2181 Create package for cni that supports multitenancy (#191) 2018-07-06 16:08:36 -07:00
Tamilmani Manoharan 93917e52ff Restore CNS state and set SNAT rule.
Fixed bug in Makefile
2018-02-23 14:36:12 -08:00
Tamilmani Manoharan e9bafb6a03 Removed extra blank line 2018-02-22 14:16:51 -08:00
tamilmani1989 76e7532715 Added azure-cns as part of azuure-container-networking build (#100) 2018-02-22 12:57:03 -08:00
Sushant Sharma 4f79e442d4
Fix conflist name
Maintain same conflict name on windows and Linux.
2018-01-30 16:54:52 -08:00
Yongli Chen 0ddedd86d6 separate conflist for Windows & Linux (#94) 2018-01-30 16:40:07 -08:00
Yongli Chen 1327ae1c14 update makefile (#90) 2018-01-11 15:53:09 -08:00
Onur Filiz 7c8570fbe5 Generate zip files for Windows releases 2017-06-29 12:01:28 -07:00
Onur Filiz a4498ce803 Update CNM plugin DockerHub repo name 2017-05-19 16:31:08 -07:00
Onur Filiz b1442ac159 Rename CNM plugin to azure-vnet-plugin and update base image to ubuntu:16.04 2017-05-05 18:12:40 -07:00
Onur Filiz 2fad3bbd42 Added targets for CNI and CNM tar files 2017-03-29 20:42:35 -07:00
Onur Filiz da7dd9c4aa Added build platform defaults 2017-03-10 16:49:07 -08:00
Onur Filiz 9cbb83aaac Enabled separate builds for Linux and Windows 2017-02-21 12:18:11 -08:00
Onur Filiz 789819e76d Moved OS-specific logic to platform package 2017-01-20 16:21:41 -08:00
Onur Filiz fd36ee040b Separated CNI network and IPAM plugins to their own binaries 2017-01-19 16:37:57 -08:00
Onur Filiz 0777cbceeb Added containerized build support 2017-01-11 18:05:54 -08:00
Onur Filiz acbfc84384 Added verbose pwd to help with diagnosing build issues 2017-01-11 14:22:51 -08:00
Onur Filiz ed9b50fd94 Added quotes to mount paths 2017-01-11 12:30:17 -08:00
Onur Filiz 3b25aecac1 Added Docker managed plugin support 2017-01-06 17:36:02 -08:00
Onur Filiz 1c21dcab68 Added containerized build 2017-01-04 16:21:14 -08:00
Onur Filiz 4d8061bee0 Separated source files for CNI and CNM targets 2016-12-07 17:52:45 -08:00
Onur Filiz 8a9e48265c Moved CNM specific logic to CNM package 2016-11-30 17:56:49 -08:00
Onur Filiz 3d8d169b81 Added separate make targets for CNI and CNM 2016-11-21 17:36:14 -08:00
Onur Filiz ba7c9df4e5 Added separate make targets for CNI and CNM 2016-10-11 15:53:41 -07:00
Onur Filiz c1bc77326d Added initial Makefile 2016-10-06 16:34:47 -07:00