Skip to content

Commit e3b887a

Browse files
authored
[docs] Restructure user documentation (#1336)
1 parent 88a9b9d commit e3b887a

File tree

33 files changed

+414
-436
lines changed

33 files changed

+414
-436
lines changed

build/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
# Deploying a DSS instance
22

3-
This documentation has been moved to [interuss.github.io/dss](https://interuss.github.io/dss/dev/build).
3+
This documentation has been moved to [interuss.github.io/dss](https://interuss.github.io/dss/dev/infrastructure/google-manual).

build/deploy/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Kubernetes deployment via Tanka
22

3-
The documentation and configuration have been moved to [interuss.github.io/dss](https://interuss.github.io/dss/dev/services/tanka/).
3+
The documentation and configuration have been moved to the [services directory](../../deploy/services/tanka/).
44
Architecture, Survivability and Sizing sections have been moved to [interuss.github.io/dss](https://interuss.github.io/dss/dev/architecture/)
55

66
## Migrating configurations to new location

deploy/MIGRATION.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
# CockroachDB and Kubernetes version migration
22

3-
This documentation has been moved to [interuss.github.io/dss](https://interuss.github.io/dss/dev/migration).
3+
This documentation has been moved to [interuss.github.io/dss](https://interuss.github.io/dss/dev/operations/migrations).
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
# Setup DNS
22

3-
This documentation has been moved to [interuss.github.io/dss](https://interuss.github.io/dss/dev/infrastructure/terraform-aws-dss/dns).
3+
This documentation has been moved to [interuss.github.io/dss](https://interuss.github.io/dss/dev/infrastructure/aws).
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
# terraform-aws-dss
22

3-
This documentation has been moved to [interuss.github.io/dss](https://interuss.github.io/dss/dev/infrastructure/terraform-aws-dss).
3+
This documentation has been moved to [interuss.github.io/dss](https://interuss.github.io/dss/dev/infrastructure/aws).
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
# Setup DNS
22

3-
This documentation has been moved to [interuss.github.io/dss](https://interuss.github.io/dss/dev/infrastructure/terraform-google-dss/dns).
3+
This documentation has been moved to [interuss.github.io/dss](https://interuss.github.io/dss/dev/infrastructure/google).
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
# terraform-google-dss
22

3-
This documentation has been moved to [interuss.github.io/dss](https://interuss.github.io/dss/dev/infrastructure/terraform-google-dss).
3+
This documentation has been moved to [interuss.github.io/dss](https://interuss.github.io/dss/dev/infrastructure/google).
Lines changed: 38 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,40 @@
11
# AWS-1 CI deployment
22

3-
This documentation has been moved to [interuss.github.io/dss](https://interuss.github.io/dss/dev/operations/ci/aws-1).
3+
This module deploys a DSS to a Kubernetes cluster in AWS. It is primarily by our [CI](https://github.com/interuss/dss/blob/master/.github/workflows/dss-deploy.yml).
4+
See [test.sh](https://github.com/interuss/dss/blob/master/deploy/operations/ci/aws-1/test.sh) for the complete list of actions.
5+
6+
## Terraform state
7+
8+
The terraform backend is configured to be shared using a S3 bucket. (see [`main.tf`](https://github.com/interuss/dss/blob/master/deploy/operations/ci/aws-1/main.tf)).
9+
10+
## Debugging
11+
12+
In case of issue, it is possible to connect to the cluster and retrieve the terraform state to manage it
13+
locally.
14+
15+
### Connection to the cluster
16+
17+
To connect to the cluster, authenticate yourself to the AWS account.
18+
Run the following command to load the kubernetes config:
19+
```
20+
aws eks --region us-east-1 update-kubeconfig --name dss-ci-aws-ue1
21+
```
22+
Call the kubernetes cluster using `kubectl`
23+
24+
#### Add other roles
25+
26+
Access to the cluster is managed using the config map `aws-auth`.
27+
Its definition is managed in [`kubernetes_admin_access.tf`](https://github.com/interuss/dss/blob/master/deploy/operations/ci/aws-1/kubernetes_admin_access.tf).
28+
Currently only the user who bootstrapped the cluster and the ones assuming
29+
the administrator role (see [`local_variables.tf`](https://github.com/interuss/dss/blob/master/deploy/operations/ci/aws-1/local_variables.tf)) have access.
30+
31+
### Run terraform locally
32+
33+
In case of failure, a user with administrator role can take over the deployment by cloning this
34+
repository and retrieving the current deployment state by running the following command:
35+
36+
```
37+
terraform init
38+
```
39+
40+
At this point, the user can replay or clean the deployment as if it was the CI runner.
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22

33
This section contains the instructions and related material used to deploy DSS services on a Kubernetes cluster. Two options are currently provided:
44

5-
* An [helm chart](helm-charts.md)
6-
* A [tanka library](tanka.md)
5+
* A [helm chart](helm-charts/dss)
6+
* A [tanka library](tanka)
Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,25 @@
1-
# DSS Helm Chart
1+
# Helm Chart
2+
An [Helm Chart](https://helm.sh/) is provided [there](https://github.com/interuss/dss/tree/master/deploy/services/helm-charts/dss) to deploy the DSS and datastore (CockroachDB or Yugabyte) kubernetes resources.
23

3-
This documentation has been moved to [interuss.github.io/dss](https://interuss.github.io/dss/dev/services/helm-charts).
4+
## Requirements
5+
1. A Kubernetes cluster should be running and you should be properly authenticated. Requirements and instructions to create a new Kubernetes cluster can be found here:
6+
* [AWS](../../../../docs/infrastructure/aws.md)
7+
* [Google](../../../../docs/infrastructure/google.md)
8+
* [Minikube](../../../../docs/infrastructure/minikube.md)
9+
10+
2. Create the certificates and apply them to the cluster using the instructions [here](../../../../docs/operations/certificates-management.md)
11+
3. Install [Helm](https://helm.sh/) version 3.11.3 or higher
12+
13+
## Usage
14+
1. Copy `values.example.yaml` to `values.dev.yaml` and edit it. In particular, the key `dss.image` must be set manually. See `values.schema.json` for schema definition. The root key `cockroachdb` supports all values supported by the [`cockroachdb` Chart](https://github.com/cockroachdb/helm-charts/tree/master/cockroachdb#configuration)). Note that values.yaml contains the default values and are always passed to helm.
15+
2. Validate the configuration: `helm lint -f values.dev.yaml .`
16+
3. Set a RELEASE_NAME to `dss`: `export RELEASE_NAME=dss`
17+
It is temporarily the only release name possible.
18+
4. Set the kube client context of your system, example: `export KUBE_CONTEXT=gke_interuss-deploy-example_europe-west6-a_dss-dev-w6`
19+
5. Run `helm dep update --kube-context=$KUBE_CONTEXT`
20+
6. Install the chart: `helm install --kube-context=$KUBE_CONTEXT -f values.dev.yaml $RELEASE_NAME .`
21+
22+
### Update the chart
23+
When changing the values in values.dev.yaml, values.yaml, the templates or upgrading the helm chart dependencies, changes can be applied to the cluster using the following command:
24+
25+
1. Run `helm upgrade --kube-context=$KUBE_CONTEXT -f values.dev.yaml $RELEASE_NAME .`

0 commit comments

Comments
 (0)