Skip to content

Commit 1979918

Browse files
author
vijay-stephen
committed
Merge pull request #1 from sourcefuse/feature/sg-module
Security Group Module
1 parent 18d2486 commit 1979918

File tree

1 file changed

+38
-51
lines changed
  • docs/arc-iac-docs/modules/terraform-aws-arc-db/docs/module-usage-guide

1 file changed

+38
-51
lines changed

docs/arc-iac-docs/modules/terraform-aws-arc-db/docs/module-usage-guide/README.md

Lines changed: 38 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,22 @@
1-
# Terraform AWS ARC DB Module Usage Guide
1+
# Terraform AWS ARC Security Group Module Usage Guide
22

33
## Introduction
44

55
### Purpose of the Document
66

7-
This document provides guidelines and instructions for users looking to implement Terraform module for managing Aurora cluster and SQL Server RDS instance.
7+
This document provides guidelines and instructions for users looking to create and manage Security Groups
88

99
### Module Overview
1010

11-
The [terraform-aws-arc-db](https://github.com/sourcefuse/terraform-aws-arc-db) module provides a secure and modular foundation for managing Aurora cluster and SQL Server RDS instances.
11+
The Terraform AWS ARC Security Group module create and manage AWS security groups with customizable ingress and egress rules for secure network traffic control.
1212

1313
### Prerequisites
1414

1515
Before using this module, ensure you have the following:
1616

1717
- AWS credentials configured.
1818
- Terraform installed.
19-
- A working knowledge of AWS Aurora cluster and SQL Server RDS instance.
19+
- A working knowledge of AWS VPC, security grouo, and Terraform concepts.
2020

2121
## Getting Started
2222

@@ -25,110 +25,97 @@ Before using this module, ensure you have the following:
2525
To use the module in your Terraform configuration, include the following source block:
2626

2727
```hcl
28-
module "aurora" {
29-
source = "sourcefuse/arc-db/aws"
30-
version = "4.0.0"
28+
module "arc-sg" {
29+
source = "sourcefuse/arc-security-group/aws"
30+
version = "0.0.1"
3131
# insert the required variables here
3232
}
3333
```
3434

35+
Refer to the [Terraform Registry](https://registry.terraform.io/modules/sourcefuse/arc-security-group/aws/latest) for the latest version.
36+
3537
### Integration with Existing Terraform Configurations
3638

39+
Refer to the Terraform Registry for the latest version.
40+
41+
## Integration with Existing Terraform Configurations
3742
Integrate the module with your existing Terraform mono repo configuration, follow the steps below:
3843

39-
1. Create a new folder in `terraform/` named `db`.
40-
2. Create the required files, see the [examples](https://github.com/sourcefuse/terraform-aws-arc-db/tree/main/examples/rds) to base off of.
41-
3. Configure with your backend
42-
- Create the environment backend configuration file: `config.<environment>.hcl`
43-
- **region**: Where the backend resides
44-
- **key**: `<working_directory>/terraform.tfstate`
45-
- **bucket**: Bucket name where the terraform state will reside
46-
- **dynamodb_table**: Lock table so there are not duplicate tfplans in the mix
47-
- **encrypt**: Encrypt all traffic to and from the backend
44+
- Create a new folder in terraform/ named security-group.
45+
- Create the required files, see the examples to base off of.
46+
- Configure with your backend:
47+
- Create the environment backend configuration file: config.<environment>.hcl
48+
- region: Where the backend resides
49+
- key: <working_directory>/terraform.tfstate
50+
- bucket: Bucket name where the terraform state will reside
51+
- dynamodb_table: Lock table so there are not duplicate tfplans in the mix
52+
- encrypt: Encrypt all traffic to and from the backend
4853

4954
### Required AWS Permissions
5055

51-
Ensure that the AWS credentials used to execute Terraform have the necessary permissions to create Aurora cluster and SQL Server RDS instance.
56+
Ensure that the AWS credentials used to execute Terraform have the necessary permissions to create, list and modify:
5257

5358
## Module Configuration
5459

5560
### Input Variables
5661

57-
For a list of input variables, see the README [Inputs](https://github.com/sourcefuse/terraform-aws-arc-db?tab=readme-ov-file#inputs) section.
62+
For a list of input variables, see the README [Inputs](https://github.com/sourcefuse/terraform-aws-arc-security-group?tab=readme-ov-file#inputs) section.
5863

5964
### Output Values
6065

61-
For a list of outputs, see the README [Outputs](https://github.com/sourcefuse/terraform-aws-arc-db?tab=readme-ov-file#outputs) section.
66+
For a list of outputs, see the README [Outputs](https://github.com/sourcefuse/terraform-aws-arc-security-group?tab=readme-ov-file#outputs) section.
6267

6368
## Module Usage
6469

6570
### Basic Usage
6671

67-
For basic usage, see the [example](https://github.com/sourcefuse/terraform-aws-arc-db/tree/main/examples/rds) folder.
72+
For basic usage, see the [example](https://github.com/sourcefuse/terraform-aws-arc-security-group/tree/main/example) folder.
6873

6974
This example will create:
7075

71-
- RDS Instance Example
72-
This example demonstrates deploying a single RDS instance using the module, configuring an Amazon RDS database with basic settings like instance class, storage, and connectivity. It showcases options for database engine, encryption, and CloudWatch monitoring for a standalone RDS database. Ideal for simple, production-ready RDS setups.
73-
74-
### RDS Proxy
75-
76-
For RDS Proxy, see the [example](https://github.com/sourcefuse/terraform-aws-arc-db/tree/main/examples/rds-proxy) folder.
77-
78-
- RDS Proxy Example
79-
This example configures an RDS Proxy for an RDS database, helping manage connection pooling for improved database performance and security. By integrating with RDS Proxy, it reduces connection management overhead and scales automatically with demand, useful for applications with variable database traffic and sensitive to scaling requirements.
76+
This Terraform module creates a security group with the following configurations:
8077

81-
### Aurora Cluster
78+
Ingress Rules:
8279

83-
For Aurora Cluster, see the [example](https://github.com/sourcefuse/terraform-aws-arc-db/tree/main/examples/aurora) folder.
80+
- VPC Traffic: Allows all TCP traffic within the VPC (0-65535) based on the VPC CIDR block.
81+
- Self-Traffic: Allows all TCP traffic (0-65535) within the same security group for self-referencing communication.
82+
- Source Security Group: Permits TCP traffic (0-65535) from a specific source security group.
8483

85-
- Aurora Cluster Example
86-
This example provisions an Amazon Aurora cluster, utilizing the module to set up a high-availability, high-performance database solution. The configuration includes multiple instances within a cluster, providing a resilient and cost-effective solution suitable for demanding applications.
84+
Egress Rules:
8785

88-
### Aurora Cluster Serverless
89-
90-
For Aurora Cluster Serverless, see the [example](https://github.com/sourcefuse/terraform-aws-arc-db/tree/main/examples/aurora-serverless) folder.
91-
92-
- Aurora Serverless Cluster Example
93-
This example deploys an Aurora Serverless cluster autoscaling, making it ideal for applications with unpredictable or intermittent database usage. The module configures serverless capacity, connectivity, and database settings, automatically adjusting to workload needs without manual intervention.
86+
- Outbound Traffic: Allows unrestricted outbound traffic (0.0.0.0/0) for all protocols and ports.
9487

9588
### Tips and Recommendations
9689

97-
The module focuses on provisioning Aurora database cluster and Amazon RDS instance for SQL Server. Adjust the configuration parameters as needed for your specific use case.
90+
The module can manage egress rules to security groups, S3 endpoints, and more.
9891

9992
## Troubleshooting
10093

10194
### Reporting Issues
10295

103-
If you encounter a bug or issue, please report it on the [GitHub repository](https://github.com/sourcefuse/terraform-aws-arc-db/issues).
96+
If you encounter a bug or issue, please report it on the [GitHub repository](https://github.com/sourcefuse/terraform-aws-arc-security-group/issues).
10497

10598
## Security Considerations
10699

107100
### AWS VPC
108101

109-
Understand the security considerations related to Aurora database cluster and Amazon RDS instance for SQL Server on AWS when using this module.
110-
111-
### Best Practices for Aurora database cluster
112-
113-
Follow best practices to ensure secure DB configurations:
114-
115-
[Aurora security on AWS](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_BestPractices.Security.html)
102+
Understand the security considerations related to Security Group
116103

117104
## Contributing and Community Support
118105

119106
### Contributing Guidelines
120107

121-
Contribute to the module by following the guidelines outlined in the [CONTRIBUTING.md](https://github.com/sourcefuse/terraform-aws-arc-db/blob/main/CONTRIBUTING.md) file.
108+
Contribute to the module by following the guidelines outlined in the [CONTRIBUTING.md](https://github.com/sourcefuse/terraform-aws-arc-security-group/blob/main/CONTRIBUTING.md) file.
122109

123110
### Reporting Bugs and Issues
124111

125-
If you find a bug or issue, report it on the [GitHub repository](https://github.com/sourcefuse/terraform-aws-arc-db/issues).
112+
If you find a bug or issue, report it on the [GitHub repository](https://github.com/sourcefuse/terraform-aws-arc-security-group/issues).
126113

127114
## License
128115

129116
### License Information
130117

131-
This module is licensed under the Apache 2.0 license. Refer to the [LICENSE](https://github.com/sourcefuse/terraform-aws-arc-db/blob/main/LICENSE) file for more details.
118+
This module is licensed under the Apache 2.0 license. Refer to the [LICENSE](https://github.com/sourcefuse/terraform-aws-arc-security-group/blob/main/LICENSE) file for more details.
132119

133120
### Open Source Contribution
134121

0 commit comments

Comments
 (0)