Commit Graph

41743 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
4959cd6339 Merge pull request #100671 from Niekvdplas/spelling-mistakes
Fixed several spelling mistakes
2021-04-09 05:19:45 -07:00
Kubernetes Prow Robot
6c97da72f4 Merge pull request #100599 from masap/nodeport1
Fire an event when failing to open NodePort
2021-04-09 05:19:29 -07:00
Kubernetes Prow Robot
7edb592e3d Merge pull request #100575 from ZP-AlwaysWin/dev-moons
Add unit tests and fix scenarios not covered in unit tests
2021-04-09 05:19:20 -07:00
Kubernetes Prow Robot
77e73ffbee Merge pull request #100500 from jsafrane/aws-nvme-partitions
Fix mounting partitions on NVMe devices
2021-04-08 22:10:24 -07:00
Kubernetes Prow Robot
c0778c7e9a Merge pull request #100479 from houjun41544/20210323-InterPodAffinity
Missing return when error
2021-04-08 22:10:05 -07:00
Kubernetes Prow Robot
ad84094a8f Merge pull request #100477 from chendave/validation_noderesource
Move NodeResourcesFit plugin args validation to apis/config/validation
2021-04-08 22:09:56 -07:00
Kubernetes Prow Robot
c5e47b72c6 Merge pull request #100446 from masap/staticcheck1
test: Use bytes.Buffer.String
2021-04-08 22:09:31 -07:00
Kubernetes Prow Robot
b678d1b51d Merge pull request #100444 from july2993/mode
Change go file mode from 755 to 644
2021-04-08 22:09:22 -07:00
Kubernetes Prow Robot
67820edf18 Merge pull request #100404 from gnufied/reduce-vsphere-volume-length
reduce volume length for vsphere volumes
2021-04-08 22:08:49 -07:00
Kubernetes Prow Robot
067dbf4670 Merge pull request #100402 from gavinfish/api-cmp-diff
Cleanup: use cmp.Diff instead of diff.ObjectRefectDiff in pkg/api
2021-04-08 22:08:37 -07:00
Kubernetes Prow Robot
3c75651d15 Merge pull request #100357 from Huang-Wei/enq-serviceaffinity
implement EnqueueExtensions interface in serviceaffinity
2021-04-08 20:30:20 -07:00
Kubernetes Prow Robot
4b9421674f Merge pull request #100325 from cwdsuzhou/donot_delete_waitingpod
Preempting: do not delete the victim if it just exits in WaitingPods
2021-04-08 20:29:46 -07:00
Kubernetes Prow Robot
ae40c62c49 Merge pull request #100286 from tanjing2020/skip_updates_assumed_pods
Scheduler: skip updates of assumed pods
2021-04-08 20:29:29 -07:00
Kubernetes Prow Robot
227db2e0d4 Merge pull request #100279 from Jerry-Ge/nodename
added eventsToRegister for nodeName & nodeUnschedulable plugins
2021-04-08 20:29:21 -07:00
Kubernetes Prow Robot
12f8466459 Merge pull request #100267 from Jeffwan/support_arbitratry_resources
Expose resources overrides and maxPods conf in kubemark
2021-04-08 20:29:12 -07:00
Kubernetes Prow Robot
50b0211233 Merge pull request #100245 from mengjiao-liu/Update-broken-links
Update `PodSpec.Overhead` broken links
2021-04-08 20:29:03 -07:00
Kubernetes Prow Robot
42a4953c6e Merge pull request #100186 from yangjunmyfm192085/run-test28
test: fix the error case of TestAuthenticationValidate
2021-04-08 20:28:34 -07:00
Kubernetes Prow Robot
4a3e1b90c7 Merge pull request #100175 from changshuchao/testcase_utils
test case for pkg/kubelet/cri/remote/utils.go
2021-04-08 20:28:22 -07:00
Kubernetes Prow Robot
b15859b301 Merge pull request #100100 from maxlaverse/fix_pv_provisioning
fix rounding of volume storage requests
2021-04-08 17:12:04 -07:00
Kubernetes Prow Robot
611a2d9d54 Merge pull request #100088 from yangjunmyfm192085/run-test27
Fix TestGetNodeAddresses function error.
2021-04-08 17:11:56 -07:00
Kubernetes Prow Robot
39fb6282be Merge pull request #100068 from chendave/validation
Update comments for the resource weight of `RequestedToCapacityRatio` plugin
2021-04-08 17:11:31 -07:00
Kubernetes Prow Robot
f72410d4c6 Merge pull request #100067 from changshuchao/testcase_status
Add test case for state.go
2021-04-08 17:11:21 -07:00
Kubernetes Prow Robot
2b89558a1f Merge pull request #100051 from tanjing2020/nodeaffinity
implement EnqueueExtensions interface in nodeaffinity
2021-04-08 17:11:13 -07:00
Kubernetes Prow Robot
7cd73076a2 Merge pull request #100049 from Huang-Wei/basic-check-prior-to-enq
sched: support PreEnqueueChecks prior to moving Pods
2021-04-08 17:11:04 -07:00
Kubernetes Prow Robot
2159f967b4 Merge pull request #100020 from pravarag/interpodaffinity-schedule-plugin
implement EnqueueExtensions in interPodAffinity
2021-04-08 17:10:38 -07:00
Kubernetes Prow Robot
d0510aae37 Merge pull request #100004 from KofClubs/implement-EventsToRegister-nodeports
Implemented EnqueueExtensions interface for NodePorts
2021-04-08 17:10:30 -07:00
Kubernetes Prow Robot
0172cbf56c Merge pull request #99963 from alculquicondor/job_complete_active
Remove active pods past completions
2021-04-08 17:10:10 -07:00
Kubernetes Prow Robot
10ed4502f4 Merge pull request #99937 from wzshiming/fea/enq-nodelabel
Implement EnqueueExtensions interface in nodelabel
2021-04-08 16:00:51 -07:00
Kubernetes Prow Robot
adbf279bf1 Merge pull request #99936 from pacoxu/feature/taint-schedule-plugin
implement EnqueueExtensions interface in taint toleration scheduling
2021-04-08 16:00:43 -07:00
Kubernetes Prow Robot
bb0906dcb2 Merge pull request #99929 from lala123912/lint_clean
Remove unused/dead code
2021-04-08 16:00:34 -07:00
Kubernetes Prow Robot
7807bb03ba Merge pull request #99849 from jpbetz/apply-subresources
Add subresource apply support to client-go
2021-04-08 16:00:00 -07:00
Kubernetes Prow Robot
4fae6ae5d2 Merge pull request #99839 from saschagrunert/portforward-stream-cleanup
Cleanup portforward streams after their usage
2021-04-08 15:59:51 -07:00
Kubernetes Prow Robot
52e42d3ca7 Merge pull request #99702 from wzshiming/fix/http-probe
Fix HTTPProbe initialize header
2021-04-08 15:59:09 -07:00
Kubernetes Prow Robot
669016067d Merge pull request #99566 from huchengze/patch-6
migrate log in pkg/volume/volume_linux.go
2021-04-08 14:28:43 -07:00
Kubernetes Prow Robot
26fba1403b Merge pull request #99528 from pandaamanda/apiserver_validation_code_optimization
fix log message and optimize log format check logic
2021-04-08 14:28:34 -07:00
Kubernetes Prow Robot
86fdf7b56e Merge pull request #99487 from chymy/fix-staticcheck0226
Fix staticcheck failures for pkg/controller/replicaset and pkg/kubelet/dockershim
2021-04-08 14:28:17 -07:00
Kubernetes Prow Robot
016d1c1072 Merge pull request #99278 from yangjunmyfm192085/run-test21
Fix incorrect use of  klog.ErrorS
2021-04-08 14:27:58 -07:00
Kubernetes Prow Robot
6409ec97e8 Merge pull request #99165 from danielamlins/test_validate_network_policy_refactor
TestValidateNetworkPolicy refactor
2021-04-08 14:27:49 -07:00
Kubernetes Prow Robot
e7dc0df323 Merge pull request #97650 from ialidzhikov/cleanup/redundant-imports
Clean up some redundant imports
2021-04-08 14:27:22 -07:00
Kubernetes Prow Robot
4c9e55a44f Merge pull request #93260 from nckturner/return-true-for-enabled-ecr-provider
Fix ECR provider startup latency
2021-04-08 14:26:55 -07:00
Pravar Agrawal
2cf284994f implement EnqueueExtensions in interPodAffinity 2021-04-07 08:43:49 +05:30
Christian Huffman
8efa9e2f6c Updated generated dependencies 2021-04-05 16:06:17 -04:00
Christian Huffman
3bcf407d2f Addresses nitpicks for FSGroupPolicy 2021-04-05 15:45:40 -04:00
Joe Betz
29423501f0 Add apply subresource support to client-go's typed client 2021-04-05 12:27:42 -07:00
Masashi Honma
d43b8dbf4e Use simpler expressions for error messages
1. Do not describe port type in message because lp.String() already has the
information.

