Skip to content

Commit af02787

Browse files
author
vijay-stephen
committed
Merge pull request #1 from sourcefuse/feature/rabbitmq
Terraform Module for Amazon MQ Broker Deployment
1 parent 4e09767 commit af02787

File tree

1 file changed

+133
-0
lines changed
  • docs/arc-iac-docs/modules/terraform-aws-arc-mq-broker/docs/module-usage-guide

1 file changed

+133
-0
lines changed
Lines changed: 133 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,133 @@
1+
# Terraform AWS ARC Broker MQ Module Usage Guide
2+
3+
## Introduction
4+
5+
### Purpose of the Document
6+
7+
This document provides guidelines and instructions for users looking to implement the Terraform module for supporting AWS Broker MQ
8+
9+
### Module Overview
10+
11+
The [terraform-aws-arc-mq-broker](https://github.com/sourcefuse/terraform-aws-arc-mq-broker) to implement Terraform module for setting up an AWS Broker MQ
12+
13+
### Prerequisites
14+
15+
Before using this module, ensure you have the following:
16+
17+
- AWS credentials configured.
18+
- Terraform installed.
19+
- A working knowledge of AWS VPC, Borker MQ, and Terraform concepts.
20+
21+
## Getting Started
22+
23+
### Module Source
24+
25+
To use the module in your Terraform configuration, include the following source block:
26+
27+
```hcl
28+
module "arc-mq-broker" {
29+
source = "sourcefuse/arc-mq-broker/aws"
30+
version = "0.0.1"
31+
name = var.name
32+
broker_type = var.broker_type
33+
engine_version = var.engine_version
34+
host_instance_type = var.host_instance_type
35+
vpc_id = data.aws_vpc.default.id
36+
subnet_ids = data.aws_subnets.private.ids
37+
publicly_accessible = var.publicly_accessible
38+
deployment_mode = var.deployment_mode
39+
users = var.users
40+
enable_logging = var.enable_logging
41+
security_group_data = local.security_group_data
42+
tags = module.tags.tags
43+
}
44+
```
45+
46+
Refer to the [Terraform Registry](https://registry.terraform.io/modules/sourcefuse/arc-mq-broker/aws/latest) for the latest version.
47+
48+
### Integration with Existing Terraform Configurations
49+
50+
Refer to the Terraform Registry for the latest version.
51+
52+
## Integration with Existing Terraform Configurations
53+
Integrate the module with your existing Terraform mono repo configuration, follow the steps below:
54+
55+
- Create a new folder in terraform/ named brokermq.
56+
- Create the required files, see the [example](https://github.com/sourcefuse/terraform-aws-arc-mq-broker/tree/main/example) to base off of.
57+
- Configure with your backend:
58+
- **region**: Where the backend resides
59+
- **key**: `<working_directory>/terraform.tfstate`
60+
- **bucket**: Bucket name where the terraform state will reside
61+
- **dynamodb_table**: Lock table so there are not duplicate tfplans in the mix
62+
- **encrypt**: Encrypt all traffic to and from the backend
63+
64+
### Required AWS Permissions
65+
66+
Ensure that the AWS credentials used to execute Terraform have the necessary permissions to create an AWS Broker MQ.
67+
68+
69+
## Module Configuration
70+
71+
### Input Variables
72+
73+
For a list of input variables, see the README [Inputs](https://github.com/sourcefuse/terraform-aws-arc-mq-broker#inputs) section.
74+
75+
### Output Values
76+
77+
For a list of outputs, see the README [Outputs](https://github.com/sourcefuse/terraform-aws-arc-mq-broker?tab=readme-ov-file#outputs) section.
78+
79+
## Module Usage
80+
81+
### Basic Usage
82+
83+
For basic usage, see the [example](https://github.com/sourcefuse/terraform-aws-arc-mq-broker/tree/main/example) folder.
84+
85+
This example will create:
86+
87+
- A RabbitMQ broker named example-broker in Active-Standby Multi-AZ deployment mode.
88+
- A security group with ingress and egress rules to allow communication within the VPC and outbound traffic.
89+
- Subnets for deploying the broker for high availability.
90+
- A CloudWatch log group for broker logs.
91+
- User credentials for managing broker access.
92+
93+
### Tips and Recommendations
94+
95+
- The Terraform module for Amazon MQ Broker offers a straightforward and efficient way to deploy and manage Amazon MQ brokers. Adjust the configuration parameters as needed for your specific use case.
96+
97+
## Troubleshooting
98+
99+
### Reporting Issues
100+
101+
If you encounter a bug or issue, please report it on the [GitHub repository](https://github.com/sourcefuse/terraform-aws-arc-mq-broker/issues).
102+
103+
## Security Considerations
104+
105+
### AWS VPC
106+
107+
Understand the security considerations related to Broker MQ on AWS when using this module.
108+
109+
### Best Practices for AWS Borker MQ
110+
111+
Follow best practices to ensure secure Security configurations:
112+
113+
- [AWS Broker MQ Security Best Practices]()
114+
115+
## Contributing and Community Support
116+
117+
### Contributing Guidelines
118+
119+
Contribute to the module by following the guidelines outlined in the [CONTRIBUTING.md](https://github.com/sourcefuse/terraform-aws-arc-mq-broker/blob/main/CONTRIBUTING.md) file.
120+
121+
### Reporting Bugs and Issues
122+
123+
If you find a bug or issue, report it on the [GitHub repository](https://github.com/sourcefuse/terraform-aws-arc-mq-broker/issues).
124+
125+
## License
126+
127+
### License Information
128+
129+
This module is licensed under the Apache 2.0 license. Refer to the [LICENSE](https://github.com/sourcefuse/terraform-aws-arc-mq-broker/blob/main/LICENSE) file for more details.
130+
131+
### Open Source Contribution
132+
133+
Contribute to open source by using and enhancing this module. Your contributions are welcome!

0 commit comments

Comments
 (0)