kubernetes

module
v0.4.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 17, 2014 License: Apache-2.0

README

Kubernetes

Kubernetes is an open source implementation of container cluster management.

Kubernetes Design Document - Kubernetes @ Google I/O 2014

GoDoc Travis

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 in pre-production beta!

While the concepts and architecture in Kubernetes represent years of experience designing and building large scale cluster manager at Google, the Kubernetes project is still under heavy development. Expect bugs, design and API changes as we bring it to a stable, production product over the coming year.

Contents

Where to go next?

Check out examples of Kubernetes in action, and community projects in the larger ecosystem:

Or fork and start hacking!

Community, discussion and support

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

The Kubernetes team is hanging out on IRC on the #google-containers channel on freenode.net. We also have the google-containers Google Groups mailing list for questions and discussion as well as the kubernetes-announce mailing list for important announcements (low-traffic, no chatter).

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.

Directories

Path Synopsis
Godeps
_workspace/src/code.google.com/p/gcfg
Package gcfg reads "INI-style" text-based configuration files with "name=value" pairs grouped into sections (gcfg files).
Package gcfg reads "INI-style" text-based configuration files with "name=value" pairs grouped into sections (gcfg files).
_workspace/src/code.google.com/p/gcfg/scanner
Package scanner implements a scanner for gcfg configuration text.
Package scanner implements a scanner for gcfg configuration text.
_workspace/src/code.google.com/p/gcfg/token
Package token defines constants representing the lexical tokens of the gcfg configuration syntax and basic operations on tokens (printing, predicates).
Package token defines constants representing the lexical tokens of the gcfg configuration syntax and basic operations on tokens (printing, predicates).
_workspace/src/code.google.com/p/gcfg/types
Package types defines helpers for type conversions.
Package types defines helpers for type conversions.
_workspace/src/code.google.com/p/go-uuid/uuid
The uuid package generates and inspects UUIDs.
The uuid package generates and inspects UUIDs.
_workspace/src/code.google.com/p/go.net/context
Package context defines the Context type, which carries deadlines, cancelation signals, and other request-scoped values across API boundaries and between processes.
Package context defines the Context type, which carries deadlines, cancelation signals, and other request-scoped values across API boundaries and between processes.
_workspace/src/code.google.com/p/go.net/html
Package html implements an HTML5-compliant tokenizer and parser.
Package html implements an HTML5-compliant tokenizer and parser.
_workspace/src/code.google.com/p/go.net/html/atom
Package atom provides integer codes (also known as atoms) for a fixed set of frequently occurring HTML strings: tag names and attribute keys such as "p" and "id".
Package atom provides integer codes (also known as atoms) for a fixed set of frequently occurring HTML strings: tag names and attribute keys such as "p" and "id".
_workspace/src/code.google.com/p/go.net/html/charset
Package charset provides common text encodings for HTML documents.
Package charset provides common text encodings for HTML documents.
_workspace/src/code.google.com/p/go.net/websocket
Package websocket implements a client and server for the WebSocket protocol as specified in RFC 6455.
Package websocket implements a client and server for the WebSocket protocol as specified in RFC 6455.
_workspace/src/code.google.com/p/goauth2/compute/serviceaccount
Package serviceaccount provides support for making OAuth2-authorized HTTP requests from Google Compute Engine instances using service accounts.
Package serviceaccount provides support for making OAuth2-authorized HTTP requests from Google Compute Engine instances using service accounts.
_workspace/src/code.google.com/p/goauth2/oauth
The oauth package provides support for making OAuth2-authenticated HTTP requests.
The oauth package provides support for making OAuth2-authenticated HTTP requests.
_workspace/src/code.google.com/p/goauth2/oauth/example
This program makes a call to the specified API, authenticated with OAuth2.
This program makes a call to the specified API, authenticated with OAuth2.
_workspace/src/code.google.com/p/goauth2/oauth/jwt
The jwt package provides support for creating credentials for OAuth2 service account requests.
The jwt package provides support for creating credentials for OAuth2 service account requests.
_workspace/src/code.google.com/p/goauth2/oauth/jwt/example
This program makes a read only call to the Google Cloud Storage API, authenticated with OAuth2.
This program makes a read only call to the Google Cloud Storage API, authenticated with OAuth2.
_workspace/src/code.google.com/p/google-api-go-client/compute/v1
Package compute provides access to the Compute Engine API.
Package compute provides access to the Compute Engine API.
_workspace/src/code.google.com/p/google-api-go-client/googleapi
Package googleapi contains the common code shared by all Google API libraries.
Package googleapi contains the common code shared by all Google API libraries.
_workspace/src/code.google.com/p/google-api-go-client/googleapi/transport
Package transport contains HTTP transports used to make authenticated API requests.
Package transport contains HTTP transports used to make authenticated API requests.
_workspace/src/github.com/elazarl/go-bindata-assetfs
assetfs allows packages to serve static content embedded with the go-bindata tool with the standard net/http package.
assetfs allows packages to serve static content embedded with the go-bindata tool with the standard net/http package.
_workspace/src/github.com/fsouza/go-dockerclient
Package docker provides a client for the Docker remote API.
Package docker provides a client for the Docker remote API.
_workspace/src/github.com/fsouza/go-dockerclient/testing
Package testing provides a fake implementation of the Docker API, useful for testing purpose.
Package testing provides a fake implementation of the Docker API, useful for testing purpose.
_workspace/src/github.com/golang/glog
Package glog implements logging analogous to the Google-internal C++ INFO/ERROR/V setup.
Package glog implements logging analogous to the Google-internal C++ INFO/ERROR/V setup.
_workspace/src/github.com/google/gofuzz
Package fuzz is a library for populating go objects with random values.
Package fuzz is a library for populating go objects with random values.
_workspace/src/github.com/mitchellh/goamz/aws
goamz - Go packages to interact with the Amazon Web Services.
goamz - Go packages to interact with the Amazon Web Services.
_workspace/src/github.com/mitchellh/goamz/ec2/ec2test
The ec2test package implements a fake EC2 provider with the capability of inducing errors on any given operation, and retrospectively determining what operations have been carried out.
The ec2test package implements a fake EC2 provider with the capability of inducing errors on any given operation, and retrospectively determining what operations have been carried out.
_workspace/src/github.com/skratchdot/open-golang/open
Open a file, directory, or URI using the OS's default application for that object type.
Open a file, directory, or URI using the OS's default application for that object type.
_workspace/src/github.com/stretchr/objx
objx - Go package for dealing with maps, slices, JSON and other data.
objx - Go package for dealing with maps, slices, JSON and other data.
_workspace/src/github.com/stretchr/testify/mock
Provides a system by which it is possible to mock your objects and verify calls are happening as expected.
Provides a system by which it is possible to mock your objects and verify calls are happening as expected.
_workspace/src/github.com/vaughan0/go-ini
Package ini provides functions for parsing INI configuration files.
Package ini provides functions for parsing INI configuration files.
_workspace/src/gopkg.in/v1/yaml
Package yaml implements YAML support for the Go language.
Package yaml implements YAML support for the Go language.
build
cmd
apiserver
apiserver is the main api server and master for the cluster.
apiserver is the main api server and master for the cluster.
controller-manager
The controller manager is responsible for monitoring replication controllers, and creating corresponding pods to achieve the desired state.
The controller manager is responsible for monitoring replication controllers, and creating corresponding pods to achieve the desired state.
integration
A basic integration test for the service.
A basic integration test for the service.
kubelet
The kubelet binary is responsible for maintaining a set of containers on a particular host VM.
The kubelet binary is responsible for maintaining a set of containers on a particular host VM.
contrib
Examples contains sample applications for trying out the concepts in Kubernetes.
Examples contains sample applications for trying out the concepts in Kubernetes.
pkg
api
Package api contains the latest (or "internal") version of the Kubernetes API objects.
Package api contains the latest (or "internal") version of the Kubernetes API objects.
api/errors
Package errors provides detailed error types for api field validation.
Package errors provides detailed error types for api field validation.
api/errors/etcd
Package etcd provides conversion of etcd errors to API errors.
Package etcd provides conversion of etcd errors to API errors.
api/latest
Package latest defines the default output serializations that code should use and imports the required schemas.
Package latest defines the default output serializations that code should use and imports the required schemas.
api/testapi
Package testapi provides a helper for retrieving the KUBE_API_VERSION environment variable.
Package testapi provides a helper for retrieving the KUBE_API_VERSION environment variable.
api/v1beta1
Package v1beta1 is the v1beta1 version of the API.
Package v1beta1 is the v1beta1 version of the API.
api/v1beta2
Package v1beta2 is the v1beta2 version of the API.
Package v1beta2 is the v1beta2 version of the API.
api/v1beta3
Package v1beta3 is the v1beta3 version of the API.
Package v1beta3 is the v1beta3 version of the API.
api/validation
Package validation has functions for validating the correctness of api objects and explaining what is wrong with them when they aren't valid.
Package validation has functions for validating the correctness of api objects and explaining what is wrong with them when they aren't valid.
apiserver
Package apiserver contains the code that provides a RESTful api service.
Package apiserver contains the code that provides a RESTful api service.
auth/user
Package user contains utilities for dealing with simple user exchange in the auth packages.
Package user contains utilities for dealing with simple user exchange in the auth packages.
capabilities
package capbabilities manages system level capabilities
package capbabilities manages system level capabilities
client
Package client contains the implementation of the client side communication with the Kubernetes master.
Package client contains the implementation of the client side communication with the Kubernetes master.
client/cache
Package cache is a client-side caching mechanism.
Package cache is a client-side caching mechanism.
cloudprovider
Package cloudprovider supplies interfaces and implementations for cloud service providers.
Package cloudprovider supplies interfaces and implementations for cloud service providers.
cloudprovider/fake
Package fake_cloud is a test-double implementation of cloudprovider Interface, TCPLoadBalancer and Instances.
Package fake_cloud is a test-double implementation of cloudprovider Interface, TCPLoadBalancer and Instances.
cloudprovider/gce
Package gce_cloud is an implementation of Interface, TCPLoadBalancer and Instances for Google Compute Engine.
Package gce_cloud is an implementation of Interface, TCPLoadBalancer and Instances for Google Compute Engine.
cloudprovider/vagrant
Package vagrant_cloud is an implementation of Interface, TCPLoadBalancer and Instances for developer managed Vagrant cluster.
Package vagrant_cloud is an implementation of Interface, TCPLoadBalancer and Instances for developer managed Vagrant cluster.
constraint
Package constraint has functions for ensuring that collections of containers are allowed to run together on a single host.
Package constraint has functions for ensuring that collections of containers are allowed to run together on a single host.
controller
Package controller contains logic for watching and synchronizing replicationControllers.
Package controller contains logic for watching and synchronizing replicationControllers.
conversion
Package conversion provides go object versioning and encoding/decoding mechanisms.
Package conversion provides go object versioning and encoding/decoding mechanisms.
election
Package election provides interfaces used for master election.
Package election provides interfaces used for master election.
health
Package health contains utilities for health checking, as well as health status information.
Package health contains utilities for health checking, as well as health status information.
healthz
Package healthz implements basic http server health checking.
Package healthz implements basic http server health checking.
httplog
Package httplog contains a helper object and functions to maintain a log along with an http response.
Package httplog contains a helper object and functions to maintain a log along with an http response.
kubecfg
Package kubecfg is a set of libraries that are used by the kubecfg command line tool.
Package kubecfg is a set of libraries that are used by the kubecfg command line tool.
kubelet
Package kubelet is the package that contains the libraries that drive the Kubelet binary.
Package kubelet is the package that contains the libraries that drive the Kubelet binary.
kubelet/config
Package config implements the pod configuration readers.
Package config implements the pod configuration readers.
labels
Package labels implements a simple label system, parsing and matching selectors with sets of labels.
Package labels implements a simple label system, parsing and matching selectors with sets of labels.
master
Package master contains code for setting up and running a Kubernetes cluster master.
Package master contains code for setting up and running a Kubernetes cluster master.
proxy
Package proxy implements the layer-3 network proxy.
Package proxy implements the layer-3 network proxy.
proxy/config
Package config provides decoupling between various configuration sources (etcd, files,...) and the pieces that actually care about them (loadbalancer, proxy).
Package config provides decoupling between various configuration sources (etcd, files,...) and the pieces that actually care about them (loadbalancer, proxy).
registry
Package registry implements the storage and system logic for the core of the api server.
Package registry implements the storage and system logic for the core of the api server.
registry/binding
Package binding contains the middle layer logic for bindings.
Package binding contains the middle layer logic for bindings.
registry/controller
Package controller provides Registry interface and it's RESTStorage implementation for storing ReplicationController api objects.
Package controller provides Registry interface and it's RESTStorage implementation for storing ReplicationController api objects.
registry/endpoint
Package endpoint provides Registry interface and it's RESTStorage implementation for storing Endpoint api objects.
Package endpoint provides Registry interface and it's RESTStorage implementation for storing Endpoint api objects.
registry/etcd
Package etcd provides etcd backend implementation for storing PodRegistry, ControllerRegistry and ServiceRegistry api objects.
Package etcd provides etcd backend implementation for storing PodRegistry, ControllerRegistry and ServiceRegistry api objects.
registry/event
Package event provides Registry interface and it's REST implementation for storing Event api objects.
Package event provides Registry interface and it's REST implementation for storing Event api objects.
registry/generic
Package generic provides a generic object store interface and a generic label/field matching type.
Package generic provides a generic object store interface and a generic label/field matching type.
registry/generic/etcd
Package etcd has a generic implementation of a registry that stores things in etcd.
Package etcd has a generic implementation of a registry that stores things in etcd.
registry/minion
Package minion provides Registry interface and implementation for storing Minions.
Package minion provides Registry interface and implementation for storing Minions.
registry/pod
Package pod provides Registry interface and it's RESTStorage implementation for storing Pod api objects.
Package pod provides Registry interface and it's RESTStorage implementation for storing Pod api objects.
registry/registrytest
Package registrytest provides tests for Registry implementations for storing Minions, Pods, Schedulers and Services.
Package registrytest provides tests for Registry implementations for storing Minions, Pods, Schedulers and Services.
registry/service
Package service provides Registry interface and it's RESTStorage implementation for storing Service api objects.
Package service provides Registry interface and it's RESTStorage implementation for storing Service api objects.
resources
package resources has constants and utilities for dealing with resources
package resources has constants and utilities for dealing with resources
runtime
Package runtime includes helper functions for working with API objects that follow the kubernetes API object conventions, which are: 0.
Package runtime includes helper functions for working with API objects that follow the kubernetes API object conventions, which are: 0.
scheduler
Package scheduler contains a generic Scheduler interface and several implementations.
Package scheduler contains a generic Scheduler interface and several implementations.
service
Package service provides EndpointController implementation to manage and sync service endpoints.
Package service provides EndpointController implementation to manage and sync service endpoints.
tools
Package tools implements general tools which depend on the api package.
Package tools implements general tools which depend on the api package.
ui
package ui contains static data files compiled to go, and utilities for accessing them.
package ui contains static data files compiled to go, and utilities for accessing them.
util
Package util implements various utility functions used in both testing and implementation of Kubernetes.
Package util implements various utility functions used in both testing and implementation of Kubernetes.
util/config
Package config provides utility objects for decoupling sources of configuration and the actual configuration state.
Package config provides utility objects for decoupling sources of configuration and the actual configuration state.
util/exec
Package exec provides an injectable interface and implementations for running commands.
Package exec provides an injectable interface and implementations for running commands.
util/iptables
Package iptables provides an interface and implementations for running iptables commands.
Package iptables provides an interface and implementations for running iptables commands.
util/wait
Package wait provides tools for polling or listening for changes to a condition.
Package wait provides tools for polling or listening for changes to a condition.
version
Package version supplies version information collected at build time to kubernetes components.
Package version supplies version information collected at build time to kubernetes components.
version/verflag
Package verflag defines utility functions to handle command line flags related to version of Kubernetes.
Package verflag defines utility functions to handle command line flags related to version of Kubernetes.
volume
Package volume includes internal representations of external volume types as well as utility methods required to mount/unmount volumes to kubelets.
Package volume includes internal representations of external volume types as well as utility methods required to mount/unmount volumes to kubelets.
watch
Package watch contains a generic watchable interface, and a fake for testing code that uses the watch interface.
Package watch contains a generic watchable interface, and a fake for testing code that uses the watch interface.
watch/json
Package json implements a simple encoder and decoder for streams of watch events over io.Writer/Readers
Package json implements a simple encoder and decoder for streams of watch events over io.Writer/Readers
plugin
pkg/scheduler/factory
Package factory can set up a scheduler.
Package factory can set up a scheduler.
test
integration
Package integration provides integration tests for Kubernetes.
Package integration provides integration tests for Kubernetes.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL