This repository is for the infrastructure of KlaytnFinder. For the overall architecture of the finder, please refer to the Main Repo.
Please refer to the /prod/README.md file in each folder for installation instructions.
- Navigate to the folder of the step you want to execute.
- Run
terraform init
. (Please read README.md in each folder) - Run
terraform plan
. Review the changes displayed in the console. - Run
terraform apply
. You'll need to inputyes
. - If an error occurs during
terraform apply
, executeterraform destroy
.
Terraform Official Documentation
There are a total of 9 steps inside the aws folder. Each step is as follows:
When installing, please make sure to check if the variables exported in the 'init' step are retained, and if the terminal changes, re-export the variable values for use.
- init: Creates dynamodb and S3 buckets for managing Terraform state.
- foundations: Creates VPC, subnets, subnet groups, route tables, internet gateways, nat gateways, etc. Adjust CIDR, available zones, VPC name, etc., according to your environment.
- redis: Creates a Redis cluster.
- rds: Creates RDS.
- data_streaming: Resources related to data processing.
- s3: Creates
lake
,spark
buckets. - msk: Creates a Kafka cluster.
- emr: Creates an EMR cluster.
- s3: Creates
- opensearch: Creates Opensearch Role and Domain.
- eks_cluster: Creates EKS cluster and necessary
irsa
. - ecr: Creates ECRs to be pulled by EKS PODs.
- finder-compiler-api: Compiler-api image repository.
- finder-api: Front-api, private-api image repository.
- finder-oapi: Open-api image repository.
- finder-worker: Worker image repository.
- finder-web: Web image repository.
- en_node: Executes scripts for installing EN Node after creating EC2 instances. Refer to README.md at that location for guidance.
- private_archive_en_baobab: Contains Baobab EN Node EC2 instance and kend.conf file.
- private_archive_en_cypress: Contains Cypress EN Node EC2 instance and kend.conf file.