Commit Graph

1055 Commits

Author SHA1 Message Date
Alessandro Boch
cea4dd457c Do not allow overlay destroySandbox() to be interrupted
- Concurrent leave/join of one member overlay network can end with the error:
  "subnet sandbox join failed for "A.B.C.D/MM": error creating vxlan interface: file exists"
  This happens when the join is processed while the leave has already started.
  Having the network one member only, the leave resets the once variable for this network subnets
  and triggers the sandbox destroy for each subnet's vxlan interface, when the n.joinCnt goes to 0.
  But given the destroySandbox() is not atomic, the join thread can trigger the creation of the
  vxlan interface in between (given subnet.once was re-initialized) before the leave thread
  removes the vxlan interface for this subnet.
- The fix is to not allow interruptions between the re-initialization of the subnet.once var and
  consequent vxlan interface removal.

Signed-off-by: Alessandro Boch <aboch@docker.com>
2016-03-30 16:53:34 -07:00
Alessandro Boch
8be202014d Merge pull request #1062 from sanimej/fixes
Limit number of concurrent DNS queries
2016-03-30 14:20:30 -07:00
Madhu Venugopal
7cbc3e76f6 Handle endpoint & network object in notifyEvent avoiding id lookup
Join & Leave Serf processing happens in a separate goroutine and there
are cases as in https://github.com/docker/libnetwork/issues/985, it can
cause lookup failures when endpoint delete processing happens before
Serf gets a chance to handle the leave processing.

The fix is to avoid such lookups in this goroutine, but handle the
endpoint and network objects directly.

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2016-03-29 11:19:23 -07:00
Santhosh Manohar
bd0d8222aa Limit number of concurrent DNS queries
Signed-off-by: Santhosh Manohar <santhosh@docker.com>
2016-03-29 06:23:01 -07:00
Jana Radhakrishnan
9ca3964233 Merge pull request #1058 from aboch/hdbg
Log time taken to set sandbox key
2016-03-28 21:55:21 -07:00
Alessandro Boch
df975778fc Log time taken to set sandbox key
Signed-off-by: Alessandro Boch <aboch@docker.com>
2016-03-28 20:40:51 -07:00
Alessandro Boch
80f7a91360 Merge pull request #1048 from sanimej/fixes
On network disconnect clear the cached connections to external nameservers
2016-03-25 13:48:49 -07:00
Madhu Venugopal
c92b196d2e Reload config should initialize only the appropriate datastore
With the current implementation, a config relaod event causes all the
datastores to reinitialize and that impacts objects with Persist=false
such as none and host network.

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2016-03-25 01:10:03 -07:00
Chun Chen
d60830037a Merge pull request #1040 from aboch/mp
modprobe when needed
2016-03-22 16:36:25 +08:00
Alessandro Boch
52da8bda47 modprobe when needed
- in bridge driver modprobe for br_netfilter only if EnableIPTables==true
- move FirewalldInit() to iptables pakcage Init()
- move modprobe for nf_nat and xt_conntrack in iptables.initCheck()

Signed-off-by: Alessandro Boch <aboch@docker.com>
2016-03-21 16:35:28 -07:00
Madhu Venugopal
22fae3ae2c Merge pull request #870 from sanimej/bugs
Adds AAAA record handling for the embedded DNS
2016-03-20 10:20:53 -07:00
Madhu Venugopal
896196c521 Merge pull request #967 from aboch/i6
Honor enableIPv6 network flag on IP allocation
2016-03-20 10:03:25 -07:00
Santhosh Manohar
ca06f1ed80 On network disconnect clear the cached connections to external
nameservers