2. Remove duplicate error detail from event log.
Previous log is like this.

47s         Warning   listen tcp4 :30764: socket: too many open files   node/127.0.0.1   can't open port "nodePort for default/temp-svc:834" (:30764/tcp4), skipping it: listen tcp4 :30764: socket: too many open files
2021-04-01 09:13:45 +09:00
Masashi Honma
3266136c1d Fire an event when failing to open NodePort
[issue]
When creating a NodePort service with the kubectl create command, the NodePort
assignment may fail.

Failure to assign a NodePort can be simulated with the following malicious
command[1].

$ kubectl create service nodeport temp-svc --tcp=`python3 <<EOF
print("1", end="")
for i in range(2, 1026):
  print("," + str(i), end="")
EOF
`

The command succeeds and shows following output.

service/temp-svc created

The service has been successfully generated and can also be referenced with the
get command.

$ kubectl get svc
NAME         TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)
temp-svc     NodePort    10.0.0.139   <none>        1:31335/TCP,2:32367/TCP,3:30263/TCP,(omitted),1023:31821/TCP,1024:32475/TCP,1025:30311/TCP   12s

The user does not recognize failure to assign a NodePort because
create/get/describe command does not show any error. This is the issue.

[solution]
Users can notice errors by looking at the kube-proxy logs, but it may be difficult to see the kube-proxy logs of all nodes.

