add content for issue 994

Signed-off-by: JENNIFER RONDEAU <jrondeau@heptio.com>
This commit is contained in:
JENNIFER RONDEAU
2018-10-26 12:12:28 -04:00
parent 52574b9c0a
commit e3a7d6a20d
10 changed files with 51 additions and 13 deletions

View File

@@ -147,6 +147,9 @@ Specify the following values in the example files:
* Replace `<YOUR_REGION>`. See the [VolumeSnapshotLocation definition][6] for details.
* (Optional, use only to specify multiple volume snapshot locations) In `examples/aws/10-deployment.yaml` (or `examples/aws/10-deployment-kube2iam.yaml`, as appropriate):
* Uncomment the `--default-volume-snapshot-locations` and replace provider locations with the values for your environment.
* (Optional) If you run the nginx example, in file `examples/nginx-app/with-pv.yaml`:

View File

@@ -133,6 +133,9 @@ Now that you have your Azure credentials stored in a Secret, you need to replace
* Replace `<YOUR_TIMEOUT>`. See the [VolumeSnapshotLocation definition][8] for details.
* (Optional, use only if you need to specify multiple volume snapshot locations) In `examples/azure/00-ark-deployment.yaml`:
* Uncomment the `--default-volume-snapshot-locations` and replace provider locations with the values for your environment.
## Start the server

View File