Signed-off-by: Santhosh Manohar <santhosh@docker.com>
2016-03-20 05:00:58 -07:00
Santhosh Manohar
97ce9f457f Changelog for v0.7.0-dev.10
Signed-off-by: Santhosh Manohar <santhosh@docker.com>
2016-03-19 07:05:45 -07:00
Santhosh Manohar
0c22e1bd07 Avoid V6 queries in docker domain going to external nameservers
Signed-off-by: Santhosh Manohar <santhosh@docker.com>
2016-03-19 03:07:08 -07:00
Alessandro Boch
2ac1e5b088 Changelog for v0.7.0-dev.9
Signed-off-by: Alessandro Boch <aboch@docker.com>
2016-03-18 16:36:44 -07:00
Evan Hazlett
7ad482ffc7 label support for networks on creation
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2016-03-18 18:19:08 -04:00
Alessandro Boch
4b9dc647be Honor enableIPv6 network flag on IP allocation
- If the flag is not set, do not query IPAM driver for
  IPv6 pool/addresses even if they are passed

Signed-off-by: Alessandro Boch <aboch@docker.com>
2016-03-18 15:18:08 -07:00
Madhu Venugopal
dfc83a628f Merge pull request #1035 from aboch/ci
Fix CI
2016-03-18 15:05:03 -07:00
Alessandro Boch
8d480263c0 Fix CI
Signed-off-by: Alessandro Boch <aboch@docker.com>
2016-03-18 14:49:57 -07:00
Madhu Venugopal
40b9d2abdd Merge pull request #1028 from nalind/no-address-panic
Don't quote the addresses when we hit errors setting interface addresses
2016-03-17 08:33:33 -07:00
Santhosh Manohar
2e566e3882 Add AAAA record handling in embedded DNS server
Signed-off-by: Santhosh Manohar <santhosh@docker.com>
2016-03-16 19:00:17 -07:00
Nalin Dahyabhai
937702b74d Format network address using %v instead of %p
If we encounter an error setting an interface's IPv4 or IPv6 address,
log the addresses we tried to use using the %v specifier rather than %q.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com> (github: nalind)
2016-03-16 17:23:13 -04:00
Alessandro Boch
639fd9a131 Changelog for 0.7.0-dev.8
Signed-off-by: Alessandro Boch <aboch@docker.com>
2016-03-16 11:57:19 -07:00
Alessandro Boch
9c88ee206e Log stale resource cleanup
Signed-off-by: Alessandro Boch <aboch@docker.com>
2016-03-16 11:57:19 -07:00
Alessandro Boch
613d0ff72a Merge pull request #1029 from msabansal/StaticMac
Adding support for static mac
2016-03-16 11:56:00 -07:00
Alessandro Boch
b1e0af8145 Merge pull request #1027 from sanimej/fixes
Fix nil pointer reference in ServeDNS() with concurrent go routines.
2016-03-16 11:43:48 -07:00
msabansal
7089723ee2 Fixing support for static mac and updating dependencies
Signed-off-by: msabansal <sabansal@microsoft.com>
2016-03-16 11:07:20 -07:00
Alessandro Boch
b38b52c6b4 Merge pull request #1024 from mavenugo/loc
Fixing a possible endpoint_cnt state inconsistency issue
2016-03-16 09:57:06 -07:00
Madhu Venugopal
40de5ef5e5 Merge pull request #1025 from sanimej/fixes
Clear cached udp connections on resolver Stop()
2016-03-16 09:24:11 -07:00
Tonis Tiigi
880d0ada95 Fix netns path setting from hook
Previously hook expected data with a wrong type.
Full netns path is not included with the data
passed with the hook.

