* 'master' of https://github.com/kubernetes/kubernetes.github.io:
  Edits for clarity, concision, style, formatting, (#4160)
  rename kargo to kubespray in getting started docs (#4119)
This commit is contained in:
Andrew Chen
2017-06-22 15:44:20 -07:00
4 changed files with 45 additions and 46 deletions
+1 -1
View File
@@ -43,7 +43,7 @@ toc:
- docs/getting-started-guides/coreos/index.md - docs/getting-started-guides/coreos/index.md
- docs/getting-started-guides/ubuntu/index.md - docs/getting-started-guides/ubuntu/index.md
- docs/getting-started-guides/kops.md - docs/getting-started-guides/kops.md
- docs/getting-started-guides/kargo.md - docs/getting-started-guides/kubespray.md
- docs/getting-started-guides/running-cloud-controller.md - docs/getting-started-guides/running-cloud-controller.md
- title: On-Premise VMs - title: On-Premise VMs
@@ -1,63 +1,63 @@
--- ---
title: Installing Kubernetes On-premise/Cloud Providers with Kargo title: Installing Kubernetes On-premise/Cloud Providers with Kubespray
--- ---
## Overview ## Overview
This quickstart helps to install a Kubernetes cluster hosted This quickstart helps to install a Kubernetes cluster hosted
on GCE, Azure, OpenStack, AWS or Baremetal with on GCE, Azure, OpenStack, AWS or Baremetal with
[`Kargo`](https://github.com/kubernetes-incubator/kargo) tool. [`Kubespray`](https://github.com/kubernetes-incubator/kubespray) tool.
Kargo is a composition of [Ansible](http://docs.ansible.com/) playbooks, Kubespray is a composition of [Ansible](http://docs.ansible.com/) playbooks,
[inventory](https://github.com/kubernetes-incubator/kargo/blob/master/docs/ansible.md) [inventory](https://github.com/kubernetes-incubator/kubespray/blob/master/docs/ansible.md)
generation CLI tools and domain knowledge for generic OS/Kubernetes generation CLI tools and domain knowledge for generic OS/Kubernetes
clusters configuration management tasks. It provides: clusters configuration management tasks. It provides:
* [High available cluster](https://github.com/kubernetes-incubator/kargo/blob/master/docs/ha-mode.md) * [High available cluster](https://github.com/kubernetes-incubator/kubespray/blob/master/docs/ha-mode.md)
* [Composable](https://github.com/kubernetes-incubator/kargo/blob/master/docs/vars.md) * [Composable](https://github.com/kubernetes-incubator/kubespray/blob/master/docs/vars.md)
(Choice of the network plugin, for instance) (Choice of the network plugin, for instance)
* Support most popular Linux * Support most popular Linux
[distributions](https://github.com/kubernetes-incubator/kargo#supported-linux-distributions) [distributions](https://github.com/kubernetes-incubator/kubespray#supported-linux-distributions)
* Continuous integration tests * Continuous integration tests
To choose a tool which fits your use case the best, you may want to read this To choose a tool which fits your use case the best, you may want to read this
[comparison](https://github.com/kubernetes-incubator/kargo/blob/master/docs/comparisons.md) [comparison](https://github.com/kubernetes-incubator/kubespray/blob/master/docs/comparisons.md)
to [kubeadm](../kubeadm) and [kops](../kops). to [kubeadm](../kubeadm) and [kops](../kops).
## Creating a cluster ## Creating a cluster
### (1/4) Ensure the underlay [requirements](https://github.com/kubernetes-incubator/kargo#requirements) are met ### (1/4) Ensure the underlay [requirements](https://github.com/kubernetes-incubator/kubespray#requirements) are met
#### Checklist #### Checklist
* You must have cloud instances or baremetal nodes running for your future Kubernetes cluster. * You must have cloud instances or baremetal nodes running for your future Kubernetes cluster.
A way to achieve that is to use the A way to achieve that is to use the
[kargo-cli tool](https://github.com/kubernetes-incubator/kargo/blob/master/docs/getting-started.md). [kargo-cli tool](https://github.com/kubernetes-incubator/kubespray/blob/master/docs/getting-started.md).
* Or provision baremetal hosts with a tool-of-your-choice or launch cloud instances, * Or provision baremetal hosts with a tool-of-your-choice or launch cloud instances,
then create an inventory file for Ansible with this [tool](https://github.com/kubernetes-incubator/kargo/blob/master/contrib/inventory_builder/inventory.py). then create an inventory file for Ansible with this [tool](https://github.com/kubernetes-incubator/kubespray/blob/master/contrib/inventory_builder/inventory.py).
### (2/4) Compose the deployment ### (2/4) Compose the deployment
#### Checklist #### Checklist
* Customize your deployment by usual Ansible meanings, which is * Customize your deployment by usual Ansible meanings, which is
[generating inventory](https://github.com/kubernetes-incubator/kargo/blob/master/docs/getting-started.md#building-your-own-inventory) [generating inventory](https://github.com/kubernetes-incubator/kubespray/blob/master/docs/getting-started.md#building-your-own-inventory)
and overriding default data [variables](https://github.com/kubernetes-incubator/kargo/blob/master/docs/vars.md). and overriding default data [variables](https://github.com/kubernetes-incubator/kubespray/blob/master/docs/vars.md).
Or just stick with default values (Kargo will choose Calico networking plugin for you Or just stick with default values (Kubespray will choose Calico networking plugin for you
then). This includes steps like deciding on the: then). This includes steps like deciding on the:
* DNS [configuration options](https://github.com/kubernetes-incubator/kargo/blob/master/docs/dns-stack.md) * DNS [configuration options](https://github.com/kubernetes-incubator/kubespray/blob/master/docs/dns-stack.md)
* [Networking plugin](https://github.com/kubernetes-incubator/kargo#network-plugins) to use * [Networking plugin](https://github.com/kubernetes-incubator/kubespray#network-plugins) to use
* [Versions](https://github.com/kubernetes-incubator/kargo#versions-of-supported-components) * [Versions](https://github.com/kubernetes-incubator/kubespray#versions-of-supported-components)
of components. of components.
* Additional node groups like [bastion hosts](https://github.com/kubernetes-incubator/kargo/blob/master/docs/ansible.md#bastion-host) or * Additional node groups like [bastion hosts](https://github.com/kubernetes-incubator/kubespray/blob/master/docs/ansible.md#bastion-host) or
[Calico BGP route reflectors](https://github.com/kubernetes-incubator/kargo/blob/master/docs/calico.md#optional--bgp-peering-with-border-routers). [Calico BGP route reflectors](https://github.com/kubernetes-incubator/kubespray/blob/master/docs/calico.md#optional--bgp-peering-with-border-routers).
* Plan custom deployment steps, if any, or use the default composition layer in the * Plan custom deployment steps, if any, or use the default composition layer in the
[cluster definition file](https://github.com/kubernetes-incubator/kargo/blob/master/cluster.yml). [cluster definition file](https://github.com/kubernetes-incubator/kubespray/blob/master/cluster.yml).
Taking the best from Ansible world, Kargo allows users to execute arbitrary steps via the Taking the best from Ansible world, Kubespray allows users to execute arbitrary steps via the
``ansible-playbook`` with given inventory, playbooks, data overrides and tags, limits, batches ``ansible-playbook`` with given inventory, playbooks, data overrides and tags, limits, batches
of nodes to deploy and so on. of nodes to deploy and so on.
* For large deployments (100+ nodes), you may want to * For large deployments (100+ nodes), you may want to
[tweak things](https://github.com/kubernetes-incubator/kargo/blob/master/docs/large-deployments.md) [tweak things](https://github.com/kubernetes-incubator/kubespray/blob/master/docs/large-deployments.md)
for best results. for best results.
### (3/4) Run the deployment ### (3/4) Run the deployment
@@ -65,11 +65,11 @@ to [kubeadm](../kubeadm) and [kops](../kops).
#### Checklist #### Checklist
* Apply deployment with * Apply deployment with
[kargo-cli tool](https://github.com/kubernetes-incubator/kargo/blob/master/docs/getting-started.md) [kargo-cli tool](https://github.com/kubernetes-incubator/kubespray/blob/master/docs/getting-started.md)
or ``ansible-playbook`` or ``ansible-playbook``
[manual commands](https://github.com/kubernetes-incubator/kargo/blob/master/docs/getting-started.md#starting-custom-deployment). [manual commands](https://github.com/kubernetes-incubator/kubespray/blob/master/docs/getting-started.md#starting-custom-deployment).
### (4/4) (Optional) verify inter-pods connectivity and DNS resolve with [Netchecker](https://github.com/kubernetes-incubator/kargo/blob/master/docs/netcheck.md) ### (4/4) (Optional) verify inter-pods connectivity and DNS resolve with [Netchecker](https://github.com/kubernetes-incubator/kubespray/blob/master/docs/netcheck.md)
#### Checklist #### Checklist
@@ -78,17 +78,17 @@ to [kubeadm](../kubeadm) and [kops](../kops).
## Explore contributed add-ons ## Explore contributed add-ons
See the [list of contributed playbooks](https://github.com/kubernetes-incubator/kargo/tree/master/contrib) See the [list of contributed playbooks](https://github.com/kubernetes-incubator/kubespray/tree/master/contrib)
to explore other deployment options. to explore other deployment options.
## What's next ## What's next
Kargo has quite a few [marks on the radar](https://github.com/kubernetes-incubator/kargo/blob/master/docs/roadmap.md). Kubespray has quite a few [marks on the radar](https://github.com/kubernetes-incubator/kubespray/blob/master/docs/roadmap.md).
## Cleanup ## Cleanup
To delete your scratch cluster, you can apply the To delete your scratch cluster, you can apply the
[reset role](https://github.com/kubernetes-incubator/kargo/blob/master/roles/reset/tasks/main.yml) [reset role](https://github.com/kubernetes-incubator/kubespray/blob/master/roles/reset/tasks/main.yml)
with the manual ``ansible-playbook`` command. with the manual ``ansible-playbook`` command.
Note, that it is highly unrecommended to delete production clusters with the reset playbook! Note, that it is highly unrecommended to delete production clusters with the reset playbook!
@@ -96,5 +96,5 @@ Note, that it is highly unrecommended to delete production clusters with the res
## Feedback ## Feedback
* Slack Channel: [#kargo](https://kubernetes.slack.com/messages/kargo/) * Slack Channel: [#kargo](https://kubernetes.slack.com/messages/kargo/)
* [GitHub Issues](https://github.com/kubernetes-incubator/kargo/issues) * [GitHub Issues](https://github.com/kubernetes-incubator/kubespray/issues)
+1 -1
View File
@@ -25,7 +25,7 @@ Other/newer ways to set up a Kubernetes cluster include:
* [Minikube](/docs/getting-started-guides/minikube/): Install a single-node Kubernetes cluster on your local machine for development and testing. * [Minikube](/docs/getting-started-guides/minikube/): Install a single-node Kubernetes cluster on your local machine for development and testing.
* [Installing Kubernetes on AWS with kops](/docs/getting-started-guides/kops/): Bring up a complete Kubernetes cluster on Amazon Web Services, using a tool called `kops`. * [Installing Kubernetes on AWS with kops](/docs/getting-started-guides/kops/): Bring up a complete Kubernetes cluster on Amazon Web Services, using a tool called `kops`.
* [Installing Kubernetes on Linux with kubeadm](/docs/getting-started-guides/kubeadm/) (Beta): Install a secure Kubernetes cluster on any pre-existing machines running Linux, using the built-in `kubeadm` tool. * [Installing Kubernetes on Linux with kubeadm](/docs/getting-started-guides/kubeadm/) (Beta): Install a secure Kubernetes cluster on any pre-existing machines running Linux, using the built-in `kubeadm` tool.
* [Installing Kubernetes On-premise/Cloud Providers with Kargo](/docs/getting-started-guides/kargo/): Deploy a Kubernetes cluster on-premise baremetal or hosted on cloud providers, with Ansible and `kargo` tools. * [Installing Kubernetes On-premise/Cloud Providers with Kubespray](/docs/getting-started-guides/kubespray/): Deploy a Kubernetes cluster on-premises baremetal or hosted on cloud providers, with Ansible and `kubespray` tools.
* [Installing Kubernetes on Ubuntu](/docs/getting-started-guides/ubuntu/): Deploy a Kubernetes cluster on-premise, baremetal, cloud providers, or localhost with Charms and `conjure-up`. * [Installing Kubernetes on Ubuntu](/docs/getting-started-guides/ubuntu/): Deploy a Kubernetes cluster on-premise, baremetal, cloud providers, or localhost with Charms and `conjure-up`.
## Concepts, Tasks, and Tutorials ## Concepts, Tasks, and Tutorials
@@ -16,18 +16,19 @@ redirect_from:
{% capture overview %} {% capture overview %}
This page shows how to investigate problems related to the execution of This page shows how to investigate problems related to the execution of
Init Containers. Init Containers. The example command lines below refer to the Pod as
`<pod-name>` and the Init Containers as `<init-container-1>` and
`<init-container-2>`.
{% endcapture %} {% endcapture %}
{% capture prerequisites %} {% capture prerequisites %}
{% include task-tutorial-prereqs.md %}
* You should be familiar with the basics of * You should be familiar with the basics of
[Init Containers](/docs/concepts/abstractions/init-containers/). [Init Containers](/docs/concepts/abstractions/init-containers/).
* You should have a [Pod](/docs/concepts/workloads/pods/pod/) you want to debug that uses * You should have [Configured an Init Container](/docs/tasks/configure-pod-container/configure-pod-initialization/#creating-a-pod-that-has-an-init-container/).
Init Containers. The example command lines below refer to the Pod as
`<pod-name>` and the Init Containers as `<init-container-1>` and
`<init-container-2>`.
{% endcapture %} {% endcapture %}
@@ -35,7 +36,7 @@ Init Containers.
## Checking the status of Init Containers ## Checking the status of Init Containers
The Pod status will give you an overview of Init Container execution: Display the status of your pod:
```shell ```shell
kubectl get pod <pod-name> kubectl get pod <pod-name>
@@ -54,7 +55,7 @@ status values and their meanings.
## Getting details about Init Containers ## Getting details about Init Containers
You can see detailed information about Init Container execution by running: View more detailed information about Init Container execution:
```shell ```shell
kubectl describe pod <pod-name> kubectl describe pod <pod-name>
@@ -99,18 +100,18 @@ kubectl get pod nginx --template '{{.status.initContainerStatuses}}'
``` ```
{% endraw %} {% endraw %}
This will return the same information as above, but in raw JSON format. This command will return the same information as above in raw JSON.
## Accessing logs from Init Containers ## Accessing logs from Init Containers
You can access logs for an Init Container by passing its Container name along Pass the Init Container name along with the Pod name
with the Pod name: to access its logs.
```shell ```shell
kubectl logs <pod-name> -c <init-container-2> kubectl logs <pod-name> -c <init-container-2>
``` ```
If your Init Container runs a shell script, it helps to enable printing of Init Containers that run a shell script print
commands as they're executed. For example, you can do this in Bash by running commands as they're executed. For example, you can do this in Bash by running
`set -x` at the beginning of the script. `set -x` at the beginning of the script.
@@ -129,10 +130,8 @@ Status | Meaning
`Init:N/M` | The Pod has `M` Init Containers, and `N` have completed so far. `Init:N/M` | The Pod has `M` Init Containers, and `N` have completed so far.
`Init:Error` | An Init Container has failed to execute. `Init:Error` | An Init Container has failed to execute.
`Init:CrashLoopBackOff` | An Init Container has failed repeatedly. `Init:CrashLoopBackOff` | An Init Container has failed repeatedly.
`Pending` | The Pod has not yet begun executing Init Containers.
A Pod with status `Pending` has not yet begun executing Init Containers. `PodInitializing` or `Running` | The Pod has already finished executing Init Containers.
A Pod with status `PodInitializing` or `Running` has already finished executing
Init Containers.
{% endcapture %} {% endcapture %}