[ aws . mwaa ]

create-environment

Description

JSON blob that describes the environment to create.

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.

Synopsis

  create-environment
[--airflow-configuration-options <value>]
[--airflow-version <value>]
--dag-s3-path <value>
[--environment-class <value>]
--execution-role-arn <value>
[--kms-key <value>]
[--logging-configuration <value>]
[--max-workers <value>]
--name <value>
--network-configuration <value>
[--plugins-s3-object-version <value>]
[--plugins-s3-path <value>]
[--requirements-s3-object-version <value>]
[--requirements-s3-path <value>]
--source-bucket-arn <value>
[--tags <value>]
[--webserver-access-mode <value>]
[--weekly-maintenance-window-start <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]

Options

--airflow-configuration-options (map)

The Apache Airflow configuration setting you want to override in your environment. For more information, see Environment configuration .

key -> (string)

value -> (string)

Shorthand Syntax:

KeyName1=string,KeyName2=string

JSON Syntax:

{"string": "string"
  ...}

--airflow-version (string)

The Apache Airflow version you want to use for your environment.

--dag-s3-path (string)

The relative path to the DAG folder on your Amazon S3 storage bucket. For example, dags . For more information, see Importing DAGs on Amazon MWAA .

--environment-class (string)

The environment class you want to use for your environment. The environment class determines the size of the containers and database used for your Apache Airflow services.

--execution-role-arn (string)

The Amazon Resource Name (ARN) of the execution role for your environment. An execution role is an AWS Identity and Access Management (IAM) role that grants MWAA permission to access AWS services and resources used by your environment. For example, arn:aws:iam::123456789:role/my-execution-role . For more information, see Managing access to Amazon Managed Workflows for Apache Airflow .

--kms-key (string)

The AWS Key Management Service (KMS) key to encrypt and decrypt the data in your environment. You can use an AWS KMS key managed by MWAA, or a custom KMS key (advanced). For more information, see Customer master keys (CMKs) in the AWS KMS developer guide.

--logging-configuration (structure)

The Apache Airflow logs you want to send to Amazon CloudWatch Logs.

DagProcessingLogs -> (structure)

A JSON blob that provides configuration to use for logging with respect to the various Apache Airflow services: DagProcessingLogs, SchedulerLogs, TaskLogs, WebserverLogs, and WorkerLogs.

Enabled -> (boolean)

Defines that the logging module is enabled.

LogLevel -> (string)

Defines the log level, which can be CRITICAL, ERROR, WARNING, or INFO.

SchedulerLogs -> (structure)

A JSON blob that provides configuration to use for logging with respect to the various Apache Airflow services: DagProcessingLogs, SchedulerLogs, TaskLogs, WebserverLogs, and WorkerLogs.

Enabled -> (boolean)

Defines that the logging module is enabled.

LogLevel -> (string)

Defines the log level, which can be CRITICAL, ERROR, WARNING, or INFO.

TaskLogs -> (structure)

A JSON blob that provides configuration to use for logging with respect to the various Apache Airflow services: DagProcessingLogs, SchedulerLogs, TaskLogs, WebserverLogs, and WorkerLogs.

Enabled -> (boolean)

Defines that the logging module is enabled.

LogLevel -> (string)

Defines the log level, which can be CRITICAL, ERROR, WARNING, or INFO.

WebserverLogs -> (structure)

A JSON blob that provides configuration to use for logging with respect to the various Apache Airflow services: DagProcessingLogs, SchedulerLogs, TaskLogs, WebserverLogs, and WorkerLogs.

Enabled -> (boolean)

Defines that the logging module is enabled.

LogLevel -> (string)

Defines the log level, which can be CRITICAL, ERROR, WARNING, or INFO.

WorkerLogs -> (structure)

A JSON blob that provides configuration to use for logging with respect to the various Apache Airflow services: DagProcessingLogs, SchedulerLogs, TaskLogs, WebserverLogs, and WorkerLogs.

Enabled -> (boolean)

Defines that the logging module is enabled.

LogLevel -> (string)

Defines the log level, which can be CRITICAL, ERROR, WARNING, or INFO.

Shorthand Syntax:

