Commit Graph

61 Commits

Author SHA1 Message Date
Akihiro Suda
b159da1973 update libnetwork to improve scalabiltiy of bridge network isolation rules
* libnetwork#2121: Retry other external DNS servers on ServFail
* libnetwork#2125: Fix README flag and expose orphan network peers
* libnetwork#2126: Adding goreport card
* libnetwork#2130: Modify awk to use cut in check_ip_overlap
* libnetwork#2117: [Carry 1534] Improve scalabiltiy of bridge network isolation rules

Full changes: 2bf63300c5...5c1218c956

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2018-04-03 16:50:00 +09:00
Chris Telfer
50dbdeff9f Import libnetwork fix for rolling updates
This patch allows endpoints to complete servicing connections while
being removed from a service.  The fix is entirely within libnetwork
and requires no changes to the moby codebase proper.  It operates
by initially down-weighting a container endpoint in the load balancer
to 0 while keeping the endpoint present in the load balancer.  This
allows traffic to continue to flow to the endpoint while preventing new
connections from going to the endpoint.  This allows the container
to complete requests during the "stop_grace_period" and then exit when
finished without interruption of service.

This change requires propagating the status of disabled service
endpoints via the networkDB.  Accordingly, the patch includes both code
to generate and handle service update messages.  It also augments the
service structure with a ServiceDisabled boolean to convey whether an
endpoint should ultimately be removed or just disabled.  This,
naturally, required a rebuild of the protocol buffer code.

The protocol buffer encoding is designed to support additions of fields
to messages in a backwards-compatible manner.  Protocol buffer
unmarshalling code automatically skips past any fields that it isn't
aware of.  As a result, an older moby daemon without this fix can
receive and will process correctly networkDB messages from newer moby
daemons with this patch.

As it turns out, the additional field is simply a bool that is otherwise
irrelevent on networkDB create and delete events.  So its absence in
older moby daemon processing has no impact.  However, the fix leverages
the "update" networkDB message which was previously unused in
libnetwork.  Although older libnetwork implementations parse the message
cleanly, they will see the message as unexpected and as such issue a log
at error level indicating the receipt of such.

Other than this there should be no other negative impact for use of this
patch in mixed environments. (Although older mobys won't be able to
gracefully downgrade connections on their nodes of course.)

Signed-off-by: Chris Telfer <ctelfer@docker.com>
2018-03-28 14:16:31 -04:00
Sebastiaan van Stijn
fb364f0746 Update libnetwork to fix stale HNS endpoints on Windows
Update libnetwork to 1b91bc94094ecfdae41daa465cc0c8df37dfb3dd to bring in a fix
for stale HNS endpoints on Windows:

When Windows Server 2016 is restarted with the Docker service running, it is
possible for endpoints to be deleted from the libnetwork store without being
deleted from HNS. This does not occur if the Docker service is stopped cleanly
first, or forcibly terminated (since the endpoints still exist in both). This
change works around the issue by removing any stale HNS endpoints for a network
when creating it.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-03-14 23:45:58 +01:00
Sebastiaan van Stijn
55e0fe24db Update libnetwork with fixes for duplicate IP addresses
This updates libnetwork to 8892d7537c67232591f1f3af60587e3e77e61d41 to bring in
IPAM fixes for duplicate IP addresses.

- IPAM tests (libnetwork PR 2104) (no changes in vendored files)
- Fix for Duplicate IP issues  (libnetwork PR 2105)

Also bump golang/x/sync to match libnetwork (no code-changes, other
than the README being updated)

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-03-14 16:31:27 +01:00
Chris Telfer
bebad150c9 Update vendoring for libnetwork PR #2097
This PR prevents automatic removal of the load balancing sandbox
endpoint when the endpoint is the last one in the network but
the network is marked as ingress.

Signed-off-by: Chris Telfer <ctelfer@docker.com>
2018-03-12 15:19:08 -04:00
Akihiro Suda
8e435b8279 Support SCTP port mapping (bump up API to v1.37)
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2018-02-20 11:15:36 +09:00
Flavio Crisciani
ec86547244 Libnetwork revendoring
Diff:
5ab4ab8300...20dd462e0a

