Class CfnBroker
- All Implemented Interfaces:
IConstruct,IDependable,IInspectable,software.amazon.jsii.JsiiSerializable,software.constructs.IConstruct
AWS::AmazonMQ::Broker.
A broker is a message broker environment running on Amazon MQ . It is the basic building block of Amazon MQ .
The AWS::AmazonMQ::Broker resource lets you create Amazon MQ for ActiveMQ and Amazon MQ for RabbitMQ brokers, add configuration changes or modify users for a speified ActiveMQ broker, return information about the specified broker, and delete the broker. For more information, see How Amazon MQ works in the Amazon MQ Developer Guide .
ec2:CreateNetworkInterface
This permission is required to allow Amazon MQ to create an elastic network interface (ENI) on behalf of your account.
ec2:CreateNetworkInterfacePermission
This permission is required to attach the ENI to the broker instance.
ec2:DeleteNetworkInterfaceec2:DeleteNetworkInterfacePermissionec2:DetachNetworkInterfaceec2:DescribeInternetGatewaysec2:DescribeNetworkInterfacesec2:DescribeNetworkInterfacePermissionsec2:DescribeRouteTablesec2:DescribeSecurityGroupsec2:DescribeSubnetsec2:DescribeVpcs
Example:
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import software.amazon.awscdk.services.amazonmq.*;
CfnBroker cfnBroker = CfnBroker.Builder.create(this, "MyCfnBroker")
.autoMinorVersionUpgrade(false)
.brokerName("brokerName")
.deploymentMode("deploymentMode")
.engineType("engineType")
.engineVersion("engineVersion")
.hostInstanceType("hostInstanceType")
.publiclyAccessible(false)
.users(List.of(UserProperty.builder()
.password("password")
.username("username")
// the properties below are optional
.consoleAccess(false)
.groups(List.of("groups"))
.build()))
// the properties below are optional
.authenticationStrategy("authenticationStrategy")
.configuration(ConfigurationIdProperty.builder()
.id("id")
.revision(123)
.build())
.encryptionOptions(EncryptionOptionsProperty.builder()
.useAwsOwnedKey(false)
// the properties below are optional
.kmsKeyId("kmsKeyId")
.build())
.ldapServerMetadata(LdapServerMetadataProperty.builder()
.hosts(List.of("hosts"))
.roleBase("roleBase")
.roleSearchMatching("roleSearchMatching")
.serviceAccountPassword("serviceAccountPassword")
.serviceAccountUsername("serviceAccountUsername")
.userBase("userBase")
.userSearchMatching("userSearchMatching")
// the properties below are optional
.roleName("roleName")
.roleSearchSubtree(false)
.userRoleName("userRoleName")
.userSearchSubtree(false)
.build())
.logs(LogListProperty.builder()
.audit(false)
.general(false)
.build())
.maintenanceWindowStartTime(MaintenanceWindowProperty.builder()
.dayOfWeek("dayOfWeek")
.timeOfDay("timeOfDay")
.timeZone("timeZone")
.build())
.securityGroups(List.of("securityGroups"))
.storageType("storageType")
.subnetIds(List.of("subnetIds"))
.tags(List.of(TagsEntryProperty.builder()
.key("key")
.value("value")
.build()))
.build();
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classA fluent builder forCfnBroker.static interfaceA list of information about the configuration.static interfaceEncryption options for the broker.static interfaceOptional.static interfaceThe list of information about logs to be enabled for the specified broker.static interfaceThe parameters that determine theWeeklyStartTimeto apply pending updates or patches to the broker.static interfaceA key-value pair to associate with the broker.static interfaceThe list of broker users (persons or applications) who can access queues and topics.Nested classes/interfaces inherited from class software.amazon.jsii.JsiiObject
software.amazon.jsii.JsiiObject.InitializationModeNested classes/interfaces inherited from interface software.amazon.awscdk.core.IConstruct
IConstruct.Jsii$DefaultNested classes/interfaces inherited from interface software.constructs.IConstruct
software.constructs.IConstruct.Jsii$DefaultNested classes/interfaces inherited from interface software.amazon.awscdk.core.IInspectable
IInspectable.Jsii$Default, IInspectable.Jsii$Proxy -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringThe CloudFormation resource type name for this resource class. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionThe AMQP endpoints of each broker instance as a list of strings.The Amazon Resource Name (ARN) of the Amazon MQ broker.The unique ID that Amazon MQ generates for the configuration.The revision number of the configuration.The IP addresses of each broker instance as a list of strings.The MQTT endpoints of each broker instance as a list of strings.The OpenWire endpoints of each broker instance as a list of strings.The STOMP endpoints of each broker instance as a list of strings.The WSS endpoints of each broker instance as a list of strings.Optional.Enables automatic upgrades to new minor versions for brokers, as new broker engine versions are released and supported by Amazon MQ.The name of the broker.A list of information about the configuration.The deployment mode of the broker.Encryption options for the broker.The type of broker engine.The version of the broker engine.The broker's instance type.Optional.getLogs()Enables Amazon CloudWatch logging for brokers.The scheduled time period relative to UTC during which Amazon MQ begins to apply pending updates or patches to the broker.Enables connections from applications outside of the VPC that hosts the broker's subnets.The list of rules (1 minimum, 125 maximum) that authorize connections to brokers.The broker's storage type.The list of groups that define which subnets and IP ranges the broker can use from different Availability Zones.getTags()An array of key-value pairs.getUsers()The list of broker users (persons or applications) who can access queues and topics.voidinspect(TreeInspector inspector) Examines the CloudFormation resource and discloses attributes.renderProperties(Map<String, Object> props) voidsetAuthenticationStrategy(String value) Optional.voidEnables automatic upgrades to new minor versions for brokers, as new broker engine versions are released and supported by Amazon MQ.voidEnables automatic upgrades to new minor versions for brokers, as new broker engine versions are released and supported by Amazon MQ.voidsetBrokerName(String value) The name of the broker.voidsetConfiguration(IResolvable value) A list of information about the configuration.voidA list of information about the configuration.voidsetDeploymentMode(String value) The deployment mode of the broker.voidsetEncryptionOptions(IResolvable value) Encryption options for the broker.voidEncryption options for the broker.voidsetEngineType(String value) The type of broker engine.voidsetEngineVersion(String value) The version of the broker engine.voidsetHostInstanceType(String value) The broker's instance type.voidsetLdapServerMetadata(IResolvable value) Optional.voidOptional.voidsetLogs(IResolvable value) Enables Amazon CloudWatch logging for brokers.voidsetLogs(CfnBroker.LogListProperty value) Enables Amazon CloudWatch logging for brokers.voidThe scheduled time period relative to UTC during which Amazon MQ begins to apply pending updates or patches to the broker.voidThe scheduled time period relative to UTC during which Amazon MQ begins to apply pending updates or patches to the broker.voidsetPubliclyAccessible(Boolean value) Enables connections from applications outside of the VPC that hosts the broker's subnets.voidsetPubliclyAccessible(IResolvable value) Enables connections from applications outside of the VPC that hosts the broker's subnets.voidsetSecurityGroups(List<String> value) The list of rules (1 minimum, 125 maximum) that authorize connections to brokers.voidsetStorageType(String value) The broker's storage type.voidsetSubnetIds(List<String> value) The list of groups that define which subnets and IP ranges the broker can use from different Availability Zones.voidThe list of broker users (persons or applications) who can access queues and topics.voidsetUsers(IResolvable value) The list of broker users (persons or applications) who can access queues and topics.Methods inherited from class software.amazon.awscdk.core.CfnResource
addDeletionOverride, addDependsOn, addMetadata, addOverride, addPropertyDeletionOverride, addPropertyOverride, applyRemovalPolicy, applyRemovalPolicy, applyRemovalPolicy, getAtt, getCfnOptions, getCfnResourceType, getMetadata, getUpdatedProperites, isCfnResource, shouldSynthesize, toString, validatePropertiesMethods inherited from class software.amazon.awscdk.core.CfnRefElement
getRefMethods inherited from class software.amazon.awscdk.core.CfnElement
getCreationStack, getLogicalId, getStack, isCfnElement, overrideLogicalIdMethods inherited from class software.amazon.awscdk.core.Construct
getNode, isConstruct, onPrepare, onSynthesize, onValidate, prepare, synthesize, validateMethods inherited from class software.amazon.jsii.JsiiObject
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSetMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Field Details
-
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
-
-
Constructor Details
-
CfnBroker
protected CfnBroker(software.amazon.jsii.JsiiObjectRef objRef) -
CfnBroker
protected CfnBroker(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) -
CfnBroker
@Stability(Stable) public CfnBroker(@NotNull Construct scope, @NotNull String id, @NotNull CfnBrokerProps props) Create a newAWS::AmazonMQ::Broker.- Parameters:
scope-- scope in which this resource is defined.
id-- scoped id of the resource.
props-- resource properties.
-
-
Method Details
-
inspect
Examines the CloudFormation resource and discloses attributes.- Specified by:
inspectin interfaceIInspectable- Parameters:
inspector-- tree inspector to collect and process attributes.
-
renderProperties
@Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String, Object> props) - Overrides:
renderPropertiesin classCfnResource- Parameters:
props- This parameter is required.
-
getAttrAmqpEndpoints
The AMQP endpoints of each broker instance as a list of strings.amqp+ssl://b-4aada85d-a80c-4be0-9d30-e344a01b921e-1.mq.eu-central-amazonaws.com:5671 -
getAttrArn
The Amazon Resource Name (ARN) of the Amazon MQ broker.arn:aws:mq:us-east-2:123456789012:broker:MyBroker:b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9 -
getAttrConfigurationId
The unique ID that Amazon MQ generates for the configuration.c-1234a5b6-78cd-901e-2fgh-3i45j6k178l9 -
getAttrConfigurationRevision
The revision number of the configuration.1 -
getAttrIpAddresses
The IP addresses of each broker instance as a list of strings. Does not apply to RabbitMQ brokers.['198.51.100.2', '203.0.113.9'] -
getAttrMqttEndpoints
The MQTT endpoints of each broker instance as a list of strings.mqtt+ssl://b-4aada85d-a80c-4be0-9d30-e344a01b921e-1.mq.eu-central-amazonaws.com:8883 -
getAttrOpenWireEndpoints
The OpenWire endpoints of each broker instance as a list of strings.ssl://b-4aada85d-a80c-4be0-9d30-e344a01b921e-1.mq.eu-central-amazonaws.com:61617 -
getAttrStompEndpoints
The STOMP endpoints of each broker instance as a list of strings.stomp+ssl://b-4aada85d-a80c-4be0-9d30-e344a01b921e-1.mq.eu-central-amazonaws.com:61614 -
getAttrWssEndpoints
The WSS endpoints of each broker instance as a list of strings.wss://b-4aada85d-a80c-4be0-9d30-e344a01b921e-1.mq.eu-central-amazonaws.com:61619 -
getCfnProperties
- Overrides:
getCfnPropertiesin classCfnResource
-
getTags
An array of key-value pairs.For more information, see Using Cost Allocation Tags in the Billing and Cost Management User Guide .
-
getAutoMinorVersionUpgrade
Enables automatic upgrades to new minor versions for brokers, as new broker engine versions are released and supported by Amazon MQ.Automatic upgrades occur during the scheduled maintenance window of the broker or after a manual broker reboot.
-
setAutoMinorVersionUpgrade
Enables automatic upgrades to new minor versions for brokers, as new broker engine versions are released and supported by Amazon MQ.Automatic upgrades occur during the scheduled maintenance window of the broker or after a manual broker reboot.
-
setAutoMinorVersionUpgrade
Enables automatic upgrades to new minor versions for brokers, as new broker engine versions are released and supported by Amazon MQ.Automatic upgrades occur during the scheduled maintenance window of the broker or after a manual broker reboot.
-
getBrokerName
The name of the broker.This value must be unique in your AWS account , 1-50 characters long, must contain only letters, numbers, dashes, and underscores, and must not contain white spaces, brackets, wildcard characters, or special characters.
Do not add personally identifiable information (PII) or other confidential or sensitive information in broker names. Broker names are accessible to other AWS services, including C CloudWatch Logs . Broker names are not intended to be used for private or sensitive data.
-
setBrokerName
The name of the broker.This value must be unique in your AWS account , 1-50 characters long, must contain only letters, numbers, dashes, and underscores, and must not contain white spaces, brackets, wildcard characters, or special characters.
Do not add personally identifiable information (PII) or other confidential or sensitive information in broker names. Broker names are accessible to other AWS services, including C CloudWatch Logs . Broker names are not intended to be used for private or sensitive data.
-
getDeploymentMode
The deployment mode of the broker. Available values:.SINGLE_INSTANCEACTIVE_STANDBY_MULTI_AZCLUSTER_MULTI_AZ
-
setDeploymentMode
The deployment mode of the broker. Available values:.SINGLE_INSTANCEACTIVE_STANDBY_MULTI_AZCLUSTER_MULTI_AZ
-
getEngineType
The type of broker engine.Currently, Amazon MQ supports
ACTIVEMQandRABBITMQ. -
setEngineType
The type of broker engine.Currently, Amazon MQ supports
ACTIVEMQandRABBITMQ. -
getEngineVersion
The version of the broker engine.For a list of supported engine versions, see Engine in the Amazon MQ Developer Guide .
-
setEngineVersion
The version of the broker engine.For a list of supported engine versions, see Engine in the Amazon MQ Developer Guide .
-
getHostInstanceType
The broker's instance type. -
setHostInstanceType
The broker's instance type. -
getPubliclyAccessible
Enables connections from applications outside of the VPC that hosts the broker's subnets. -
setPubliclyAccessible
Enables connections from applications outside of the VPC that hosts the broker's subnets. -
setPubliclyAccessible
Enables connections from applications outside of the VPC that hosts the broker's subnets. -
getUsers
The list of broker users (persons or applications) who can access queues and topics.For Amazon MQ for RabbitMQ brokers, one and only one administrative user is accepted and created when a broker is first provisioned. All subsequent RabbitMQ users are created by via the RabbitMQ web console or by using the RabbitMQ management API.
-
setUsers
The list of broker users (persons or applications) who can access queues and topics.For Amazon MQ for RabbitMQ brokers, one and only one administrative user is accepted and created when a broker is first provisioned. All subsequent RabbitMQ users are created by via the RabbitMQ web console or by using the RabbitMQ management API.
-
setUsers
The list of broker users (persons or applications) who can access queues and topics.For Amazon MQ for RabbitMQ brokers, one and only one administrative user is accepted and created when a broker is first provisioned. All subsequent RabbitMQ users are created by via the RabbitMQ web console or by using the RabbitMQ management API.
-
getAuthenticationStrategy
Optional.The authentication strategy used to secure the broker. The default is
SIMPLE. -
setAuthenticationStrategy
Optional.The authentication strategy used to secure the broker. The default is
SIMPLE. -
getConfiguration
A list of information about the configuration.Does not apply to RabbitMQ brokers.
-
setConfiguration
A list of information about the configuration.Does not apply to RabbitMQ brokers.
-
setConfiguration
A list of information about the configuration.Does not apply to RabbitMQ brokers.
-
getEncryptionOptions
Encryption options for the broker.Does not apply to RabbitMQ brokers.
-
setEncryptionOptions
Encryption options for the broker.Does not apply to RabbitMQ brokers.
-
setEncryptionOptions
@Stability(Stable) public void setEncryptionOptions(@Nullable CfnBroker.EncryptionOptionsProperty value) Encryption options for the broker.Does not apply to RabbitMQ brokers.
-
getLdapServerMetadata
Optional.The metadata of the LDAP server used to authenticate and authorize connections to the broker. Does not apply to RabbitMQ brokers.
-
setLdapServerMetadata
Optional.The metadata of the LDAP server used to authenticate and authorize connections to the broker. Does not apply to RabbitMQ brokers.
-
setLdapServerMetadata
@Stability(Stable) public void setLdapServerMetadata(@Nullable CfnBroker.LdapServerMetadataProperty value) Optional.The metadata of the LDAP server used to authenticate and authorize connections to the broker. Does not apply to RabbitMQ brokers.
-
getLogs
Enables Amazon CloudWatch logging for brokers. -
setLogs
Enables Amazon CloudWatch logging for brokers. -
setLogs
Enables Amazon CloudWatch logging for brokers. -
getMaintenanceWindowStartTime
The scheduled time period relative to UTC during which Amazon MQ begins to apply pending updates or patches to the broker. -
setMaintenanceWindowStartTime
The scheduled time period relative to UTC during which Amazon MQ begins to apply pending updates or patches to the broker. -
setMaintenanceWindowStartTime
@Stability(Stable) public void setMaintenanceWindowStartTime(@Nullable CfnBroker.MaintenanceWindowProperty value) The scheduled time period relative to UTC during which Amazon MQ begins to apply pending updates or patches to the broker. -
getSecurityGroups
The list of rules (1 minimum, 125 maximum) that authorize connections to brokers. -
setSecurityGroups
The list of rules (1 minimum, 125 maximum) that authorize connections to brokers. -
getStorageType
The broker's storage type. -
setStorageType
The broker's storage type. -
getSubnetIds
The list of groups that define which subnets and IP ranges the broker can use from different Availability Zones.If you specify more than one subnet, the subnets must be in different Availability Zones. Amazon MQ will not be able to create VPC endpoints for your broker with multiple subnets in the same Availability Zone. A SINGLE_INSTANCE deployment requires one subnet (for example, the default subnet). An ACTIVE_STANDBY_MULTI_AZ deployment (ACTIVEMQ) requires two subnets. A CLUSTER_MULTI_AZ deployment (RABBITMQ) has no subnet requirements when deployed with public accessibility, deployment without public accessibility requires at least one subnet.
If you specify subnets in a shared VPC for a RabbitMQ broker, the associated VPC to which the specified subnets belong must be owned by your AWS account . Amazon MQ will not be able to create VPC enpoints in VPCs that are not owned by your AWS account .
-
setSubnetIds
The list of groups that define which subnets and IP ranges the broker can use from different Availability Zones.If you specify more than one subnet, the subnets must be in different Availability Zones. Amazon MQ will not be able to create VPC endpoints for your broker with multiple subnets in the same Availability Zone. A SINGLE_INSTANCE deployment requires one subnet (for example, the default subnet). An ACTIVE_STANDBY_MULTI_AZ deployment (ACTIVEMQ) requires two subnets. A CLUSTER_MULTI_AZ deployment (RABBITMQ) has no subnet requirements when deployed with public accessibility, deployment without public accessibility requires at least one subnet.
If you specify subnets in a shared VPC for a RabbitMQ broker, the associated VPC to which the specified subnets belong must be owned by your AWS account . Amazon MQ will not be able to create VPC enpoints in VPCs that are not owned by your AWS account .
-