@@ -93,11 +93,12 @@ When running Heptio Ark, you will need to account for the following (all of whic
* Cloud provider credentials
* Read/write access to volumes
* Read/write access to object storage for backup data
* A [Config object][8] definition for the Ark server
* A [BackupStorageLocation][20] object definition for the Ark server
* (Optional) A [VolumeSnapshotLocation][21] object definition for the Ark server, to take PV snapshots
### Create a cluster
To provision a cluster on `aws` using Amazons official CloudFormation templates, here are two options:
To provision a cluster on AWS using Amazons official CloudFormation templates, here are two options:
* EC2 [Quick Start for Kubernetes][17]
@@ -138,7 +139,11 @@ You may create resources on a cluster using our [example configurations][19].
##### Example
Here is how to setup using an existing cluster in AWS: At the root of the Ark repo, edit `examples/aws/00-ark-config.yaml` to point to your AWS S3 bucket and region. Note: you can run `aws s3api list-buckets` to get the name of all your buckets.
Here is how to setup using an existing cluster in AWS: At the root of the Ark repo:
- Edit `examples/aws/05-ark-backupstoragelocation.yaml` to point to your AWS S3 bucket and region. Note: you can run `aws s3api list-buckets` to get the name of all your buckets.
- (Optional) Edit `examples/aws/06-ark-volumesnapshotlocation.yaml` to point to your AWS region.
Then run the commands below.
@@ -148,12 +153,23 @@ Then run the commands below.
kubectl apply -f examples/common/00-prereqs.yaml
```
`00-ark-config.yaml` is a sample Ark config resource for AWS:
`10-deployment.yaml` is a sample Ark config resource for AWS:
```bash
kubectl apply -f examples/aws/00-ark-config.yaml
kubectl apply -f examples/aws/10-deployment.yaml
```
And `05-ark-backupstoragelocation.yaml` specifies the location of your backup storage, together with the optional `06-ark-volumesnapshotlocation.yaml`:
```bash
kubectl apply -f examples/aws/05-ark-backupstoragelocation.yaml
```
or
```bash
kubectl apply -f examples/aws/05-ark-backupstoragelocation.yaml examples/aws/06-ark-volumesnapshotlocation.yaml
```
### 3. Start the Ark server
@@ -205,3 +221,5 @@ If you need to add or update the vendored dependencies, see [Vendoring dependenc
[17]: https://aws.amazon.com/quickstart/architecture/heptio-kubernetes/
[18]: https://eksctl.io/
[19]: ../examples/README.md
[20]: /api-types/backupstoragelocation.md
[21]: /api-types/volumesnapshotlocation.md

View File

@@ -1,6 +1,6 @@
# Run Ark on GCP
You can run Kubernetes on Google Cloud Platform in either of:
You can run Kubernetes on Google Cloud Platform in either:
* Kubernetes on Google Compute Engine virtual machines
* Google Kubernetes Engine
@@ -9,7 +9,7 @@ If you do not have the `gcloud` and `gsutil` CLIs locally installed, follow the
## Create GCS bucket
Heptio Ark requires an object storage bucket in which to store backups, preferrably unique to a single Kubernetes cluster (see the [FAQ][20] for more details). Create a GCS bucket, replacing the <YOUR_BUCKET> placeholder with the name of your bucket:
Heptio Ark requires an object storage bucket in which to store backups, preferably unique to a single Kubernetes cluster (see the [FAQ][20] for more details). Create a GCS bucket, replacing the <YOUR_BUCKET> placeholder with the name of your bucket:
```bash
BUCKET=<YOUR_BUCKET>
@@ -107,7 +107,7 @@ kubectl create secret generic cloud-credentials \
--from-file cloud=credentials-ark
```
_Note: If you use a custom namespace, replace `heptio-ark` with the name of the custom namespace_
**Note: If you use a custom namespace, replace `heptio-ark` with the name of the custom namespace**
Specify the following values in the example files:
@@ -119,6 +119,10 @@ Specify the following values in the example files:
* Replace `<YOUR_STORAGE_CLASS_NAME>` with `standard`. This is GCP's default `StorageClass` name.
* (Optional, use only if you need to specify multiple volume snapshot locations) In `examples/gcp/10-deployment.yaml`:
* Uncomment the `--default-volume-snapshot-locations` and replace provider locations with the values for your environment.
## Start the server
In the root of your Ark directory, run:

View File

@@ -57,8 +57,6 @@ Specify the following values in the example files:
* Replace `<YOUR_BUCKET>`, `<YOUR_REGION>` and `<YOUR_URL_ACCESS_POINT>`. See the [BackupStorageLocation definition][6] for details.
* (Optional) If you run the nginx example, in file `examples/nginx-app/with-pv.yaml`:
* Replace `<YOUR_STORAGE_CLASS_NAME>` with your `StorageClass` name.

View File

@@ -6,6 +6,12 @@ In version 0.7.0 and later, you can run Ark in any namespace, which requires add
In version 0.9.0 and later, you can use Ark's integration with restic, which requires additional setup. See [restic instructions][20].
## Customize configuration
Whether you run Ark on a cloud provider or on-premises, if you have more than one volume snapshot location for a given volume provider, you can specify its default location for backups by setting a server flag in your Ark deployment YAML.
For details, see the documentation topics for individual cloud providers.
## Cloud provider
The Ark repository includes a set of example YAML files that specify the settings for each supported cloud provider. For provider-specific instructions, see:

View File

@@ -77,6 +77,6 @@ kubectl delete crd configs.ark.heptio.com
```
[1]: /docs/api-types/backupstoragelocation.md
[2]: /docs/api-types/volumesnapshotlocation.md
[3]: /docs/storage-layout-reorg-v0.10.md
[1]: /api-types/backupstoragelocation.md
[2]: /api-types/volumesnapshotlocation.md
[3]: storage-layout-reorg-v0.10.md

View File

@@ -38,6 +38,8 @@ spec:
- /ark
args:
- server
## uncomment following line and specify values if needed for multiple provider snapshot locations
# - --default-volume-snapshot-locations=<provider-1:location-1,provider-2:location-2,...>
volumeMounts:
- name: cloud-credentials
mountPath: /credentials

View File

@@ -41,6 +41,8 @@ spec:
- /ark
args:
- server
## uncomment following line and specify values if needed for multiple provider snapshot locations
# - --default-volume-snapshot-locations=<provider-1:location-1,provider-2:location-2,...>
envFrom:
- secretRef:
name: cloud-credentials

View File

@@ -41,6 +41,8 @@ spec:
- /ark
args:
- server
## uncomment following line and specify values if needed for multiple provider snapshot locations
# - --default-volume-snapshot-locations=<provider-1:location-1,provider-2:location-2,...>
volumeMounts:
- name: cloud-credentials
mountPath: /credentials