Commit Graph

1026 Commits (941966c31d7c76f375f6f87ce48cc117356b14ae)

Author SHA1 Message Date
Paul Morie b538642464 Inject mounter into volume plugins 2015-05-04 11:28:57 -04:00
Daniel Smith 4a6ab7fd36 Merge pull request #7597 from eparis/copyright
Use generic copyright holder name in license boilerplate
2015-05-01 17:01:39 -07:00
Eric Paris 6b3a6e6b98 Make copyright ownership statement generic
Instead of saying "Google Inc." (which is not always correct) say "The
Kubernetes Authors", which is generic.
2015-05-01 17:49:56 -04:00
Victor Marmol d9d61c3511 Kubelet: Add container runtime option. 2015-05-01 14:26:54 -07:00
Tobi Knaup b96c4046a8 Add --cgroup_root flag to Kubelet to set the parent cgroup for all pods.
Implements #6991.
2015-04-30 10:32:27 -07:00
Tim Hockin 0c611370e0 Merge pull request #7281 from thockin/flag-word-separators
Make flags accept - or _ between words
2015-04-27 18:11:58 -07:00
Tim Hockin a3d45fada8 Change flags to use dashes in help 2015-04-27 15:11:03 -07:00
Victor Marmol 7404b7019c Move Docker-specific log handling to DockerManager.
Eases the separation of Docker-specific code into the Docker-specific
runtime.
2015-04-27 13:10:10 -07:00
Satnam Singh 2444c1f943 Propagate pod and container name for log files 2015-04-22 15:08:51 -07:00
Kenjiro Nakayama 5e2e59e728 Add more help description to cert_dir flag 2015-04-20 00:35:56 +09:00
Robert Bailey f3dd053a08 Merge pull request #6952 from mikedanese/kubelet-profiling
add enable_profiling option to kubelet healthz port
2015-04-17 07:42:35 -07:00
Mike Danese 7b13870b32 add profiling to kubelet 2015-04-16 23:11:40 -07:00
Robert Bailey 8aff238c5f Remove an unused function in the kubelet code. 2015-04-16 15:38:12 -07:00
Dawn Chen d912398d07 Merge pull request #6813 from vmarmol/in-container
Run Kubelet and Kube-proxy in resource-only containers.
2015-04-15 10:37:00 -07:00
markturansky d904e747e3 PVClaim volume plugin 2015-04-14 16:21:29 -04:00
Victor Marmol fb3c351fe1 Run Kubelet on "/kubelet" container. 2015-04-14 10:29:05 -07:00
Fabio Yeon e99141de0d Merge pull request #6729 from smarterclayton/chaosclient
Add a new Chaos transport that can simulate network failure and add it to the kubelet
2015-04-13 16:06:53 -07:00
Clayton Coleman ca335d7be9 Add support for chaos to Kubelet and hack/local-up-cluster.sh 2015-04-13 18:21:20 -04:00
Xiang Li cea38a2f4e pkg/kubelet: kill a TODO in util.go
Move kubelet.CapabilitiesSetup to capabilities.Setup
2015-04-11 10:55:39 -07:00
Justin Santa Barbara 503e19e58c Rename aws_pd -> aws_ebs 2015-04-10 13:25:44 -07:00
Justin Santa Barbara edf0292d4a Add initial support for Volumes to AWS 2015-04-10 13:25:42 -07:00
Yifan Gu b868f421e0 kubelet: Move pod infra container image setting to dockertools. 2015-04-09 09:53:07 -07:00
Wojciech Tyczynski 37ea722b7b Set NodeStatusUpdateFrequency 2015-04-09 10:44:48 +02:00
Vishnu Kannan 2b5cad6acf Improve kubelet logging around startup. This might help detect any lockup issues during startup. 2015-04-08 21:02:15 +00:00
David Oppenheimer d8aa57872a Change default Kubelet NodeStatusUpdateFrequency from 2s to 10s. 2015-04-07 12:36:09 -07:00
David Oppenheimer 402bf60366 Merge pull request #6214 from gmarek/move_consts_to_flags
Move NodeController constants to flags
2015-04-07 11:31:11 -07:00
Huamin Chen a278ceeb0a implement glusterfs volume plugin
Signed-off-by: Huamin Chen <hchen@redhat.com>
2015-04-07 09:14:39 -04:00
gmarek 321a81047c Move NodeController constants to flags 2015-04-07 12:33:03 +02:00
Vish Kannan be0feddfa5 Merge pull request #5506 from rootfs/dev
add iscsi volume plugin
2015-04-06 15:11:44 -07:00
Huamin Chen 7a82af31de add iscsi volume plugin
Signed-off-by: Huamin Chen <hchen@redhat.com>
2015-04-06 16:20:28 -04:00
James DeFelice d194af6b4f allow for more easily customized kubelet creation and initialization 2015-04-06 18:51:42 +00:00
Robert Bailey 4488ff95a2 Create an insecure (http) read-only port on the kubelet so that
heapster can collect metrics. Update the heapster config to
point to the non-secured port.
2015-04-02 10:45:49 -07:00
Robert Bailey f15e34a1bf Revert "Merge pull request #6309 from GoogleCloudPlatform/revert-6243-kubelet-ssl"
This reverts commit 96a0a0d618, reversing
changes made to 2af9b54147.
2015-04-02 10:44:37 -07:00
Dawn Chen ab1a8b1e7c Merge pull request #6298 from roberthbailey/kubelet-config
Remove salt configuration that matches the default settings in the Kubelet.
2015-04-01 14:31:31 -07:00
Robert Bailey 32a1c052dc Revert "Configure the kubelet to use HTTPS" 2015-04-01 13:59:31 -07:00
Robert Bailey 40ebed845f Remove salt configuration that matches the default settings in
the Kubelet.
2015-04-01 12:13:40 -07:00
Robert Bailey dd9ec46cc0 Fix test-cmd to work with the kubelet listening on HTTPS. 2015-04-01 09:09:29 -07:00
Robert Bailey d0f48b68d8 Configure the Kubelet to listen on HTTPS. If no certificates are
provided on the command line, generate self-signed certs.
2015-04-01 09:09:29 -07:00
Daniel Smith acd67ebea0 Merge pull request #5535 from saad-ali/fix5327
Make each new instance of kubelet generate a new event channel
2015-03-30 17:05:27 -07:00
saadali e0f71cb21f Make each new instance of kubelet generate a new event channel (instead of reusing existing). 2015-03-30 14:22:16 -07:00
Robert Bailey bc8af553a3 Configure the kubelet to bind a simple healthz server to a localhost
port for monitoring by monit. This is in preparation for the standard
kubelet port to switch to SSL only (and eventually to only accepting
connections on the SSL port that present a proper client SSL cert).

