mirror of https://github.com/k3s-io/k3s
update rackspace README
parent
1e8ee4d1f1
commit
0205c27c50
|
@ -39,6 +39,7 @@ Docker Multi Node | Flannel| N/A | local | [docs](docker-multino
|
||||||
Local | | | _none_ | [docs](../../docs/getting-started-guides/locally.md) | Community (@preillyme) |
|
Local | | | _none_ | [docs](../../docs/getting-started-guides/locally.md) | Community (@preillyme) |
|
||||||
libvirt/KVM | CoreOS | CoreOS | libvirt/KVM | [docs](../../docs/getting-started-guides/libvirt-coreos.md) | Community (@lhuard1A) |
|
libvirt/KVM | CoreOS | CoreOS | libvirt/KVM | [docs](../../docs/getting-started-guides/libvirt-coreos.md) | Community (@lhuard1A) |
|
||||||
oVirt | | | | [docs](../../docs/getting-started-guides/ovirt.md) | Community (@simon3z) |
|
oVirt | | | | [docs](../../docs/getting-started-guides/ovirt.md) | Community (@simon3z) |
|
||||||
|
Rackspace | CoreOS | CoreOS | flannel | [docs](../../docs/getting-started-guides/rackspace.md) | Community (@doublerr) | use k8s version 0.16.2
|
||||||
|
|
||||||
|
|
||||||
*Note*: The above table is ordered by version test/used in notes followed by support level.
|
*Note*: The above table is ordered by version test/used in notes followed by support level.
|
||||||
|
|
|
@ -1,25 +1,27 @@
|
||||||
# Status: Out Of Date
|
|
||||||
|
|
||||||
** Rackspace support is out of date. Please check back later **
|
|
||||||
|
|
||||||
# Rackspace
|
# Rackspace
|
||||||
In general, the dev-build-and-up.sh workflow for Rackspace is the similar to GCE. The specific implementation is different due to the use of CoreOS, Rackspace Cloud Files and network design.
|
|
||||||
|
* Supported Version: v0.16.2
|
||||||
|
* `git checkout v0.16.2`
|
||||||
|
|
||||||
|
In general, the dev-build-and-up.sh workflow for Rackspace is the similar to GCE. The specific implementation is different due to the use of CoreOS, Rackspace Cloud Files and the overall network design.
|
||||||
|
|
||||||
These scripts should be used to deploy development environments for Kubernetes. If your account leverages RackConnect or non-standard networking, these scripts will most likely not work without modification.
|
These scripts should be used to deploy development environments for Kubernetes. If your account leverages RackConnect or non-standard networking, these scripts will most likely not work without modification.
|
||||||
|
|
||||||
NOTE: The rackspace scripts do NOT rely on `saltstack`.
|
NOTE: The rackspace scripts do NOT rely on `saltstack` and instead rely on cloud-init for configuration.
|
||||||
|
|
||||||
The current cluster design is inspired by:
|
The current cluster design is inspired by:
|
||||||
- [corekube](https://github.com/metral/corekube/)
|
- [corekube](https://github.com/metral/corekube/)
|
||||||
- [Angus Lees](https://github.com/anguslees/kube-openstack/)
|
- [Angus Lees](https://github.com/anguslees/kube-openstack/)
|
||||||
|
|
||||||
## Prerequisites
|
## Prerequisites
|
||||||
1. You need to have both `nova` and `swiftly` installed. It's recommended to use a python virtualenv to install these packages into.
|
1. Python2.7
|
||||||
2. Make sure you have the appropriate environment variables set to interact with the OpenStack APIs. See [Rackspace Documentation](http://docs.rackspace.com/servers/api/v2/cs-gettingstarted/content/section_gs_install_nova.html) for more details.
|
2. You need to have both `nova` and `swiftly` installed. It's recommended to use a python virtualenv to install these packages into.
|
||||||
|
3. Make sure you have the appropriate environment variables set to interact with the OpenStack APIs. See [Rackspace Documentation](http://docs.rackspace.com/servers/api/v2/cs-gettingstarted/content/section_gs_install_nova.html) for more details.
|
||||||
|
|
||||||
## Provider: Rackspace
|
##Provider: Rackspace
|
||||||
- To use Rackspace as the provider, set the KUBERNETES_PROVIDER ENV variable:
|
|
||||||
`export KUBERNETES_PROVIDER=rackspace` and run the `bash hack/dev-build-and-up.sh` script.
|
- To install the latest released version of kubernetes use `export KUBERNETES_PROVIDER=rackspace; wget -q -O - https://get.k8s.io | bash`
|
||||||
|
- To build your own released version from source use `export KUBERNETES_PROVIDER=rackspace` and run the `bash hack/dev-build-and-up.sh`
|
||||||
|
|
||||||
## Build
|
## Build
|
||||||
1. The kubernetes binaries will be built via the common build scripts in `build/`.
|
1. The kubernetes binaries will be built via the common build scripts in `build/`.
|
||||||
|
@ -28,18 +30,21 @@ The current cluster design is inspired by:
|
||||||
3. The built `kubernetes-server-linux-amd64.tar.gz` will be uploaded to this container and the URL will be passed to master/minions nodes when booted.
|
3. The built `kubernetes-server-linux-amd64.tar.gz` will be uploaded to this container and the URL will be passed to master/minions nodes when booted.
|
||||||
|
|
||||||
## Cluster
|
## Cluster
|
||||||
1. There is a specific `cluster/rackspace` directory with the scripts for the following steps:
|
There is a specific `cluster/rackspace` directory with the scripts for the following steps:
|
||||||
2. A cloud network will be created and all instances will be attached to this network. We will connect the master API and minion kubelet service via this network.
|
1. A cloud network will be created and all instances will be attached to this network.
|
||||||
3. A SSH key will be created and uploaded if needed. This key must be used to ssh into the machines since we won't capture the password.
|
- flanneld uses this network for next hop routing. These routes allow the containers running on each node to communicate with one another on this private network.
|
||||||
4. A master and minions will be created via the `nova` CLI. A `cloud-config.yaml` is generated and provided as user-data with the entire configuration for the systems.
|
2. A SSH key will be created and uploaded if needed. This key must be used to ssh into the machines since we won't capture the password.
|
||||||
5. We then boot as many minions as defined via `$RAX_NUM_MINIONS`.
|
3. The master server and additional nodes will be created via the `nova` CLI. A `cloud-config.yaml` is generated and provided as user-data with the entire configuration for the systems.
|
||||||
|
4. We then boot as many nodes as defined via `$RAX_NUM_MINIONS`.
|
||||||
|
|
||||||
## Some notes:
|
## Some notes:
|
||||||
- The scripts expect `eth2` to be the cloud network that the containers will communicate across.
|
- The scripts expect `eth2` to be the cloud network that the containers will communicate across.
|
||||||
- A number of the items in `config-default.sh` are overridable via environment variables.
|
- A number of the items in `config-default.sh` are overridable via environment variables.
|
||||||
- For older versions please either:
|
- For older versions please either:
|
||||||
|
* Sync back to `v0.9` with `git checkout v0.9`
|
||||||
|
* Download a [snapshot of `v0.9`](https://github.com/GoogleCloudPlatform/kubernetes/archive/v0.9.tar.gz)
|
||||||
* Sync back to `v0.3` with `git checkout v0.3`
|
* Sync back to `v0.3` with `git checkout v0.3`
|
||||||
* Download a [snapshot of `v0.3`](https://github.com/GoogleCloudPlatform/kubernetes/archive/v0.3.tar.gz)
|
* Download a [snapshot of `v0.3`](https://github.com/GoogleCloudPlatform/kubernetes/archive/v0.3.tar.gz)
|
||||||
|
|
||||||
## Network Design
|
## Network Design
|
||||||
- eth0 - Public Interface used for servers/containers to reach the internet
|
- eth0 - Public Interface used for servers/containers to reach the internet
|
||||||
|
|
Loading…
Reference in New Issue