Munro, Louis
b262a1eedc
Fix xtables.lock race condition between weave and kube-proxy.
...
Fixes #3351
2018-07-22 13:12:00 -04:00
Bryan Boreham
d513e68fab
Add permissions to set node status
...
This is needed to update the node NetworkUnavailable conditon
see https://github.com/weaveworks/weave/issues/3249
2018-06-21 11:08:27 +00:00
Martynas Pumputis
25c26519ed
Merge remote-tracking branch 'origin/2.3'
2018-06-12 14:47:42 +02:00
Bryan Boreham
cf66c8d507
Don't remove myself when reclaiming
...
Some logs from users show an entry of X with annotation X, which
suggests we have gone down the path of removing ourselves. This change
avoids that possibility.
2018-06-12 11:52:03 +00:00
Bryan Boreham
ad6148f0f6
Break out of kube rm peers loop if nothing changes
...
Avoid getting into an infinite loop if some of the logic or underlying
data is bad
2018-06-12 08:31:35 +00:00
Martynas Pumputis
d15439aeac
Merge remote-tracking branch 'origin/2.3'
2018-06-11 16:39:03 +02:00
Martynas Pumputis
49216ce365
Merge pull request #3307 from weaveworks/set-kube-netstatus
...
Set Kubernetes NodeNetworkUnavailable to false when starting
2018-06-11 15:20:14 +02:00
Bryan Boreham
812c58297f
Merge pull request #3298 from weaveworks/issues/2924-preserve-src-ip-on-local
...
2924: Preserve the client source IP
2018-06-11 13:21:12 +01:00
Bryan Boreham
2a04df1049
Rename "kube-peers" to "kube-utils"
...
It's now doing things like network status that are outside of the
scope of "peers".
2018-06-11 11:22:07 +00:00
Martynas Pumputis
2eda624653
Merge pull request #3291 from weaveworks/withnetns-inproc
...
Remove subprocess for changing netns
2018-06-05 16:49:37 +02:00
Martynas Pumputis
b6115f0147
Address the PR comments
...
- Track only local changes.
- Add comment to the iptables rule which prevents SNAT'ing.
- Rename the ipset to weaver-no-masq-local to prevent NPC from destroying it.
- Fix comment about create/flush WEAVE-EXPOSE.
- Add comment about reexpose being no-op if bridge hasn't been exposed.
- Add comment that the feature is not only for Kubernetes.
- Reuse the ipset instance.
2018-06-04 19:22:48 +02:00
Martynas Pumputis
6dbe95a0b5
Add NO_MASQ_LOCAL to weave-kube/launch.sh
...
One can enable the feature by setting NO_MASQ_LOCAL=1 among
env vars of the weave-kube DaemonSet.
2018-06-04 14:08:24 +02:00
Martynas Pumputis
ebf4b4b48a
Implement and start using NoMasqLocalTracker
...
The tracker updates the "no-masq-local" ipset with CIDR ranges allocated
by IPAM.
2018-06-04 14:08:24 +02:00
Martynas Pumputis
62c30d9130
Extern LocalRangeTracker interface with String method
...
Cleaner approach than passing a tracker name to ipam/http.
2018-06-04 14:08:24 +02:00
Martynas Pumputis
21fb953d0f
Create weave-no-masq-local ipset
...
The ipset is used to track locally allocated CIDRs. If requested,
external traffic sent to pods within these CIDR ranges will
avoid SNAT'ing (NYI).
2018-06-04 14:08:24 +02:00
Martynas Pumputis
27c98070e8
Move npc/ipset package to net/ipset
...
It's going to be used by net/bridge.go.
2018-06-04 14:08:24 +02:00
Bryan Boreham
9b0d1bd054
Set Kubernetes NodeNetworkUnavailable to false when starting
2018-05-26 14:06:57 +00:00
Bryan Boreham
4c1c2a5661
Add --max-list-size option for ipset lists
...
and default it to 1024 for cases where the size is fixed by the kernel
2018-05-25 17:24:22 +00:00
Martynas Pumputis
6dce685105
Merge remote-tracking branch 'origin/2.3'
2018-05-22 17:21:03 +02:00
Marc Carré
9f207f161a
Add org.opencontainers.image.* labels to Dockerfiles
...
- This should ultimately help for image-to-code back references.
- `org.label-schema.*` labels are now deprecated, in favour of `org.opencontainers.image.*` labels.
See also: https://github.com/opencontainers/image-spec/blob/master/annotations.md#back-compatibility-with-label-schema
- Git revision is now injected at `docker build` time.
2018-05-14 11:51:40 +01:00
Bryan Boreham
c2c14410d2
Remove subprocess for changing netns
...
Now that Go 1.10 has removed the issue which made us do this.
2018-04-30 23:40:59 +01:00
Bryan Boreham
672c770dbe
Rework /report handler to pull format from URL
...
Otherwise test 150 would fail - Gorilla mux was not handling a newline
in the format parameter. This way you also get a better error if you
have an error in the parameter - instead of a 404.
2018-04-27 14:34:49 +01:00
Bryan Boreham
847046a225
Update to match upstream changes
2018-04-27 14:34:48 +01:00
Bryan Boreham
f6fdaf6492
Only expose metrics by default in weave-kube
2018-04-04 15:00:53 +01:00
Bryan Boreham
c528303841
Merge pull request #3265 from weaveworks/raise-kube-conn-limit
...
Raise weave-kube default connection limit from 30 to 100
2018-03-28 10:20:30 +01:00
Bryan Boreham
a439288765
Raise weave-kube default connection limit from 30 to 100
...
This was missed from 265bfcf
2018-03-27 21:06:41 +00:00
Martynas Pumputis
fff656f7e4
Merge pull request #3235 from weaveworks/wait-5-sec
...
Wait 5 seconds to let pod connect before rolling next pod
2018-03-08 14:36:11 +01:00
Bryan Boreham
20eee3818e
Merge pull request #3236 from weaveworks/apk-ca-certs
...
Install ca-certificates instead of copying them
2018-02-28 17:00:31 +00:00
Martynas Pumputis
0268aeb25f
Install ca-certificates instead of copying them
...
There is a package for alpine:
https://pkgs.alpinelinux.org/packages?name=ca-certificates&branch=v3.6
2018-02-01 14:44:00 +01:00
Bryan Boreham
ea3aba8971
Wait 5 seconds to let pod connect before rolling next pod
2018-01-31 10:54:07 +00:00
Bryan Boreham
265bfcf9d7
Raise default connection limit from 30 to 100
2018-01-31 10:48:05 +00:00
Bryan Boreham
e7f30106c0
Pass the WeaveDNS Domain into the proxy
...
instead of obtaining it via the http api
2018-01-29 15:55:36 +00:00
Bryan Boreham
86d2800b59
Make proxy use configured WeaveDNS address
...
rather than assuming it is listening on the weave bridge
2018-01-29 15:55:36 +00:00
Bryan Boreham
e65006042d
Remove obsolete --dns-effective-listen-address parameter
...
it was needed when we ran inside a container network namespace
2018-01-29 15:55:36 +00:00
Martynas Pumputis
a0c8fc2ddb
Pass WEAVE_NO_BRIDGED_FASTDP to weaver
2017-12-17 19:05:12 +01:00
Martynas Pumputis
1860f21efb
Remove "create_bridge" routines
...
No longer needed in the weave script and thus, in weaveutil.
2017-12-16 21:19:25 +01:00
Martynas Pumputis
541adf6bb1
Make "weave attach" to depend on running weaver
...
"weave attach $CIDR $CONTAINER_ID" is no longer possible w/o
running weaver. This feature was undocumented and complicated
the weave script, as "weave attach" required to call "create_bridge".
Removing the feature allows us to eliminate the bridge creation
from the script.
Running "weave attach" w/o weaver results in the following err:
bridge "weave" not present; did you launch weave?
Also, this commit simplifies the "attach-container" cmd from
weaveutil by removing "mtu" as a param. The cmd is used
only by "weave attach", and a mtu is value for an attached
container interface is exactly the same as one of the weave bridge.
2017-12-16 21:17:45 +01:00
Shevchenko Vitaliy
12b4898b3d
Add ability to set log level for net-plugin
2017-12-14 14:19:33 +02:00
Bryan Boreham
d2ed91ccc8
Clean up log messages a bit
2017-12-01 14:20:39 +00:00
Bryan Boreham
333f4a1d3c
Make sure Annotation names conform to Kubernetes requirements.
...
E.g. replace "26:c6:0b:ba:fd:31" with "26_c6_0b_ba_fd_31"
2017-12-01 14:20:39 +00:00
Bryan Boreham
832fe2f0b0
Update local copy of annotations even after error
...
e.g. if we get a clash because someone else has updated the data, it
returns the new data so we should work off that next time.
Also re-fetch the Annotations every time round the main loop for safety.
2017-12-01 14:20:39 +00:00
Bryan Boreham
f07238c8bb
Move info log to after error check
2017-11-16 14:31:40 +00:00
Bryan Boreham
3b499ce27c
Rearrange peer reclaim checks in weave-kube launch script
...
This is to make it behave better on fresh start, and in the case where
the manifest has not been updated to give it permissions.
2017-11-16 14:14:54 +00:00
Bryan Boreham
f0e511510a
Don't print a message on flag not found
2017-11-15 12:35:19 +00:00
Bryan Boreham
570ab0b10b
Avoid deleting persisted data on weave-kube upgrade
...
Add a feature to weaveutil to get and set flags, then use this feature
to mark the DB when this version runs
2017-11-15 11:26:43 +00:00
Bryan Boreham
214cf6cb2e
Flip result code when checking for new peer
...
This avoids mistaking an error condition for the result we should act on
2017-11-15 10:11:02 +00:00
Bryan Boreham
07459f0cec
Merge pull request #3149 from weaveworks/fix-2797-loosing-ipam-ips
...
Fix 2797 on Kubernetes - Cluster goes down because all IPs become unreachable
2017-11-14 15:31:06 +00:00
Bryan Boreham
c67bc704e1
Temporarily raise kube-peers log level to debug
2017-11-14 14:16:01 +00:00
Bryan Boreham
3501ad45e6
Cope with a Kubernetes node being deleted and coming back
...
Add features to weaver and kube-peers to find the peer name and check
if it is in the list, then in launch.sh delete persisted data if not.
2017-11-14 14:15:31 +00:00
Bryan Boreham
70a13c9c12
Make kube-peers logging consistent and add -log-level flag
...
Also tag kube-peer log messages with "[kube-peers]": in a standard
deployment they end up interspersed with weaver log messages so this
makes it easier to pick them out.
2017-11-14 14:06:34 +00:00