Other cluster provider than gce or gke might have different cgroup layouts.
From outside we cannot know how these look like (especially in conformance test
which do not know the cluster provider at all).
Hence, this PR defaults to only the "/" cgroup to collect stats for. In the case
of gce or gke the full container list is tested.
Fixes https://github.com/mesosphere/kubernetes-mesos/issues/436
As discussed @gmarek the given test does not belong into the conformance test
suite because it makes a lot of static assumptions about the cgroup setup of the
nodes which cannot be fulfilled by all cluster providers. Depending on the
installation the kubelet is not allowed to move around process
into specific containers.
Fixes https://github.com/mesosphere/kubernetes-mesos/issues/439.
In order to make the etcd instances of the VMs join into a single cluster,
we used to use the discovery mechanism.
This made the cluster bootstrap dependent on an external etcd cluster instance.
74601ea replaced the dependency on discovery.etcd.io by a local etcd cluster.
This change completely gets rid of the dynamic discovery mechanism in favor
of the static configuration method.
This should be both safe and light since it completely removes the need of having
an external etcd cluster running somewhere (either discovery.etcd.io, or locally).
Added status REST storage.
Added validation for Status Updates.
Changed job controller to update status rather than just job
(which ignores status updates).
Have poller() send to the channel once, immediately, before the ticker
starts. This way, Poll, PollInfinite, and WaitFor will check the
condition immediately, instead of waiting for the poller's interval to
elapse once before doing the initial condition check.
- instantiate framework.Controller for pods in the executor using framework.NewInformer,
in order to watch pod updates for pods on that host
- forwards updates like graceful termination to the kubelet.
This might also be the preparation for other updates which are supported by the
kubelet.