Commit Graph

2467 Commits

Author SHA1 Message Date
Flavio Crisciani
08f9dfeaf8 Merge pull request #2010 from madhanrm/hotaddfix
Fix to use ContainerID for windows instead of SanbdoxID
2018-01-23 15:08:46 -08:00
Flavio Crisciani
e6df49bd21 Merge pull request #2053 from cpuguy83/reload_user_chain
Reload DOCKER-USER chain on firewalld reload.
2018-01-12 09:30:11 -08:00
Brian Goff
d5fef4ca1c Reload DOCKER-USER chain on frewalld reload.
Relates to moby/moby#35043

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2018-01-12 10:50:22 -05:00
Flavio Crisciani
f9a14ba9dc Merge pull request #2051 from fcrisciani/fix-watchMiss-ns
Fix watchMiss thread context
2018-01-10 16:18:35 -08:00
Flavio Crisciani
e975f3caa0 Fix watchMiss thread context
The netlink deserialize is fetching information from the link.
This require the go routine to be in the correct namespace to
succeed

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2018-01-10 13:50:49 -08:00
Flavio Crisciani
93f8337ec9 Merge pull request #1824 from abhi/rolling_update
Delete service info from cluster when service is disabled
2018-01-09 14:29:52 -08:00
abhi
5ab37a55a1 Delete service info from cluster when service is disabled
This PR contains a fix for moby/moby#30321. There was a moby/moby#31142
PR intending to fix the issue by adding a delay between disabling the
service in the cluster and the shutdown of the tasks. However
disabling the service was not deleting the service info in the cluster.
Added a fix to delete service info from cluster and verified using siege
to ensure there is zero downtime on rolling update of a service.

Signed-off-by: abhi <abhi@docker.com>
2018-01-09 13:53:00 -08:00
Flavio Crisciani
e8f62679a3 Merge pull request #1995 from fcrisciani/fix-ndots
Fix ndots configuration
2018-01-09 09:22:57 -08:00
Flavio Crisciani
c5a734c2eb Merge pull request #2047 from fcrisciani/remove_watchmiss
Remove watchMiss for swarm mode
2018-01-09 09:01:23 -08:00
Flavio Crisciani
af7fa2d7a2 Merge pull request #2041 from ddebroy/2026mx
Handle DNS queries of type MX
2018-01-09 08:57:00 -08:00
Deep Debroy
88df74659a Add unit tests for MX and A DNS queries
Signed-off-by: Deep Debroy <ddebroy@docker.com>
2018-01-08 17:08:48 -08:00
Flavio Crisciani
dd47466a4d Remove watchMiss for swarm mode
Swarm mode does not really have anymore a use for the watchMiss.
Peer entries are configured at configuration time.
If the gcthresh denies the insertion the peerAdd will fail.

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2018-01-05 14:51:43 -08:00
Flavio Crisciani
944540495b Merge pull request #2043 from selansen/master
Enable IPV6 config on Sandbox creation on live-restore case
2018-01-02 12:08:00 -08:00
selansen
d28d679080 Enable IPV6 config on Sandbaox creation on live-restore
In sandbox creation we disable IPV6 config. But this causes problem in live-restore case
where all IPV6 configs are wiped out on running container. Hence extra check has been added
take care of this issue.