E0327 08:50:10.216571  660960 proxier.go:1286] "can't open port, skipping this nodePort" err="listen tcp4 :30641: socket: too many open files" port="\"nodePort for default/temp-svc:744\" (:30641/tcp4)"
E0327 08:50:10.216611  660960 proxier.go:1286] "can't open port, skipping this nodePort" err="listen tcp4 :30827: socket: too many open files" port="\"nodePort for default/temp-svc:857\" (:30827/tcp4)"
...
E0327 08:50:10.217119  660960 proxier.go:1286] "can't open port, skipping this nodePort" err="listen tcp4 :32484: socket: too many open files" port="\"nodePort for default/temp-svc:805\" (:32484/tcp4)"
E0327 08:50:10.217293  660960 proxier.go:1612] "Failed to execute iptables-restore" err="pipe2: too many open files ()"
I0327 08:50:10.217341  660960 proxier.go:1615] "Closing local ports after iptables-restore failure"

So, this patch will fire an event when NodePort assignment fails.
In fact, when the externalIP assignment fails, it is also notified by event.

The event will be displayed like this.

$ kubectl get event
LAST SEEN   TYPE      REASON                                            OBJECT           MESSAGE
...
2s          Warning   listen tcp4 :31055: socket: too many open files   node/127.0.0.1   can't open "nodePort for default/temp-svc:901" (:31055/tcp4), skipping this nodePort: listen tcp4 :31055: socket: too many open files
2s          Warning   listen tcp4 :31422: socket: too many open files   node/127.0.0.1   can't open "nodePort for default/temp-svc:474" (:31422/tcp4), skipping this nodePort: listen tcp4 :31422: socket: too many open files
...

This PR fixes iptables and ipvs proxier.
Since userspace proxier does not seem to be affected by this issue, it is not fixed.

[1] Assume that fd limit is 1024(default).
$ ulimit -n
1024
2021-04-01 08:27:51 +09:00
Niekvdplas
fec272a7b2 Fixed several spelling mistakes 2021-03-30 23:02:09 +02:00
Kubernetes Prow Robot
9c9af69ea6 Merge pull request #100573 from pacoxu/upgrade-corefile-migration
Update the kubelet log pod status to level 6 as it is so big
2021-03-26 11:26:43 -07:00
Paco Xu
54606db1b4 Update pkg/kubelet/pleg/generic.go
Co-authored-by: Elana Hashman <ehashman@users.noreply.github.com>
2021-03-26 13:19:51 +08:00
ZP-AlwaysWin
b56d8dd513 Add unit test 2021-03-26 11:10:30 +08:00