Commit Graph

156 Commits

Author SHA1 Message Date
k8s-merge-robot
c993cf6509 Merge pull request #13192 from jiangyaoguo/rate-limit-events-in-kubelet
Auto commit by PR queue bot
2015-09-09 14:58:28 -07:00
Jerzy Szczepkowski
6998247e1b Implemented removal of Deployments, Daemons & HorizontalPodAutoscalers when Namespace is removed.
Implemented removal of Deployments, Daemons & HorizontalPodAutoscalers when Namespace is removed. Added unittest. Fixes #12735.
2015-09-09 10:59:43 +02:00
jiangyaoguo
1460a1fb9e Rate limit events in kubelet
1. Add EvnetRecordQps and EventBurst parameter in kubelet.
2. If  EvnetRecordQps and EventBurst was set, rate limit events in kubelet
with a independent ratelimiter as setted.
2015-09-09 16:57:21 +08:00
James DeFelice
cf908df89c add flags for initial executor cpu and memory resources 2015-09-06 02:16:09 +00:00
Chao Xu
9fc79e9d99 refactor testapi and test scripts to prepare for multiple API groups. 2015-09-04 18:01:32 -07:00
Dr. Stefan Schimanski
ada14a524d Fix compilation of Mesos minion on Mac 2015-09-04 16:59:44 +00:00
James DeFelice
a1cea8dd87 Flexible resource accounting and pod resource containment:
- new: introduce AllocationStrategy, Predicate, and Procurement to scheduler pkg
- new: --contain-pod-resources flag (workaround for docker+systemd+mesos problems)
- new: --account-for-pod-resources flag (for testing overcommitment)
- bugfix: forward -v flag from minion controller to executor
2015-09-04 00:49:13 +00:00
Abhi Shah
c28b68d254 Merge pull request #13295 from mesosphere/minion-signals
MESOS: refactor process management in the minion controller
2015-09-03 16:37:46 -07:00
Abhi Shah
c9f2d3151b Merge pull request #13155 from derekwaynecarr/enforce_limits
Map cpu limits to cpu-quota in docker run
2015-09-03 16:28:04 -07:00
Abhi Shah
49523500c3 Merge pull request #13566 from mesosphere/reconcile-all-pods
MESOS: task reconciliation must look at NamespaceAll, not NamespaceDefault
2015-09-03 15:35:17 -07:00
k8s-merge-robot
d1c7a5f04e Merge pull request #13362 from mesosphere/proxy-runtime
Auto commit by PR queue bot
2015-09-03 15:26:56 -07:00
James DeFelice
124929e373 refactoring of child process handling code
- tasks subpackage responsible for managing system process lifecycle
- minion propagates SIGTERM to child procs
- child procs will be SIGKILL'd upon parent process death
2015-09-03 21:52:08 +00:00
Abhi Shah
9e59ceaa06 Merge pull request #13549 from mesosphere/incremental-pod-updates
MESOS: Switch to incremental pod config notification
2015-09-03 14:24:38 -07:00
Dr. Stefan Schimanski
216865b80a Switch to incremental pod config notification
This fixes https://github.com/mesosphere/kubernetes-mesos/issues/463, i.e.
https://github.com/kubernetes/kubernetes/pull/13003 which broke contrib/mesos.
2015-09-03 22:49:02 +02:00
k8s-merge-robot
5d8a6049be Merge pull request #12848 from wojtek-t/private_watch_cache
Auto commit by PR queue bot
2015-09-03 13:06:18 -07:00
James DeFelice
d1589b9571 task reconciliation must look at NamespaceAll, not NamespaceDefault 2015-09-03 18:01:45 +00:00
derekwaynecarr
5dc74e8dbf Add support for CFS quota in kubelet 2015-09-03 13:44:28 -04:00
k8s-merge-robot
e8cda9dc92 Merge pull request #13310 from markturansky/volume_config
Auto commit by PR queue bot
2015-09-02 14:05:30 -07:00
James DeFelice
7fbd290167 moved cgroup-root detection to minion service; kube proxy now configured to run in mesos container 2015-09-02 06:13:26 +00:00
Daniel Smith
f7123ac8c6 Merge pull request #10457 from mesosphere/proc_rewrite
MESOS: rewrite Process implementation from scratch, unskip previously failing test
2015-09-01 15:25:12 -07:00
markturansky
68358fd308 Added VolumeConfig to volumes 2015-09-01 12:04:26 -04:00
Edward Muller
69da77c6b0 s:code.google.com/p:github.com/scalingdata:
Because code.google.com is going away. Probably #1 of several.
2015-08-31 11:29:33 -07:00
Wojciech Tyczynski
e202f9c797 Add resource version to Store Replace params. 2015-08-31 09:49:12 +02:00
James DeFelice
a5fa5673e2 rewrite Process implementation from scratch, unskip previously failing test:
- fix races in unit tests
- fix flaky singleActionEndsProcess test; further simplify Process impl
- fix flakey error handling in processAdapter
- eliminate time-based test assertions
2015-08-31 06:05:51 +00:00
k8s-merge-robot
de60651cc0 Merge pull request #12858 from MatMaul/master
Auto commit by PR queue bot
2015-08-30 21:46:50 -07:00
k8s-merge-robot
4a7115d272 Merge pull request #11955 from pedro-r-marques/flag_resolv_conf
Auto commit by PR queue bot
2015-08-30 21:03:54 -07:00
Dr. Stefan Schimanski
cac58f6db7 Add --path-override to minion to change the PATH env var of subprocesses;
pass hostname-override through to kube-proxy (if defined)
2015-08-27 22:57:04 +00:00
Pedro Roque Marques
99b1da848d Add kubelet '--resolv-conf' flag.
Allow the user to specify the resolver configuration file that is used
to determine the default DNS parameters. This defaults to the system's
/etc/resolv.conf.
2015-08-26 15:41:36 -07:00
Yu-Ju Hong
c237ac4c84 Merge pull request #13003 from yujuhong/decouple_workers
kubelet: trigger pod workers independently
2015-08-26 09:53:25 -07:00
Mathieu Velten
57f18a0e04 Add a dockercfg_path parameter to the Mesos scheduler (the main purpose is to handle private repos auth).
This is implemented by copying the dockercfg file in the executor work directory.
2015-08-26 11:21:08 +02:00
Yu-Ju Hong
b906e34576 kubelet: trigger pod workers independently
Currently, whenever there is any update, kubelet would force all pod workers to
sync again, causing resource contention and hence performance degradation.

