The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Paws::MQ::CreateBroker - Arguments for method CreateBroker on Paws::MQ

DESCRIPTION

This class represents the parameters used for calling the method CreateBroker on the AmazonMQ service. Use the attributes of this class as arguments to method CreateBroker.

You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to CreateBroker.

SYNOPSIS

    my $mq = Paws->service('MQ');
    my $CreateBrokerResponse = $mq->CreateBroker(
      AuthenticationStrategy  => 'SIMPLE',        # OPTIONAL
      AutoMinorVersionUpgrade => 1,               # OPTIONAL
      BrokerName              => 'My__string',    # OPTIONAL
      Configuration           => {
        Id       => 'My__string',
        Revision => 1,                            # OPTIONAL
      },    # OPTIONAL
      CreatorRequestId  => 'My__string',         # OPTIONAL
      DeploymentMode    => 'SINGLE_INSTANCE',    # OPTIONAL
      EncryptionOptions => {
        UseAwsOwnedKey => 1,
        KmsKeyId       => 'My__string',
      },                                         # OPTIONAL
      EngineType         => 'ACTIVEMQ',          # OPTIONAL
      EngineVersion      => 'My__string',        # OPTIONAL
      HostInstanceType   => 'My__string',        # OPTIONAL
      LdapServerMetadata => {
        Hosts                  => [ 'My__string', ... ],    # OPTIONAL
        RoleBase               => 'My__string',
        RoleName               => 'My__string',
        RoleSearchMatching     => 'My__string',
        RoleSearchSubtree      => 1,
        ServiceAccountPassword => 'My__string',
        ServiceAccountUsername => 'My__string',
        UserBase               => 'My__string',
        UserRoleName           => 'My__string',
        UserSearchMatching     => 'My__string',
        UserSearchSubtree      => 1,
      },    # OPTIONAL
      Logs => {
        Audit   => 1,
        General => 1,
      },    # OPTIONAL
      MaintenanceWindowStartTime => {
        DayOfWeek => 'MONDAY'
        , # values: MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY; OPTIONAL
        TimeOfDay => 'My__string',
        TimeZone  => 'My__string',
      },    # OPTIONAL
      PubliclyAccessible => 1,                                    # OPTIONAL
      SecurityGroups     => [ 'My__string', ... ],                # OPTIONAL
      StorageType        => 'EBS',                                # OPTIONAL
      SubnetIds          => [ 'My__string', ... ],                # OPTIONAL
      Tags               => { 'My__string' => 'My__string', },    # OPTIONAL
      Users              => [
        {
          ConsoleAccess => 1,
          Groups        => [ 'My__string', ... ],                 # OPTIONAL
          Password      => 'My__string',
          Username      => 'My__string',
        },
        ...
      ],    # OPTIONAL
    );

    # Results:
    my $BrokerArn = $CreateBrokerResponse->BrokerArn;
    my $BrokerId  = $CreateBrokerResponse->BrokerId;

    # Returns a L<Paws::MQ::CreateBrokerResponse> object.

Values for attributes that are native types (Int, String, Float, etc) can passed as-is (scalar values). Values for complex Types (objects) can be passed as a HashRef. The keys and values of the hashref will be used to instance the underlying object. For the AWS API documentation, see https://docs.aws.amazon.com/goto/WebAPI/mq/CreateBroker

ATTRIBUTES

AuthenticationStrategy => Str

The authentication strategy used to secure the broker.

Valid values are: "SIMPLE", "LDAP"

AutoMinorVersionUpgrade => Bool

Required. Enables automatic upgrades to new minor versions for brokers, as Apache releases the versions. The automatic upgrades occur during the maintenance window of the broker or after a manual broker reboot.

BrokerName => Str

Required. 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 whitespaces, brackets, wildcard characters, or special characters.

Configuration => Paws::MQ::ConfigurationId

A list of information about the configuration.

CreatorRequestId => Str

The unique ID that the requester receives for the created broker. Amazon MQ passes your ID with the API action. Note: We recommend using a Universally Unique Identifier (UUID) for the creatorRequestId. You may omit the creatorRequestId if your application doesn't require idempotency.

DeploymentMode => Str

Required. The deployment mode of the broker.

Valid values are: "SINGLE_INSTANCE", "ACTIVE_STANDBY_MULTI_AZ", "CLUSTER_MULTI_AZ"

EncryptionOptions => Paws::MQ::EncryptionOptions

Encryption options for the broker.

EngineType => Str

Required. The type of broker engine. Note: Currently, Amazon MQ supports ACTIVEMQ and RABBITMQ.

Valid values are: "ACTIVEMQ", "RABBITMQ"

EngineVersion => Str

Required. The version of the broker engine. For a list of supported engine versions, see https://docs.aws.amazon.com/amazon-mq/latest/developer-guide/broker-engine.html

HostInstanceType => Str

Required. The broker's instance type.

LdapServerMetadata => Paws::MQ::LdapServerMetadataInput

The metadata of the LDAP server used to authenticate and authorize connections to the broker.

Logs => Paws::MQ::Logs

Enables Amazon CloudWatch logging for brokers.

MaintenanceWindowStartTime => Paws::MQ::WeeklyStartTime

The parameters that determine the WeeklyStartTime.

PubliclyAccessible => Bool

Required. Enables connections from applications outside of the VPC that hosts the broker's subnets.

SecurityGroups => ArrayRef[Str|Undef]

The list of security groups (1 minimum, 5 maximum) that authorizes connections to brokers.

StorageType => Str

The broker's storage type.

Valid values are: "EBS", "EFS"

SubnetIds => ArrayRef[Str|Undef]

The list of groups that define which subnets and IP ranges the broker can use from different Availability Zones. 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.

Tags => Paws::MQ::__mapOf__string

Create tags when creating the broker.

Users => ArrayRef[Paws::MQ::User]

Required. The list of broker users (persons or applications) who can access queues and topics. For RabbitMQ brokers, one and only one administrative user is accepted and created when a broker is first provisioned. All subsequent broker users are created by making RabbitMQ API calls directly to brokers or via the RabbitMQ Web Console. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.

SEE ALSO

This class forms part of Paws, documenting arguments for method CreateBroker in Paws::MQ

BUGS and CONTRIBUTIONS

The source code is located here: https://github.com/pplu/aws-sdk-perl

Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues