From 2b068831fae1fb6125cb37072bda3117cafc4fb8 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 13:14:29 -0400 Subject: [PATCH 01/54] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 5458d1f5bc..2a7b100ce6 100644 --- a/index.html +++ b/index.html @@ -11,7 +11,7 @@ title: Accelerate Your Delivery
-

Accelerate Your Delivery

+

Accelerate Your Stuff

Manage an infrastructure cluster as a single system to simplify container operations.
Try Our Hello World From eaf56a18d6b9de2731c12f2e3d28aba01de3f7de Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 13:16:17 -0400 Subject: [PATCH 02/54] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 2a7b100ce6..629647227b 100644 --- a/index.html +++ b/index.html @@ -11,7 +11,7 @@ title: Accelerate Your Delivery
-

Accelerate Your Stuff

+

Accelerate Your Stuffz

Manage an infrastructure cluster as a single system to simplify container operations.
Try Our Hello World From 46fd817d914f888af6c19d9a444429a14280d7eb Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 13:27:42 -0400 Subject: [PATCH 03/54] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 629647227b..3c3d9b2a61 100644 --- a/index.html +++ b/index.html @@ -11,7 +11,7 @@ title: Accelerate Your Delivery
-

Accelerate Your Stuffz

+

Accelerate Your Things

Manage an infrastructure cluster as a single system to simplify container operations.
Try Our Hello World From 2f3820ea7d449a4126c4501a49bb2e8a56b08cee Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 10:41:41 -0700 Subject: [PATCH 04/54] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 3c3d9b2a61..5458d1f5bc 100644 --- a/index.html +++ b/index.html @@ -11,7 +11,7 @@ title: Accelerate Your Delivery
-

Accelerate Your Things

+

Accelerate Your Delivery

Manage an infrastructure cluster as a single system to simplify container operations.
Try Our Hello World From 36fe83cece3e85649b0b8e38c647325a00e52df1 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 11:14:41 -0700 Subject: [PATCH 05/54] Update reference.md --- docs/reference.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/reference.md b/docs/reference.md index 33f34e033c..f14c33458a 100644 --- a/docs/reference.md +++ b/docs/reference.md @@ -19,8 +19,8 @@ In the reference section, you can find reference documentation for Kubernetes AP ## Glossary -Explore the glossary of essential Kubernetes concepts. Some good starting points are the entries for [Pods](/docs/user-guide/pods/), [Nodes](/docs/user-guide/pods/), [Services](/docs/user-guide/services/), and [Replication Controllers](/docs/user-guide/replication-controller/). +Explore the glossary of essential Kubernetes concepts. Some good starting points are the entries for [Pods](/docs/user-guide/pods/), [Nodes](/docs/admin/node.md), [Services](/docs/user-guide/services/), and [Replication Controllers](/docs/user-guide/replication-controller/). ## Design Docs -An archive of the design docs for Kubernetes functionality. Good starting points are [Kubernetes Architecture](https://github.com/kubernetes/kubernetes/blob/release-1.1/docs/design/architecture.md) and [Kubernetes Design Overview](https://github.com/kubernetes/kubernetes/tree/release-1.1/docs/design). \ No newline at end of file +An archive of the design docs for Kubernetes functionality. Good starting points are [Kubernetes Architecture](https://github.com/kubernetes/kubernetes/blob/release-1.1/docs/design/architecture.md) and [Kubernetes Design Overview](https://github.com/kubernetes/kubernetes/tree/release-1.1/docs/design). From ef989edf468bbc4da66cc0800f6d00e261b3eb15 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 11:21:03 -0700 Subject: [PATCH 06/54] Update reference.md --- docs/reference.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference.md b/docs/reference.md index f14c33458a..693d0dc7a4 100644 --- a/docs/reference.md +++ b/docs/reference.md @@ -19,7 +19,7 @@ In the reference section, you can find reference documentation for Kubernetes AP ## Glossary -Explore the glossary of essential Kubernetes concepts. Some good starting points are the entries for [Pods](/docs/user-guide/pods/), [Nodes](/docs/admin/node.md), [Services](/docs/user-guide/services/), and [Replication Controllers](/docs/user-guide/replication-controller/). +Explore the glossary of essential Kubernetes concepts. Some good starting points are the entries for [Pods](/docs/user-guide/pods/), [Nodes](/docs/admin/node/), [Services](/docs/user-guide/services/), and [Replication Controllers](/docs/user-guide/replication-controller/). ## Design Docs From 4375837302d01abf9499d7bcea043d78ccca913b Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 13:14:15 -0700 Subject: [PATCH 07/54] Update aws.md --- docs/getting-started-guides/aws.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/getting-started-guides/aws.md b/docs/getting-started-guides/aws.md index 6ac90d5829..fe748dd7f2 100644 --- a/docs/getting-started-guides/aws.md +++ b/docs/getting-started-guides/aws.md @@ -139,4 +139,6 @@ cluster/kube-down.sh ## Further reading Please see the [Kubernetes docs](/docs/) for more details on administering -and using a Kubernetes cluster. \ No newline at end of file +and using a Kubernetes cluster. + +For support level information, see [Table of solutions] (/docs/getting-started-guides/index.md#table-of-solutions) From 8bfe362e6b376d3765162cdfae134e0b0a21ba69 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 13:19:59 -0700 Subject: [PATCH 08/54] Update aws.md --- docs/getting-started-guides/aws.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/getting-started-guides/aws.md b/docs/getting-started-guides/aws.md index fe748dd7f2..8a7b43f1ed 100644 --- a/docs/getting-started-guides/aws.md +++ b/docs/getting-started-guides/aws.md @@ -141,4 +141,4 @@ cluster/kube-down.sh Please see the [Kubernetes docs](/docs/) for more details on administering and using a Kubernetes cluster. -For support level information, see [Table of solutions] (/docs/getting-started-guides/index.md#table-of-solutions) +For support level information, see [Table of solutions] (/docs/getting-started-guides/#table-of-solutions) From 5e15b25af65a5927c9d77373924d707df78493c0 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 13:32:01 -0700 Subject: [PATCH 09/54] Update aws.md --- docs/getting-started-guides/aws.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/getting-started-guides/aws.md b/docs/getting-started-guides/aws.md index 8a7b43f1ed..8f11f5e29c 100644 --- a/docs/getting-started-guides/aws.md +++ b/docs/getting-started-guides/aws.md @@ -141,4 +141,4 @@ cluster/kube-down.sh Please see the [Kubernetes docs](/docs/) for more details on administering and using a Kubernetes cluster. -For support level information, see [Table of solutions] (/docs/getting-started-guides/#table-of-solutions) +For support level information, see [Table of solutions] (/docs/getting-started-guides/#table-of-solutions) From e1fab5e5c1424e2220a80f46931f242e0ac0702a Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 13:34:27 -0700 Subject: [PATCH 10/54] Update aws.md --- docs/getting-started-guides/aws.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/getting-started-guides/aws.md b/docs/getting-started-guides/aws.md index 8f11f5e29c..91ee9121dd 100644 --- a/docs/getting-started-guides/aws.md +++ b/docs/getting-started-guides/aws.md @@ -141,4 +141,4 @@ cluster/kube-down.sh Please see the [Kubernetes docs](/docs/) for more details on administering and using a Kubernetes cluster. -For support level information, see [Table of solutions] (/docs/getting-started-guides/#table-of-solutions) +For support level information, see the [table of solutions] (/docs/getting-started-guides/) chart. From 3669e9f4d32166b40f48f0eb22367eabc01ffc7c Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 13:40:29 -0700 Subject: [PATCH 11/54] Update aws.md --- docs/getting-started-guides/aws.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/getting-started-guides/aws.md b/docs/getting-started-guides/aws.md index 91ee9121dd..8c9a26aa5e 100644 --- a/docs/getting-started-guides/aws.md +++ b/docs/getting-started-guides/aws.md @@ -141,4 +141,7 @@ cluster/kube-down.sh Please see the [Kubernetes docs](/docs/) for more details on administering and using a Kubernetes cluster. -For support level information, see the [table of solutions] (/docs/getting-started-guides/) chart. +For support level information, see the [Kubernetes docs](/docs/) + + +[table of solutions] (/docs/getting-started-guides/) chart. From b26fda4d62f97818510d51f4dcf759f4bb7d7145 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 13:42:26 -0700 Subject: [PATCH 12/54] Update aws.md --- docs/getting-started-guides/aws.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/getting-started-guides/aws.md b/docs/getting-started-guides/aws.md index 8c9a26aa5e..2a333d7af9 100644 --- a/docs/getting-started-guides/aws.md +++ b/docs/getting-started-guides/aws.md @@ -141,7 +141,7 @@ cluster/kube-down.sh Please see the [Kubernetes docs](/docs/) for more details on administering and using a Kubernetes cluster. -For support level information, see the [Kubernetes docs](/docs/) +For support level information, see the [Table of solutions](/docs/) [table of solutions] (/docs/getting-started-guides/) chart. From 5ef1b894790c4757e608de06008750ebee383af7 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 13:45:11 -0700 Subject: [PATCH 13/54] Update aws.md --- docs/getting-started-guides/aws.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/docs/getting-started-guides/aws.md b/docs/getting-started-guides/aws.md index 2a333d7af9..077dcae0e9 100644 --- a/docs/getting-started-guides/aws.md +++ b/docs/getting-started-guides/aws.md @@ -141,7 +141,5 @@ cluster/kube-down.sh Please see the [Kubernetes docs](/docs/) for more details on administering and using a Kubernetes cluster. -For support level information, see the [Table of solutions](/docs/) +For support level information, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. - -[table of solutions] (/docs/getting-started-guides/) chart. From 6be977b6a5d506e6013b63e966337b0b0d8ccfd7 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 13:51:47 -0700 Subject: [PATCH 14/54] Update gce.md --- docs/getting-started-guides/gce.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/docs/getting-started-guides/gce.md b/docs/getting-started-guides/gce.md index e486022afc..c9d617932e 100644 --- a/docs/getting-started-guides/gce.md +++ b/docs/getting-started-guides/gce.md @@ -212,4 +212,12 @@ 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 and Port: `tcp:1-65535;udp:1-65535;icmp` \ No newline at end of file +* Allowed Protocols and Port: `tcp:1-65535;udp:1-65535;icmp` + + +## Further reading + +Please see the [Kubernetes docs](/docs/) for more details on administering +and using a Kubernetes cluster. + +For support level information, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. From c7cb191e128bda11a16e7d2f4943941b9e9b60b3 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 13:53:12 -0700 Subject: [PATCH 15/54] Update index.md --- .../coreos/azure/index.md | 143 +++++++++--------- 1 file changed, 75 insertions(+), 68 deletions(-) diff --git a/docs/getting-started-guides/coreos/azure/index.md b/docs/getting-started-guides/coreos/azure/index.md index 3134378705..878c548f7b 100644 --- a/docs/getting-started-guides/coreos/azure/index.md +++ b/docs/getting-started-guides/coreos/azure/index.md @@ -1,11 +1,11 @@ ---- ---- - -* TOC -{:toc} - - -In this guide I will demonstrate how to deploy a Kubernetes cluster to Azure cloud. You will be using CoreOS with Weave, which implements simple and secure networking, in a transparent, yet robust way. The purpose of this guide is to provide an out-of-the-box implementation that can ultimately be taken into production with little change. It will demonstrate how to provision a dedicated Kubernetes master and etcd nodes, and show how to scale the cluster with ease. +--- +--- + +* TOC +{:toc} + + +In this guide I will demonstrate how to deploy a Kubernetes cluster to Azure cloud. You will be using CoreOS with Weave, which implements simple and secure networking, in a transparent, yet robust way. The purpose of this guide is to provide an out-of-the-box implementation that can ultimately be taken into production with little change. It will demonstrate how to provision a dedicated Kubernetes master and etcd nodes, and show how to scale the cluster with ease. ### Prerequisites @@ -15,83 +15,83 @@ In this guide I will demonstrate how to deploy a Kubernetes cluster to Azure clo To get started, you need to checkout the code: -```shell +```shell git clone https://github.com/kubernetes/kubernetes cd kubernetes/docs/getting-started-guides/coreos/azure/ -``` - +``` + You will need to have [Node.js installed](http://nodejs.org/download/) on you machine. If you have previously used Azure CLI, you should have it already. First, you need to install some of the dependencies with -```shell +```shell npm install -``` - +``` + Now, all you need to do is: -```shell +```shell ./azure-login.js -u ./create-kubernetes-cluster.js -``` - -This script will provision a cluster suitable for production use, where there is a ring of 3 dedicated etcd nodes: 1 kubernetes master and 2 kubernetes nodes. The `kube-00` VM will be the master, your work loads are only to be deployed on the nodes, `kube-01` and `kube-02`. Initially, all VMs are single-core, to ensure a user of the free tier can reproduce it without paying extra. I will show how to add more bigger VMs later. +``` + +This script will provision a cluster suitable for production use, where there is a ring of 3 dedicated etcd nodes: 1 kubernetes master and 2 kubernetes nodes. The `kube-00` VM will be the master, your work loads are only to be deployed on the nodes, `kube-01` and `kube-02`. Initially, all VMs are single-core, to ensure a user of the free tier can reproduce it without paying extra. I will show how to add more bigger VMs later. If you need to pass Azure specific options for the creation script you can do this via additional environment variables e.g. ```shell -AZ_SUBSCRIPTION= AZ_LOCATION="East US" ./create-kubernetes-cluster.js -# or -AZ_VM_COREOS_CHANNEL=beta ./create-kubernetes-cluster.js -``` +AZ_SUBSCRIPTION= AZ_LOCATION="East US" ./create-kubernetes-cluster.js +# or +AZ_VM_COREOS_CHANNEL=beta ./create-kubernetes-cluster.js +``` ![VMs in Azure](/images/docs/initial_cluster.png) Once the creation of Azure VMs has finished, you should see the following: -```shell +```shell ... azure_wrapper/info: Saved SSH config, you can use it like so: `ssh -F ./output/kube_1c1496016083b4_ssh_conf ` azure_wrapper/info: The hosts in this deployment are: [ 'etcd-00', 'etcd-01', 'etcd-02', 'kube-00', 'kube-01', 'kube-02' ] azure_wrapper/info: Saved state into `./output/kube_1c1496016083b4_deployment.yml` -``` - +``` + Let's login to the master node like so: -```shell +```shell ssh -F ./output/kube_1c1496016083b4_ssh_conf kube-00 -``` - +``` + > Note: config file name will be different, make sure to use the one you see. Check there are 2 nodes in the cluster: -```shell +```shell core@kube-00 ~ $ kubectl get nodes NAME LABELS STATUS kube-01 kubernetes.io/hostname=kube-01 Ready kube-02 kubernetes.io/hostname=kube-02 Ready -``` - +``` + ## Deploying the workload Let's follow the Guestbook example now: -```shell +```shell kubectl create -f ~/guestbook-example -``` - +``` + You need to wait for the pods to get deployed, run the following and wait for `STATUS` to change from `Pending` to `Running`. -```shell +```shell kubectl get pods --watch -``` - +``` + > Note: the most time it will spend downloading Docker container images on each of the nodes. Eventually you should see: -```shell +```shell NAME READY STATUS RESTARTS AGE frontend-0a9xi 1/1 Running 0 4m frontend-4wahe 1/1 Running 0 4m @@ -99,8 +99,8 @@ frontend-6l36j 1/1 Running 0 4m redis-master-talmr 1/1 Running 0 4m redis-slave-12zfd 1/1 Running 0 4m redis-slave-3nbce 1/1 Running 0 4m -``` - +``` + ## Scaling Two single-core nodes are certainly not enough for a production system of today. Let's scale the cluster by adding a couple of bigger nodes. @@ -109,13 +109,13 @@ You will need to open another terminal window on your machine and go to the same First, lets set the size of new VMs: -```shell +```shell export AZ_VM_SIZE=Large -``` - +``` + Now, run scale script with state file of the previous deployment and number of nodes to add: -```shell +```shell core@kube-00 ~ $ ./scale-kubernetes-cluster.js ./output/kube_1c1496016083b4_deployment.yml 2 ... azure_wrapper/info: Saved SSH config, you can use it like so: `ssh -F ./output/kube_8f984af944f572_ssh_conf ` @@ -129,69 +129,69 @@ azure_wrapper/info: The hosts in this deployment are: 'kube-03', 'kube-04' ] azure_wrapper/info: Saved state into `./output/kube_8f984af944f572_deployment.yml` -``` - +``` + > Note: this step has created new files in `./output`. Back on `kube-00`: -```shell +```shell core@kube-00 ~ $ kubectl get nodes NAME LABELS STATUS kube-01 kubernetes.io/hostname=kube-01 Ready kube-02 kubernetes.io/hostname=kube-02 Ready kube-03 kubernetes.io/hostname=kube-03 Ready kube-04 kubernetes.io/hostname=kube-04 Ready -``` - +``` + You can see that two more nodes joined happily. Let's scale the number of Guestbook instances now. First, double-check how many replication controllers there are: -```shell +```shell core@kube-00 ~ $ kubectl get rc ONTROLLER CONTAINER(S) IMAGE(S) SELECTOR REPLICAS frontend php-redis kubernetes/example-guestbook-php-redis:v2 name=frontend 3 redis-master master redis name=redis-master 1 redis-slave worker kubernetes/redis-slave:v2 name=redis-slave 2 -``` - +``` + As there are 4 nodes, let's scale proportionally: -```shell +```shell core@kube-00 ~ $ kubectl scale --replicas=4 rc redis-slave >>>>>>> coreos/azure: Updates for 1.0 scaled core@kube-00 ~ $ kubectl scale --replicas=4 rc frontend scaled -``` - +``` + Check what you have now: -```shell +```shell core@kube-00 ~ $ kubectl get rc CONTROLLER CONTAINER(S) IMAGE(S) SELECTOR REPLICAS frontend php-redis kubernetes/example-guestbook-php-redis:v2 name=frontend 4 redis-master master redis name=redis-master 1 redis-slave worker kubernetes/redis-slave:v2 name=redis-slave 4 -``` - +``` + You now will have more instances of front-end Guestbook apps and Redis slaves; and, if you look up all pods labeled `name=frontend`, you should see one running on each node. -```shell +```shell core@kube-00 ~/guestbook-example $ kubectl get pods -l name=frontend NAME READY STATUS RESTARTS AGE frontend-0a9xi 1/1 Running 0 22m frontend-4wahe 1/1 Running 0 22m frontend-6l36j 1/1 Running 0 22m frontend-z9oxo 1/1 Running 0 41s -``` - +``` + ## Exposing the app to the outside world There is no native Azure load-balancer support in Kubernetes 1.0, however here is how you can expose the Guestbook app to the Internet. -```shell +```shell ./expose_guestbook_app_port.sh ./output/kube_1c1496016083b4_ssh_conf Guestbook app is on port 31605, will map it to port 80 on kube-00 info: Executing command vm endpoint create @@ -207,8 +207,8 @@ data: Protcol : tcp data: Virtual IP Address : 137.117.156.164 data: Direct server return : Disabled info: vm endpoint show command OK -``` - +``` + You then should be able to access it from anywhere via the Azure virtual IP for `kube-00` displayed above, i.e. `http://137.117.156.164/` in my case. ## Next steps @@ -221,10 +221,17 @@ You should probably try deploy other [example apps](https://github.com/kubernete If you don't wish care about the Azure bill, you can tear down the cluster. It's easy to redeploy it, as you can see. -```shell +```shell ./destroy-cluster.js ./output/kube_8f984af944f572_deployment.yml -``` - +``` + > Note: make sure to use the _latest state file_, as after scaling there is a new one. -By the way, with the scripts shown, you can deploy multiple clusters, if you like :) \ No newline at end of file +By the way, with the scripts shown, you can deploy multiple clusters, if you like :) + +## Further reading + +Please see the [Kubernetes docs](/docs/) for more details on administering +and using a Kubernetes cluster. + +For support level information, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. From 023ac48c695d1ca579ecd3afbccd324d26f08cc8 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 13:54:13 -0700 Subject: [PATCH 16/54] Update clc.md --- docs/getting-started-guides/clc.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/docs/getting-started-guides/clc.md b/docs/getting-started-guides/clc.md index 47992df9a2..639b21b49e 100644 --- a/docs/getting-started-guides/clc.md +++ b/docs/getting-started-guides/clc.md @@ -332,3 +332,11 @@ These are the known items that don't work on CenturyLink cloud but do work on ot If you want more information about our Ansible files, please [read this file](https://github.com/CenturyLinkCloud/adm-kubernetes-on-clc/blob/master/ansible/README.md) +## Further reading + +Please see the [Kubernetes docs](/docs/) for more details on administering +and using a Kubernetes cluster. + +For support level information, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. + + From 385c26a05474447e1d60b996cbfc3a6c8d1e04b3 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 13:57:54 -0700 Subject: [PATCH 17/54] Update docker.md --- docs/getting-started-guides/docker.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docs/getting-started-guides/docker.md b/docs/getting-started-guides/docker.md index e3af1df87f..bcefe69fdd 100644 --- a/docs/getting-started-guides/docker.md +++ b/docs/getting-started-guides/docker.md @@ -209,3 +209,9 @@ output of /proc/cmdline: $ cat /proc/cmdline BOOT_IMAGE=/boot/vmlinuz-3.18.4-aufs root=/dev/sda5 ro cgroup_enable=memory=1 ``` +## Further reading + +Please see the [Kubernetes docs](/docs/) for more details on administering +and using a Kubernetes cluster. + +For support level information, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. From 80f4e8670c0796c7be0acedce708495bedc1207d Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 14:25:07 -0700 Subject: [PATCH 18/54] Update aws.md --- docs/getting-started-guides/aws.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/docs/getting-started-guides/aws.md b/docs/getting-started-guides/aws.md index 077dcae0e9..f4863dbd3c 100644 --- a/docs/getting-started-guides/aws.md +++ b/docs/getting-started-guides/aws.md @@ -135,6 +135,14 @@ Make sure the environment variables you used to provision your cluster are still ```shell cluster/kube-down.sh ``` +## Support Level +Here are all the solutions mentioned above in table form. + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +AWS | CoreOS | CoreOS | flannel | [docs](/docs/getting-started-guides/aws) | | Community + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. ## Further reading From 92a3093795ca86d964e084953a83001aeb434123 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 14:27:32 -0700 Subject: [PATCH 19/54] Update aws.md --- docs/getting-started-guides/aws.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/getting-started-guides/aws.md b/docs/getting-started-guides/aws.md index f4863dbd3c..f8c2f64f0e 100644 --- a/docs/getting-started-guides/aws.md +++ b/docs/getting-started-guides/aws.md @@ -136,7 +136,7 @@ Make sure the environment variables you used to provision your cluster are still cluster/kube-down.sh ``` ## Support Level -Here are all the solutions mentioned above in table form. + IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level -------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- @@ -149,5 +149,5 @@ For support level information on all solutions, see the [Table of solutions](/do Please see the [Kubernetes docs](/docs/) for more details on administering and using a Kubernetes cluster. -For support level information, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. + From e755e30d6931b3b4bae4e68452ee478b411dab17 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 14:29:30 -0700 Subject: [PATCH 20/54] Update index.md --- docs/getting-started-guides/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/getting-started-guides/index.md b/docs/getting-started-guides/index.md index 8a0e139dba..5a43f5116e 100644 --- a/docs/getting-started-guides/index.md +++ b/docs/getting-started-guides/index.md @@ -125,7 +125,7 @@ KVM | custom | Fedora | flannel | [docs](/docs/gettin Mesos/Docker | custom | Ubuntu | Docker | [docs](/docs/getting-started-guides/mesos-docker) | | Community ([Kubernetes-Mesos Authors](https://github.com/mesosphere/kubernetes-mesos/blob/master/AUTHORS.md)) Mesos/GCE | | | | [docs](/docs/getting-started-guides/mesos) | | Community ([Kubernetes-Mesos Authors](https://github.com/mesosphere/kubernetes-mesos/blob/master/AUTHORS.md)) DCOS | Marathon | CoreOS/Alpine | custom | [docs](/docs/getting-started-guides/dcos) | | Community ([Kubernetes-Mesos Authors](https://github.com/mesosphere/kubernetes-mesos/blob/master/AUTHORS.md)) -AWS | CoreOS | CoreOS | flannel | [docs](/docs/getting-started-guides/coreos) | | Community +AWS | CoreOS | CoreOS | flannel | [docs](/docs/getting-started-guides/aws) | | Community GCE | CoreOS | CoreOS | flannel | [docs](/docs/getting-started-guides/coreos) | | Community ([@pires](https://github.com/pires)) Vagrant | CoreOS | CoreOS | flannel | [docs](/docs/getting-started-guides/coreos) | | Community ([@pires](https://github.com/pires), [@AntonioMeireles](https://github.com/AntonioMeireles)) Bare-metal (Offline) | CoreOS | CoreOS | flannel | [docs](/docs/getting-started-guides/coreos/bare_metal_offline) | | Community ([@jeffbean](https://github.com/jeffbean)) From 7abc1dbe35d4e1a140bd6363f920e76bf98875f5 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 14:32:39 -0700 Subject: [PATCH 21/54] Update gce.md --- docs/getting-started-guides/gce.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/docs/getting-started-guides/gce.md b/docs/getting-started-guides/gce.md index c9d617932e..1308092a87 100644 --- a/docs/getting-started-guides/gce.md +++ b/docs/getting-started-guides/gce.md @@ -214,10 +214,18 @@ field values: * Source Ranges: `10.0.0.0/8` * Allowed Protocols and Port: `tcp:1-65535;udp:1-65535;icmp` +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +GCE | Saltstack | Debian | GCE | [docs](/docs/getting-started-guides/gce) | ['œ“][1] | Project + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. ## Further reading Please see the [Kubernetes docs](/docs/) for more details on administering and using a Kubernetes cluster. -For support level information, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. + From b579dbe038f10a35bc04d1af4fd2d1204424181b Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 14:35:32 -0700 Subject: [PATCH 22/54] Update gce.md --- docs/getting-started-guides/gce.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/getting-started-guides/gce.md b/docs/getting-started-guides/gce.md index 1308092a87..e3bbb8f6e5 100644 --- a/docs/getting-started-guides/gce.md +++ b/docs/getting-started-guides/gce.md @@ -219,7 +219,7 @@ field values: IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level -------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- -GCE | Saltstack | Debian | GCE | [docs](/docs/getting-started-guides/gce) | ['œ“][1] | Project +GCE | Saltstack | Debian | GCE | [docs](/docs/getting-started-guides/gce) | | Project For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. From 0109402f4e1da712b3a307a255bb178ad6bb6578 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 14:39:52 -0700 Subject: [PATCH 23/54] Update index.md --- .../getting-started-guides/coreos/azure/index.md | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/docs/getting-started-guides/coreos/azure/index.md b/docs/getting-started-guides/coreos/azure/index.md index 878c548f7b..1aee74e8d2 100644 --- a/docs/getting-started-guides/coreos/azure/index.md +++ b/docs/getting-started-guides/coreos/azure/index.md @@ -229,9 +229,21 @@ If you don't wish care about the Azure bill, you can tear down the cluster. It's By the way, with the scripts shown, you can deploy multiple clusters, if you like :) +## Support Level + +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +Azure | CoreOS | CoreOS | Weave | [docs](/docs/getting-started-guides/coreos/azure/) | | Community ([@errordeveloper](https://github.com/errordeveloper), [@squillace](https://github.com/squillace), [@chanezon](https://github.com/chanezon), [@crossorigin](https://github.com/crossorigin)) + + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. + + ## Further reading Please see the [Kubernetes docs](/docs/) for more details on administering -and using a Kubernetes cluster. +and using a Kubernetes cluster -For support level information, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. From 7b7f4048f94852e5a026fb322b408d3d8b117d5a Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 14:40:32 -0700 Subject: [PATCH 24/54] Update index.md --- docs/getting-started-guides/coreos/azure/index.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/getting-started-guides/coreos/azure/index.md b/docs/getting-started-guides/coreos/azure/index.md index 1aee74e8d2..7101ae7ee7 100644 --- a/docs/getting-started-guides/coreos/azure/index.md +++ b/docs/getting-started-guides/coreos/azure/index.md @@ -231,8 +231,6 @@ By the way, with the scripts shown, you can deploy multiple clusters, if you lik ## Support Level -## Support Level - IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level -------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- From c791ca972c7e596df13f7a0e0638869487c9447b Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 14:42:13 -0700 Subject: [PATCH 25/54] Update docker.md --- docs/getting-started-guides/docker.md | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/docs/getting-started-guides/docker.md b/docs/getting-started-guides/docker.md index bcefe69fdd..666df00136 100644 --- a/docs/getting-started-guides/docker.md +++ b/docs/getting-started-guides/docker.md @@ -209,9 +209,19 @@ output of /proc/cmdline: $ cat /proc/cmdline BOOT_IMAGE=/boot/vmlinuz-3.18.4-aufs root=/dev/sda5 ro cgroup_enable=memory=1 ``` +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +Docker Single Node | custom | N/A | local | [docs](/docs/getting-started-guides/docker) | | Project ([@brendandburns](https://github.com/brendandburns)) + + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. + + ## Further reading Please see the [Kubernetes docs](/docs/) for more details on administering and using a Kubernetes cluster. -For support level information, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. From 51fcf507dace8c3b9c1f9159529d6b280f412780 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 14:44:10 -0700 Subject: [PATCH 26/54] Update index.md --- docs/getting-started-guides/docker-multinode/index.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/docs/getting-started-guides/docker-multinode/index.md b/docs/getting-started-guides/docker-multinode/index.md index 2f7a17e50e..ec7e033e1b 100644 --- a/docs/getting-started-guides/docker-multinode/index.md +++ b/docs/getting-started-guides/docker-multinode/index.md @@ -86,3 +86,14 @@ See [here](/docs/getting-started-guides/docker-multinode/deployDNS) for instruct Once your cluster has been created you can [test it out](/docs/getting-started-guides/docker-multinode/testing) For more complete applications, please look in the [examples directory](https://github.com/kubernetes/kubernetes/tree/{{page.githubbranch}}/examples/) + +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +Docker Multi Node | custom | N/A | flannel | [docs](/docs/getting-started-guides/docker-multinode) | | Project ([@brendandburns](https://github.com/brendandburns)) + + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. + From e38623ac4c1a1ea616887a5067ff5974ca3d4eca Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 14:46:52 -0700 Subject: [PATCH 27/54] Update fedora_ansible_config.md --- .../fedora/fedora_ansible_config.md | 150 ++++++++++-------- 1 file changed, 80 insertions(+), 70 deletions(-) diff --git a/docs/getting-started-guides/fedora/fedora_ansible_config.md b/docs/getting-started-guides/fedora/fedora_ansible_config.md index b82242b92c..57532a4fa5 100644 --- a/docs/getting-started-guides/fedora/fedora_ansible_config.md +++ b/docs/getting-started-guides/fedora/fedora_ansible_config.md @@ -1,9 +1,9 @@ ---- ---- +--- +--- Configuring Kubernetes on Fedora via Ansible offers a simple way to quickly create a clustered environment with little effort. -* TOC +* TOC {:toc} ## Prerequisites @@ -18,12 +18,12 @@ The hosts can be virtual or bare metal. Ansible will take care of the rest of th A Kubernetes cluster requires etcd, a master, and n nodes, so we will create a cluster with three hosts, for example: -```shell +```shell master,etcd = kube-master.example.com node1 = kube-node-01.example.com node2 = kube-node-02.example.com -``` - +``` + **Make sure your local machine has** - ansible (must be 1.9.0+) @@ -32,22 +32,22 @@ master,etcd = kube-master.example.com If not -```shell +```shell yum install -y ansible git python-netaddr -``` - +``` + **Now clone down the Kubernetes repository** -```shell +```shell git clone https://github.com/kubernetes/contrib.git cd contrib/ansible -``` - +``` + **Tell ansible about each machine and its role in your cluster** Get the IP addresses from the master and nodes. Add those to the `~/contrib/ansible/inventory` file on the host running Ansible. -```shell +```shell [masters] kube-master.example.com @@ -57,8 +57,8 @@ kube-master.example.com [nodes] kube-node-01.example.com kube-node-02.example.com -``` - +``` + ## Setting up ansible access to your nodes If you already are running on a machine which has passwordless ssh access to the kube-master and kube-node-{01,02} nodes, and 'sudo' privileges, simply set the value of `ansible_ssh_user` in `~/contrib/ansible/group_vars/all.yml` to the username which you use to ssh to the nodes (i.e. `fedora`), and proceed to the next step... @@ -67,52 +67,52 @@ If you already are running on a machine which has passwordless ssh access to the edit: ~/contrib/ansible/group_vars/all.yml -```yaml +```yaml ansible_ssh_user: root -``` - +``` + **Configuring ssh access to the cluster** If you already have ssh access to every machine using ssh public keys you may skip to [setting up the cluster](#setting-up-the-cluster) Make sure your local machine (root) has an ssh key pair if not -```shell +```shell ssh-keygen -``` - +``` + Copy the ssh public key to **all** nodes in the cluster -```shell +```shell for node in kube-master.example.com kube-node-01.example.com kube-node-02.example.com; do ssh-copy-id ${node} done -``` - +``` + ## Setting up the cluster Although the default value of variables in `~/contrib/ansible/group_vars/all.yml` should be good enough, if not, change them as needed. - + ```conf -edit: ~/contrib/ansible/group_vars/all.yml +edit: ~/contrib/ansible/group_vars/all.yml ``` **Configure access to kubernetes packages** Modify `source_type` as below to access kubernetes packages through the package manager. -```yaml +```yaml source_type: packageManager -``` - +``` + **Configure the IP addresses used for services** Each Kubernetes service gets its own IP address. These are not real IPs. You need only select a range of IPs which are not in use elsewhere in your environment. -```yaml +```yaml kube_service_addresses: 10.254.0.0/16 -``` - +``` + **Managing flannel** Modify `flannel_subnet`, `flannel_prefix` and `flannel_host_prefix` only if defaults are not appropriate for your cluster. @@ -122,32 +122,32 @@ Modify `flannel_subnet`, `flannel_prefix` and `flannel_host_prefix` only if defa Set `cluster_logging` to false or true (default) to disable or enable logging with elasticsearch. -```yaml +```yaml cluster_logging: true -``` - +``` + Turn `cluster_monitoring` to true (default) or false to enable or disable cluster monitoring with heapster and influxdb. -```yaml +```yaml cluster_monitoring: true -``` - +``` + Turn `dns_setup` to true (recommended) or false to enable or disable whole DNS configuration. -```yaml +```yaml dns_setup: true -``` - +``` + **Tell ansible to get to work!** This will finally setup your whole Kubernetes cluster for you. -```shell +```shell cd ~/contrib/ansible/ ./setup.sh -``` - +``` + ## Testing and using your new cluster That's all there is to it. It's really that easy. At this point you should have a functioning Kubernetes cluster. @@ -156,25 +156,26 @@ That's all there is to it. It's really that easy. At this point you should hav Run the following on the kube-master: -```shell +```shell kubectl get nodes -``` - +``` + **Show services running on masters and nodes** -```shell +```shell systemctl | grep -i kube -``` - +``` + **Show firewall rules on the masters and nodes** -```shell -iptables -nvL -``` - +```shell +iptables -nvL + +``` + **Create /tmp/apache.json on the master with the following contents and deploy pod** -```json +```json { "kind": "Pod", "apiVersion": "v1", @@ -199,29 +200,38 @@ iptables -nvL ] } } -``` - -```shell +``` + +```shell kubectl create -f /tmp/apache.json -``` - +``` + **Check where the pod was created** -```shell +```shell kubectl get pods -``` - +``` + **Check Docker status on nodes** -```shell +```shell docker ps docker images -``` - +``` + **After the pod is 'Running' Check web server access on the node** -```shell +```shell curl http://localhost -``` - -That's it ! \ No newline at end of file +``` + +That's it ! + +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +Bare-metal | Ansible | Fedora | flannel | [docs](/docs/getting-started-guides/fedora/fedora_ansible_config) | | Project + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. From 4052573aae4e500a18abb0bf0641c3259f60c134 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 14:48:26 -0700 Subject: [PATCH 28/54] Update fedora_manual_config.md --- .../fedora/fedora_manual_config.md | 112 ++++++++++-------- 1 file changed, 61 insertions(+), 51 deletions(-) diff --git a/docs/getting-started-guides/fedora/fedora_manual_config.md b/docs/getting-started-guides/fedora/fedora_manual_config.md index 224e10fce9..81bf0b138c 100644 --- a/docs/getting-started-guides/fedora/fedora_manual_config.md +++ b/docs/getting-started-guides/fedora/fedora_manual_config.md @@ -1,7 +1,7 @@ ---- ---- +--- +--- -* TOC +* TOC {:toc} ## Prerequisites @@ -20,37 +20,37 @@ The Kubernetes package provides a few services: kube-apiserver, kube-scheduler, Hosts: -```conf +```conf fed-master = 192.168.121.9 fed-node = 192.168.121.65 -``` - +``` + **Prepare the hosts:** * Install Kubernetes on all hosts - fed-{master,node}. This will also pull in docker. Also install etcd on fed-master. This guide has been tested with kubernetes-0.18 and beyond. * The [--enablerepo=updates-testing](https://fedoraproject.org/wiki/QA:Updates_Testing) directive in the yum command below will ensure that the most recent Kubernetes version that is scheduled for pre-release will be installed. This should be a more recent version than the Fedora "stable" release for Kubernetes that you would get without adding the directive. * If you want the very latest Kubernetes release [you can download and yum install the RPM directly from Fedora Koji](http://koji.fedoraproject.org/koji/packageinfo?packageID=19202) instead of using the yum install command below. -```shell +```shell yum -y install --enablerepo=updates-testing kubernetes -``` - +``` + * Install etcd and iptables -```shell +```shell yum -y install etcd iptables -``` - +``` + * Add master and node to /etc/hosts on all machines (not needed if hostnames already in DNS). Make sure that communication works between fed-master and fed-node by using a utility such as ping. -```shell +```shell echo "192.168.121.9 fed-master 192.168.121.65 fed-node" >> /etc/hosts -``` - +``` + * Edit /etc/kubernetes/config which will be the same on all hosts (master and node) to contain: -```shell +```shell # Comma separated list of nodes in the etcd cluster KUBE_MASTER="--master=http://fed-master:8080" @@ -62,20 +62,20 @@ KUBE_LOG_LEVEL="--v=0" # Should this cluster be allowed to run privileged docker containers KUBE_ALLOW_PRIV="--allow-privileged=false" -``` - +``` + * Disable the firewall on both the master and node, as docker does not play well with other firewall rule managers. Please note that iptables-services does not exist on default fedora server install. -```shell +```shell systemctl disable iptables-services firewalld systemctl stop iptables-services firewalld -``` - +``` + **Configure the Kubernetes services on the master.** * Edit /etc/kubernetes/apiserver to appear as such. The service-cluster-ip-range IP addresses must be an unused block of addresses, not used anywhere else. They do not need to be routed or assigned to anything. -```shell +```shell # The address on the local server to listen to. KUBE_API_ADDRESS="--address=0.0.0.0" @@ -87,37 +87,37 @@ KUBE_SERVICE_ADDRESSES="--service-cluster-ip-range=10.254.0.0/16" # Add your own! KUBE_API_ARGS="" -``` - +``` + * Edit /etc/etcd/etcd.conf,let the etcd to listen all the ip instead of 127.0.0.1, if not, you will get the error like "connection refused". Note that Fedora 22 uses etcd 2.0, One of the changes in etcd 2.0 is that now uses port 2379 and 2380 (as opposed to etcd 0.46 which userd 4001 and 7001). -```shell +```shell ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:4001" -``` - +``` + * Create /var/run/kubernetes on master: -```shell +```shell mkdir /var/run/kubernetes chown kube:kube /var/run/kubernetes chmod 750 /var/run/kubernetes -``` - +``` + * Start the appropriate services on master: -```shell +```shell for SERVICES in etcd kube-apiserver kube-controller-manager kube-scheduler; do systemctl restart $SERVICES systemctl enable $SERVICES systemctl status $SERVICES done -``` - +``` + * Addition of nodes: * Create following node.json file on Kubernetes master node: -```json +```json { "apiVersion": "v1", "kind": "Node", @@ -129,18 +129,18 @@ done "externalID": "fed-node" } } -``` - +``` + Now create a node object internally in your Kubernetes cluster by running: -```shell +```shell $ kubectl create -f ./node.json $ kubectl get nodes NAME LABELS STATUS fed-node name=fed-node-label Unknown -``` - +``` + Please note that in the above, it only creates a representation for the node _fed-node_ internally. It does not provision the actual _fed-node_. Also, it is assumed that _fed-node_ (as specified in `name`) can be resolved and is @@ -153,7 +153,7 @@ a Kubernetes node (fed-node) below. * Edit /etc/kubernetes/kubelet to appear as such: -```shell +```shell ### # Kubernetes kubelet (node) config @@ -168,36 +168,46 @@ KUBELET_API_SERVER="--api-servers=http://fed-master:8080" # Add your own! #KUBELET_ARGS="" -``` - +``` + * Start the appropriate services on the node (fed-node). -```shell +```shell for SERVICES in kube-proxy kubelet docker; do systemctl restart $SERVICES systemctl enable $SERVICES systemctl status $SERVICES done -``` - +``` + * Check to make sure now the cluster can see the fed-node on fed-master, and its status changes to _Ready_. -```shell +```shell kubectl get nodes NAME LABELS STATUS fed-node name=fed-node-label Ready -``` - +``` + * Deletion of nodes: To delete _fed-node_ from your Kubernetes cluster, one should run the following on fed-master (Please do not do it, it is just for information): -```shell +```shell kubectl delete -f ./node.json -``` - +``` + *You should be finished!* **The cluster should be running! Launch a test pod.** You should have a functional cluster, check out [101](/docs/user-guide/walkthrough/)! + +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +Bare-metal | custom | Fedora | _none_ | [docs](/docs/getting-started-guides/fedora/fedora_manual_config) | | Project + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. + From e1476b3f0f961535d1ceeba4037901b84a3d48ad Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 14:49:57 -0700 Subject: [PATCH 29/54] Update flannel_multi_node_cluster.md --- .../fedora/flannel_multi_node_cluster.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/docs/getting-started-guides/fedora/flannel_multi_node_cluster.md b/docs/getting-started-guides/fedora/flannel_multi_node_cluster.md index 73d4ac63ab..e58e8c85dd 100644 --- a/docs/getting-started-guides/fedora/flannel_multi_node_cluster.md +++ b/docs/getting-started-guides/fedora/flannel_multi_node_cluster.md @@ -170,3 +170,14 @@ PING 18.16.90.4 (18.16.90.4) 56(84) bytes of data. ``` Now Kubernetes multi-node cluster is set up with overlay networking set up by flannel. + +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +Bare-metal | custom | Fedora | flannel | [docs](/docs/getting-started-guides/fedora/flannel_multi_node_cluster) | | Community ([@aveshagarwal](https://github.com/aveshagarwal)) + + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. + From ec5828548e521faaef119a346c77f30b7631be18 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 14:51:49 -0700 Subject: [PATCH 30/54] Update flannel_multi_node_cluster.md --- .../fedora/flannel_multi_node_cluster.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/getting-started-guides/fedora/flannel_multi_node_cluster.md b/docs/getting-started-guides/fedora/flannel_multi_node_cluster.md index e58e8c85dd..8de2e9dc4e 100644 --- a/docs/getting-started-guides/fedora/flannel_multi_node_cluster.md +++ b/docs/getting-started-guides/fedora/flannel_multi_node_cluster.md @@ -177,6 +177,9 @@ Now Kubernetes multi-node cluster is set up with overlay networking set up by fl IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level -------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- Bare-metal | custom | Fedora | flannel | [docs](/docs/getting-started-guides/fedora/flannel_multi_node_cluster) | | Community ([@aveshagarwal](https://github.com/aveshagarwal)) +libvirt | custom | Fedora | flannel | [docs](/docs/getting-started-guides/fedora/flannel_multi_node_cluster) | | Community ([@aveshagarwal](https://github.com/aveshagarwal)) +KVM | custom | Fedora | flannel | [docs](/docs/getting-started-guides/fedora/flannel_multi_node_cluster) | | Community ([@aveshagarwal](https://github.com/aveshagarwal)) + For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. From 98b3966d05152b6c9c7527d54466af23deb881c8 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 14:55:18 -0700 Subject: [PATCH 31/54] Update dcos.md --- docs/getting-started-guides/dcos.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/docs/getting-started-guides/dcos.md b/docs/getting-started-guides/dcos.md index 310b5fff29..442c485bf9 100644 --- a/docs/getting-started-guides/dcos.md +++ b/docs/getting-started-guides/dcos.md @@ -128,3 +128,11 @@ $ dcos kubectl get pods --all-namespaces ```shell $ dcos package uninstall kubernetes ``` +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +DCOS | Marathon | CoreOS/Alpine | custom | [docs](/docs/getting-started-guides/dcos) | | Community ([Kubernetes-Mesos Authors](https://github.com/mesosphere/kubernetes-mesos/blob/master/AUTHORS.md)) + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. From cdaa269532714d6b4a481efc1e9b2f113dedfde0 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 14:57:20 -0700 Subject: [PATCH 32/54] Update mesos-docker.md --- docs/getting-started-guides/mesos-docker.md | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/docs/getting-started-guides/mesos-docker.md b/docs/getting-started-guides/mesos-docker.md index d2b8e95f87..5067c0ba72 100644 --- a/docs/getting-started-guides/mesos-docker.md +++ b/docs/getting-started-guides/mesos-docker.md @@ -304,4 +304,14 @@ Breakdown: - `hack/build-go.sh` - builds the Go binaries for the current architecture (linux/amd64 when in a docker container) - `make` - delegates to `hack/build-go.sh` - `build/run.sh` - executes a command in the build container -- `build/release.sh` - cross compiles Kubernetes for all supported architectures and operating systems (slow) \ No newline at end of file +- `build/release.sh` - cross compiles Kubernetes for all supported architectures and operating systems (slow) + +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +Mesos/Docker | custom | Ubuntu | Docker | [docs](/docs/getting-started-guides/mesos-docker) | | Community ([Kubernetes-Mesos Authors](https://github.com/mesosphere/kubernetes-mesos/blob/master/AUTHORS.md)) + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. + From d01439c3e34c32450445b9593eb845e968b1727e Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 14:59:44 -0700 Subject: [PATCH 33/54] Update index.md --- docs/getting-started-guides/mesos/index.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/docs/getting-started-guides/mesos/index.md b/docs/getting-started-guides/mesos/index.md index 8befe27d57..059122c497 100644 --- a/docs/getting-started-guides/mesos/index.md +++ b/docs/getting-started-guides/mesos/index.md @@ -302,6 +302,15 @@ Address 1: 10.10.10.10 Name: kubernetes Address 1: 10.10.10.1 ``` +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +Mesos/GCE | | | | [docs](/docs/getting-started-guides/mesos) | | Community ([Kubernetes-Mesos Authors](https://github.com/mesosphere/kubernetes-mesos/blob/master/AUTHORS.md)) + + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. ## What next? From 4a83be2e6a704eb4b55f4aaa8b72aecf561f6e9f Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 15:07:07 -0700 Subject: [PATCH 34/54] Update bare_metal_offline.md --- docs/getting-started-guides/coreos/bare_metal_offline.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/docs/getting-started-guides/coreos/bare_metal_offline.md b/docs/getting-started-guides/coreos/bare_metal_offline.md index 1a216f7bc9..030dc87e74 100644 --- a/docs/getting-started-guides/coreos/bare_metal_offline.md +++ b/docs/getting-started-guides/coreos/bare_metal_offline.md @@ -693,3 +693,11 @@ Kill all pods: ```shell for i in `kubectl get pods | awk '{print $1}'`; do kubectl delete pod $i; done ``` +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +Bare-metal (Offline) | CoreOS | CoreOS | flannel | [docs](/docs/getting-started-guides/coreos/bare_metal_offline) | | Community ([@jeffbean](https://github.com/jeffbean)) + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. From 41a7fbb83a4e543711f95fcede1d9ea61ec200d3 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 15:08:27 -0700 Subject: [PATCH 35/54] Update bare_metal_calico.md --- .../coreos/bare_metal_calico.md | 257 +++++++++--------- 1 file changed, 134 insertions(+), 123 deletions(-) diff --git a/docs/getting-started-guides/coreos/bare_metal_calico.md b/docs/getting-started-guides/coreos/bare_metal_calico.md index cf7c392c21..b3f4890398 100644 --- a/docs/getting-started-guides/coreos/bare_metal_calico.md +++ b/docs/getting-started-guides/coreos/bare_metal_calico.md @@ -1,59 +1,59 @@ ---- ---- - -This document describes how to deploy Kubernetes with Calico networking on _bare metal_ CoreOS. For more information on Project Calico, visit [projectcalico.org](http://projectcalico.org) and the [calico-containers repository](https://github.com/projectcalico/calico-containers). +--- +--- -To install Calico on an existing Kubernetes cluster, or for more information on deploying Calico with Kubernetes in a number of other environments take a look at our supported [deployment guides](https://github.com/projectcalico/calico-containers/tree/master/docs/cni/kubernetes). +This document describes how to deploy Kubernetes with Calico networking on _bare metal_ CoreOS. For more information on Project Calico, visit [projectcalico.org](http://projectcalico.org) and the [calico-containers repository](https://github.com/projectcalico/calico-containers). + +To install Calico on an existing Kubernetes cluster, or for more information on deploying Calico with Kubernetes in a number of other environments take a look at our supported [deployment guides](https://github.com/projectcalico/calico-containers/tree/master/docs/cni/kubernetes). + +Specifically, this guide will have you do the following: -Specifically, this guide will have you do the following: - - Deploy a Kubernetes master node on CoreOS using cloud-config. - Deploy two Kubernetes compute nodes with Calico Networking using cloud-config. -- Configure `kubectl` to access your cluster. +- Configure `kubectl` to access your cluster. + +The resulting cluster will use SSL between Kubernetes components. It will run the SkyDNS service and kube-ui, and be fully conformant with the Kubernetes v1.1 conformance tests. -The resulting cluster will use SSL between Kubernetes components. It will run the SkyDNS service and kube-ui, and be fully conformant with the Kubernetes v1.1 conformance tests. - ## Prerequisites and Assumptions - At least three bare-metal machines (or VMs) to work with. This guide will configure them as follows: - 1 Kubernetes Master - 2 Kubernetes Nodes - Your nodes should have IP connectivity to each other and the internet. -- This guide assumes a DHCP server on your network to assign server IPs. -- This guide uses `192.168.0.0/16` as the subnet from which pod IP addresses are assigned. If this overlaps with your host subnet, you will need to configure Calico to use a different [IP pool](https://github.com/projectcalico/calico-containers/blob/master/docs/calicoctl/pool.md#calicoctl-pool-commands). +- This guide assumes a DHCP server on your network to assign server IPs. +- This guide uses `192.168.0.0/16` as the subnet from which pod IP addresses are assigned. If this overlaps with your host subnet, you will need to configure Calico to use a different [IP pool](https://github.com/projectcalico/calico-containers/blob/master/docs/calicoctl/pool.md#calicoctl-pool-commands). ## Cloud-config This guide will use [cloud-config](https://coreos.com/docs/cluster-management/setup/cloudinit-cloud-config/) to configure each of the nodes in our Kubernetes cluster. -We'll use two cloud-config files: +We'll use two cloud-config files: - `master-config.yaml`: cloud-config for the Kubernetes master - `node-config.yaml`: cloud-config for each Kubernetes node -## Download CoreOS - +## Download CoreOS + Download the stable CoreOS bootable ISO from the [CoreOS website](https://coreos.com/docs/running-coreos/platforms/iso/). ## Configure the Kubernetes Master -1. Once you've downloaded the ISO image, burn the ISO to a CD/DVD/USB key and boot from it (if using a virtual machine you can boot directly from the ISO). Once booted, you should be automatically logged in as the `core` user at the terminal. At this point CoreOS is running from the ISO and it hasn't been installed yet. +1. Once you've downloaded the ISO image, burn the ISO to a CD/DVD/USB key and boot from it (if using a virtual machine you can boot directly from the ISO). Once booted, you should be automatically logged in as the `core` user at the terminal. At this point CoreOS is running from the ISO and it hasn't been installed yet. -2. *On another machine*, download the the [master cloud-config template](https://raw.githubusercontent.com/projectcalico/calico-cni/k8s-1.1-docs/samples/kubernetes/cloud-config/master-config-template.yaml) and save it as `master-config.yaml`. +2. *On another machine*, download the the [master cloud-config template](https://raw.githubusercontent.com/projectcalico/calico-cni/k8s-1.1-docs/samples/kubernetes/cloud-config/master-config-template.yaml) and save it as `master-config.yaml`. -3. Replace the following variables in the `master-config.yaml` file. - - - ``: The public key you will use for SSH access to this server. See [generating ssh keys](https://help.github.com/articles/generating-ssh-keys/) +3. Replace the following variables in the `master-config.yaml` file. -4. Copy the edited `master-config.yaml` to your Kubernetes master machine (using a USB stick, for example). + - ``: The public key you will use for SSH access to this server. See [generating ssh keys](https://help.github.com/articles/generating-ssh-keys/) -5. The CoreOS bootable ISO comes with a tool called `coreos-install` which will allow us to install CoreOS and configure the machine using a cloud-config file. The following command will download and install stable CoreOS using the `master-config.yaml` file we just created for configuration. Run this on the Kubernetes master. +4. Copy the edited `master-config.yaml` to your Kubernetes master machine (using a USB stick, for example). + +5. The CoreOS bootable ISO comes with a tool called `coreos-install` which will allow us to install CoreOS and configure the machine using a cloud-config file. The following command will download and install stable CoreOS using the `master-config.yaml` file we just created for configuration. Run this on the Kubernetes master. + + > **Warning:** this is a destructive operation that erases disk `sda` on your server. + + ```shell + sudo coreos-install -d /dev/sda -C stable -c master-config.yaml + ``` - > **Warning:** this is a destructive operation that erases disk `sda` on your server. - - ```shell - sudo coreos-install -d /dev/sda -C stable -c master-config.yaml - ``` - 6. Once complete, restart the server and boot from `/dev/sda` (you may need to remove the ISO image). When it comes back up, you should have SSH access as the `core` user using the public key provided in the `master-config.yaml` file. ### Configure TLS @@ -61,14 +61,14 @@ Download the stable CoreOS bootable ISO from the [CoreOS website](https://coreos The master requires the CA certificate, `ca.pem`; its own certificate, `apiserver.pem` and its private key, `apiserver-key.pem`. This [CoreOS guide](https://coreos.com/kubernetes/docs/latest/openssl.html) explains how to generate these. 1. Generate the necessary certificates for the master. This [guide for generating Kubernetes TLS Assets](https://coreos.com/kubernetes/docs/latest/openssl.html) explains how to use OpenSSL to generate the required assets. - + 2. Send the three files to your master host (using `scp` for example). -3. Move them to the `/etc/kubernetes/ssl` folder and ensure that only the root user can read the key: - - ```shell - # Move keys - sudo mkdir -p /etc/kubernetes/ssl/ +3. Move them to the `/etc/kubernetes/ssl` folder and ensure that only the root user can read the key: + + ```shell + # Move keys + sudo mkdir -p /etc/kubernetes/ssl/ sudo mv -t /etc/kubernetes/ssl/ ca.pem apiserver.pem apiserver-key.pem # Set Permissions @@ -77,9 +77,9 @@ The master requires the CA certificate, `ca.pem`; its own certificate, `apiserve ``` 4. Restart the kubelet to pick up the changes: - - ```shell - sudo systemctl restart kubelet + + ```shell + sudo systemctl restart kubelet ``` ## Configure the compute nodes @@ -90,108 +90,119 @@ The following steps will set up a single Kubernetes node for use as a compute ho 2. Make a copy of the [node cloud-config template](https://raw.githubusercontent.com/projectcalico/calico-cni/k8s-1.1-docs/samples/kubernetes/cloud-config/node-config-template.yaml) for this machine. -3. Replace the following placeholders in the `node-config.yaml` file to match your deployment. +3. Replace the following placeholders in the `node-config.yaml` file to match your deployment. - ``: Hostname for this node (e.g. kube-node1, kube-node2) - ``: The public key you will use for SSH access to this server. - ``: The IPv4 address of the Kubernetes master. -4. Replace the following placeholders with the contents of their respective files. +4. Replace the following placeholders with the contents of their respective files. - ``: Complete contents of `ca.pem` - - ``: Complete contents of `ca-key.pem` + - ``: Complete contents of `ca-key.pem` - > **Important:** in a production deployment, embedding the secret key in cloud-config is a bad idea! In production you should use an appropriate secret manager. + > **Important:** in a production deployment, embedding the secret key in cloud-config is a bad idea! In production you should use an appropriate secret manager. > **Important:** Make sure you indent the entire file to match the indentation of the placeholder. For example: - > - > ```shell - > - path: /etc/kubernetes/ssl/ca.pem - > owner: core - > permissions: 0644 - > content: | - > - > ``` - > - > should look like this once the certificate is in place: - > - > ```shell - > - path: /etc/kubernetes/ssl/ca.pem - > owner: core - > permissions: 0644 - > content: | - > -----BEGIN CERTIFICATE----- - > MIIC9zCCAd+gAwIBAgIJAJMnVnhVhy5pMA0GCSqGSIb3DQEBCwUAMBIxEDAOBgNV - > ...... - > QHwi1rNc8eBLNrd4BM/A1ZeDVh/Q9KxN+ZG/hHIXhmWKgN5wQx6/81FIFg== - > -----END CERTIFICATE----- - > ``` + > + > ```shell + > - path: /etc/kubernetes/ssl/ca.pem + > owner: core + > permissions: 0644 + > content: | + > + > ``` + > + > should look like this once the certificate is in place: + > + > ```shell + > - path: /etc/kubernetes/ssl/ca.pem + > owner: core + > permissions: 0644 + > content: | + > -----BEGIN CERTIFICATE----- + > MIIC9zCCAd+gAwIBAgIJAJMnVnhVhy5pMA0GCSqGSIb3DQEBCwUAMBIxEDAOBgNV + > ...... + > QHwi1rNc8eBLNrd4BM/A1ZeDVh/Q9KxN+ZG/hHIXhmWKgN5wQx6/81FIFg== + > -----END CERTIFICATE----- + > ``` -5. Move the modified `node-config.yaml` to your Kubernetes node machine and install and configure CoreOS on the node using the following command. - - > **Warning:** this is a destructive operation that erases disk `sda` on your server. +5. Move the modified `node-config.yaml` to your Kubernetes node machine and install and configure CoreOS on the node using the following command. - ```shell + > **Warning:** this is a destructive operation that erases disk `sda` on your server. + + ```shell sudo coreos-install -d /dev/sda -C stable -c node-config.yaml - ``` - + ``` + 6. Once complete, restart the server and boot into `/dev/sda`. When it comes back up, you should have SSH access as the `core` user using the public key provided in the `node-config.yaml` file. It will take some time for the node to be fully configured. -## Configure Kubeconfig - -To administer your cluster from a separate host, you will need the client and admin certificates generated earlier (`ca.pem`, `admin.pem`, `admin-key.pem`). With certificates in place, run the following commands with the appropriate filepaths. - -```shell -kubectl config set-cluster calico-cluster --server=https:// --certificate-authority= -kubectl config set-credentials calico-admin --certificate-authority= --client-key= --client-certificate= -kubectl config set-context calico --cluster=calico-cluster --user=calico-admin -kubectl config use-context calico -``` - +## Configure Kubeconfig + +To administer your cluster from a separate host, you will need the client and admin certificates generated earlier (`ca.pem`, `admin.pem`, `admin-key.pem`). With certificates in place, run the following commands with the appropriate filepaths. + +```shell +kubectl config set-cluster calico-cluster --server=https:// --certificate-authority= +kubectl config set-credentials calico-admin --certificate-authority= --client-key= --client-certificate= +kubectl config set-context calico --cluster=calico-cluster --user=calico-admin +kubectl config use-context calico +``` + Check your work with `kubectl get nodes`. - -## Install the DNS Addon - -Most Kubernetes deployments will require the DNS addon for service discovery. To install DNS, create the skydns service and replication controller provided. - -```shell -kubectl create -f https://raw.githubusercontent.com/projectcalico/calico-cni/k8s-1.1-docs/samples/kubernetes/master/dns/skydns.yaml -``` - -## Install the Kubernetes UI Addon (Optional) - -The Kubernetes UI can be installed using `kubectl` to run the following manifest file. - -```shell -kubectl create -f https://raw.githubusercontent.com/projectcalico/calico-cni/k8s-1.1-docs/samples/kubernetes/master/kube-ui/kube-ui.yaml -``` - -## Launch other Services With Calico-Kubernetes - -At this point, you have a fully functioning cluster running on Kubernetes with a master and two nodes networked with Calico. You can now follow any of the [standard documentation](https://github.com/kubernetes/kubernetes/tree/{{page.version}}/examples/) to set up other services on your cluster. - + +## Install the DNS Addon + +Most Kubernetes deployments will require the DNS addon for service discovery. To install DNS, create the skydns service and replication controller provided. + +```shell +kubectl create -f https://raw.githubusercontent.com/projectcalico/calico-cni/k8s-1.1-docs/samples/kubernetes/master/dns/skydns.yaml +``` + +## Install the Kubernetes UI Addon (Optional) + +The Kubernetes UI can be installed using `kubectl` to run the following manifest file. + +```shell +kubectl create -f https://raw.githubusercontent.com/projectcalico/calico-cni/k8s-1.1-docs/samples/kubernetes/master/kube-ui/kube-ui.yaml +``` + +## Launch other Services With Calico-Kubernetes + +At this point, you have a fully functioning cluster running on Kubernetes with a master and two nodes networked with Calico. You can now follow any of the [standard documentation](https://github.com/kubernetes/kubernetes/tree/{{page.version}}/examples/) to set up other services on your cluster. + ## Connectivity to outside the cluster -Because containers in this guide have private `192.168.0.0/16` IPs, you will need NAT to allow connectivity between containers and the internet. However, in a production data center deployment, NAT is not always necessary, since Calico can peer with the data center's border routers over BGP. - -### NAT on the nodes - +Because containers in this guide have private `192.168.0.0/16` IPs, you will need NAT to allow connectivity between containers and the internet. However, in a production data center deployment, NAT is not always necessary, since Calico can peer with the data center's border routers over BGP. + +### NAT on the nodes + The simplest method for enabling connectivity from containers to the internet is to use outgoing NAT on your Kubernetes nodes. - -Calico can provide outgoing NAT for containers. To enable it, use the following `calicoctl` command: - -```shell -ETCD_AUTHORITY= calicoctl pool add --nat-outgoing -``` - -By default, `` will be `192.168.0.0/16`. You can find out which pools have been configured with the following command: - -```shell -ETCD_AUTHORITY= calicoctl pool show -``` - -### NAT at the border router - -In a data center environment, it is recommended to configure Calico to peer with the border routers over BGP. This means that the container IPs will be routable anywhere in the data center, and so NAT is not needed on the nodes (though it may be enabled at the data center edge to allow outbound-only internet connectivity). - -The Calico documentation contains more information on how to configure Calico to [peer with existing infrastructure](https://github.com/projectcalico/calico-containers/blob/master/docs/ExternalConnectivity.md). + +Calico can provide outgoing NAT for containers. To enable it, use the following `calicoctl` command: + +```shell +ETCD_AUTHORITY= calicoctl pool add --nat-outgoing +``` + +By default, `` will be `192.168.0.0/16`. You can find out which pools have been configured with the following command: + +```shell +ETCD_AUTHORITY= calicoctl pool show +``` + +### NAT at the border router + +In a data center environment, it is recommended to configure Calico to peer with the border routers over BGP. This means that the container IPs will be routable anywhere in the data center, and so NAT is not needed on the nodes (though it may be enabled at the data center edge to allow outbound-only internet connectivity). + +The Calico documentation contains more information on how to configure Calico to [peer with existing infrastructure](https://github.com/projectcalico/calico-containers/blob/master/docs/ExternalConnectivity.md). + +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +Bare-metal | CoreOS | CoreOS | Calico | [docs](/docs/getting-started-guides/coreos/bare_metal_calico) | | Community ([@caseydavenport](https://github.com/caseydavenport)) + + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. + From c2047b8f593b91c5a9aace0053acb3dba5b1a050 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 15:16:46 -0700 Subject: [PATCH 36/54] Update cloudstack.md --- docs/getting-started-guides/cloudstack.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/docs/getting-started-guides/cloudstack.md b/docs/getting-started-guides/cloudstack.md index 1c8a1f2056..c573e6966b 100644 --- a/docs/getting-started-guides/cloudstack.md +++ b/docs/getting-started-guides/cloudstack.md @@ -78,3 +78,11 @@ SSH to it using the key that was created and using the _core_ user and you can l a017c422... role=node ad13bf84... role=master e9af8293... role=node +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +CloudStack | Ansible | CoreOS | flannel | [docs](/docs/getting-started-guides/cloudstack) | | Community ([@runseb](https://github.com/runseb)) + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. From 1426735e850dd47cd89ff3b6dfefe020530994f5 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 15:17:54 -0700 Subject: [PATCH 37/54] Update vsphere.md --- docs/getting-started-guides/vsphere.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/docs/getting-started-guides/vsphere.md b/docs/getting-started-guides/vsphere.md index 02e06adf0d..3c68891b1f 100644 --- a/docs/getting-started-guides/vsphere.md +++ b/docs/getting-started-guides/vsphere.md @@ -94,3 +94,13 @@ The output of `kube-up.sh` displays the IP addresses of the VMs it deploys. You can log into any VM as the `kube` user to poke around and figure out what is going on (find yourself authorized with your SSH key, or use the password `kube` otherwise). + +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +Vmware | | Debian | OVS | [docs](/docs/getting-started-guides/vsphere) | | Community ([@pietern](https://github.com/pietern)) + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. + From 086e6d8e366844e0e17e30a993e3f1df60f4c87c Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 15:21:13 -0700 Subject: [PATCH 38/54] Update centos_manual_config.md --- .../centos/centos_manual_config.md | 84 +++++++++++-------- 1 file changed, 47 insertions(+), 37 deletions(-) diff --git a/docs/getting-started-guides/centos/centos_manual_config.md b/docs/getting-started-guides/centos/centos_manual_config.md index 553000f43d..9e09cabfcf 100644 --- a/docs/getting-started-guides/centos/centos_manual_config.md +++ b/docs/getting-started-guides/centos/centos_manual_config.md @@ -1,7 +1,7 @@ ---- ---- +--- +--- -* TOC +* TOC {:toc} ## Prerequisites @@ -20,38 +20,38 @@ The Kubernetes package provides a few services: kube-apiserver, kube-scheduler, Hosts: -```conf +```conf centos-master = 192.168.121.9 centos-minion = 192.168.121.65 -``` - +``` + **Prepare the hosts:** * Create a virt7-docker-common-release repo on all hosts - centos-{master,minion} with following information. -```conf +```conf [virt7-docker-common-release] name=virt7-docker-common-release baseurl=http://cbs.centos.org/repos/virt7-docker-common-release/x86_64/os/ gpgcheck=0 -``` - +``` + * Install Kubernetes on all hosts - centos-{master,minion}. This will also pull in etcd, docker, and cadvisor. -```shell +```shell yum -y install --enablerepo=virt7-docker-common-release kubernetes -``` - +``` + * Add master and node to /etc/hosts on all machines (not needed if hostnames already in DNS) -```shell +```shell echo "192.168.121.9 centos-master 192.168.121.65 centos-minion" >> /etc/hosts -``` - +``` + * Edit /etc/kubernetes/config which will be the same on all hosts to contain: -```shell +```shell # Comma separated list of nodes in the etcd cluster KUBE_ETCD_SERVERS="--etcd-servers=http://centos-master:2379" @@ -63,20 +63,20 @@ KUBE_LOG_LEVEL="--v=0" # Should this cluster be allowed to run privileged docker containers KUBE_ALLOW_PRIV="--allow-privileged=false" -``` - +``` + * Disable the firewall on both the master and node, as docker does not play well with other firewall rule managers -```shell +```shell systemctl disable iptables-services firewalld systemctl stop iptables-services firewalld -``` - +``` + **Configure the Kubernetes services on the master.** * Edit /etc/kubernetes/apiserver to appear as such: -```shell +```shell # The address on the local server to listen to. KUBE_API_ADDRESS="--address=0.0.0.0" @@ -94,25 +94,25 @@ KUBE_SERVICE_ADDRESSES="--service-cluster-ip-range=10.254.0.0/16" # Add your own! KUBE_API_ARGS="" -``` - +``` + * Start the appropriate services on master: -```shell +```shell for SERVICES in etcd kube-apiserver kube-controller-manager kube-scheduler; do systemctl restart $SERVICES systemctl enable $SERVICES systemctl status $SERVICES done -``` - +``` + **Configure the Kubernetes services on the node.** ***We need to configure the kubelet and start the kubelet and proxy*** * Edit /etc/kubernetes/kubelet to appear as such: -```shell +```shell # The address for the info server to serve on KUBELET_ADDRESS="--address=0.0.0.0" @@ -127,28 +127,38 @@ KUBELET_API_SERVER="--api-servers=http://centos-master:8080" # Add your own! KUBELET_ARGS="" -``` - +``` + * Start the appropriate services on node (centos-minion). -```shell +```shell for SERVICES in kube-proxy kubelet docker; do systemctl restart $SERVICES systemctl enable $SERVICES systemctl status $SERVICES done -``` - +``` + *You should be finished!* * Check to make sure the cluster can see the node (on centos-master) -```shell +```shell $ kubectl get nodes NAME LABELS STATUS centos-minion Ready -``` - +``` + **The cluster should be running! Launch a test pod.** -You should have a functional cluster, check out [101](/docs/user-guide/walkthrough/)! \ No newline at end of file +You should have a functional cluster, check out [101](/docs/user-guide/walkthrough/)! + +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +Bare-metal | custom | CentOS | _none_ | [docs](/docs/getting-started-guides/centos/centos_manual_config) | | Community ([@coolsvap](https://github.com/coolsvap)) + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. + From 313c2ef5c461c8f108bb7538ce0c423d534660e9 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 15:23:47 -0700 Subject: [PATCH 39/54] Update juju.md --- docs/getting-started-guides/juju.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/docs/getting-started-guides/juju.md b/docs/getting-started-guides/juju.md index 6127206404..979974e6b9 100644 --- a/docs/getting-started-guides/juju.md +++ b/docs/getting-started-guides/juju.md @@ -275,3 +275,15 @@ works with [Amazon Web Service](https://jujucharms.com/docs/stable/config-aws), If you do not see your favorite cloud provider listed many clouds with ssh access can be configured for [manual provisioning](https://jujucharms.com/docs/stable/config-manual). + +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +AWS | Juju | Ubuntu | flannel | [docs](/docs/getting-started-guides/juju) | | [Community](https://github.com/whitmo/bundle-kubernetes) ( [@whit](https://github.com/whitmo), [@matt](https://github.com/mbruzek), [@chuck](https://github.com/chuckbutler) ) + + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. + + From 66d8b5d3f1dc8dce16fc560bcc7d58455dc49408 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 15:25:15 -0700 Subject: [PATCH 40/54] Update juju.md --- docs/getting-started-guides/juju.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/getting-started-guides/juju.md b/docs/getting-started-guides/juju.md index 979974e6b9..313f10176d 100644 --- a/docs/getting-started-guides/juju.md +++ b/docs/getting-started-guides/juju.md @@ -282,6 +282,9 @@ access can be configured for IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level -------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- AWS | Juju | Ubuntu | flannel | [docs](/docs/getting-started-guides/juju) | | [Community](https://github.com/whitmo/bundle-kubernetes) ( [@whit](https://github.com/whitmo), [@matt](https://github.com/mbruzek), [@chuck](https://github.com/chuckbutler) ) +OpenStack/HPCloud | Juju | Ubuntu | flannel | [docs](/docs/getting-started-guides/juju) | | [Community](https://github.com/whitmo/bundle-kubernetes) ( [@whit](https://github.com/whitmo), [@matt](https://github.com/mbruzek), [@chuck](https://github.com/chuckbutler) ) +Joyent | Juju | Ubuntu | flannel | [docs](/docs/getting-started-guides/juju) | | [Community](https://github.com/whitmo/bundle-kubernetes) ( [@whit](https://github.com/whitmo), [@matt](https://github.com/mbruzek), [@chuck](https://github.com/chuckbutler) ) + For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. From ce853d3d1e611a23b0dcb8b81024c9670f14b942 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 15:26:14 -0700 Subject: [PATCH 41/54] Update aws.md --- docs/getting-started-guides/aws.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/getting-started-guides/aws.md b/docs/getting-started-guides/aws.md index f8c2f64f0e..19ac55ed3f 100644 --- a/docs/getting-started-guides/aws.md +++ b/docs/getting-started-guides/aws.md @@ -141,6 +141,7 @@ cluster/kube-down.sh IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level -------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- AWS | CoreOS | CoreOS | flannel | [docs](/docs/getting-started-guides/aws) | | Community +AWS | Saltstack | Ubuntu | OVS | [docs](/docs/getting-started-guides/aws) | | Community ([@justinsb](https://github.com/justinsb)) For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. From 69290363c44646b7e90f9ff4b34092997d3edabc Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 15:28:34 -0700 Subject: [PATCH 42/54] Update ubuntu-calico.md --- docs/getting-started-guides/ubuntu-calico.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/docs/getting-started-guides/ubuntu-calico.md b/docs/getting-started-guides/ubuntu-calico.md index 2d454cc94a..d1adfa2c73 100644 --- a/docs/getting-started-guides/ubuntu-calico.md +++ b/docs/getting-started-guides/ubuntu-calico.md @@ -463,3 +463,13 @@ ETCD_AUTHORITY= calicoctl pool show In a data center environment, it is recommended to configure Calico to peer with the border routers over BGP. This means that the container IPs will be routable anywhere in the data center, and so NAT is not needed on the nodes (though it may be enabled at the data center edge to allow outbound-only internet connectivity). The Calico documentation contains more information on how to configure Calico to [peer with existing infrastructure](https://github.com/projectcalico/calico-containers/blob/master/docs/ExternalConnectivity.md). + +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +Bare-metal | custom | Ubuntu | Calico | [docs](/docs/getting-started-guides/ubuntu-calico) | | Community ([@djosborne](https://github.com/djosborne)) + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. + From e850b480f6901093c6d6fbdc802d3387a6192ef6 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 15:30:09 -0700 Subject: [PATCH 43/54] Update ubuntu.md --- docs/getting-started-guides/ubuntu.md | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/docs/getting-started-guides/ubuntu.md b/docs/getting-started-guides/ubuntu.md index d6c778b2e9..c47a15dc9d 100644 --- a/docs/getting-started-guides/ubuntu.md +++ b/docs/getting-started-guides/ubuntu.md @@ -280,4 +280,14 @@ You can use the `kubectl` command to check if the newly upgraded kubernetes clus To make sure the version of the upgraded cluster is what you expect, you will find these commands helpful. * upgrade all components or master: `$ kubectl version`. Check the *Server Version*. -* upgrade node `vcap@10.10.102.223`: `$ ssh -t vcap@10.10.102.223 'cd /opt/bin && sudo ./kubelet --version'` +* upgrade node `vcap@10.10.102.223`: `$ ssh -t vcap@10.10.102.223 'cd /opt/bin && sudo ./kubelet --version'`* + +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +Bare-metal | custom | Ubuntu | flannel | [docs](/docs/getting-started-guides/ubuntu) | | Community ([@resouer](https://github.com/resouer), [@WIZARD-CXY](https://github.com/WIZARD-CXY)) + + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. From 27f3707c16b396ad44c9db1e267a1902d94b7d70 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 15:31:33 -0700 Subject: [PATCH 44/54] Update libvirt-coreos.md --- docs/getting-started-guides/libvirt-coreos.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/docs/getting-started-guides/libvirt-coreos.md b/docs/getting-started-guides/libvirt-coreos.md index ac2ada1c1b..6c003490f5 100644 --- a/docs/getting-started-guides/libvirt-coreos.md +++ b/docs/getting-started-guides/libvirt-coreos.md @@ -320,3 +320,14 @@ usermod -a -G libvirtd $USER #### error: Out of memory initializing network (virsh net-create...) Ensure libvirtd has been restarted since ebtables was installed. + +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +libvirt/KVM | CoreOS | CoreOS | libvirt/KVM | [docs](/docs/getting-started-guides/libvirt-coreos) | | Community ([@lhuard1A](https://github.com/lhuard1A)) + + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. + From 209c5c32a71a81e07854ced635e934de922f2ee6 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 15:33:46 -0700 Subject: [PATCH 45/54] Update scratch.md --- docs/getting-started-guides/scratch.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/docs/getting-started-guides/scratch.md b/docs/getting-started-guides/scratch.md index a6efc189ae..5c9502ff9e 100644 --- a/docs/getting-started-guides/scratch.md +++ b/docs/getting-started-guides/scratch.md @@ -837,3 +837,13 @@ pinging or SSH-ing from one node to another. If you run into trouble, please see the section on [troubleshooting](/docs/getting-started-guides/gce#troubleshooting), post to the [google-containers group](https://groups.google.com/forum/#!forum/google-containers), or come ask questions on [Slack](/docs/troubleshooting#slack). + +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +any | any | any | any | [docs](/docs/getting-started-guides/scratch) | | Community ([@erictune](https://github.com/erictune)) + + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. From 43a95d6b5ec0d3bff9fa1da6a6419651f7042536 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 15:35:01 -0700 Subject: [PATCH 46/54] Update ovirt.md --- docs/getting-started-guides/ovirt.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/docs/getting-started-guides/ovirt.md b/docs/getting-started-guides/ovirt.md index 9740eaaf60..e1ebe7e67a 100644 --- a/docs/getting-started-guides/ovirt.md +++ b/docs/getting-started-guides/ovirt.md @@ -47,4 +47,13 @@ The `ovirt-cloud.conf` file then must be specified in kube-controller-manager: This short screencast demonstrates how the oVirt Cloud Provider can be used to dynamically add VMs to your Kubernetes cluster. -[![Screencast](http://img.youtube.com/vi/JyyST4ZKne8/0.jpg)](http://www.youtube.com/watch?v=JyyST4ZKne8) \ No newline at end of file +[![Screencast](http://img.youtube.com/vi/JyyST4ZKne8/0.jpg)](http://www.youtube.com/watch?v=JyyST4ZKne8) + +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +oVirt | | | | [docs](/docs/getting-started-guides/ovirt) | | Community ([@simon3z](https://github.com/simon3z)) + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. From b230cab825bff3a40109e1635cbdd2cf72004c00 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 15:36:13 -0700 Subject: [PATCH 47/54] Update openstack-heat.md --- docs/getting-started-guides/openstack-heat.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/docs/getting-started-guides/openstack-heat.md b/docs/getting-started-guides/openstack-heat.md index 033f5ce878..3da20528f7 100644 --- a/docs/getting-started-guides/openstack-heat.md +++ b/docs/getting-started-guides/openstack-heat.md @@ -237,3 +237,12 @@ To bring down your cluster, issue the following command: KUBERNETES_PROVIDER=openstack-heat ./cluster/kube-down.sh ``` If you have changed the default `$STACK_NAME`, you must specify the name. Note that this will not remove any Cinder volumes created by Kubernetes. + +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +OpenStack Heat | Saltstack | CentOS | Neutron + flannel hostgw | [docs](/docs/getting-started-guides/openstack-heat) | | Community ([@FujitsuEnablingSoftwareTechnologyGmbH](https://github.com/FujitsuEnablingSoftwareTechnologyGmbH)) + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. From 148af6f78c8a431575f9cf0fef158842352fa675 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 15:37:42 -0700 Subject: [PATCH 48/54] Update rackspace.md --- docs/getting-started-guides/rackspace.md | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/docs/getting-started-guides/rackspace.md b/docs/getting-started-guides/rackspace.md index 83666108d5..a91187275e 100644 --- a/docs/getting-started-guides/rackspace.md +++ b/docs/getting-started-guides/rackspace.md @@ -60,4 +60,14 @@ There is a specific `cluster/rackspace` directory with the scripts for the follo - eth0 - Public Interface used for servers/containers to reach the internet - eth1 - ServiceNet - Intra-cluster communication (k8s, etcd, etc) communicate via this interface. The `cloud-config` files use the special CoreOS identifier `$private_ipv4` to configure the services. -- eth2 - Cloud Network - Used for k8s pods to communicate with one another. The proxy service will pass traffic via this interface. \ No newline at end of file +- eth2 - Cloud Network - Used for k8s pods to communicate with one another. The proxy service will pass traffic via this interface. + +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +Rackspace | CoreOS | CoreOS | flannel | [docs](/docs/getting-started-guides/rackspace) | | Community ([@doublerr](https://github.com/doublerr)) + + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. From 0a64b63c185af0d7be4a59f0be0583789249bed0 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 15:52:49 -0700 Subject: [PATCH 49/54] Update index.md --- docs/getting-started-guides/coreos/index.md | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/docs/getting-started-guides/coreos/index.md b/docs/getting-started-guides/coreos/index.md index 68d5a282b9..e56ebd16e0 100644 --- a/docs/getting-started-guides/coreos/index.md +++ b/docs/getting-started-guides/coreos/index.md @@ -80,4 +80,14 @@ Guide to running an HA etcd cluster with a single master on Azure. Uses the Azur [**Multi-node cluster using cloud-config, CoreOS and VMware ESXi**](https://github.com/xavierbaude/VMware-coreos-multi-nodes-Kubernetes) -Configure a single master, single worker cluster on VMware ESXi. \ No newline at end of file +Configure a single master, single worker cluster on VMware ESXi. + +## Support Level + + +IaaS Provider | Config. Mgmt | OS | Networking | Docs | Conforms | Support Level +-------------------- | ------------ | ------ | ---------- | --------------------------------------------- | ---------| ---------------------------- +GCE | CoreOS | CoreOS | flannel | [docs](/docs/getting-started-guides/coreos) | | Community ([@pires](https://github.com/pires)) +Vagrant | CoreOS | CoreOS | flannel | [docs](/docs/getting-started-guides/coreos) | | Community ([@pires](https://github.com/pires), [@AntonioMeireles](https://github.com/AntonioMeireles)) + +For support level information on all solutions, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. From 992848eec1f18b86bbdf96d37d4b54480cf92bd8 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Sun, 22 May 2016 16:00:45 -0700 Subject: [PATCH 50/54] Update reference.md --- docs/reference.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference.md b/docs/reference.md index 693d0dc7a4..7eefef2cc1 100644 --- a/docs/reference.md +++ b/docs/reference.md @@ -19,7 +19,7 @@ In the reference section, you can find reference documentation for Kubernetes AP ## Glossary -Explore the glossary of essential Kubernetes concepts. Some good starting points are the entries for [Pods](/docs/user-guide/pods/), [Nodes](/docs/admin/node/), [Services](/docs/user-guide/services/), and [Replication Controllers](/docs/user-guide/replication-controller/). +Explore the glossary of essential Kubernetes concepts. Some good starting points are the entries for [Pods](/docs/user-guide/pods/), [Nodes](/docs/admin/nodes/), [Services](/docs/user-guide/services/), and [Replication Controllers](/docs/user-guide/replication-controller/). ## Design Docs From 60d8378a26d3fdf428b97bf0fe82a3577cdc3a00 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Tue, 24 May 2016 11:15:23 -0700 Subject: [PATCH 51/54] Update aws.md Added blank line --- docs/getting-started-guides/aws.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/getting-started-guides/aws.md b/docs/getting-started-guides/aws.md index 19ac55ed3f..319393c03c 100644 --- a/docs/getting-started-guides/aws.md +++ b/docs/getting-started-guides/aws.md @@ -135,6 +135,7 @@ Make sure the environment variables you used to provision your cluster are still ```shell cluster/kube-down.sh ``` + ## Support Level From 47593c4891b34348f1180a24cc186f0c99f35ab8 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Tue, 24 May 2016 18:10:37 -0700 Subject: [PATCH 52/54] Update clc.md removed support level link --- docs/getting-started-guides/clc.md | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/getting-started-guides/clc.md b/docs/getting-started-guides/clc.md index 639b21b49e..3e9b3f0858 100644 --- a/docs/getting-started-guides/clc.md +++ b/docs/getting-started-guides/clc.md @@ -337,6 +337,5 @@ If you want more information about our Ansible files, please [read this file](ht Please see the [Kubernetes docs](/docs/) for more details on administering and using a Kubernetes cluster. -For support level information, see the [Table of solutions](/docs/getting-started-guides/#table-of-solutions) chart. From a1ac9587e3fa76bb82e66a4791c4773535d8d9ba Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Tue, 24 May 2016 18:14:42 -0700 Subject: [PATCH 53/54] Update cloudstack.md added blank line before H2 --- docs/getting-started-guides/cloudstack.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/getting-started-guides/cloudstack.md b/docs/getting-started-guides/cloudstack.md index c573e6966b..313c97de65 100644 --- a/docs/getting-started-guides/cloudstack.md +++ b/docs/getting-started-guides/cloudstack.md @@ -78,6 +78,7 @@ SSH to it using the key that was created and using the _core_ user and you can l a017c422... role=node ad13bf84... role=master e9af8293... role=node + ## Support Level From 573994d0e75b4224deeda46788e71a077688e9a8 Mon Sep 17 00:00:00 2001 From: DrDePhobia Date: Tue, 24 May 2016 18:29:58 -0700 Subject: [PATCH 54/54] Update bare_metal_offline.md Added blank line before H2 --- docs/getting-started-guides/coreos/bare_metal_offline.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/getting-started-guides/coreos/bare_metal_offline.md b/docs/getting-started-guides/coreos/bare_metal_offline.md index 030dc87e74..f243caf81d 100644 --- a/docs/getting-started-guides/coreos/bare_metal_offline.md +++ b/docs/getting-started-guides/coreos/bare_metal_offline.md @@ -693,6 +693,7 @@ Kill all pods: ```shell for i in `kubectl get pods | awk '{print $1}'`; do kubectl delete pod $i; done ``` + ## Support Level