Managed Services configuration in AWS

Software Supply Chain comes bundled with 3rd party services that can be replaced with AWS managed equivalents. Below are the steps on how to configure each of the AWS services in MDSSC.

PostgreSQL -> Amazon RDS

See AWS RDS with PostgreSQL for full deployment and connection instructions.

  • TLS can be disabled in the cluster parameter group, otherwise the RDS tls certificate will need to be loaded in MDSSC using the /etc/mdssc/ca_certificates directory

Connection Configuration

After creating a DocumentDB instance in AWS, its connection string can be added in the MDSSC configuration file /etc/mdssc/customer.env as it appears in the “Connect“ section:

Bash
Copy

Example configurations:

Bash
Copy

Database Configuration Recommendations

Connection Limits

Ensure your PostgreSQL instance has adequate connection limits:

SQL
Copy

Performance Tuning

Consider these PostgreSQL settings for optimal MDSSC performance:

SQL
Copy

More details on configuring allocated resources on a PostgreSQL database can be found in their official documentation here.

Redis -> Amazon ElastiCache

After creating a new Redis cache in Amazon ElastiCache, its Configuration endpoint can be added in the MDSSC configuration file /etc/mdssc/.env as it appears in the “Cluster details“ section:

Bash
Copy

CACHE_SERVICE_URL and CACHE_SERVICE_PORT also need to be configured for MDSSC to check connectivity to the service before starting up.

RabbitMQ -> Amazon MQ

After creating a new Amazon MQ instance, its Endpoint can be added in the MDSSC configuration file /etc/mdssc/.env as it appears in the “Connections“ section:

Bash
Copy

RABBITMQ_HOST and RABBITMQ_PORT also need to be configured for MDSSC to check connectivity to the service before starting up.

Due to the limits AmazonMQ puts on the number of consumers per open channel, we recommend decreasing the consumer numbers used for AmazonMQ.

To decrease the number of consumers used and comply with the AmazonMQ limits, the environment variables RABBITMQ_CONSUMER_MULTIPLIER and RABBITMQ_RPC_CONSUMER_MULTIPLIER can be used with a value lower than the default of 10.

Type to search, ESC to discard
Type to search, ESC to discard
Type to search, ESC to discard