DagProcessingLogs={Enabled=boolean,LogLevel=string},SchedulerLogs={Enabled=boolean,LogLevel=string},TaskLogs={Enabled=boolean,LogLevel=string},WebserverLogs={Enabled=boolean,LogLevel=string},WorkerLogs={Enabled=boolean,LogLevel=string}

JSON Syntax:

{
  "DagProcessingLogs": {
    "Enabled": true|false,
    "LogLevel": "CRITICAL"|"ERROR"|"WARNING"|"INFO"|"DEBUG"
  },
  "SchedulerLogs": {
    "Enabled": true|false,
    "LogLevel": "CRITICAL"|"ERROR"|"WARNING"|"INFO"|"DEBUG"
  },
  "TaskLogs": {
    "Enabled": true|false,
    "LogLevel": "CRITICAL"|"ERROR"|"WARNING"|"INFO"|"DEBUG"
  },
  "WebserverLogs": {
    "Enabled": true|false,
    "LogLevel": "CRITICAL"|"ERROR"|"WARNING"|"INFO"|"DEBUG"
  },
  "WorkerLogs": {
    "Enabled": true|false,
    "LogLevel": "CRITICAL"|"ERROR"|"WARNING"|"INFO"|"DEBUG"
  }
}

--max-workers (integer)

The maximum number of workers that you want to run in your environment. MWAA scales the number of Apache Airflow workers and the Fargate containers that run your tasks up to the number you specify in this field. When there are no more tasks running, and no more in the queue, MWAA disposes of the extra containers leaving the one worker that is included with your environment.

--name (string)

The name of your MWAA environment.

--network-configuration (structure)

The VPC networking components you want to use for your environment. At least two private subnet identifiers and one VPC security group identifier are required to create an environment. For more information, see Creating the VPC network for a MWAA environment .

SecurityGroupIds -> (list)

A JSON list of 1 or more security groups IDs by name, in the same VPC as the subnets.

(string)

SubnetIds -> (list)

Provide a JSON list of 2 subnet IDs by name. These must be private subnets, in the same VPC, in two different availability zones.

(string)

Shorthand Syntax:

SecurityGroupIds=string,string,SubnetIds=string,string

JSON Syntax:

{
  "SecurityGroupIds": ["string", ...],
  "SubnetIds": ["string", ...]
}

--plugins-s3-object-version (string)

The plugins.zip file version you want to use.

--plugins-s3-path (string)

The relative path to the plugins.zip file on your Amazon S3 storage bucket. For example, plugins.zip . If a relative path is provided in the request, then PluginsS3ObjectVersion is required. For more information, see Importing DAGs on Amazon MWAA .

--requirements-s3-object-version (string)

The requirements.txt file version you want to use.

--requirements-s3-path (string)

The relative path to the requirements.txt file on your Amazon S3 storage bucket. For example, requirements.txt . If a relative path is provided in the request, then RequirementsS3ObjectVersion is required. For more information, see Importing DAGs on Amazon MWAA .

--source-bucket-arn (string)

The Amazon Resource Name (ARN) of your Amazon S3 storage bucket. For example, arn:aws:s3:::airflow-mybucketname .

--tags (map)

The metadata tags you want to attach to your environment. For more information, see Tagging AWS resources .

key -> (string)

value -> (string)

Shorthand Syntax:

KeyName1=string,KeyName2=string

JSON Syntax:

{"string": "string"
  ...}

--webserver-access-mode (string)

The networking access of your Apache Airflow web server. A public network allows your Airflow UI to be accessed over the Internet by users granted access in your IAM policy. A private network limits access of your Airflow UI to users within your VPC. For more information, see Creating the VPC network for a MWAA environment .

Possible values:

  • PRIVATE_ONLY

  • PUBLIC_ONLY

--weekly-maintenance-window-start (string)

The day and time you want MWAA to start weekly maintenance updates on your environment.

--cli-input-json | --cli-input-yaml (string) Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. Similarly, if provided yaml-input it will print a sample input YAML that can be used with --cli-input-yaml. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

See ‘aws help’ for descriptions of global parameters.

Output

Arn -> (string)

The resulting Amazon MWAA envirnonment ARN.