Update install-kubectl.md (#3760)
* Update install-kubectl.md Write the Docs: Added Task template to the document. Edited for clarity. * Update install-kubectl.md Write the Docs. Responded to review feedback: https://github.com/kubernetes/kubernetes.github.io/pull/3760#pullrequestreview-38008755 * Update install-kubectl.md Write the Docs. Seeing if this makes the bulleted list render correctly. * Update install-kubectl.md Write the Docs. Markdown really doesn't seem to like that bulleted list there, so we'll just do it in sentence flow.
This commit is contained in:
		
							parent
							
								
									a882281a10
								
							
						
					
					
						commit
						40b2e12eba
					
				|  | @ -7,24 +7,19 @@ redirect_from: | ||||||
| - "/docs/tasks/kubectl/install/" | - "/docs/tasks/kubectl/install/" | ||||||
| - "/docs/tasks/kubectl/install.html" | - "/docs/tasks/kubectl/install.html" | ||||||
| --- | --- | ||||||
|  | {% capture overview %} | ||||||
|  | Use the Kubernetes command-line tool, [kubectl](/docs/user-guide/kubectl), to deploy and manage applications on Kubernetes. Using kubectl, you can inspect cluster resources; create, delete, and update components; and look at your new cluster and bring up example apps. | ||||||
|  | {% endcapture %} | ||||||
| 
 | 
 | ||||||
| To deploy and manage applications on Kubernetes, you'll use the | {% capture prerequisites %} | ||||||
| Kubernetes command-line tool, [kubectl](/docs/user-guide/kubectl/). It | Use a version of kubectl that is the same version as your server or later. Using an older kubectl with a newer server might produce validation errors.  | ||||||
| lets you inspect your cluster resources, create, delete, and update | {% endcapture %} | ||||||
| components, and much more. You will use it to look at your new cluster |  | ||||||
| and bring up example apps. |  | ||||||
| 
 |  | ||||||
| You should use a version of kubectl that is at least as new as your |  | ||||||
| server.  `kubectl version` will print the server and client versions. |  | ||||||
| Using the same version of kubectl as your server naturally works; |  | ||||||
| using a newer kubectl than your server also works; but if you use an |  | ||||||
| older kubectl with a newer server you may see odd validation errors. |  | ||||||
| 
 | 
 | ||||||
| Here are a few methods to install kubectl. | Here are a few methods to install kubectl. | ||||||
| 
 | {% capture steps %} | ||||||
| ## Install kubectl binary via curl | ## Install kubectl binary via curl | ||||||
| 
 | 
 | ||||||
| Download the latest release with the command: |   1. Download the latest release with the command: | ||||||
| 
 | 
 | ||||||
| ```shell | ```shell | ||||||
| # OS X | # OS X | ||||||
|  | @ -36,83 +31,83 @@ curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s htt | ||||||
| # Windows | # Windows | ||||||
| curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/windows/amd64/kubectl.exe | curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/windows/amd64/kubectl.exe | ||||||
| ``` | ``` | ||||||
|  | To download a specific version, replace the `$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)` portion of the command with the specific version. For example, to download version 1.4.6 on MacOS, type: | ||||||
|  | `curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.4.6/bin/darwin/amd64/kubectl` | ||||||
| 
 | 
 | ||||||
| If you want to download a specific version of kubectl you can replace the nested curl command from above with the version you want. (e.g. v1.4.6, v1.5.0-beta.2) |   2. Make the kubectl binary executable. | ||||||
| 
 |  | ||||||
| Make the kubectl binary executable and move it to your PATH (e.g. `/usr/local/bin`): |  | ||||||
| 
 |  | ||||||
| ```shell | ```shell | ||||||
| chmod +x ./kubectl | chmod +x ./kubectl | ||||||
|  | ``` | ||||||
|  |   3. Move the binary in to your PATH.  | ||||||
|  | ```shell | ||||||
| sudo mv ./kubectl /usr/local/bin/kubectl | sudo mv ./kubectl /usr/local/bin/kubectl | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| ## Download as part of the Google Cloud SDK | ## Download as part of the Google Cloud SDK | ||||||
| 
 | 
 | ||||||
| kubectl can be installed as part of the Google Cloud SDK: | kubectl can be installed as part of the Google Cloud SDK. | ||||||
| 
 | 
 | ||||||
| First install the [Google Cloud SDK](https://cloud.google.com/sdk/). |   1. Install the [Google Cloud SDK](https://cloud.google.com/sdk/). | ||||||
| 
 |   2. Run the following command to install `kubectl`: | ||||||
| After Google Cloud SDK installs, run the following command to install `kubectl`: |   ```shell | ||||||
| 
 |  | ||||||
| ```shell |  | ||||||
| gcloud components install kubectl | gcloud components install kubectl | ||||||
| ``` | ``` | ||||||
| 
 |   3. Run `kubectl version` to verify that the verison you've installed is sufficiently up-to-date. | ||||||
| Check that the version is sufficiently up-to-date using `kubectl version`. |  | ||||||
|    |    | ||||||
| ## Install with Homebrew on macOS | ## Install with Homebrew on macOS | ||||||
| 
 | 
 | ||||||
| If you are on macOS and using [Homebrew](https://brew.sh/) package manager, you can install with: |   1. If you are on macOS and using [Homebrew](https://brew.sh/) package manager, you can install with: | ||||||
| 
 |  | ||||||
| ```shell | ```shell | ||||||
| brew install kubectl | brew install kubectl | ||||||
| ``` | ``` | ||||||
| 
 |   2. Run `kubectl version` to verify that the verison you've installed is sufficiently up-to-date. | ||||||
| The homebrew project is independent from kubernetes, so do check that the version is |  | ||||||
| sufficiently up-to-date using `kubectl version`. |  | ||||||
| 
 | 
 | ||||||
| ## Configuring kubectl | ## Configuring kubectl | ||||||
| 
 | 
 | ||||||
| In order for kubectl to find and access the Kubernetes cluster, it needs a [kubeconfig file](/docs/concepts/cluster-administration/authenticate-across-clusters-kubeconfig/), which is created automatically when creating a cluster using kube-up.sh or upon successful deployment of Minikube cluster (see the [getting started guides](/docs/getting-started-guides/) for more about creating clusters). If you need access to a cluster you didn't create, see the [Sharing Cluster Access document](/docs/tasks/administer-cluster/share-configuration/). | In order for kubectl to find and access a Kubernetes cluster, it needs a [kubeconfig file](/docs/concepts/cluster-administration/authenticate-across-clusters-kubeconfig/), which is created automatically when you create a cluster using kube-up.sh or successfully deploy a Minikube cluster. See the [getting started guides](/docs/getting-started-guides/) for more about creating clusters. If you need access to a cluster you didn't create, see the [Sharing Cluster Access document](/docs/tasks/administer-cluster/share-configuration/). | ||||||
| By default, kubectl configuration lives at `~/.kube/config`. | By default, kubectl configuration is located at `~/.kube/config`. | ||||||
| 
 |  | ||||||
| #### Making sure you're ready |  | ||||||
| 
 | 
 | ||||||
|  | ## Check the kubectl configuration | ||||||
| Check that kubectl is properly configured by getting the cluster state: | Check that kubectl is properly configured by getting the cluster state: | ||||||
| 
 | 
 | ||||||
| ```shell | ```shell | ||||||
| $ kubectl cluster-info | $ kubectl cluster-info | ||||||
| ``` | ``` | ||||||
|  | If you see a URL response, kubectl is correctly configured to access your cluster.  | ||||||
| 
 | 
 | ||||||
| If you see a url response, you are ready to go. | If you see a message similar to the following, kubectl is not correctly configured: | ||||||
| 
 | ```shell | ||||||
|  | The connection to the server <server-name:port> was refused - did you specify the right host or port? | ||||||
|  | ``` | ||||||
| ## Enabling shell autocompletion | ## Enabling shell autocompletion | ||||||
| 
 | 
 | ||||||
| kubectl includes autocompletion support, which can save a lot of typing! | kubectl includes autocompletion support, which can save a lot of typing! | ||||||
| 
 | 
 | ||||||
| The completion script itself is generated by kubectl, so you typically just need to invoke it from your profile. | The completion script itself is generated by kubectl, so you typically just need to invoke it from your profile. | ||||||
| 
 | 
 | ||||||
| Common examples are provided here, but for more details please consult `kubectl completion -h` | Common examples are provided here. For more details, consult `kubectl completion -h`. | ||||||
| 
 | 
 | ||||||
| ### On Linux, using bash | ### On Linux, using bash | ||||||
| 
 | 
 | ||||||
| To add it to your current shell: `source <(kubectl completion bash)` | To add kubectl autocompletion to your current shell, run `source <(kubectl completion bash)`. | ||||||
| 
 | 
 | ||||||
| To add kubectl autocompletion to your profile (so it is automatically loaded in future shells): | To add kubectl autocompletion to your profile, so it is automatically loaded in future shells run: | ||||||
| 
 | 
 | ||||||
| ```shell | ```shell | ||||||
| echo "source <(kubectl completion bash)" >> ~/.bashrc | echo "source <(kubectl completion bash)" >> ~/.bashrc | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| ### On MacOS, using bash | ### On macOS, using bash | ||||||
|  | On macOS, autocompletion works if you install using `brew install kubectl`, | ||||||
|  | and not if you downloaded kubectl directly. | ||||||
| 
 | 
 | ||||||
| On MacOS, you will need to install the bash-completion support first: | Install the bash-completion support: | ||||||
| 
 | 
 | ||||||
| ```shell | ```shell | ||||||
| brew install bash-completion | brew install bash-completion | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| To add it to your current shell: | To add kubectl autocompletion to your current shell, run: | ||||||
| 
 | 
 | ||||||
| ```shell | ```shell | ||||||
| source $(brew --prefix)/etc/bash_completion | source $(brew --prefix)/etc/bash_completion | ||||||
|  | @ -125,10 +120,8 @@ To add kubectl autocompletion to your profile (so it is automatically loaded in | ||||||
| echo "source $(brew --prefix)/etc/bash_completion" >> ~/.bash_profile | echo "source $(brew --prefix)/etc/bash_completion" >> ~/.bash_profile | ||||||
| echo "source <(kubectl completion bash)" >> ~/.bash_profile | echo "source <(kubectl completion bash)" >> ~/.bash_profile | ||||||
| ``` | ``` | ||||||
| 
 | {% endcapture %} | ||||||
| Please note that this only appears to work currently if you install using `brew install kubectl`, | {% capture whatsnext %} | ||||||
| and not if you downloaded kubectl directly. |  | ||||||
| 
 |  | ||||||
| ## What's next? |  | ||||||
| 
 |  | ||||||
| [Learn how to launch and expose your application.](/docs/user-guide/quick-start) | [Learn how to launch and expose your application.](/docs/user-guide/quick-start) | ||||||
|  | {% endcapture %} | ||||||
|  | {% include templates/task.md %} | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue