56 lines
1.3 KiB
Markdown
56 lines
1.3 KiB
Markdown
# avx-pmarie-aws-infra
|
|
|
|
## Initialization
|
|
|
|
Run `terraform` into the `init-state` directory to create initial s3 & dynamodb.
|
|
|
|
Make sure to use the correct region:
|
|
|
|
```sh
|
|
$ set -x AWS_DEFAULT_REGION eu-west-3
|
|
```
|
|
|
|
## Initial deployment
|
|
|
|
Because of the uncreated dependencies, it is required to do extra step on a full deployment. It is required to create first the VPC, then the EKS cluster, then ebs-addon-csi-driver, then kube-prometheus-stack and finally the last other components:
|
|
|
|
```sh
|
|
$ cd infra/vpc && terragrunt plan && terragrunt apply
|
|
...
|
|
$ cd ../../ && make apply
|
|
```
|
|
|
|
## Validate, plan & apply
|
|
|
|
There is a `Makefile` for this:
|
|
|
|
```sh
|
|
$ make validate
|
|
$ make plan
|
|
$ make apply
|
|
```
|
|
|
|
## Extract EKS configuration
|
|
|
|
```
|
|
$ aws eks update-kubeconfig --name avx-pmarie-eks --region eu-west-3
|
|
$ kubectl config rename-context arn:aws:eks:eu-west-3:563042046245:cluster/avx-pmarie-eks avx-pmarie-eks
|
|
```
|
|
|
|
## Notes
|
|
|
|
### aws-auth
|
|
|
|
It can be required to import existing aws-auth configmap:
|
|
|
|
```
|
|
$ cd infra/eks-aws-auth
|
|
$ terragrunt import kubernetes_config_map.aws_auth kube-system/aws-auth
|
|
...
|
|
|
|
```
|
|
|
|
### ebs-csi-driver
|
|
|
|
The driver is installed and managed as cluster addons in `eks`. It is required to annotate the service account & to restart the controller so the created role in `eks-addon-csi-ebs` is updated.
|