community/contributors/design-proposals
Qinglan Peng bd88127eb6 fix some markdown formats
Signed-off-by: Qinglan Peng <qinglanpeng@zju.edu.cn>

Update federated-ingress.md
2016-12-19 22:26:20 +08:00
..
clustering merge design and proposals docs 2016-11-30 14:47:43 -05:00
images merge design and proposals docs 2016-11-30 14:47:43 -05:00
Kubemark_architecture.png merge design and proposals docs 2016-11-30 14:47:43 -05:00
README.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
access.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
admission_control.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
admission_control_limit_range.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
admission_control_resource_quota.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
api-group.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
apiserver-watch.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
apparmor.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
architecture.dia merge design and proposals docs 2016-11-30 14:47:43 -05:00
architecture.md architecture: fix sentence formatting 2016-12-01 15:30:20 +01:00
architecture.png merge design and proposals docs 2016-11-30 14:47:43 -05:00
architecture.svg merge design and proposals docs 2016-11-30 14:47:43 -05:00
aws_under_the_hood.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
bootstrap-discovery.md A proposal for bootstrap discovery. 2016-12-16 16:43:22 -08:00
client-package-structure.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
cluster-deployment.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
clustering.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
command_execution_port_forwarding.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
configmap.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
container-init.md Fix typos in init container design. 2016-12-13 08:40:09 +08:00
container-runtime-interface-v1.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
control-plane-resilience.md fix some typos 2016-12-10 09:55:47 +08:00
controller-ref.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
daemon.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
deploy.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
deployment.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
disk-accounting.md fix some markdown formats 2016-12-19 22:26:20 +08:00
downward_api_resources_limits_requests.md fix some markdown formats 2016-12-19 22:26:20 +08:00
dramatically-simplify-cluster-creation.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
enhance-pluggable-policy.md fix some markdown formats 2016-12-19 22:26:20 +08:00
envvar-configmap.md Proposal: Configmaps populating environment variables (#148) 2016-12-13 11:54:24 -05:00
event_compression.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
expansion.md fix some markdown formats 2016-12-19 22:26:20 +08:00
extending-api.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
external-lb-source-ip-preservation.md fix some markdown formats 2016-12-19 22:26:20 +08:00
federated-api-servers.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
federated-ingress.md Remove obsolete warning header 2016-12-15 20:56:07 -08:00
federated-replicasets.md fix some markdown formats 2016-12-19 22:26:20 +08:00
federated-services.md fix some markdown formats 2016-12-19 22:26:20 +08:00
federation-high-level-arch.png merge design and proposals docs 2016-11-30 14:47:43 -05:00
federation-lite.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
federation-phase-1.md fix some markdown formats 2016-12-19 22:26:20 +08:00
federation.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
flannel-integration.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
garbage-collection.md fix some markdown formats 2016-12-19 22:26:20 +08:00
gpu-support.md fix some markdown formats 2016-12-19 22:26:20 +08:00
ha_master.md fix some typos 2016-12-10 09:55:47 +08:00
high-availability.md fix some markdown formats 2016-12-19 22:26:20 +08:00
horizontal-pod-autoscaler.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
hpa-v2.md Proposal: Horizontal Pod Autoscaler Version 2 2016-12-01 11:10:31 -05:00
identifiers.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
image-provenance.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
indexed-job.md fix some typos 2016-12-10 09:55:47 +08:00
initial-resources.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
job.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
kubectl-login.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
kubelet-auth.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
kubelet-cri-logging.md Remove obsolete warning header 2016-12-15 20:55:14 -08:00
kubelet-eviction.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
kubelet-hypercontainer-runtime.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
kubelet-rkt-runtime.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
kubelet-systemd.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
kubelet-tls-bootstrap.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
kubemark.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
local-cluster-ux.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
metadata-policy.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
monitoring_architecture.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
monitoring_architecture.png merge design and proposals docs 2016-11-30 14:47:43 -05:00
multi-platform.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
multiple-schedulers.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
namespaces.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
network-policy.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
networking.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
node-allocatable.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
node-allocatable.png merge design and proposals docs 2016-11-30 14:47:43 -05:00
nodeaffinity.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
performance-related-monitoring.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
persistent-storage.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
pleg.png merge design and proposals docs 2016-11-30 14:47:43 -05:00
pod-cache.png merge design and proposals docs 2016-11-30 14:47:43 -05:00
pod-lifecycle-event-generator.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
pod-resource-management.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
pod-security-context.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
podaffinity.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
principles.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
propagation.md add draft propagation from https://github.com/kubernetes/kubernetes/pull/37276 2016-12-07 18:50:51 +08:00
protobuf.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
release-notes.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
rescheduler.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
rescheduling-for-critical-pods.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
rescheduling.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
resource-metrics-api.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
resource-qos.md Update resource-qos.md 2016-11-30 18:34:13 -08:00
resource-quota-scoping.md fix some markdown formats 2016-12-19 22:26:20 +08:00
resources.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
runtime-client-server.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
runtime-pod-cache.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
runtimeconfig.md fix some markdown formats 2016-12-19 22:26:20 +08:00
scalability-testing.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
scheduledjob.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
scheduler_extender.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
seccomp.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
secret-configmap-downwarapi-file-mode.md fix some markdown formats 2016-12-19 22:26:20 +08:00
secrets.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
security-context-constraints.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
security.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
security_context.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
selector-generation.md fix some typos 2016-12-10 09:55:47 +08:00
self-hosted-kubelet.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
selinux-enhancements.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
selinux.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
service-discovery.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
service-external-name.md fix some markdown formats 2016-12-19 22:26:20 +08:00
service_accounts.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
simple-rolling-update.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
stateful-apps.md fix some markdown formats 2016-12-19 22:26:20 +08:00
synchronous-garbage-collection.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
taint-toleration-dedicated.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
templates.md fix some markdown formats 2016-12-19 22:26:20 +08:00
ubernetes-cluster-state.png merge design and proposals docs 2016-11-30 14:47:43 -05:00
ubernetes-design.png merge design and proposals docs 2016-11-30 14:47:43 -05:00
ubernetes-scheduling.png merge design and proposals docs 2016-11-30 14:47:43 -05:00
versioning.md fix some markdown formats 2016-12-19 22:26:20 +08:00
volume-hostpath-qualifiers.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
volume-ownership-management.md fix some markdown formats 2016-12-19 22:26:20 +08:00
volume-provisioning.md fix some markdown formats 2016-12-19 22:26:20 +08:00
volume-selectors.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
volume-snapshotting.md merge design and proposals docs 2016-11-30 14:47:43 -05:00
volume-snapshotting.png merge design and proposals docs 2016-11-30 14:47:43 -05:00
volumes.md merge design and proposals docs 2016-11-30 14:47:43 -05:00

README.md

Kubernetes Design Overview

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

Kubernetes establishes robust declarative primitives for maintaining the desired state requested by the user. We see these primitives as the main value added by Kubernetes. Self-healing mechanisms, such as auto-restarting, re-scheduling, and replicating containers require active controllers, not just imperative orchestration.

Kubernetes is primarily targeted at applications composed of multiple containers, such as elastic, distributed micro-services. It is also designed to facilitate migration of non-containerized application stacks to Kubernetes. It therefore includes abstractions for grouping containers in both loosely coupled and tightly coupled formations, and provides ways for containers to find and communicate with each other in relatively familiar ways.

Kubernetes enables users to ask a cluster to run a set of containers. The system automatically chooses hosts to run those containers on. While Kubernetes's scheduler is currently very simple, we expect it to grow in sophistication over time. Scheduling is a policy-rich, topology-aware, workload-specific function that significantly impacts availability, performance, and capacity. The scheduler needs to take into account individual and collective resource requirements, quality of service requirements, hardware/software/policy constraints, affinity and anti-affinity specifications, data locality, inter-workload interference, deadlines, and so on. Workload-specific requirements will be exposed through the API as necessary.

Kubernetes is intended to run on a number of cloud providers, as well as on physical hosts.

A single Kubernetes cluster is not intended to span multiple availability zones. Instead, we recommend building a higher-level layer to replicate complete deployments of highly available applications across multiple zones (see the multi-cluster doc and cluster federation proposal for more details).

Finally, Kubernetes aspires to be an extensible, pluggable, building-block OSS platform and toolkit. Therefore, architecturally, we want Kubernetes to be built as a collection of pluggable components and layers, with the ability to use alternative schedulers, controllers, storage systems, and distribution mechanisms, and we're evolving its current code in that direction. Furthermore, we want others to be able to extend Kubernetes functionality, such as with higher-level PaaS functionality or multi-cluster layers, without modification of core Kubernetes source. Therefore, its API isn't just (or even necessarily mainly) targeted at end users, but at tool and extension developers. Its APIs are intended to serve as the foundation for an open ecosystem of tools, automation systems, and higher-level API layers. Consequently, there are no "internal" inter-component APIs. All APIs are visible and available, including the APIs used by the scheduler, the node controller, the replication-controller manager, Kubelet's API, etc. There's no glass to break -- in order to handle more complex use cases, one can just access the lower-level APIs in a fully transparent, composable manner.

For more about the Kubernetes architecture, see architecture.

Analytics