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