Fixes #829

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-03-16 07:57:27 -07:00
Madhu Venugopal
4dde205544 Fixing a possible endpoint_cnt state inconsistency issue
During ungraceful shutdown, it is possible that the endpoint_cnt can be
inconsistent with the actual endpoints in a network. This fix will
resolve that inconsistency

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2016-03-15 21:07:42 -07:00
Jana Radhakrishnan
82b88f274a Merge pull request #990 from aboch/ecl
Avoid network/endpoint_count inconsistences
2016-03-15 15:24:37 -07:00
Madhu Venugopal
5e0beecbdb Merge pull request #670 from aboch/it
Change in bridge/setup_ip_tables.go
2016-03-15 12:39:15 -07:00
Alessandro Boch
c92a4e9fd6 Avoid network/endpoint count inconsistences
- ... on ungraceful shutdown during network create
- Allow forceful deletion of network
- On network delete, first mark the network for deletion
- On controller creation, first forcely remove any network
  that is marked for deletion.

Signed-off-by: Alessandro Boch <aboch@docker.com>
2016-03-15 09:09:13 -07:00
Santhosh Manohar
4e2e0f148b Fix nil pointer reference in ServeDNS() with concurrent go routines.
Signed-off-by: Santhosh Manohar <santhosh@docker.com>
2016-03-15 02:05:38 -07:00
Santhosh Manohar
9a91bbeb4f Clear cached udp connections on resolver Stop()
Signed-off-by: Santhosh Manohar <santhosh@docker.com>
2016-03-14 17:21:41 -07:00
Brent Salisbury
2b2d011899 Reject a null v4 IPAM slice in exp vlan drivers
Issue #1018

Signed-off-by: Brent Salisbury <brent@docker.com>
2016-03-13 00:42:00 -05:00
Madhu Venugopal
62c6bb12db changelog for 0.7.0-dev.7
Signed-off-by: Madhu Venugopal <madhu@docker.com>
2016-03-11 14:04:09 -08:00
Brent Salisbury
dda75448c3 Removed experimental drivers modprobe check
- Kernel requirements are checked w/o modprobe now

Signed-off-by: Brent Salisbury <brent@docker.com>
2016-03-11 17:00:36 -05:00
Madhu Venugopal
1fa49a3551 Merge pull request #1015 from nerdalert/kernel_bump
Bumped ipvlan kernel version to >= 4.2
2016-03-11 11:44:26 -08:00
Brent Salisbury
fcf79b55ff Bumped ipvlan kernel version to >= 4.2
- ipvlan l2 mode is buggy in < 4.2

Signed-off-by: Brent Salisbury <brent@docker.com>
2016-03-11 14:28:32 -05:00
Madhu Venugopal
3c3e8834fb Merge pull request #1001 from LK4D4/dbus_conn
Close dbus connection if firewalld is not started
2016-03-11 11:23:32 -08:00
Madhu Venugopal
e052aeaaa0 changelog for 0.7.0-dev.6
* Experimental support of macvlan and ipvlan drivers

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2016-03-10 18:18:09 -08:00
Madhu Venugopal
60bd944921 ipvlan slaves must inherit the mac-address from parent
Signed-off-by: Madhu Venugopal <madhu@docker.com>
2016-03-10 18:05:45 -08:00
Madhu Venugopal
64edd40fcc Use osl.InitOSContext appropriately
Signed-off-by: Madhu Venugopal <madhu@docker.com>
2016-03-10 16:30:10 -08:00
Brent Salisbury
af75e8a624 Added kernel version checks for macvlan/ipvlan
ipvlan >= 4.0.0 due to early instability
macvlan >= 3.9

Signed-off-by: Brent Salisbury <brent@docker.com>
2016-03-10 17:09:48 -05:00
Madhu Venugopal
fe10aae30b Adding the missing ExternalConnectivity driver methods
Signed-off-by: Madhu Venugopal <madhu@docker.com>
2016-03-09 19:35:44 -08:00
Alessandro Boch
7e8a656991 Merge pull request #964 from nerdalert/ipvlan_macvlan
Added macvlan and ipvlan drivers
2016-03-09 18:15:10 -08:00
Madhu Venugopal
ed9601e4c6 Make macvlan and ipvlan drivers as experimental
Signed-off-by: Madhu Venugopal <madhu@docker.com>
2016-03-09 19:43:20 -05:00