kubernetes

module
v0.0.0-...-6eef5cf Latest Latest
Warning

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

Go to latest
Published: Jul 29, 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

Getting started on Google Compute Engine

Prerequisites
  1. You need a Google Cloud Platform account with billing enabled. Visit http://cloud.google.com/console for more details.

  2. Make sure you can start up a GCE VM. At least make sure you can do the Create an instance part of the GCE Quickstart.

  3. You need to have the Google Storage API, and the Google Storage JSON API enabled.

  4. You must have Go (version 1.2 or later) installed: www.golang.org.

  5. You must have the gcloud components installed.

  6. Ensure that your gcloud components are up-to-date by running gcloud components update.

  7. Get the Kubernetes source:

     git clone https://github.com/GoogleCloudPlatform/kubernetes.git
    
Setup

The setup script builds Kubernetes, then creates Google Compute Engine instances, firewall rules, and routes:

cd kubernetes
hack/dev-build-and-up.sh

The script above relies on Google Storage to deploy the software to instances running in GCE. It uses the Google Storage APIs so the "Google Cloud Storage JSON API" setting must be enabled for the project in the Google Developers Console (https://cloud.google.com/console#/project).

The instances must also be able to connect to each other using their private IP. The script uses the "default" network which should have a firewall rule called "default-allow-internal" which allows traffic on any port on the private IPs. If this rule is missing from the default network or if you change the network being used in cluster/config-default.sh create a new rule with the following field values:

  • Source Ranges: 10.0.0.0/8
  • Allowed Protocols or Port: tcp:1-65535;udp:1-65535;icmp
Running a container (simple version)

Once you have your instances up and running, the build-go.sh script sets up your Go workspace and builds the Go components.

The kubecfg.sh script spins up two containers, running Nginx and with port 80 mapped to 8080:

cd kubernetes
hack/build-go.sh
cluster/kubecfg.sh -p 8080:80 run dockerfile/nginx 2 myNginx

To stop the containers:

cluster/kubecfg.sh stop myNginx

To delete the containers:

cluster/kubecfg.sh rm myNginx
Running a container (more complete version)

Assuming you've run hack/dev-build-and-up.sh and hack/build-go.sh:

cd kubernetes
cluster/kubecfg.sh -c api/examples/pod.json create /pods

Where pod.json contains something like:

{
  "id": "php",
  "kind": "Pod",
  "apiVersion": "v1beta1",
  "desiredState": {
    "manifest": {
      "version": "v1beta1",
      "id": "php",
      "containers": [{
        "name": "nginx",
        "image": "dockerfile/nginx",
        "ports": [{
          "containerPort": 80,
          "hostPort": 8080
        }],
        "livenessProbe": {
          "enabled": true,
          "type": "http",
          "initialDelaySeconds": 30,
          "httpGet": {
            "path": "/index.html",
            "port": "8080"
          }
        }
      }]
    }
  },
  "labels": {
    "name": "foo"
  }
}

Look in api/examples/ for more examples

Tearing down the cluster
cd kubernetes
cluster/kube-down.sh

Getting started with a Vagrant cluster on your host

Prerequisites
  1. Install latest version >= 1.6.2 of vagrant from http://www.vagrantup.com/downloads.html
  2. Install latest version of Virtual Box from https://www.virtualbox.org/wiki/Downloads
  3. Get the Kubernetes source:
git clone https://github.com/GoogleCloudPlatform/kubernetes.git
Setup

By default, the Vagrant setup will create a single kubernetes-master and 3 kubernetes-minions. You can control the number of minions that are instantiated via an environment variable on your host machine. If you plan to work with replicas, we strongly encourage you to work with enough minions to satisfy your largest intended replica size. If you do not plan to work with replicas, you can save some system resources by running with a single minion.

export KUBERNETES_NUM_MINIONS=3

To start your local cluster, open a terminal window and run:

cd kubernetes
vagrant up

Vagrant will provision each machine in the cluster with all the necessary components to build and run Kubernetes. The initial setup can take a few minutes to complete on each machine.

By default, each VM in the cluster is running Fedora, and all of the Kubernetes services are installed into systemd.

To access the master or any minion:

vagrant ssh master
vagrant ssh minion-1
vagrant ssh minion-2
vagrant ssh minion-3

To view the service status and/or logs on the kubernetes-master:

vagrant ssh master
[vagrant@kubernetes-master ~] $ sudo systemctl status apiserver
[vagrant@kubernetes-master ~] $ sudo journalctl -r -u apiserver

[vagrant@kubernetes-master ~] $ sudo systemctl status controller-manager
[vagrant@kubernetes-master ~] $ sudo journalctl -r -u controller-manager

[vagrant@kubernetes-master ~] $ sudo systemctl status etcd
[vagrant@kubernetes-master ~] $ sudo systemctl status nginx

To view the services on any of the kubernetes-minion(s):

vagrant ssh minion-1
[vagrant@kubernetes-minion-1] $ sudo systemctl status docker
[vagrant@kubernetes-minion-1] $ sudo journalctl -r -u docker
[vagrant@kubernetes-minion-1] $ sudo systemctl status kubelet
[vagrant@kubernetes-minion-1] $ sudo journalctl -r -u kubelet

To push updates to new Kubernetes code after making source changes:

vagrant provision

To shutdown and then restart the cluster:

vagrant halt
vagrant up

To destroy the cluster:

vagrant destroy -f

You can also use the cluster/kube-*.sh scripts to interact with vagrant based providers just like any other hosting platform for kubernetes.

cd kubernetes
modify cluster/kube-env.sh:
  KUBERNETES_PROVIDER="vagrant"

cluster/kube-up.sh => brings up a vagrant cluster
cluster/kube-down.sh => destroys a vagrant cluster
cluster/kube-push.sh => updates a vagrant cluster
cluster/kubecfg.sh => interact with the cluster
Running a container

Your cluster is running, and you want to start running containers!

You can now use any of the cluster/kube-*.sh commands to interact with your VM machines.

cluster/kubecfg.sh list /pods
cluster/kubecfg.sh list /services
cluster/kubecfg.sh list /replicationControllers
cluster/kubecfg.sh -p 8080:80 run dockerfile/nginx 3 myNginx

## begin wait for provision to complete, you can monitor the minions by doing
  vagrant ssh minion-1
  sudo docker images
  ## you should see it pulling the dockerfile/nginx image, once the above command returns it
  sudo docker ps
  ## you should see your container running!
  exit
## end wait

## back on the host, introspect kubernetes!
cluster/kubecfg.sh list /pods
cluster/kubecfg.sh list /services
cluster/kubecfg.sh list /replicationControllers

Congratulations!

Testing

The following will run all of the end-to-end testing scenarios assuming you set your environment in cluster/kube-env.sh

hack/e2e-test.sh
Troubleshooting
I just created the cluster, but I do not see my container running!

If this is your first time creating the cluster, the kubelet on each minion schedules a number of docker pull requests to fetch prerequisite images. This can take some time and as a result may delay your initial pod getting provisioned.

I changed Kubernetes code, but its not running!

Are you sure there was no build error? After running $ vagrant provision, scroll up and ensure that each Salt state was completed successfully on each box in the cluster. Its very likely you see a build error due to an error in your source files!

Running locally

In a separate tab of your terminal, run:

cd kubernetes
hack/local-up-cluster.sh

This will build and start a lightweight local cluster, consisting of a master and a single minion. Type Control-C to shut it down.

If you are running both a remote kubernetes cluster and the local cluster, you can determine which you talk to using the KUBERNETES_MASTER environment variable.

Running on CoreOS

The folks at CoreOS have instructions for running Kubernetes on CoreOS

Where to go next?

Detailed example application

Example of dynamic updates

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 room on freenode.net. We also have the google-containers Google Groups mailing list.

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.

Development

Hooks
# Before committing any changes, please link/copy these hooks into your .git
# directory. This will keep you from accidentally committing non-gofmt'd
# go code.
#
# NOTE: The "../.." part seems odd but is correct, since the newly created
# links will be 2 levels down the tree.
cd kubernetes
ln -s ../../hooks/prepare-commit-msg .git/hooks/prepare-commit-msg
ln -s ../../hooks/commit-msg .git/hooks/commit-msg
Unit tests
cd kubernetes
hack/test-go.sh
Coverage
cd kubernetes
go tool cover -html=target/c.out
Integration tests
# You need an etcd somewhere in your path.
# To get from head:
go get github.com/coreos/etcd
go install github.com/coreos/etcd
sudo ln -s "$GOPATH/bin/etcd" /usr/bin/etcd
# Or just use the packaged one:
sudo ln -s "$REPO_ROOT/target/bin/etcd" /usr/bin/etcd
cd kubernetes
hack/integration-test.sh
End-to-End tests

With a GCE account set up for running cluster/kube-up.sh (see Setup above):

cd kubernetes
hack/e2e-test.sh
Keeping your development fork in sync

One time after cloning your forked repo:

git remote add upstream https://github.com/GoogleCloudPlatform/kubernetes.git

Then each time you want to sync to upstream:

git fetch upstream
git rebase upstream/master
Regenerating the documentation
cd kubernetes/api
sudo docker build -t kubernetes/raml2html .
sudo docker run --name="docgen" kubernetes/raml2html
sudo docker cp docgen:/data/kubernetes.html .

Directories

Path Synopsis
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.
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 includes all types used to communicate between the various parts of the Kubernetes system.
Package api includes all types used to communicate between the various parts of the Kubernetes system.
api/v1beta1
Package v1beta1 is the v1beta1 version of the API
Package v1beta1 is the v1beta1 version of the API
apiserver
Package apiserver contains the code that provides a RESTful api service
Package apiserver contains the code that provides a RESTful api service
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.
cloudprovider
Package cloudprovider supplies interfaces and implementations for cloud service providers
Package cloudprovider supplies interfaces and implementations for cloud service providers
controller
Package controller contains logic for watching and synchronizing replicationControllers.
Package controller contains logic for watching and synchronizing replicationControllers.
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
Reads the pod configuration from etcd using the Kubernetes etcd schema
Reads the pod configuration from etcd using the Kubernetes etcd schema
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 kubenetes cluster master.
Package master contains code for setting up and running a kubenetes 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.
scheduler
Package scheduler contains a generic Scheduler interface and several implementations.
Package scheduler contains a generic Scheduler interface and several implementations.
tools
Package tools implements general tools which depend on the api package.
Package tools implements general tools which depend on the api package.
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.
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.
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.
third_party
src/bitbucket.org/kardianos/osext
Extensions to the standard "os" package.
Extensions to the standard "os" package.
src/code.google.com/p/go-uuid/uuid
The uuid package generates and inspects UUIDs.
The uuid package generates and inspects UUIDs.
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.
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".
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.
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.
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.
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.
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.
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.
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.
src/code.google.com/p/google-api-go-client/adexchangebuyer/v1
Package adexchangebuyer provides access to the Ad Exchange Buyer API.
Package adexchangebuyer provides access to the Ad Exchange Buyer API.
src/code.google.com/p/google-api-go-client/adexchangebuyer/v1.1
Package adexchangebuyer provides access to the Ad Exchange Buyer API.
Package adexchangebuyer provides access to the Ad Exchange Buyer API.
src/code.google.com/p/google-api-go-client/adexchangebuyer/v1.2
Package adexchangebuyer provides access to the Ad Exchange Buyer API.
Package adexchangebuyer provides access to the Ad Exchange Buyer API.
src/code.google.com/p/google-api-go-client/adexchangebuyer/v1.3
Package adexchangebuyer provides access to the Ad Exchange Buyer API.
Package adexchangebuyer provides access to the Ad Exchange Buyer API.
src/code.google.com/p/google-api-go-client/adexchangeseller/v1
Package adexchangeseller provides access to the Ad Exchange Seller API.
Package adexchangeseller provides access to the Ad Exchange Seller API.
src/code.google.com/p/google-api-go-client/adexchangeseller/v1.1
Package adexchangeseller provides access to the Ad Exchange Seller API.
Package adexchangeseller provides access to the Ad Exchange Seller API.
src/code.google.com/p/google-api-go-client/admin/directory_v1
Package admin provides access to the Admin Directory API.
Package admin provides access to the Admin Directory API.
src/code.google.com/p/google-api-go-client/admin/email_migration_v2
Package admin provides access to the Email Migration API v2.
Package admin provides access to the Email Migration API v2.
src/code.google.com/p/google-api-go-client/admin/reports_v1
Package admin provides access to the Admin Reports API.
Package admin provides access to the Admin Reports API.
src/code.google.com/p/google-api-go-client/adsense/v1
Package adsense provides access to the AdSense Management API.
Package adsense provides access to the AdSense Management API.
src/code.google.com/p/google-api-go-client/adsense/v1.1
Package adsense provides access to the AdSense Management API.
Package adsense provides access to the AdSense Management API.
src/code.google.com/p/google-api-go-client/adsense/v1.2
Package adsense provides access to the AdSense Management API.
Package adsense provides access to the AdSense Management API.
src/code.google.com/p/google-api-go-client/adsense/v1.3
Package adsense provides access to the AdSense Management API.
Package adsense provides access to the AdSense Management API.
src/code.google.com/p/google-api-go-client/adsense/v1.4
Package adsense provides access to the AdSense Management API.
Package adsense provides access to the AdSense Management API.
src/code.google.com/p/google-api-go-client/adsensehost/v4.1
Package adsensehost provides access to the AdSense Host API.
Package adsensehost provides access to the AdSense Host API.
src/code.google.com/p/google-api-go-client/analytics/v2.4
Package analytics provides access to the Google Analytics API.
Package analytics provides access to the Google Analytics API.
src/code.google.com/p/google-api-go-client/analytics/v3
Package analytics provides access to the Google Analytics API.
Package analytics provides access to the Google Analytics API.
src/code.google.com/p/google-api-go-client/androidpublisher/v1
Package androidpublisher provides access to the Google Play Android Developer API.
Package androidpublisher provides access to the Google Play Android Developer API.
src/code.google.com/p/google-api-go-client/androidpublisher/v1.1
Package androidpublisher provides access to the Google Play Android Developer API.
Package androidpublisher provides access to the Google Play Android Developer API.
src/code.google.com/p/google-api-go-client/appstate/v1
Package appstate provides access to the Google App State API.
Package appstate provides access to the Google App State API.
src/code.google.com/p/google-api-go-client/audit/v1
Package audit provides access to the Enterprise Audit API.
Package audit provides access to the Enterprise Audit API.
src/code.google.com/p/google-api-go-client/bigquery/v2
Package bigquery provides access to the BigQuery API.
Package bigquery provides access to the BigQuery API.
src/code.google.com/p/google-api-go-client/bigquery/v2beta1
Package bigquery provides access to the BigQuery API.
Package bigquery provides access to the BigQuery API.
src/code.google.com/p/google-api-go-client/blogger/v2
Package blogger provides access to the Blogger API.
Package blogger provides access to the Blogger API.
src/code.google.com/p/google-api-go-client/blogger/v3
Package blogger provides access to the Blogger API.
Package blogger provides access to the Blogger API.
src/code.google.com/p/google-api-go-client/books/v1
Package books provides access to the Books API.
Package books provides access to the Books API.
src/code.google.com/p/google-api-go-client/calendar/v3
Package calendar provides access to the Calendar API.
Package calendar provides access to the Calendar API.
src/code.google.com/p/google-api-go-client/civicinfo/us_v1
Package civicinfo provides access to the Google Civic Information API.
Package civicinfo provides access to the Google Civic Information API.
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.
src/code.google.com/p/google-api-go-client/compute/v1beta12
Package compute provides access to the Compute Engine API.
Package compute provides access to the Compute Engine API.
src/code.google.com/p/google-api-go-client/compute/v1beta13
Package compute provides access to the Compute Engine API.
Package compute provides access to the Compute Engine API.
src/code.google.com/p/google-api-go-client/compute/v1beta14
Package compute provides access to the Compute Engine API.
Package compute provides access to the Compute Engine API.
src/code.google.com/p/google-api-go-client/compute/v1beta15
Package compute provides access to the Compute Engine API.
Package compute provides access to the Compute Engine API.
src/code.google.com/p/google-api-go-client/compute/v1beta16
Package compute provides access to the Compute Engine API.
Package compute provides access to the Compute Engine API.
src/code.google.com/p/google-api-go-client/coordinate/v1
Package coordinate provides access to the Google Maps Coordinate API.
Package coordinate provides access to the Google Maps Coordinate API.
src/code.google.com/p/google-api-go-client/customsearch/v1
Package customsearch provides access to the CustomSearch API.
Package customsearch provides access to the CustomSearch API.
src/code.google.com/p/google-api-go-client/datastore/v1beta1
Package datastore provides access to the Google Cloud Datastore API.
Package datastore provides access to the Google Cloud Datastore API.
src/code.google.com/p/google-api-go-client/datastore/v1beta2
Package datastore provides access to the Google Cloud Datastore API.
Package datastore provides access to the Google Cloud Datastore API.
src/code.google.com/p/google-api-go-client/dfareporting/v1
Package dfareporting provides access to the DFA Reporting API.
Package dfareporting provides access to the DFA Reporting API.
src/code.google.com/p/google-api-go-client/dfareporting/v1.1
Package dfareporting provides access to the DFA Reporting API.
Package dfareporting provides access to the DFA Reporting API.
src/code.google.com/p/google-api-go-client/dfareporting/v1.2
Package dfareporting provides access to the DFA Reporting API.
Package dfareporting provides access to the DFA Reporting API.
src/code.google.com/p/google-api-go-client/dfareporting/v1.3
Package dfareporting provides access to the DFA Reporting API.
Package dfareporting provides access to the DFA Reporting API.
src/code.google.com/p/google-api-go-client/discovery/v1
Package discovery provides access to the APIs Discovery Service.
Package discovery provides access to the APIs Discovery Service.
src/code.google.com/p/google-api-go-client/dns/v1beta1
Package dns provides access to the Google Cloud DNS API.
Package dns provides access to the Google Cloud DNS API.
src/code.google.com/p/google-api-go-client/doubleclickbidmanager/v1
Package doubleclickbidmanager provides access to the DoubleClick Bid Manager API.
Package doubleclickbidmanager provides access to the DoubleClick Bid Manager API.
src/code.google.com/p/google-api-go-client/doubleclicksearch/v2
Package doubleclicksearch provides access to the DoubleClick Search API.
Package doubleclicksearch provides access to the DoubleClick Search API.
src/code.google.com/p/google-api-go-client/drive/v1
Package drive provides access to the Drive API.
Package drive provides access to the Drive API.
src/code.google.com/p/google-api-go-client/drive/v2
Package drive provides access to the Drive API.
Package drive provides access to the Drive API.
src/code.google.com/p/google-api-go-client/freebase/v1
Package freebase provides access to the Freebase Search.
Package freebase provides access to the Freebase Search.
src/code.google.com/p/google-api-go-client/freebase/v1-sandbox
Package freebase provides access to the Freebase Search.
Package freebase provides access to the Freebase Search.
src/code.google.com/p/google-api-go-client/freebase/v1sandbox
Package freebase provides access to the Freebase Search.
Package freebase provides access to the Freebase Search.
src/code.google.com/p/google-api-go-client/games/v1
Package games provides access to the Google Play Game Services API.
Package games provides access to the Google Play Game Services API.
src/code.google.com/p/google-api-go-client/gamesmanagement/v1management
Package gamesmanagement provides access to the Google Play Game Services Management API.
Package gamesmanagement provides access to the Google Play Game Services Management API.
src/code.google.com/p/google-api-go-client/gan/v1beta1
Package gan provides access to the Google Affiliate Network API.
Package gan provides access to the Google Affiliate Network API.
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.
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.
src/code.google.com/p/google-api-go-client/groupsmigration/v1
Package groupsmigration provides access to the Groups Migration API.
Package groupsmigration provides access to the Groups Migration API.
src/code.google.com/p/google-api-go-client/groupssettings/v1
Package groupssettings provides access to the Groups Settings API.
Package groupssettings provides access to the Groups Settings API.
src/code.google.com/p/google-api-go-client/identitytoolkit/v3
Package identitytoolkit provides access to the Google Identity Toolkit API.
Package identitytoolkit provides access to the Google Identity Toolkit API.
src/code.google.com/p/google-api-go-client/latitude/v1
Package latitude provides access to the Google Latitude API.
Package latitude provides access to the Google Latitude API.
src/code.google.com/p/google-api-go-client/licensing/v1
Package licensing provides access to the Enterprise License Manager API.
Package licensing provides access to the Enterprise License Manager API.
src/code.google.com/p/google-api-go-client/mapsengine/v1
Package mapsengine provides access to the Google Maps Engine API.
Package mapsengine provides access to the Google Maps Engine API.
src/code.google.com/p/google-api-go-client/mirror/v1
Package mirror provides access to the Google Mirror API.
Package mirror provides access to the Google Mirror API.
src/code.google.com/p/google-api-go-client/moderator/v1
Package moderator provides access to the Moderator API.
Package moderator provides access to the Moderator API.
src/code.google.com/p/google-api-go-client/oauth2/v1
Package oauth2 provides access to the Google OAuth2 API.
Package oauth2 provides access to the Google OAuth2 API.
src/code.google.com/p/google-api-go-client/oauth2/v2
Package oauth2 provides access to the Google OAuth2 API.
Package oauth2 provides access to the Google OAuth2 API.
src/code.google.com/p/google-api-go-client/orkut/v2
Package orkut provides access to the Orkut API.
Package orkut provides access to the Orkut API.
src/code.google.com/p/google-api-go-client/pagespeedonline/v1
Package pagespeedonline provides access to the PageSpeed Insights API.
Package pagespeedonline provides access to the PageSpeed Insights API.
src/code.google.com/p/google-api-go-client/plus/v1
Package plus provides access to the Google+ API.
Package plus provides access to the Google+ API.
src/code.google.com/p/google-api-go-client/plus/v1domains
Package plus provides access to the Google+ API.
Package plus provides access to the Google+ API.
src/code.google.com/p/google-api-go-client/plus/v1moments
Package plus provides access to the Google+ API.
Package plus provides access to the Google+ API.
src/code.google.com/p/google-api-go-client/plusdomains/v1
Package plusdomains provides access to the Google+ Domains API.
Package plusdomains provides access to the Google+ Domains API.
src/code.google.com/p/google-api-go-client/prediction/v1.2
Package prediction provides access to the Prediction API.
Package prediction provides access to the Prediction API.
src/code.google.com/p/google-api-go-client/prediction/v1.3
Package prediction provides access to the Prediction API.
Package prediction provides access to the Prediction API.
src/code.google.com/p/google-api-go-client/prediction/v1.4
Package prediction provides access to the Prediction API.
Package prediction provides access to the Prediction API.
src/code.google.com/p/google-api-go-client/prediction/v1.5
Package prediction provides access to the Prediction API.
Package prediction provides access to the Prediction API.
src/code.google.com/p/google-api-go-client/prediction/v1.6
Package prediction provides access to the Prediction API.
Package prediction provides access to the Prediction API.
src/code.google.com/p/google-api-go-client/qpxexpress/v1
Package qpxexpress provides access to the QPX Express API.
Package qpxexpress provides access to the QPX Express API.
src/code.google.com/p/google-api-go-client/reseller/v1
Package reseller provides access to the Enterprise Apps Reseller API.
Package reseller provides access to the Enterprise Apps Reseller API.
src/code.google.com/p/google-api-go-client/reseller/v1sandbox
Package reseller provides access to the Enterprise Apps Reseller API.
Package reseller provides access to the Enterprise Apps Reseller API.
src/code.google.com/p/google-api-go-client/shopping/v1
Package shopping provides access to the Search API For Shopping.
Package shopping provides access to the Search API For Shopping.
src/code.google.com/p/google-api-go-client/siteverification/v1
Package siteverification provides access to the Google Site Verification API.
Package siteverification provides access to the Google Site Verification API.
src/code.google.com/p/google-api-go-client/spectrum/v1explorer
Package spectrum provides access to the Google Spectrum Database API.
Package spectrum provides access to the Google Spectrum Database API.
src/code.google.com/p/google-api-go-client/sqladmin/v1beta1
Package sqladmin provides access to the Cloud SQL Administration API.
Package sqladmin provides access to the Cloud SQL Administration API.
src/code.google.com/p/google-api-go-client/sqladmin/v1beta3
Package sqladmin provides access to the Cloud SQL Administration API.
Package sqladmin provides access to the Cloud SQL Administration API.
src/code.google.com/p/google-api-go-client/storage/v1beta1
Package storage provides access to the Cloud Storage API.
Package storage provides access to the Cloud Storage API.
src/code.google.com/p/google-api-go-client/storage/v1beta2
Package storage provides access to the Cloud Storage API.
Package storage provides access to the Cloud Storage API.
src/code.google.com/p/google-api-go-client/taskqueue/v1beta1
Package taskqueue provides access to the TaskQueue API.
Package taskqueue provides access to the TaskQueue API.
src/code.google.com/p/google-api-go-client/taskqueue/v1beta2
Package taskqueue provides access to the TaskQueue API.
Package taskqueue provides access to the TaskQueue API.
src/code.google.com/p/google-api-go-client/tasks/v1
Package tasks provides access to the Tasks API.
Package tasks provides access to the Tasks API.
src/code.google.com/p/google-api-go-client/translate/v2
Package translate provides access to the Translate API.
Package translate provides access to the Translate API.
src/code.google.com/p/google-api-go-client/urlshortener/v1
Package urlshortener provides access to the URL Shortener API.
Package urlshortener provides access to the URL Shortener API.
src/code.google.com/p/google-api-go-client/webfonts/v1
Package webfonts provides access to the Google Fonts Developer API.
Package webfonts provides access to the Google Fonts Developer API.
src/code.google.com/p/google-api-go-client/youtube/v3
Package youtube provides access to the YouTube Data API.
Package youtube provides access to the YouTube Data API.
src/code.google.com/p/google-api-go-client/youtube/v3alpha
Package youtube provides access to the YouTube API.
Package youtube provides access to the YouTube API.
src/code.google.com/p/google-api-go-client/youtubeanalytics/v1
Package youtubeanalytics provides access to the YouTube Analytics API.
Package youtubeanalytics provides access to the YouTube Analytics API.
src/code.google.com/p/google-api-go-client/youtubeanalytics/v1beta1
Package youtubeanalytics provides access to the YouTube Analytics API.
Package youtubeanalytics provides access to the YouTube Analytics API.
src/github.com/coreos/go-systemd/journal
Package journal provides write bindings to the systemd journal
Package journal provides write bindings to the systemd journal
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.
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.
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.
src/github.com/google/cadvisor/container/lmctfy
Package containers is a generated protocol buffer package.
Package containers is a generated protocol buffer package.
src/github.com/google/cadvisor/pages
Page for /containers/
Page for /containers/
src/github.com/google/cadvisor/sampling
Package sampling provides several sampling algorithms.
Package sampling provides several sampling algorithms.
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.
src/github.com/stretchr/testify
A set of packages that provide many tools for testifying that your code will behave as you intend.
A set of packages that provide many tools for testifying that your code will behave as you intend.
src/github.com/stretchr/testify/http
A set of tools to make testing http activity using the Go testing system easier.
A set of tools to make testing http activity using the Go testing system easier.
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.
src/github.com/stretchr/testify/suite
The suite package contains logic for creating testing suite structs and running the methods on those structs as tests.
The suite package contains logic for creating testing suite structs and running the methods on those structs as tests.
src/gonuts.org/v1/yaml
Package yaml implements YAML support for the Go language.
Package yaml implements YAML support for the Go language.
src/gopkg.in/v1/yaml
Package yaml implements YAML support for the Go language.
Package yaml implements YAML support for the Go language.

Jump to

Keyboard shortcuts

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