Also standardize the formatting of the monit config files a bit.
2015-03-30 14:20:30 -07:00
Victor Marmol cf7e2756b5 Add HostNetworkSources capability to limit use of HostNetwork. 2015-03-25 11:23:06 -07:00
Sreekanth Pothanis 1c06cde4c4 added cloud provider flag to kubelet
This is to fix issue #5667
2015-03-24 19:32:50 -07:00
Deyuan Deng cf548765c9 Change kubelet update frequency to 2s, and make it a constant. 2015-03-24 14:23:48 -04:00
Filip Grzadkowski 632ca506ce * Update pod status only when it changes.
* Refactor syncing logic into a separate struct
2015-03-24 16:41:00 +01:00
Clayton Coleman d020ca00b8 Pass hostname to all kubelet config sources instead of os.Hostname()
Make applyDefaults be tied to the current config source.
2015-03-23 15:58:45 -04:00
Clayton Coleman bd12cfea69 Integration tests should do a faster status sync loop 2015-03-23 14:48:28 -04:00
Clayton Coleman 90beaa3d61 Set non-zero default HTTP/File check intervals to avoid hotloop
cmd/integration.go was hot-looping for both, but did not need to.
2015-03-23 00:47:39 -04:00
Tim Hockin bfadae77e0 Promote volume plugins, prep for persistent vols
Move pkg/kubelet/volume/... to pkg/volume/...
Some renames to make the soon-to-come persistent volumes work clearer.
2015-03-20 13:49:40 -07:00
Tim Hockin 1cbde2c5c7 Merge pull request #5664 from calfonso/nfs_mount_plugin
Addresses cross compile for syscall.Unmount by delegating to Mount.
2015-03-19 16:19:01 -07:00
CJ Cullen 7ddcecfd1c Revert "Revert "[WIP] southbound networking hooks in kubelet"" 2015-03-19 16:14:13 -07:00
Zach Loafman b5d1e538df Revert "[WIP] southbound networking hooks in kubelet" 2015-03-19 16:08:08 -07:00
Rajat Chopra 7857aa7751 kubelet networking plugin 2015-03-19 14:15:52 -07:00
Chris Alfonso 9d0c9e7dc3 Addresses cross compile for syscall.Unmount by delegating to Mount. 2015-03-19 16:46:14 -04:00
derekwaynecarr 396f802318 Disable the nfs plugin because it does not cross-compile during release builds 2015-03-19 16:11:15 -04:00
Chris Alfonso 1a45e37d17 NFSMount storage plugin for kubelet.
* If you want to test this out when an actual NFS export a good place
 to start is by running the NFS server in a container:

docker run -d --name nfs --privileged cpuguy83/nfs-server /tmp