Signed-off-by: selansen <elango.siva@docker.com>
2017-12-27 23:32:29 -05:00
selansen
e7646397b0 Merge branch 'master' of https://github.com/docker/libnetwork 2017-12-27 22:37:24 -05:00
Flavio Crisciani
d47da49ccb Merge pull request #2042 from jongwu/dockerfile.patch
enable unit test in arm64
2017-12-27 22:22:58 -05:00
Flavio Crisciani
e48d811bc6 Merge pull request #2042 from jongwu/dockerfile.patch
enable unit test in arm64
2017-12-21 08:55:46 -07:00
Jianyong Wu
fe032eeb07 change base image version in Dockerfile.build to enable unit test in arm64 for multi-arch image issue
Signed-off-by: Jianyong Wu <jianyong.wu@arm.com>
2017-12-21 16:33:07 +08:00
Deep Debroy
6a4c8d0ac9 Handle DNS querries of type MX
Signed-off-by: Deep Debroy <ddebroy@docker.com>
2017-12-20 14:32:47 -08:00
Madhu Venugopal
00bb02b36c Merge pull request #2035 from fcrisciani/netdb-realign-test-infra
Consolidate node management logic
2017-12-13 11:20:18 -08:00
Flavio Crisciani
b190ee3ccf Cleanup node management logic
Created method to handle the node state change with cleanup operation
associated.
Realign testing client with the new diagnostic interface

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-12-13 09:40:38 -08:00
Flavio Crisciani
a6b9d7baf5 Merge pull request #2024 from selansen/master
moved updateToStore call in CreateEndPoint before we call addEndpoint
2017-12-12 21:34:46 -08:00
Flavio Crisciani
7b146b3443 Merge pull request #2021 from soccerGB/disable_gatewaydns
Added a new network creation driver option (disable_gatewaydns) for t…
2017-12-12 21:32:05 -08:00
selansen
66b65b471a VETH interface cleanup when dockerD suddenly crashes
VETH interface was not cleaned up when DockerD got killed between addEndpoint and updateToStore calls.
I have added logs and made sure calling updateToStore before addEndpoint contains same values.
Hence moving up the call looks safer and VETH gets cleaned up even after DockerD gets killed in the middle.

Signed-off-by: selansen <elango@docker.com>
2017-12-12 13:14:31 -08:00
Flavio Crisciani
3e99131f55 Merge pull request #1916 from msabansal/fixcidr
Docker deamon doesn't work with --fixed-cidr on windows
2017-12-08 11:25:58 -08:00
Flavio Crisciani
6a350429fb Merge pull request #2014 from msabansal/icsdnsissue
Fix for docker intercepting DNS requests on ICS network
2017-12-07 12:59:59 -08:00
Madhu Venugopal
b1ff9f5acb Merge pull request #1918 from fcrisciani/bridge-crash
Fix concurrent CreateNetwork in bridge driver
2017-12-05 17:40:26 -08:00
Madhu Venugopal
17e663942a Merge pull request #2030 from fcrisciani/change-server
Call the Shutdown on the server
2017-12-05 17:16:18 -08:00
Flavio Crisciani
8c21351e3e Changed the name of the server pointer
Changed the pointer name and added a comment

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-12-05 13:45:08 -08:00
Flavio Crisciani
1a2efea39e Call the Shutdown on the server
This is the right way to call for a clean shutdown

Return application/json as content-type when appropriate

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-12-05 13:17:42 -08:00
Flavio Crisciani
68fb31aa4b Merge pull request #2029 from fcrisciani/fix_log
Fix log
2017-12-04 20:38:42 -08:00
Flavio Crisciani
f7023e11c8 Remove useless error log
Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-12-04 20:36:58 -08:00
Madhu Venugopal
6eb37c2aa3 Merge pull request #2027 from fcrisciani/debug-framework
Diagnose framework for networkDB
2017-12-04 10:34:02 -08:00
Madhu Venugopal
fbc120417b Merge pull request #1976 from fcrisciani/netlink-timeouts
Netlink timeouts
2017-12-04 10:33:27 -08:00
Flavio Crisciani
5b89af1bba Vendor latest netlink library
- needed the methods to set the proper timeout

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-12-04 09:40:38 -08:00
Flavio Crisciani
6736b223ec Set socket timeout on netlink sockets
In case the file descriptor of the netlink socket is closed
the recvfrom is not returning. This may create deadlock conditions.
The current solution is to make sure that all the netlink socket used
have a proper timeout set on them to have the possibility to return

