WorkerInstanceConfiguration

class aws_rfdk.deadline.WorkerInstanceConfiguration(scope, id, *, worker, cloud_watch_log_settings=None, render_queue=None, should_install_cloud_watch_agent=None, user_data_provider=None, worker_settings=None)

Bases: Construct

This construct can be used to configure Deadline Workers on an instance to connect to a RenderQueue, stream their log files to CloudWatch, and configure various settings of the Deadline Worker.

The configuration happens on instance start-up using user data scripting.

This configuration performs the following steps in order:

  1. Configure Cloud Watch Agent

  2. Configure Deadline Worker RenderQueue connection

  3. Configure Deadline Worker settings

A userDataProvider can be specified that defines callback functions. These callbacks can be used to inject user data commands at different points during the Worker instance configuration.

Security Considerations

  • The instances configured by this construct will download and run scripts from your CDK bootstrap bucket when that instance is launched. You must limit write access to your CDK bootstrap bucket to prevent an attacker from modifying the actions performed by these scripts. We strongly recommend that you either enable Amazon S3 server access logging on your CDK bootstrap bucket, or enable AWS CloudTrail on your account to assist in post-incident analysis of compromised production environments.

Parameters:
  • scope (Construct) –

  • id (str) –

  • worker (IHost) – The Deadline Worker that should be configured.

  • cloud_watch_log_settings (Union[LogGroupFactoryProps, Dict[str, Any], None]) – The configuration for streaming the Deadline Worker logs to AWS CloudWatch. Default: The Worker logs will not be streamed to CloudWatch.

  • render_queue (Optional[IRenderQueue]) – The RenderQueue that the worker should be configured to connect to. Default: The Worker is not configured to connect to a RenderQueue

  • should_install_cloud_watch_agent (Optional[bool]) – Whether or not the CloudWatch agent should be automatically installed onto all worker instances. This installation will be a best effort, but will not fail the deployment if it isn’t completed successfully. Ideally the CloudWatch agent should be installed on the AMI to avoid issues. If the installation fails, logs will not be streamed off of the workers into CloudWatch. Default: true

  • user_data_provider (Optional[IInstanceUserDataProvider]) – An optional provider of user data commands to be injected at various points during the Worker configuration lifecycle. You can provide a subclass of InstanceUserDataProvider with the methods overridden as desired.

  • worker_settings (Union[WorkerSettings, Dict[str, Any], None]) – The settings to apply to the Deadline Worker. Default: The Worker is assigned the default settings as outlined in the WorkerSettings interface.

Methods

to_string()

Returns a string representation of this construct.

Return type:

str

Attributes

listener_port

true

Type:

inheritdoc

node

The tree node.

Static Methods

classmethod is_construct(x)

Checks if x is a construct.

Use this method instead of instanceof to properly detect Construct instances, even when the construct library is symlinked.

Explanation: in JavaScript, multiple copies of the constructs library on disk are seen as independent, completely different libraries. As a consequence, the class Construct in each copy of the constructs library is seen as a different class, and an instance of one class will not test as instanceof the other class. npm install will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the constructs library can be accidentally installed, and instanceof will behave unpredictably. It is safest to avoid using instanceof, and using this type-testing method instead.

Parameters:

x (Any) – Any object.

Return type:

bool

Returns:

true if x is an object created from a class which extends Construct.