You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Terraform Module for AWS ECS by the SourceFuse ARC team.
8
+
SourceFuse's AWS Reference Architecture Terraform module leverages the terraform-aws-modules/terraform-aws-ecs GitHub repository to facilitate the deployment and management of an AWS ECS (Elastic Container Service) cluster. It streamlines the configuration of ECS tasks, services, and related components, providing a scalable and efficient solution for orchestrating containerized applications. With customizable settings for logging, load balancing, and service discovery, the module promotes seamless deployment and management of containerized workloads on AWS.
9
9
10
10
The module assumes that upstream dependencies, namely networking dependencies, are created upstream and the values are passed into this module via mechanisms such as Terraform data source queries.
11
11
@@ -20,17 +20,49 @@ The module provisions
20
20
* Utilizes ACM to generate a certificate specific to the ALB.
21
21
* Tags/SSM params - the module tags resources and outputs SSM params that can be used in data source lookups downstream for ECS services to reference to deploy into the cluster.
Our approach to ECS Fargate clusters is to provision a cluster and allow downstream services to attach to it via convention based data source queries.
26
27
27
-
**Note**: the example below is does not have a pinned version. Be sure to pin your version. Refer to the `example` folder for a working example version.
28
+
### Prerequisites
29
+
Before using this module, ensure you have the following:
30
+
31
+
- AWS credentials configured.
32
+
- Terraform installed.
33
+
- A working knowledge of Terraform.
34
+
- Route 53 hosted zone
35
+
- Network
36
+
37
+
38
+
## Getting Started
39
+
40
+
1.**Define the Module**
41
+
42
+
Initially, it's essential to define a Terraform module, which is organized as a distinct directory encompassing Terraform configuration files. Within this module directory, input variables and output values must be defined in the variables.tf and outputs.tf files, respectively. The following illustrates an example directory structure:
43
+
44
+
45
+
```plaintext
46
+
ecs/
47
+
|-- main.tf
48
+
|-- variables.tf
49
+
|-- outputs.tf
50
+
```
51
+
52
+
53
+
2.**Define Input Variables**
54
+
55
+
Inside the `variables.tf` or in `*.tfvars` file, you should define values for the variables that the module requires.
56
+
57
+
3.**Use the Module in Your Main Configuration**
58
+
In your main Terraform configuration file (e.g., main.tf), you can use the module. Specify the source of the module, and version, For Example
59
+
28
60
## Usage
29
61
30
62
```hcl
31
63
module "ecs" {
32
-
source = "sourcefuse/arc-ecs/aws"
33
-
version = "1.3.7"
64
+
source = "sourcefuse/arc-ecs/aws"
65
+
version = "1.5.2"
34
66
35
67
environment = var.environment
36
68
namespace = var.namespace
@@ -46,7 +78,8 @@ module "ecs" {
46
78
// -------------------------- END ------------------------- //
47
79
48
80
## create acm certificate and dns record for health check
0 commit comments