This commit flips kubelet to use incremental updates (as opposed to snapshots).
This allows us to know what pods have changed and send updates to those pod
workers only. The `SyncPods` function has been replaced with individual
handlers, each handling an operation (ADD, REMOVE, UPDATE). Pod workers are
still triggered periodically, and kubelet performs periodic cleanup as well.

This commit also spawns a new goroutine solely responsible for killing pods.
This is necessary because pod killing could hold up the sync loop for
indefinitely long amount of time now user can define the graceful termination
period in the container spec.
2015-08-25 17:52:01 -07:00
Clayton Coleman
8a62f1828d Evict terminating pods 2015-08-25 14:17:39 -03:00
Yu-Ju Hong
9f508e9422 Merge pull request #13076 from invenfantasy/master
Cleanup deprecated Forever function
2015-08-25 10:07:10 -07:00
Karl Isenberg
158c42f4be Log Mesos task message on status update
- Log error when task state is unknown
2015-08-24 15:31:31 -07:00
Dr. Stefan Schimanski
f9635d5778 [mesos] Handle TASK_ERROR
- The TASK_ERROR task status was introduced with Mesos 0.21 and is actually used since 0.22.
  It was not handled at all before this patch, leaving errored task in the registry in phase
  "Pending". This will lead to task status updates from the Mesos Master on reconciliation with empty
  slaveId fields, leading to scheduler crashes eventually.
- Handle terminal task with empty slaveId.
  The slave id can be empty for TASK_ERROR.
  The modified code path does not use the slaveId.
2015-08-24 15:31:31 -07:00
caogaojin
60cb4406e9 Cleanup deprecated Forever function
Since util.Forever function has been deprecated, we should cleanup these
pieces of code.
2015-08-24 10:31:59 +08:00
Jerzy Szczepkowski
b6f18c7ce0 Merge pull request #12943 from mesosphere/node-selector-support
Add NodeSelector support to Mesos scheduler
2015-08-21 10:32:24 +02:00
Saad Ali
9b01580946 Merge pull request #12872 from runningwild/master
Fix several problems with using rkt on gce
2015-08-20 15:46:16 -07:00
Eric Paris
bcf912667b Use pflag functions instead of ours. 2015-08-20 15:00:55 -07:00
Dr. Stefan Schimanski
10bb0424c4 Add NodeSelector support to scheduler 2015-08-20 20:59:10 +02:00
Wojciech Tyczynski
e794e36a32 Merge pull request #12861 from mesosphere/empty-kubelet-container-vars
MESOS: Stop the kubelet from taking control over cgroups and other processes
2015-08-20 09:02:19 +02:00
Saad Ali
8a43bd621e Merge pull request #12745 from eparis/even-less-dash-false-positive
verify-flags-underscore.py: Even fewer dash false positives
2015-08-19 17:03:29 -07:00
Dr. Stefan Schimanski
d6feca1885 Set the kubelet cgroup to <executor-cgroup>/kubelet
In contrast to the docker and system containers (= cgroup path) this has no
undesired consequence, only that the kubelet itself will be in its own cgroup
below the executor cgroup.
2015-08-19 20:36:21 +02:00
Jonathan Wills
80e799fc0c Allow configuring the rkt binary in a kubelet with a flag.
This is necessary because coreos comes with rkt installed, and if we want to use a different version
we need some way to avoid the default one.
2015-08-19 09:42:13 -04:00
Robert Bailey
08e6a43c1d Revert "Merge pull request #9165 from smarterclayton/graceful"
This reverts commit 4f856b595d, reversing
changes made to d78525a83b.

Conflicts:
	pkg/kubelet/status_manager.go
2015-08-18 17:34:49 -07:00
Kris Rousey
ae6c64d9bb Moving everyone to unversioned client 2015-08-18 10:23:03 -07:00
Dr. Stefan Schimanski
8ddcb222e9 Stop the kubelet from taking control over cgroups and other processes 2015-08-18 17:42:58 +02:00
Clayton Coleman
edb108802d Handle gracefully terminated pods in node controller
Eviction should retry longer and wait for completion of the pod.
2015-08-18 09:08:45 -04:00
Eric Paris
c560f41a4b Update docs which were incorrectly using _ in flag names
Each of these was verified that the actual flag declaration correctly
used -
2015-08-17 11:18:43 -07:00
Karl Isenberg
61c9dd876e Improve readability of scheduling failure logs 2015-08-17 12:17:48 +02:00