Lightweight Kubernetes
 
 
 
 
Go to file
Dr. Stefan Schimanski a2fa41b73f Implement resource accounting for pods with the Mesos scheduler
This patch

- set limits (0.25 cpu, 64 MB) on containers which are not limited in pod spec
  (these are also passed to the kubelet such that it uses them for the docker
  run limits)
- sums up the container resource limits for cpu and memory inside a pod,
- compares the sums to the offered resources
- puts the sums into the Mesos TaskInfo such that Mesos does the accounting
  for the pod.
- parses the static pod spec and adds up the resources
- sets the executor resources to 0.25 cpu, 64 MB plus the static pod resources
- sets the cgroups in the kubelet for system containers, resource containers
  and docker to the one of the executor that Mesos assigned
- adds scheduler parameters --default-container-cpu-limit and
  --default-container-mem-limit.

The containers themselves are resource limited the Docker resource limit which
the kubelet applies when launching them.

Fixes mesosphere/kubernetes-mesos#68 and mesosphere/kubernetes-mesos#304
2015-07-30 21:18:04 +02:00
Godeps Merge pull request #11108 from mesosphere/fix-10795 2015-07-24 09:35:29 -07:00
api/swagger-spec Stop allowing unnamespaced POST for namespaced objects 2015-07-24 12:03:19 -07:00
build Extract out the versionize docs part in a separate script 2015-07-23 17:56:40 -07:00
cluster Merge pull request #11265 from mbforbes/gkeBashlog 2015-07-24 18:51:36 -07:00
cmd Merge pull request #11622 from nikhiljindal/refactormark-new-version 2015-07-24 11:32:40 -07:00
contrib Implement resource accounting for pods with the Mesos scheduler 2015-07-30 21:18:04 +02:00
docs Add stub md files so gh-pages importer keeps them 2015-07-24 16:56:08 -07:00
examples Updated Cassandra Dockerfile to include procps. 2015-07-24 10:40:33 -07:00
hack Merge pull request #11056 from wojtek-t/rewrite_services_in_go 2015-07-27 09:21:44 +02:00
hooks Run the build once during presubmit 2015-07-02 14:43:43 -07:00
pkg Merge pull request #10673 from stefwalter/proxy-split-hostport-without-port 2015-07-24 17:23:05 -07:00
plugin Merge pull request #11737 from thockin/cleanup-remove-v1beta3 2015-07-24 10:25:56 -07:00
test Merge pull request #11056 from wojtek-t/rewrite_services_in_go 2015-07-27 09:21:44 +02:00
third_party Updating swagger-ui to the latest version 2015-07-07 17:48:22 -07:00
www Fixed wrong link to ui.md documentation in README file 2015-07-20 11:04:51 +02:00
.gitignore add some more temporary files to gitignore 2015-06-16 11:14:13 -07:00
.travis.yml move spammy notifications to #kubernetes-dev 2015-07-23 17:30:06 -07:00
CHANGELOG.md Change the CHANGELOG to be a pointer to the releases page. 2015-06-09 20:12:24 -07:00
CONTRIB.md Add ga-beacon analytics to gendocs scripts 2015-05-15 18:56:38 -07:00
CONTRIBUTING.md Add ga-beacon analytics to gendocs scripts 2015-05-15 18:56:38 -07:00
DESIGN.md Fix links in DESIGN.md 2015-07-20 14:35:52 -07:00
LICENSE First commit 2014-06-06 16:40:48 -07:00
Makefile Remove unneeded make rule name. 2015-03-16 12:04:36 +01:00
README.md Merge pull request #11673 from zg/patch-1 2015-07-22 14:05:26 -07:00
Vagrantfile Vagrant: Add support for nfs synced folders 2015-07-01 13:12:42 -07:00
logo.pdf Simplify the SVG for the logo 2015-02-20 21:15:31 -08:00
logo.png change logo blue slightly 2014-08-15 09:54:00 -07:00
logo.svg Simplify the SVG for the logo 2015-02-20 21:15:31 -08:00
logo_usage_guidelines.md Add ga-beacon analytics to gendocs scripts 2015-05-15 18:56:38 -07:00
shippable.yml Merge pull request #11737 from thockin/cleanup-remove-v1beta3 2015-07-24 10:25:56 -07:00

README.md

Kubernetes

GoDoc Travis Coverage Status

Are you ...

  • Interested in learning more about using Kubernetes? Please see our user-facing documentation on kubernetes.io
  • Interested in hacking on the core Kubernetes code base? Keep reading!

Kubernetes is an open source system for managing containerized applications across multiple hosts, providing basic mechanisms for deployment, maintenance, and scaling of applications.

Kubernetes is:

  • lean: lightweight, simple, accessible
  • portable: public, private, hybrid, multi cloud
  • extensible: modular, pluggable, hookable, composable
  • self-healing: auto-placement, auto-restart, auto-replication

Kubernetes builds upon a decade and a half of experience at Google running production workloads at scale, combined with best-of-breed ideas and practices from the community.


Kubernetes can run anywhere!

However, initial development was done on GCE and so our instructions and scripts are built around that. If you make it work on other infrastructure please let us know and contribute instructions/code.

Kubernetes is ready for Production!

With the 1.0.1 release Kubernetes is ready to serve your production workloads.

Concepts

Kubernetes works with the following concepts:

Cluster
A cluster is a set of physical or virtual machines and other infrastructure resources used by Kubernetes to run your applications. Kubernetes can run anywhere! See the Getting Started Guides for instructions for a variety of services.
Node
A node is a physical or virtual machine running Kubernetes, onto which pods can be scheduled.
Pod
Pods are a colocated group of application containers with shared volumes. They're the smallest deployable units that can be created, scheduled, and managed with Kubernetes. Pods can be created individually, but it's recommended that you use a replication controller even if creating a single pod.
Replication controller
Replication controllers manage the lifecycle of pods. They ensure that a specified number of pods are running at any given time, by creating or killing pods as required.
Service
Services provide a single, stable name and address for a set of pods. They act as basic load balancers.
Label
Labels are used to organize and select groups of objects based on key:value pairs.

Documentation

Kubernetes documentation is organized into several categories.

Community, discussion and support

If you have questions or want to start contributing please reach out. We don't bite!

Please see the troubleshooting guide, or how to get more help.

If you are a company and are looking for a more formal engagement with Google around Kubernetes and containers at Google as a whole, please fill out this form and we'll be in touch.

Analytics