Added test to emulate the watchMiss condition

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-12-04 09:40:27 -08:00
Flavio Crisciani
3e544bc500 Avoid extra notification on node leave
If a node leave, avoid to notify the upper layer
for entries that are already marked for deletion

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-12-01 16:19:38 -08:00
Flavio Crisciani
b578cdce86 Diagnose framework for networkDB
This commit introduces the possibility to enable a debug mode
for the networkDB, this will allow the opening of a tcp port
on localhost that will expose the networkDB api for debugging
purposes.

The API can be discovered using curl localhost:<port>/help
It support json output if passed json as URL query parameter
option and pretty printing if passing json=pretty

All the binaries values are serialized in base64 encoding, this
can be skip passing the unsafe option as url query parameter

A simple go client will follow up

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-12-01 16:19:35 -08:00
Flavio Crisciani
37cedaa072 Merge pull request #2025 from pradipd/lbfix-PRfeedback
Addressing feedback from lbfix PR
2017-11-30 12:59:06 -08:00
Pradip Dhara
4aab854d6d Addressing feedback from PR https://github.com/docker/libnetwork/pull/2011
Signed-off-by: Pradip Dhara <pradipd@microsoft.com>
2017-11-30 00:22:30 -08:00
Flavio Crisciani
9037a42bae Merge pull request #2011 from pradipd/lbfix
Move load balancer sandbox creation/deletion into libnetwork.
2017-11-29 11:10:07 -08:00
Flavio Crisciani
b4973cd6b0 Merge pull request #2013 from fcrisciani/netdb-node-race
NetworkDB node management race
2017-11-27 14:55:51 -08:00
Flavio Crisciani
f0fcb0bbe6 Fixed race on quick node fail/join
The previous logic was not properly handling the case of a node
that was failing and oining back in short period of time.
The issue was in the handling of the network messages.
When a node joins it sync with other nodes, these are passing
the whole list of nodes that at best of their knowledge are part
of a network. At this point if the node receives that node A is part
of the network it saves it before having received the notification
that node A is actually alive (coming from memberlist).
If node A failed the source node will receive the notification
while the new joined node won't because memberlist never advertise
node A as available. In this case the new node will never purge
node A from its state but also worse, will accept any table notification
where node A is the owner and so will end up in a out of sync state
with the rest of the cluster.

This commit contains also some code cleanup around the area of node
management

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-11-27 14:38:06 -08:00
Cheng-mean Liu
5a5b7fee33 Added a new network creation driver option (disable_gatewaydns) for the Windows driver
Signed-off-by: Cheng-mean Liu <soccerl@microsoft.com>
2017-11-21 11:35:32 -08:00
Sandeep Bansal
2a219a04cc Fix for docker intercepting DNS requests on ICS network
Signed-off-by: Sandeep Bansal <sabansal@microsoft.com>
2017-11-17 13:06:14 -08:00
Flavio Crisciani
4037132b33 Fix listen port for test infra
Update Dockerfile, curl is used for the healthcheck
Add /dump for creating the routine stack trace

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-11-16 16:23:44 -08:00
Flavio Crisciani
a41f623b10 Merge pull request #1957 from fcrisciani/netdb-gc-test
Add test to confirm garbage collection
2017-11-08 16:25:47 -08:00
Pradip Dhara
ecb4442ab3 Fixing circleci.
Signed-off-by: Pradip Dhara <pradipd@microsoft.com>
2017-11-07 00:00:31 -08:00
Madhan Raj Mookkandy
92f9f38103 Use containerId instead of sandboxid for windows
Signed-off-by: Madhan Raj Mookkandy <madhanm@microsoft.com>
2017-11-06 16:54:02 -08:00
Madhu Venugopal
2b1a999d11 Merge pull request #2004 from mavenugo/ec
endpoint_cnt store updates should not create an object
2017-11-06 10:06:36 -08:00