More detail can be found here:
https://github.com/cpuguy83/docker-nfs-server
2015-03-19 13:37:38 -04:00
Victor Marmol cda4b6c598 Spread out pod status updates to apiserver.
Lowers pod status interval to every 2m and spreads updates within that
time window.
2015-03-18 15:43:07 -07:00
Victor Marmol d78ecf820e Garbage collecting images in the Kubelet.
Integrated the imageManager into the Kubelet and applies the garbage
collection policy every 5 minutes. The default policy allows up to 90%
disk usage, after which images are garbage collected to bring limit back
down to 80%.

Fixes #157.
2015-03-17 17:56:02 -07:00
Victor Marmol d1ed571e28 Use containerGC in the Kubelet.
New policy default is 100 containers max.

Fixes #5457.
2015-03-17 10:50:32 -07:00
Yu-Ju Hong 929fb63b33 Sync static pods from Kubelet to the API server
Currently, API server is not aware of the static pods (manifests from
sources other than the API server, e.g. file and http) at all. This is
inconvenient since users cannot check the static pods through kubectl.
It is also sub-optimal because scheduler is unaware of the resource
consumption by these static pods on the node.

This change syncs the information back to the API server by creating a
mirror pod via API server for each static pod.

 - Kubelet creates containers for the static pod, as it would do
   normally.

 - If a mirror pod gets deleted, Kubelet will re-create one. The
   containers are sync'd to the static pods, so they will not be
   affected.

 - If a static pod gets removed from the source (e.g. manifest file
   removed from the directory), the orphaned mirror pod will be deleted.

Note that because events are associated with UID, and the mirror pod has
a different UID than the original static pod, the events will not be
shown for the mirror pod when running `kubectl describe pod
<mirror_pod>`.
2015-03-17 08:45:56 -07:00
Victor Marmol dc96ea6300 Run cAdvisor inside the Kubelet.
cAdvisor is started as a Kubelet dependency during startup of the
Kubelet before the sync loops start.
2015-03-13 16:06:02 -07:00
Dawn Chen 0cc2b62b4a Merge pull request #5265 from ddysher/kubelet-post-status
kubelet post node status to master
2015-03-13 15:29:22 -07:00
Eric Tune ae9bc28f8b Remove mentions of etcd in kubelet. 2015-03-11 16:40:20 -07:00
Eric Tune ac7bf05079 Kubelet has not even heard of etcd. 2015-03-11 16:29:31 -07:00
Deyuan Deng 9982aaa960 kubelet post node status to master 2015-03-10 23:17:36 -04:00
Eric Tune 2ca265ae3b Remove --etcd_servers flag from kubelet and proxy.
All the distros that use this have been updated,
or have PRs out to update them, or owners
have been asked to fix RPMs.

Removing this prevents further use of this model.

Remove now dead code: EtcdClientOrDie

Remove now dead pkg/proxy/config/etcd.go.

Remove unused imports.
2015-03-10 09:29:09 -07:00
Victor Marmol ab3c9de34b Refactoring cAdvisor interface into a package.
This will make it easier to start running the real cAdvisor alongside
Kubelet. This change is primarily no-op refactoring. The main behavioral
change is that we always create a cAdvisor interface and expect it to
always be available. When we make a request, if cAdvisor is not
connected the request fails with a connection error. This failure is
handled today as well.
2015-03-09 11:19:05 -07:00
Dawn Chen 9439c0f3bd Merge pull request #5103 from yujuhong/naming
kubelet: revamp the pod/container naming scheme
2015-03-06 15:58:58 -08:00
Yu-Ju Hong 32fd331e73 Revert "Split up kubelet "source seen" logic"
We want to sync pods from file/http/etcd sources to the apiserver, hence
differentiating sources is no longer desired.

This reverts commit 110ab6f1bd.
2015-03-06 12:57:48 -08:00
Deyuan Deng 50de1a80c2 kubelet should take a client interface 2015-03-06 15:01:55 -05:00
Jordan Liggitt 02622b1401 Plumb tls and cert options into kubelet start 2015-03-05 16:30:52 -05:00
Paul Morie 02b18edac6 Allow multiple sources to be used with record package 2015-03-05 13:54:29 -05:00
Tim Hockin 9f1451121d keep hyperkube noise in one place 2015-02-20 08:49:12 -08:00
Tim Hockin 7fe7f8a542 move pkg/kubelet/server to cmd/kubelet/app 2015-02-20 08:49:12 -08:00
Joe Beda 76df5471b5 Covert the kubelet binary to hyperkube.
This leaves `pkg/kubelet/server/server.go` looking a little ugly as there is an extra layer of "config" structs that isn't needed.  This is left as a TODO for now.
2015-02-02 14:03:13 -08:00
Tim Hockin 6cb275829f Implement volumes as plugins.
Break up the monolithic volumes code in kubelet into very small individual
modules with a well-defined interface.  Move them all into their own packages
and beef up testing along the way.
2015-01-20 11:45:45 -08:00