- Memberlist revendor (fix for deadlock on exit)
- Network diagnostic client
- Fix for ndots configuration

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2018-02-02 14:36:32 -08:00
Sebastiaan van Stijn
e37374c067 bump libnetwork to 5ab4ab830062fe8a30a44b75b0bda6b1f4f166a4
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-01-24 09:20:18 -08:00
Brian Goff
d23e8a7da5 Update libnetwork commit
New Commit: fcf1c3b5e57833aaaa756ae3c4140ea54da00319

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2018-01-18 20:59:40 -05:00
Abhinandan Prativadi
dad093cc34 libnetwork vendor
Signed-off-by: abhi <abhi@docker.com>
2018-01-17 14:20:04 -08:00
Sebastiaan van Stijn
4c3afb53e6 Bump libnetwork to a1dfea384b39779552a3b4837ea9303194950976
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-01-10 18:09:05 +01:00
Corbin
1f70d6dd58 Vendoring libnetwork_vendoring
Signed-off-by: Corbin <corbin.coleman@docker.com>
2017-12-14 16:57:17 -08:00
Flavio Crisciani
c1e1fb6fa5 Vendoring of libnetwork
Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-12-06 13:19:56 -08:00
Pradip Dhara
7de313ac4e vndr libnetwork 64ae58878fc8f95e4a167499d654e13fa36abdc7
Signed-off-by: Pradip Dhara <pradipd@microsoft.com>
2017-11-30 13:02:56 -08:00
Flavio Crisciani
2e5d5c1d32 Libnetwork vendoring
- removed support for Solaris
- networkdb fixed race on node management

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-11-27 14:57:45 -08:00
Darren Stahl
0d4e253188 Update libnetwork
Signed-off-by: Darren Stahl <darst@microsoft.com>
2017-10-24 11:11:02 -07:00
Abhinandan Prativadi
2083121b09 Vendoring libnetwork and swarmkit
Signed-off-by: Abhinandan Prativadi <abhi@docker.com>
2017-10-09 13:08:03 -07:00
Flavio Crisciani
04043428ea Vendoring libnetwork
Fix for networkDB garbage collection (PR: https://github.com/docker/libnetwork/pull/1944)
Added extra logs to monitor the netowrkDB status and number of entries per network

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-09-24 16:44:16 -07:00
Pradip Dhara
4c1b07924a vendoring libnetwork and swarmkit
Signed-off-by: Pradip Dhara <pradipd@microsoft.com>
2017-09-18 20:38:18 +00:00
Flavio Crisciani
1ddeb11835 Vendoring libnetwork
Diff:
5b28c0ec98...d5c8223190

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-08-31 19:10:23 -07:00
Flavio Crisciani
8570687647 Libnetwork vendoring
- lock OS thread in overlay driver operation

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-08-16 09:48:12 -07:00
Flavio Crisciani
167564a798 Libnetwork vendoring
Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-08-14 09:31:23 -07:00
Flavio Crisciani
709a433ec8 Vendoring libnetwork
Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-08-10 08:51:30 -07:00
Derek McGowan
4f3616fb1c Update imports for logrus version
Add forks for changes which only make logrus change without functional
change.

Signed-off-by: Derek McGowan <derek@mcgstyle.net>
2017-07-31 13:19:38 -07:00
Flavio Crisciani
68d8198ed0 Libnetwork vendoring
Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-07-28 13:51:54 -07:00
Flavio Crisciani
e1953f1ca7 Libnetwork vendoring
Fixes in the Service Discovery areas

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-06-19 19:42:24 -07:00
Madhu Venugopal
6868b8ef23 Vendoring libnetwork f4a15a0890383619ad797b3bd2481cc6f46a978d
Contains Service Discovery hardening fixes via
https://github.com/docker/libnetwork/pull/1796

Fixes multiple issues such as #32830

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2017-06-12 01:01:45 -07:00
Madhu Venugopal
5fd65a6b6c Vendoring libnetwork and netlink
libnetwork eb57059e91bc54c9da23c5a633b75b3faf910a68
netlink bd6d5de5ccef2d66b0a26177928d0d8895d7f969

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2017-06-07 06:20:27 -07:00
Madhu Venugopal
0484bdb6ca Vendoring libnetwork 2e99f06621c23a5f4038968f1af1e28c84e4104e
Fixes #33415
Fixes #33346
Implemented few additional IPVS APIs to be used by other projects

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2017-05-31 16:04:00 -07:00
Madhu Venugopal
9b0e1df4dd Vendoring libnetwork
Signed-off-by: Madhu Venugopal <madhu@docker.com>
2017-05-18 15:14:12 -07:00
Alessandro Boch
46392f2442 Vendoring libnetwork @b2bc1a6
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-05-17 15:50:28 -07:00
Flavio Crisciani
385176980e Libnetwork vendoring
Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-05-10 21:16:57 -07:00
Flavio Crisciani
7ff9fb5f04 Libnetwork vendoring
Fixes backward compatibility for memberlist

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-05-09 13:41:54 -07:00
Ian Campbell
a28d91349e Update to latest vndr c56e08229111
Changes are:

$ git log --no-merges --oneline 19220953c4a4..c56e08229111
4b76270 Keep "vendor.conf" for reference
ac8f766 travis: update to go 1.8.1
c196644 Better validation of duplicates
e684d5e check for unused packages at the end
3ed2513 detect default gopath($HOME/go)
c9052f3 fix backtick in readme
0e04f23 Missing installation section in README

Changes to moby are the inclusion of several upstream vendor.conf files and
switching to vendoring the toplevel golang.org/x/sync package rather than the
syncmap sub-package due to:

2017/05/02 11:21:06 WARNING: package golang.org/x/sync/syncmap is not root import, should be golang.org/x/sync

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-05-02 11:23:36 +01:00
Flavio Crisciani
44c3de8450 Libnetwork vendoring
Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-04-28 13:17:44 -07:00
Flavio Crisciani
b96988feb9 Libnetwork vendoring
Vendor libnetwork changes for --data-path-addr flag

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-04-26 15:33:13 -07:00
Flavio Crisciani
c16eb5f88a Vendoring Libnetwork library
- adding conntrack flush fix for docker/docker#8795

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-04-10 17:52:16 -07:00
Alessandro Boch
60c36f88a5 Vendoring libnetwork @ab8f7e6
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-04-07 16:35:29 -07:00
Alessandro Boch
bf5bebdfa0 Vendoring libnetwork @f3c4ca8
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-04-05 16:31:28 -07:00
Alessandro Boch
ff049a4d4d Vendor libnetwork @b6cb1ee
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-03-24 11:07:33 -07:00
Santhosh Manohar
6708676464 Vendor libnetwork for network inspect --verbose changes
Signed-off-by: Santhosh Manohar <santhosh@docker.com>
2017-03-12 21:23:21 -07:00
Brian Goff
05e7f956bd Merge pull request #31532 from aboch/vnd
Vendoring libnetwork @1a01921
2017-03-10 12:55:19 -05:00
Akihiro Suda
5a1b06d7fd rerun vndr
* run latest vndr so as to collect more LICENSE files
 * remove unused packages
 * vendor github.com/philhofer/fwd with LICENSE.md (MIT)
 * vendor github.com/bsphere/le_go with LICENSE (MIT)

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-03-08 02:29:34 +00:00
Alessandro Boch
b005c7d6eb Vendoring libnetwork @1a01921
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-03-03 15:55:06 -08:00
Alessandro Boch
ff6a3bef5a Vendoring libnetwork @bdc9dce
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-02-24 11:08:53 -08:00
Alessandro Boch
5b6048fd63 Vendoring libnetowrk @5537cb4
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-02-14 11:52:57 -08:00
Alessandro Boch
9e555ce7c3 Vendoring libnetwork @802895f
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-02-02 15:22:26 -08:00
Santhosh Manohar
03ab20291b Vendoring libnetwork @e8431956
Signed-off-by: Santhosh Manohar <santhosh@docker.com>
2017-01-26 18:08:18 -08:00
Santhosh Manohar
a0dcdcb95f vendorin libnetwork @d2edad309cc874e865b5ba4d6bd6b276c93451d3
Signed-off-by: Santhosh Manohar <santhosh@docker.com>
2017-01-10 13:50:16 -08:00
Aaron Lehmann
428600108c plugingetter: Avoid all caps for constant declarations
Go style calls for mixed caps instead of all caps:
https://golang.org/doc/effective_go.html#mixed-caps

Change LOOKUP, ACQUIRE, and RELEASE to Lookup, Acquire, and Release.

This vendors a fork of libnetwork for now, to deal with a cyclic
dependency issue. The change will be upstream to libnetwork once this is
merged.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-01-04 10:19:04 -08:00