mirror of https://github.com/kubernetes/kops.git
Merge pull request #2725 from WillemMali/add-documentation-index
added documentation index
This commit is contained in:
commit
de6d4e69f5
41
README.md
41
README.md
|
@ -8,12 +8,14 @@
|
||||||
|
|
||||||
The easiest way to get a production grade Kubernetes cluster up and running.
|
The easiest way to get a production grade Kubernetes cluster up and running.
|
||||||
|
|
||||||
|
|
||||||
## What is kops?
|
## What is kops?
|
||||||
|
|
||||||
We like to think of it as `kubectl` for clusters.
|
We like to think of it as `kubectl` for clusters.
|
||||||
|
|
||||||
`kops` helps you create, destroy, upgrade and maintain production-grade, highly available, Kubernetes clusters from the command line. AWS (Amazon Web Services) is currently officially supported, with GCE and VMware vSphere in alpha and other platforms planned.
|
`kops` helps you create, destroy, upgrade and maintain production-grade, highly available, Kubernetes clusters from the command line. AWS (Amazon Web Services) is currently officially supported, with GCE and VMware vSphere in alpha and other platforms planned.
|
||||||
|
|
||||||
|
|
||||||
## Can I see it in action?
|
## Can I see it in action?
|
||||||
|
|
||||||
<p align="center">
|
<p align="center">
|
||||||
|
@ -27,6 +29,7 @@ We like to think of it as `kubectl` for clusters.
|
||||||
To replicate the above demo, check out our [tutorial](/docs/aws.md) for
|
To replicate the above demo, check out our [tutorial](/docs/aws.md) for
|
||||||
launching a Kubernetes cluster hosted on AWS.
|
launching a Kubernetes cluster hosted on AWS.
|
||||||
|
|
||||||
|
|
||||||
## Features
|
## Features
|
||||||
|
|
||||||
* Automates the provisioning of Kubernetes clusters in ([AWS](/docs/aws.md))
|
* Automates the provisioning of Kubernetes clusters in ([AWS](/docs/aws.md))
|
||||||
|
@ -38,14 +41,22 @@ launching a Kubernetes cluster hosted on AWS.
|
||||||
* Command line [autocompletion](/docs/cli/kops_completion.md)
|
* Command line [autocompletion](/docs/cli/kops_completion.md)
|
||||||
* Community supported!
|
* Community supported!
|
||||||
|
|
||||||
|
|
||||||
|
## Documentations
|
||||||
|
|
||||||
|
Documentation is in the `/docs` directory, [and the index is here.](docs/README.md)
|
||||||
|
|
||||||
|
|
||||||
## Installing
|
## Installing
|
||||||
|
|
||||||
`kubectl` is required, see [here](http://kubernetes.io/docs/user-guide/prereqs/).
|
`kubectl` is required, see [here](http://kubernetes.io/docs/user-guide/prereqs/).
|
||||||
|
|
||||||
|
|
||||||
### OSX From Homebrew (Latest Stable Release)
|
### OSX From Homebrew (Latest Stable Release)
|
||||||
|
|
||||||
```console
|
```console
|
||||||
$ brew update && brew install kops
|
$ brew update && brew install kops
|
||||||
|
|
||||||
```
|
```
|
||||||
### Linux
|
### Linux
|
||||||
|
|
||||||
|
@ -56,27 +67,15 @@ $ chmod +x kops-linux-amd64 # Add execution permissions
|
||||||
$ mv kops-linux-amd64 /usr/local/bin/kops # Move the kops to /usr/local/bin
|
$ mv kops-linux-amd64 /usr/local/bin/kops # Move the kops to /usr/local/bin
|
||||||
```
|
```
|
||||||
|
|
||||||
### Developer From Source
|
|
||||||
|
|
||||||
|
|
||||||
Go 1.8+ and make are required. You may need to do a full build including pushing protokube, nodeup, and kops to s3.
|
|
||||||
|
|
||||||
See the [install notes](/docs/install.md) for more information.
|
|
||||||
|
|
||||||
```console
|
|
||||||
$ go get -d k8s.io/kops
|
|
||||||
$ cd ${GOPATH}/src/k8s.io/kops/
|
|
||||||
$ git checkout release
|
|
||||||
$ make
|
|
||||||
```
|
|
||||||
|
|
||||||
At this time, Windows is not a supported platform.
|
|
||||||
|
|
||||||
## History
|
## History
|
||||||
|
|
||||||
See the [releases](https://github.com/kubernetes/kops/releases) for more
|
See the [releases](https://github.com/kubernetes/kops/releases) for more
|
||||||
information on changes between releases.
|
information on changes between releases.
|
||||||
|
|
||||||
|
|
||||||
## Getting involved and contributing!
|
## Getting involved and contributing!
|
||||||
|
|
||||||
Are you interested in contributing to kops? We, the maintainers and community, would love your suggestions, contributions, and help! We have a quick-start guide on [adding a feature](/docs/development/adding_a_feature.md). Also, the maintainers can be contacted at any time to learn more about how to get involved.
|
Are you interested in contributing to kops? We, the maintainers and community, would love your suggestions, contributions, and help! We have a quick-start guide on [adding a feature](/docs/development/adding_a_feature.md). Also, the maintainers can be contacted at any time to learn more about how to get involved.
|
||||||
|
@ -108,10 +107,12 @@ __Pull Requests__
|
||||||
* [@geojaz](https://github.com/geojaz)
|
* [@geojaz](https://github.com/geojaz)
|
||||||
* [@yissachar](https://github.com/yissachar)
|
* [@yissachar](https://github.com/yissachar)
|
||||||
|
|
||||||
|
|
||||||
## Office Hours
|
## Office Hours
|
||||||
|
|
||||||
Kops maintainers set aside one hour every other week for **public** office hours. Office hours are hosted on a [zoom video chat](https://zoom.us/my/k8ssigaws) on Fridays at [5 pm UTC/12 noon ET/9 am US Pacific](http://www.worldtimebuddy.com/?pl=1&lid=100,5,8,12), on odd week numbered weeks. We strive to get to know and help developers either working on `kops` or interested in getting to know more about the project.
|
Kops maintainers set aside one hour every other week for **public** office hours. Office hours are hosted on a [zoom video chat](https://zoom.us/my/k8ssigaws) on Fridays at [5 pm UTC/12 noon ET/9 am US Pacific](http://www.worldtimebuddy.com/?pl=1&lid=100,5,8,12), on odd week numbered weeks. We strive to get to know and help developers either working on `kops` or interested in getting to know more about the project.
|
||||||
|
|
||||||
|
|
||||||
### Open Office Hours Topics
|
### Open Office Hours Topics
|
||||||
|
|
||||||
Include but not limited to:
|
Include but not limited to:
|
||||||
|
@ -136,19 +137,10 @@ date +%V
|
||||||
|
|
||||||
The maintainers and other community members are generally available on the [kubernetes slack](https://github.com/kubernetes/community#slack-chat) in [#kops](https://kubernetes.slack.com/messages/kops/), so come find and chat with us about how kops can be better for you!
|
The maintainers and other community members are generally available on the [kubernetes slack](https://github.com/kubernetes/community#slack-chat) in [#kops](https://kubernetes.slack.com/messages/kops/), so come find and chat with us about how kops can be better for you!
|
||||||
|
|
||||||
## Other Resources
|
|
||||||
|
|
||||||
- Create [kubecfg settings for kubectl](/docs/tips.md#create-kubecfg-settings-for-kubectl)
|
|
||||||
- Set up [add-ons](/docs/addons.md), to add important functionality to Kubernetes
|
|
||||||
- Learn about [InstanceGroups](/docs/instance_groups.md); change
|
|
||||||
instance types, number of nodes, and other options
|
|
||||||
- Read about [networking options](/docs/networking.md)
|
|
||||||
- Look at our [other interesting modes](/docs/commands.md#other-interesting-modes)
|
|
||||||
- Full command line interface [documentation](/docs/cli/kops.md)
|
|
||||||
|
|
||||||
## GitHub Issues
|
## GitHub Issues
|
||||||
|
|
||||||
#### Bugs
|
### Bugs
|
||||||
|
|
||||||
If you think you have found a bug please follow the instructions below.
|
If you think you have found a bug please follow the instructions below.
|
||||||
|
|
||||||
|
@ -159,7 +151,8 @@ If you think you have found a bug please follow the instructions below.
|
||||||
- Remember users might be searching for your issue in the future, so please give it a meaningful title to helps others.
|
- Remember users might be searching for your issue in the future, so please give it a meaningful title to helps others.
|
||||||
- Feel free to reach out to the kops community on [kubernetes slack](https://github.com/kubernetes/community#slack-chat)
|
- Feel free to reach out to the kops community on [kubernetes slack](https://github.com/kubernetes/community#slack-chat)
|
||||||
|
|
||||||
#### Features
|
|
||||||
|
### Features
|
||||||
|
|
||||||
We also use the issue tracker to track features. If you have an idea for a feature, or think you can help kops become even more awesome follow the steps below.
|
We also use the issue tracker to track features. If you have an idea for a feature, or think you can help kops become even more awesome follow the steps below.
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,93 @@
|
||||||
|
Documentation Index
|
||||||
|
===================
|
||||||
|
|
||||||
|
Quick start
|
||||||
|
-----------
|
||||||
|
* [Getting started on AWS](aws.md)
|
||||||
|
* [CLI reference](cli/kops.md)
|
||||||
|
|
||||||
|
|
||||||
|
Overview
|
||||||
|
--------
|
||||||
|
|
||||||
|
* [Command-line interface](#commandline-interface)
|
||||||
|
* [Inspection](#inspection)
|
||||||
|
* [`kops` design documents](#kops-design-documents)
|
||||||
|
* [Networking](#networking)
|
||||||
|
* [Operations](#operations)
|
||||||
|
* [Security](#security)
|
||||||
|
* [Workflows](#workflows)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### Command-line interface ###
|
||||||
|
|
||||||
|
* [CLI argument explanations](arguments.md)
|
||||||
|
* [CLI reference](cli/kops.md)
|
||||||
|
* [Commands](commands.md)
|
||||||
|
* miscellaneous CLI-related remarks
|
||||||
|
* [Experimental features](experimental.md)
|
||||||
|
* list of and how to enable experimental flags in the CLI
|
||||||
|
* [kubectl](kubectl.md)
|
||||||
|
* how to point kubectl to your `kops` cluster
|
||||||
|
|
||||||
|
|
||||||
|
### Inspection ###
|
||||||
|
|
||||||
|
* [Download `kops` configuration](download_config.md)
|
||||||
|
* methods to download the current generated `kops` configuration
|
||||||
|
* [Get AWS subdomain NS records](ns.md)
|
||||||
|
|
||||||
|
|
||||||
|
### `kops` design documents ###
|
||||||
|
|
||||||
|
* [`kops` cluster boot sequence](boot-sequence.md)
|
||||||
|
* [`kops` cluster spec](cluster_spec.md)
|
||||||
|
* [`kops` instance groups](instance_groups.md)
|
||||||
|
* [`kops` philosophy](philosophy.md)
|
||||||
|
* [`kops` state store](state.md)
|
||||||
|
|
||||||
|
|
||||||
|
### Networking ###
|
||||||
|
|
||||||
|
* [Networking overview](networking.md)
|
||||||
|
* [Run `kops` in an existing VPC](run_in_existing_vpc.md)
|
||||||
|
* [Supported network topologies](topology.md)
|
||||||
|
* [Subdomain setup](creating_subdomain.md)
|
||||||
|
|
||||||
|
|
||||||
|
### Operations ###
|
||||||
|
|
||||||
|
* [Cluster addon manager](addon_manager.md)
|
||||||
|
* [Cluster addons](addons.md)
|
||||||
|
* [Cluster configuration management](changing_configuration.md)
|
||||||
|
* [Cluster upgrades and migrations](cluster_upgrades_and_migrations.md)
|
||||||
|
* [`etcd` volume encryption setup](etcd_volume_encryption.md)
|
||||||
|
* [`etcd` backup setup](etcd_backup.md)
|
||||||
|
* [GPU setup](gpu.md)
|
||||||
|
* [High Availability](high_availability.md)
|
||||||
|
* [InstanceGroup images](images.md)
|
||||||
|
* how to use other image for cluster nodes, and information on available/tested images
|
||||||
|
* [`k8s` upgrading](upgrade.md)
|
||||||
|
* [`kops` updating](update_kops.md)
|
||||||
|
* [`kube-up` to `kops` upgrade](upgrade_from_kubeup.md)
|
||||||
|
* [Label management](labels.md)
|
||||||
|
* for cluster nodes
|
||||||
|
* [Secret management](secrets.md)
|
||||||
|
* [Single-master to multi-master update](single-to-multi-master.md)
|
||||||
|
|
||||||
|
|
||||||
|
### Security ###
|
||||||
|
|
||||||
|
* [Bastion setup](bastion.md)
|
||||||
|
* [IAM roles](iam_roles.md)
|
||||||
|
* [MFA setup](mfa.md)
|
||||||
|
* how to set up MFA for `kops`
|
||||||
|
* [Security](security.md)
|
||||||
|
* overview of secret storage, SSH credentials etc.
|
||||||
|
|
||||||
|
|
||||||
|
### Workflows ###
|
||||||
|
|
||||||
|
* [E2E testing with `kops` clusters](testing.md)
|
||||||
|
* [Getting started on AWS](aws.md)
|
|
@ -1,20 +0,0 @@
|
||||||
# Advanced Example
|
|
||||||
|
|
||||||
Example Create Cluster Command for HA / Private Topology
|
|
||||||
|
|
||||||
```
|
|
||||||
kops create cluster \
|
|
||||||
--node-count 3 \
|
|
||||||
--zones us-west-2a,us-west-2b,us-west-2c \
|
|
||||||
--master-zones us-west-2a,us-west-2b,us-west-2c \
|
|
||||||
--dns-zone example.com \
|
|
||||||
--node-size t2.medium \
|
|
||||||
--master-size t2.medium \
|
|
||||||
--node-security-groups sg-12345678 \
|
|
||||||
--master-security-groups sg-12345678,i-abcd1234 \
|
|
||||||
--topology private \
|
|
||||||
--networking weave \
|
|
||||||
--cloud-labels "Team=Dev,Owner=John Doe" \
|
|
||||||
--image 293135079892/k8s-1.4-debian-jessie-amd64-hvm-ebs-2016-11-16 \
|
|
||||||
${NAME}
|
|
||||||
```
|
|
|
@ -1,6 +1,8 @@
|
||||||
# High Availability (HA)
|
High Availability (HA)
|
||||||
|
======================
|
||||||
|
|
||||||
## Introduction
|
Introduction
|
||||||
|
-------------
|
||||||
|
|
||||||
Kubernetes has two strategies for high availability:
|
Kubernetes has two strategies for high availability:
|
||||||
|
|
||||||
|
@ -27,7 +29,9 @@ In short:
|
||||||
* A multi-node kops cluster can tolerate the outage of a single AZ
|
* A multi-node kops cluster can tolerate the outage of a single AZ
|
||||||
* Federation will allow you to create "uber-clusters" that can tolerate a regional outage
|
* Federation will allow you to create "uber-clusters" that can tolerate a regional outage
|
||||||
|
|
||||||
## Using Kops HA
|
|
||||||
|
Using Kops HA
|
||||||
|
-------------
|
||||||
|
|
||||||
We can create HA clusters using kops, but only it's important to note that migrating from a single-master
|
We can create HA clusters using kops, but only it's important to note that migrating from a single-master
|
||||||
cluster to a multi-master cluster is a complicated operation (described [here](./single-to-multi-master.md)).
|
cluster to a multi-master cluster is a complicated operation (described [here](./single-to-multi-master.md)).
|
||||||
|
@ -58,3 +62,27 @@ As a result there are a few considerations that need to be taken into account wh
|
||||||
If we create 2 (or more) masters in the same AZ, then failure of the AZ will likely cause etcd to lose quorum
|
If we create 2 (or more) masters in the same AZ, then failure of the AZ will likely cause etcd to lose quorum
|
||||||
and stop operating (with 3 nodes). Running in the same AZ therefore increases the risk of cluster disruption,
|
and stop operating (with 3 nodes). Running in the same AZ therefore increases the risk of cluster disruption,
|
||||||
though it can be a valid scenario, particularly if combined with [federation](https://kubernetes.io/docs/user-guide/federation/).
|
though it can be a valid scenario, particularly if combined with [federation](https://kubernetes.io/docs/user-guide/federation/).
|
||||||
|
|
||||||
|
|
||||||
|
Advanced Example
|
||||||
|
----------------
|
||||||
|
|
||||||
|
Another example `create cluster` invocation for HA with [a private network topology](topology.md):
|
||||||
|
|
||||||
|
```
|
||||||
|
kops create cluster \
|
||||||
|
--node-count 3 \
|
||||||
|
--zones us-west-2a,us-west-2b,us-west-2c \
|
||||||
|
--master-zones us-west-2a,us-west-2b,us-west-2c \
|
||||||
|
--dns-zone example.com \
|
||||||
|
--node-size t2.medium \
|
||||||
|
--master-size t2.medium \
|
||||||
|
--node-security-groups sg-12345678 \
|
||||||
|
--master-security-groups sg-12345678,i-abcd1234 \
|
||||||
|
--topology private \
|
||||||
|
--networking weave \
|
||||||
|
--cloud-labels "Team=Dev,Owner=John Doe" \
|
||||||
|
--image 293135079892/k8s-1.4-debian-jessie-amd64-hvm-ebs-2016-11-16 \
|
||||||
|
${NAME}
|
||||||
|
```
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# Tips and Tricks
|
# kubectl
|
||||||
|
|
||||||
## Create kubecfg settings for kubectl
|
## Create kubecfg settings for kubectl
|
||||||
|
|
Loading…
Reference in New Issue