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

240 Коммитов

Автор SHA1 Сообщение Дата
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
tamilmani1989 f84799b5f4 Added support for blocking private IP space via snat bridge (#228)
* Added support for blocking private ip space via snat bridge except for 10.0.0.10
2018-08-17 15:25:34 -07:00
jaer-tsun 431ac08469 Enable Circleci (#220)
Enable CircleCi
2018-08-14 12:08:48 -07:00
tamilmani1989 3ea96edae3 Update Windows CNI implementation to free resources in case of HNS failures (#223)
Update Windows CNI implementation to free resources in case of HNS failures
2018-08-09 16:54:10 -07:00
Yongli Chen 27e10e8ff8 handle empty string (#213) 2018-08-01 16:08:50 -07:00
tamilmani1989 59ae2cd9c4 Fixed constructing endpointID (#210) 2018-07-24 17:46:46 -07:00
tamilmani1989 147c4388c8 Multitenancy Support for Linux (#156)
This PR adds the following capabilities
1. Support to create and connect containers to different Azure Vnets. Every VlanId corresponds to a different Azure Vnet.
2. SNAT support for containers to reach Internet using the container's host IP as the SNAT address.

Both the above options are controlled by the config parameters in Azure CNI.
2018-07-06 11:45:47 -07:00
tamilmani1989 ec415fd08b Fixed initializing store in ipam (#188)
* fixed initializing store in ipam
2018-07-05 15:27:24 -07:00
Madhan Raj Mookkandy ce1874cc88 Filter out hostVnic, which would otherwise fail during network creation (#184) 2018-07-04 00:25:33 -07:00
Madhan Raj Mookkandy 5f5880964f Add delay immediately after network creation for 1803 & below (#174) 2018-07-02 14:20:05 -07:00
tamilmani1989 40237b7444
Convert time to UTC (#162)
* convert time to utc

* Added a fix in getting last reboot time.

* moved logpath from platform to log package to prevent cycle
2018-06-04 16:47:21 -07:00
ashvindeodhar 54be5fed60 azure-vnet: Implement GET command as per CNI 0.4.0 spec (#161)
* azure-vnet: Implement GET command
2018-06-01 17:48:19 -07:00
tamilmani1989 41ecaedb0d Generate VethName based on podname and namespace in CNI (#143)
* Generate vethname based on podname and namespace
2018-05-16 17:02:09 -07:00
Yongli Chen f0f090e525
This PR moves cni related code from network package to cni. (#131)
* configure dnssuffix & dnsServerList

* add dns info to conflist

* change case for dns info

* remove hardcoding

* remove hardcoding

* parse k8s pod info

* add AdditionalArgs and Dns info to conflist

* serialize policies

* program route info

* start addressign ipam ip leak

* fix 1) ip inconsistency in k8s & pod. 2) IP leak in IPAM.

* remove comments

* separate windows & linux

* remove dnsServers

* remove comments

* address comments

* add dns verification

* abstract linux policy struct

* remove setPolicies

* separte Windows & Linux code

* change package

* add policy structure to Linux

* move policy code to policy.go

* fix network_linux func signature

* restructure policy pkg
2018-05-03 19:02:53 -07:00
Yongli Chen f1f65e73e9 moves cni related code from network package to cni. (#129)
* configure dnssuffix & dnsServerList

* add dns info to conflist

* change case for dns info

* remove hardcoding

* remove hardcoding

* parse k8s pod info

* add AdditionalArgs and Dns info to conflist

* serialize policies

* program route info

* start addressign ipam ip leak

* fix 1) ip inconsistency in k8s & pod. 2) IP leak in IPAM.

* remove comments

* separate windows & linux

* remove dnsServers

* remove comments

* address comments

* add dns verification

* abstract linux policy struct

* remove setPolicies

* separte Windows & Linux code
2018-05-03 15:48:30 -07:00
Yongli Chen 0bbce8daa9 Support k8s DNS & endpoint policy (#127)
* configure dnssuffix & dnsServerList

* add dns info to conflist

* change case for dns info

* remove hardcoding

* remove hardcoding

* parse k8s pod info

* add AdditionalArgs and Dns info to conflist

* serialize policies

* program route info

* start addressign ipam ip leak

* fix 1) ip inconsistency in k8s & pod. 2) IP leak in IPAM.

* remove comments

* separate windows & linux

* remove dnsServers

* remove comments

* address comments

* add dns verification

* abstract linux policy struct

* remove setPolicies
2018-05-03 14:57:31 -07:00
tamilmani1989 2009917134 Added support for cnm reboot scenario (#98)
* Added support cnm reboot scenario

* Addressed review comments
2018-02-22 11:22:47 -08:00
Yongli Chen 4bc51cc22c Update endpoint creation in CNI for Windows containers. (#86)
Enable outboundNAT for Windows containers.
Handle consecutive ADD calls for the same container.
Handle attach endpoint for workload containers.
2017-12-28 11:47:46 -08:00
Tamilmani Manoharan 5ba70f9092 Made changes in netlink code to ignore interface not found error 2017-10-18 17:15:53 -07:00
Onur Filiz b9a2193b3a Improve cleanup on network failure paths 2017-08-16 14:13:46 -07:00
Onur Filiz d0d06a9f0a Add ARP reply rules for bridge and tunnel modes 2017-08-02 20:29:37 -07:00
Onur Filiz a88e1cbe81 Limit port aggregation to owned veth interfaces 2017-07-15 11:03:56 -07:00
Onur Filiz 672ddf2ef2 Implement CNM GetEndpointInfo on Windows 2017-05-17 13:36:57 -07:00
Onur Filiz 2738f04ae6 Store the gateway address from HNS response in endpoints on Windows 2017-05-05 14:07:35 -07:00
Onur Filiz 3755884713 Enabled hairpin mode for bridged external interface 2017-03-31 06:45:28 -07:00
Onur Filiz 3bbcd0fd26 Add support for multiple subnets and gateways per network 2017-03-10 13:53:37 -08:00
Onur Filiz 1d30ab3f32 Implemented Windows network and endpoint configuration 2017-03-08 15:56:47 -08:00
Onur Filiz c6b708fc42 Added DNS info and ContainerID to endpoint 2017-03-07 23:23:44 -08:00
Onur Filiz 278ce7587b Added support for Linux l2tunnel mode 2017-03-06 16:24:20 -08:00
Onur Filiz 04cf50eabf Refactored interface IP configuration logic 2 2017-03-02 17:52:43 -08:00
Onur Filiz d2587fc338 Refactored interface IP configuration logic 2017-03-01 16:59:37 -08:00
Onur Filiz 903ff36e69 Added IPVLAN link support 2017-02-28 01:27:20 -08:00
Onur 98329edcee Added Windows support to core network package 2017-02-10 16:23:06 -08:00
Onur cac40ac0b3 Refactor network logic for Windows support 2017-02-10 16:15:53 -08:00
Onur 2ae53a12bf Added build tags and copyright notice 2017-02-10 15:17:10 -08:00
Onur Filiz c254bba269 Renamed Linux specific files 2017-02-10 15:11:46 -08:00
Onur Filiz 789819e76d Moved OS-specific logic to platform package 2017-01-20 16:21:41 -08:00
Onur Filiz 83617be124 Refactored ebtables to remove redundant code 2017-01-03 15:08:16 -08:00
Onur Filiz f17e20ac90 Updated network and address managers to ignore stale persisted state from previous boots 2016-12-16 18:03:03 -08:00
Onur Filiz 0e13965ced Added support for multiple IPv4 addresses and routes 2016-12-12 16:03:10 -08:00
Onur Filiz 3567ac1e5a Moved GetEndpointInfo logic to Endpoint class 2016-12-11 18:40:36 -08:00
Onur Filiz 4e4427ccc5 Updated EndpointInfo to store the interface's IP subnet 2016-12-07 17:41:46 -08:00
Onur Filiz 138652ac34 Updated endpoint to persist host ifname and delete veth pair using it on removal 2016-12-07 15:56:19 -08:00
Onur Filiz 97c3f241d8 Moved CNM specific logic to CNM package 2016-11-28 17:13:34 -08:00
Onur Filiz d21346c486 Added support for creating endpoints in other namespaces for CNI 2016-11-22 15:28:57 -08:00
Onur Filiz 99e37e8a8f Reset netlink sockets when changing network namespaces 2016-11-22 15:24:28 -08:00
Onur Filiz 0bf716e607 Exposed NetworkManager interface and made it more generic to support CNI 2016-11-22 12:31:48 -08:00
Onur Filiz a632028510 Improved logging for network and endpoint creation 2016-11-22 12:19:54 -08:00
Onur Filiz c892141057 Added support for changing network namespaces 2016-11-18 17:09:22 -08:00
Onur Filiz deb2a6d291 Updated package references with new repo name 2016-10-06 14:40:29 -07:00
Onur Filiz 4ba07d763f Updated net plugin tests to use dummy interface 2016-09-27 12:13:58 -07:00
Onur Filiz f6b39712ea Made persistent store optional for both plugins 2016-09-26 16:17:04 -07:00
Onur Filiz dbe4fae8af Moved base plugin API to common 2016-09-25 21:49:01 -07:00
Onur Filiz 3a5f237ebe Updated plugin initialization and logging to be more consistent 2016-09-25 21:22:01 -07:00
Onur Filiz 82c725da46 Refactor core network logic to NetworkManager 2016-09-21 15:39:25 -07:00
Onur Filiz 6d6df51ddf Added common configuration and kvstore to base plugin 2016-09-13 14:21:11 -07:00
Onur Filiz bb58dcba87 Updated net plugin to use the listener from base plugin 2016-09-13 12:18:51 -07:00
Onur Filiz 045d193ca3 Rearranged request handlers 2016-07-27 12:08:57 -07:00
Onur Filiz 2771661e61 Redesigned core network module interface 2016-06-13 22:44:59 -07:00
Onur Filiz 5492e7279c Fixed code formatting, go fmt 2016-06-05 13:45:12 -07:00
Onur Filiz 03b5961b73 Integrated IPAM with network plugin (#15)
Integrated IPAM with network plugin
2016-06-02 19:02:07 -07:00
Onur Filiz d01751d9df Added errors returned by network plugin to API contract 2016-05-12 16:51:00 -07:00
Onur Filiz 6021842eb2 Updated ipamData definition to match the spec 2016-05-11 13:33:13 -07:00
Onur Filiz 50d365977c Updated network plugin to inherit from base plugin class 2016-05-11 11:35:06 -07:00
Onur Filiz 20ec7bef51 Separated network plugin interface to its own file and cleaned up logging 2016-05-10 18:11:12 -07:00
Onur Filiz d27c791363 Simplified and improved performance of log APIs 2016-05-02 19:26:13 -07:00
Onur Filiz c8400962ba Updated plugins to use path constants 2016-05-01 17:55:21 -07:00
Onur Filiz 1570d83456 Updated network plugin tests to use api constants 2016-05-01 17:12:29 -07:00
Onur Filiz 31bf4fbcbb Update remote plugin api contracts 2016-05-01 17:09:36 -07:00
Onur Filiz cb7b07744d Moved common plugin functionality to base class 2016-04-27 17:53:05 -07:00
Onur Filiz 3d665c42bc Replaced explicit test hook method with type assertion 2016-04-27 11:21:58 -07:00
Onur Filiz ae14a01632 Fixed missing mutex unlocks in net plugin 2016-04-15 16:56:34 -07:00
Onur Filiz 938b080e1d Minor renaming for consistency with libnetwork terminology 2016-03-31 00:21:47 -07:00
Onur Filiz 76ebb437e2 Added network plugin tests for basic remote API validation 2016-03-28 03:36:47 -07:00
Sushant Sharma d901f532e8 Fix the case for dependencies path 2016-03-21 15:40:21 -07:00
Onur Filiz 2aff6fde0c Enable remote plugin API tests 2016-03-21 03:03:01 -07:00
Onur Filiz b7dfcfd900 Update package names for new repo 2016-03-21 02:52:55 -07:00
Sushant Sharma 8717b8c4ff resolving conflicts 2016-03-07 21:22:18 -08:00
Sushant Sharma 5dec368fde Support in Penguin for Multi CA enabled NICs. Logging to be fixed. 2016-03-07 21:17:08 -08:00
Onur Filiz e2b61617bd Task 5544441: Make plugin names configurable for testing 2016-03-07 04:17:54 -08:00
Onur Filiz f369a8bd5e Task 5544441: Network plugin test initial commit 2016-03-07 03:47:39 -08:00
Onur Filiz efba38effa Task: 5544454 Created log package, simplified logging APIs 2016-03-01 16:52:22 -08:00
Onur Filiz 6d036c6e8d Task: 4598699 Ran 'go fmt' to format the source code 2016-02-23 11:40:05 -08:00
Onur Filiz 456716ea79 Task: 4598699 Ran 'go fmt' to format the source code 2016-02-23 11:37:00 -08:00
Onur Filiz 98c196b4fe Task 5544454: Azure Docker libnetwork plugin logging capability 2016-02-22 17:38:13 -08:00
Onur Filiz 5bea3a2baf Task 4598699: Introduced the listener object and updated net and ipam plugins to use it 2016-02-18 22:30:53 -08:00
Onur Filiz 413480173a Update the object names to comply with Go language conventions 2016-02-17 13:53:00 -08:00
Onur Filiz fd723c36cb Added listener object 2016-02-17 10:25:09 -08:00
Onur Filiz 39ed145188 Update the package names to comply with Go language conventions 2016-02-10 12:23:26 -08:00
Onur Filiz d09c0474b4 Update the file hierarchy to comply with Go language conventions 2016-02-10 12:12:10 -08:00