Commit Graph

226 Commits (8060d565946848abe4f67ffffb810dd3505fe4cb)

Author SHA1 Message Date
Lars Ekman deafffba7d
Updated and new tests for ipv4/ipv6 address mix 2019-01-16 11:04:31 +02:00
Lars Ekman 15631938e4
Only handle addresses of the own ip family 2019-01-16 11:04:26 +02:00
Kubernetes Prow Robot 0948f96ed2
Merge pull request #72409 from DataDog/automated-cherry-pick-of-#71895-#72106-upstream-release-1.13
Automated cherry pick of #71895 #72106 upstream release 1.13
2019-01-05 13:47:40 -08:00
Laurent Bernaille 3b3763cb15 Do not try to delete RS already in termination list 2018-12-28 17:16:19 +01:00
Laurent Bernaille 0864fd2f74 Add info message showing the reason for skipping deletion 2018-12-28 17:16:19 +01:00
Laurent Bernaille 9e8b5e9d63 Gofmt 2018-12-28 17:16:18 +01:00
Laurent Bernaille 089c277b6c Avoid unbinding multiple times for multiport svc 2018-12-28 17:16:18 +01:00
Laurent Bernaille d77f3a6795 Update test for new CleanupLegacyServices function 2018-12-28 17:16:18 +01:00
Laurent Bernaille 10beb23c84 Apply graceful termination logic when unbinding addresses 2018-12-28 17:16:18 +01:00
Laurent Bernaille cf42e01b04 Apply graceful termination when deleting a service 2018-12-28 17:16:18 +01:00
Laurent Bernaille caec159cb0 New sysctls to improve pod termination 2018-12-17 01:54:15 -08:00
Laurent Bernaille de95511d4e Generalize handling of InactiveConn to TCP 2018-12-08 17:29:13 +01:00
Laurent Bernaille 437edead27 Handle UDP graceful termination
The current logic is to delete a RS if the number of active connections
is 0. This makes sense for TCP but for UDP the number of active
connections is always 0. This is an issue for DNS queries because the RS
will be deleted but the IPVS connection will remain until it expires
(5mn by default) and if there are a lot of DNS queries, the port will be
reused and queries blackholed. Of course for this to work properly the
service needs to continue to serve queries until the connections expire
(this works fine with the lameduck option of coredns).
2018-12-08 17:29:13 +01:00
Laurent Bernaille 0523ad6239 Fix logic of delete function 2018-12-08 17:29:13 +01:00
Laurent Bernaille 67fee7318d Display RS complete name in logs
Help distinguish UDP and TCP RS (useful for DNS which uses both)
2018-12-08 17:29:13 +01:00
liangwei f39060c604 set net/ipv4/vs/conn_reuse_mode to 0 2018-11-16 15:17:24 +08:00
AdamDang cc4d38c768 Typo fix: healtcheck->healthcheck (#65394)
Typo fix: healtcheck->healthcheck

Typo fix: healtcheck->healthcheck
2018-11-13 19:45:24 -08:00
k8s-ci-robot d8e78c8ac5
Merge pull request #66149 from honkiko/do-not-take-all-endpoints-into-ipset
hairpin ipset could only contain local endpoints
2018-11-12 02:04:09 -08:00
Davanum Srinivas 954996e231
Move from glog to klog
- Move from the old github.com/golang/glog to k8s.io/klog
- klog as explicit InitFlags() so we add them as necessary
- we update the other repositories that we vendor that made a similar
change from glog to klog
  * github.com/kubernetes/repo-infra
  * k8s.io/gengo/
  * k8s.io/kube-openapi/
  * github.com/google/cadvisor
- Entirely remove all references to glog
- Fix some tests by explicit InitFlags in their init() methods

Change-Id: I92db545ff36fcec83afe98f550c9e630098b3135
2018-11-10 07:50:31 -05:00
k8s-ci-robot 7984a2bf60
Merge pull request #70564 from KevinWang15/master
Fix typos
2018-11-05 19:04:45 -08:00
Ke Wang 946c701b05 Fix Typo: mataData -> metaData; masquared -> masquerade 2018-11-05 21:19:25 +08:00
Weibin Lin 4b90559369 use 'nf_conntrack' instead of 'nf_conntrack_ipv4' for linux kernel >= 4.19 2018-11-05 10:33:31 +08:00
kvaps 489e95bc30 Set arp_ignore and arp_announce flags 2018-11-01 10:38:42 +01:00
Weibin Lin 95d379021b add module 'nf_conntrack' in ipvs prerequisite check 2018-10-27 16:40:38 +08:00
k8s-ci-robot 3b5d2e865e
Merge pull request #68436 from Nordix/issue-67799
Create ipsets with family inet6 in an ipv6-only cluster
2018-10-24 02:16:11 -07:00
xujieasd 4eab9406fa add UT code for cleanLegacyBindAddr
gofmt modify

change api to v1
2018-10-17 11:04:26 +08:00
Weibin Lin 73e3d8a081 Improve the ipvs error message 2018-10-10 16:16:58 +08:00
liangwei 456c351e31 fix bugs introduced by ipvs graceful termination 2018-09-30 16:40:13 +08:00
liangwei 9e4f84f42e ipvs connection based graceful termination 2018-09-27 15:16:48 +08:00
liangwei 80ff8b359c ipvs support graceful termination 2018-09-27 15:14:51 +08:00
k8s-ci-robot 3fe21e5433
Merge pull request #68922 from BenTheElder/version-staging
move pkg/util/version to staging
2018-09-26 22:59:42 -07:00
k8s-ci-robot 4ca9fa737e
Merge pull request #68760 from jessfraz/only-set-sysctl-if-not-set
pkg/proxy: only set sysctl if not already set
2018-09-26 04:56:59 -07:00
k8s-ci-robot fdd9c2e2a0
Merge pull request #67990 from tizhou86/newPR5
Fix golint error under pkg/proxy.
2018-09-24 17:17:19 -07:00
Benjamin Elder 8b56eb8588 hack/update-gofmt.sh 2018-09-24 12:21:29 -07:00
Benjamin Elder f828c6f662 hack/update-bazel.sh 2018-09-24 12:03:24 -07:00
Benjamin Elder 088cf3c37b find & replace version import 2018-09-24 12:03:24 -07:00
Jess Frazelle f8ba640ced
pkg/proxy: only set sysctl if not already set
This will allow for kube-proxy to be run without `privileged` and
with only adding the capability `NET_ADMIN`.

Signed-off-by: Jess Frazelle <acidburn@microsoft.com>
2018-09-19 15:29:53 -04:00
Jia Xin 4ca62e4f39 Restore *filter table for ipvs
Resolve: #68194
2018-09-18 20:26:27 +08:00
Lars Ekman 0db4f6af4a Fix for #67799
Ipsets are now created with "family inet6" in an ipv6-only
cluster.
2018-09-08 19:48:40 +02:00
song a3b40dd7b7 fix typo in ipvs RADME.md 2018-09-03 11:34:09 +08:00
Kubernetes Submit Queue ef741c3038
Merge pull request #68075 from riverzhang/fix-ipvs-readme
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Fix how to use ipvs mode by kubeadm

**What this PR does / why we need it**:
how to use ipvs mode by kubeadm
**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes #

**Special notes for your reviewer**:

**Release note**:

```release-note

```
2018-08-31 14:16:16 -07:00
rongzhang 4f6b5734a1 Fix how to use ipvs mode by kubeadm 2018-08-31 22:16:40 +08:00
Kubernetes Submit Queue 11c47e1872
Merge pull request #67948 from wojtek-t/use_buffers_in_kube_proxy
Automatic merge from submit-queue (batch tested with PRs 66577, 67948, 68001, 67982). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Reduce amount of allocations in kube-proxy

Follow up from https://github.com/kubernetes/kubernetes/pull/65902
2018-08-29 16:33:34 -07:00
tizhou86 f18c133360 Fix golint error under pkg/proxy. 2018-08-29 16:16:29 +08:00
wojtekt 8fb365df32 Reduce amount of allocations in kube-proxy 2018-08-28 15:18:58 +02:00
Laszlo Janosi cbe94df8c6 gofmt update 2018-08-27 05:59:50 +00:00
Laszlo Janosi e466bdc67e Changes according to the approved KEP. SCTP is supported for HostPort and LoadBalancer. Alpha feature flag SCTPSupport controls the support of SCTP. Kube-proxy config parameter is removed. 2018-08-27 05:58:36 +00:00
Laszlo Janosi a6da2b1472 K8s SCTP support implementation for the first pull request
The requested Service Protocol is checked against the supported protocols of GCE Internal LB. The supported protocols are TCP and UDP.

SCTP is not supported by OpenStack LBaaS. If SCTP is requested in a Service with type=LoadBalancer, the request is rejected. Comment style is also corrected.

SCTP is not allowed for LoadBalancer Service and for HostPort. Kube-proxy can be configured not to start listening on the host port for SCTP: see the new SCTPUserSpaceNode parameter

changed the vendor github.com/nokia/sctp to github.com/ishidawataru/sctp. I.e. from now on we use the upstream version.

netexec.go compilation fixed. Various test cases fixed

SCTP related conformance tests removed. Netexec's pod definition and Dockerfile are updated to expose the new SCTP port(8082)

SCTP related e2e test cases are removed as the e2e test systems do not support SCTP

sctp related firewall config is removed from cluster/gce/util.sh. Variable name sctp_addr is corrected to sctpAddr in pkg/proxy/ipvs/proxier.go

cluster/gce/util.sh is copied from master
2018-08-27 05:56:27 +00:00
fisherxu 5a9bea0353 update bazel 2018-08-16 09:59:33 +08:00
x00416946 fisherxu 79e17e6cd7 use versioned api in kube-proxy 2018-08-16 09:59:33 +08:00