EMR.Cluster
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-volumespecification.html
and spot_provisioning_specification = {
allocation_strategy : string option;
block_duration_minutes : int option;
timeout_action : string;
timeout_duration_minutes : int;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-spotprovisioningspecification.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-simplescalingpolicyconfiguration.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scriptbootstrapactionconfig.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingconstraints.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-placementtype.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-placementgroupconfig.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ondemandprovisioningspecification.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-metricdimension.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-keyvalue.html
and kerberos_attributes = {
ad_domain_join_password : string option;
ad_domain_join_user : string option;
cross_realm_trust_principal_password : string option;
kdc_admin_password : string;
realm : string;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-kerberosattributes.html
and compute_limits = {
maximum_capacity_units : int;
maximum_core_capacity_units : int option;
maximum_on_demand_capacity_units : int option;
minimum_capacity_units : int;
unit_type : string;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-computelimits.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-autoterminationpolicy.html
and application = {
additional_info : string Stdlib__Map.Make(Stdlib.String).t option;
args : string list option;
name : string option;
version : string option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-application.html
and scaling_action = {
market : string option;
simple_scaling_policy_configuration : simple_scaling_policy_configuration;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingaction.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-managedscalingpolicy.html
and instance_fleet_provisioning_specifications = {
on_demand_specification : on_demand_provisioning_specification option;
spot_specification : spot_provisioning_specification option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetprovisioningspecifications.html
and hadoop_jar_step_config = {
args : string list option;
jar : string;
main_class : string option;
step_properties : key_value list option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-hadoopjarstepconfig.html
and ebs_block_device_config = {
volume_specification : volume_specification;
volumes_per_instance : int option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsblockdeviceconfig.html
and configuration = {
classification : string option;
configuration_properties : string Stdlib__Map.Make(Stdlib.String).t option;
configurations : configuration list option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-configuration.html
and cloud_watch_alarm_definition = {
comparison_operator : string;
dimensions : metric_dimension list option;
evaluation_periods : int option;
metric_name : string;
namespace : string option;
period : int;
statistic : string option;
threshold : float;
unit : string option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html
and bootstrap_action_config = {
name : string;
script_bootstrap_action : script_bootstrap_action_config;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-bootstrapactionconfig.html
and step_config = {
action_on_failure : string option;
hadoop_jar_step : hadoop_jar_step_config;
name : string;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-stepconfig.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingtrigger.html
and ebs_configuration = {
ebs_block_device_configs : ebs_block_device_config list option;
ebs_optimized : bool option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-ebsconfiguration.html
and scaling_rule = {
action : scaling_action;
description : string option;
name : string;
trigger : scaling_trigger;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html
and instance_type_config = {
bid_price : string option;
bid_price_as_percentage_of_on_demand_price : float option;
configurations : configuration list option;
custom_ami_id : string option;
ebs_configuration : ebs_configuration option;
instance_type : string;
weighted_capacity : int option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancetypeconfig.html
and instance_fleet_config = {
instance_type_configs : instance_type_config list option;
launch_specifications : instance_fleet_provisioning_specifications option;
name : string option;
target_on_demand_capacity : int option;
target_spot_capacity : int option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancefleetconfig.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-autoscalingpolicy.html
and instance_group_config = {
auto_scaling_policy : auto_scaling_policy option;
bid_price : string option;
configurations : configuration list option;
custom_ami_id : string option;
ebs_configuration : ebs_configuration option;
instance_count : int;
instance_type : string;
market : string option;
name : string option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-instancegroupconfig.html
and job_flow_instances_config = {
additional_master_security_groups : string list option;
additional_slave_security_groups : string list option;
core_instance_fleet : instance_fleet_config option;
core_instance_group : instance_group_config option;
ec2_key_name : string option;
ec2_subnet_id : string option;
ec2_subnet_ids : string list option;
emr_managed_master_security_group : string option;
emr_managed_slave_security_group : string option;
hadoop_version : string option;
keep_job_flow_alive_when_no_steps : bool option;
master_instance_fleet : instance_fleet_config option;
master_instance_group : instance_group_config option;
placement : placement_type option;
service_access_security_group : string option;
task_instance_fleets : instance_fleet_config list option;
task_instance_groups : instance_group_config list option;
termination_protected : bool option;
unhealthy_node_replacement : bool option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-jobflowinstancesconfig.html
type properties = {
additional_info : Yojson.Safe.t option;
applications : application list option;
auto_scaling_role : string option;
auto_termination_policy : auto_termination_policy option;
bootstrap_actions : bootstrap_action_config list option;
configurations : configuration list option;
custom_ami_id : string option;
ebs_root_volume_iops : int option;
ebs_root_volume_size : int option;
ebs_root_volume_throughput : int option;
instances : job_flow_instances_config;
job_flow_role : string;
kerberos_attributes : kerberos_attributes option;
log_encryption_kms_key_id : string option;
log_uri : string option;
managed_scaling_policy : managed_scaling_policy option;
name : string;
os_release_label : string option;
placement_group_configs : placement_group_config list option;
release_label : string option;
scale_down_behavior : string option;
security_configuration : string option;
service_role : string;
step_concurrency_level : int option;
steps : step_config list option;
visible_to_all_users : bool option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html;
val make_properties :
?additional_info:Yojson.Safe.t ->
?applications:application list ->
?auto_scaling_role:string ->
?auto_termination_policy:auto_termination_policy ->
?bootstrap_actions:bootstrap_action_config list ->
?configurations:configuration list ->
?custom_ami_id:string ->
?ebs_root_volume_iops:int ->
?ebs_root_volume_size:int ->
?ebs_root_volume_throughput:int ->
instances:job_flow_instances_config ->
job_flow_role:string ->
?kerberos_attributes:kerberos_attributes ->
?log_encryption_kms_key_id:string ->
?log_uri:string ->
?managed_scaling_policy:managed_scaling_policy ->
name:string ->
?os_release_label:string ->
?placement_group_configs:placement_group_config list ->
?release_label:string ->
?scale_down_behavior:string ->
?security_configuration:string ->
service_role:string ->
?step_concurrency_level:int ->
?steps:step_config list ->
?tags:tag list ->
?visible_to_all_users:bool ->
unit ->
properties
val make_tag : key:string -> value:string -> unit -> tag
val make_volume_specification :
?iops:int ->
size_in_gb:int ->
?throughput:int ->
volume_type:string ->
unit ->
volume_specification
val make_spot_provisioning_specification :
?allocation_strategy:string ->
?block_duration_minutes:int ->
timeout_action:string ->
timeout_duration_minutes:int ->
unit ->
spot_provisioning_specification
val make_simple_scaling_policy_configuration :
?adjustment_type:string ->
?cool_down:int ->
scaling_adjustment:int ->
unit ->
simple_scaling_policy_configuration
val make_script_bootstrap_action_config :
?args:string list ->
path:string ->
unit ->
script_bootstrap_action_config
val make_scaling_constraints :
max_capacity:int ->
min_capacity:int ->
unit ->
scaling_constraints
val make_placement_type : availability_zone:string -> unit -> placement_type
val make_placement_group_config :
instance_role:string ->
?placement_strategy:string ->
unit ->
placement_group_config
val make_on_demand_provisioning_specification :
allocation_strategy:string ->
unit ->
on_demand_provisioning_specification
val make_metric_dimension :
key:string ->
value:string ->
unit ->
metric_dimension
val make_key_value : ?key:string -> ?value:string -> unit -> key_value
val make_kerberos_attributes :
?ad_domain_join_password:string ->
?ad_domain_join_user:string ->
?cross_realm_trust_principal_password:string ->
kdc_admin_password:string ->
realm:string ->
unit ->
kerberos_attributes
val make_compute_limits :
maximum_capacity_units:int ->
?maximum_core_capacity_units:int ->
?maximum_on_demand_capacity_units:int ->
minimum_capacity_units:int ->
unit_type:string ->
unit ->
compute_limits
val make_auto_termination_policy :
?idle_timeout:int64 ->
unit ->
auto_termination_policy
val make_application :
?additional_info:string Stdlib__Map.Make(Stdlib.String).t ->
?args:string list ->
?name:string ->
?version:string ->
unit ->
application
val make_scaling_action :
?market:string ->
simple_scaling_policy_configuration:simple_scaling_policy_configuration ->
unit ->
scaling_action
val make_managed_scaling_policy :
?compute_limits:compute_limits ->
unit ->
managed_scaling_policy
val make_instance_fleet_provisioning_specifications :
?on_demand_specification:on_demand_provisioning_specification ->
?spot_specification:spot_provisioning_specification ->
unit ->
instance_fleet_provisioning_specifications
val make_hadoop_jar_step_config :
?args:string list ->
jar:string ->
?main_class:string ->
?step_properties:key_value list ->
unit ->
hadoop_jar_step_config
val make_ebs_block_device_config :
volume_specification:volume_specification ->
?volumes_per_instance:int ->
unit ->
ebs_block_device_config
val make_configuration :
?classification:string ->
?configuration_properties:string Stdlib__Map.Make(Stdlib.String).t ->
?configurations:configuration list ->
unit ->
configuration
val make_cloud_watch_alarm_definition :
comparison_operator:string ->
?dimensions:metric_dimension list ->
?evaluation_periods:int ->
metric_name:string ->
?namespace:string ->
period:int ->
?statistic:string ->
threshold:float ->
?unit:string ->
unit ->
cloud_watch_alarm_definition
val make_bootstrap_action_config :
name:string ->
script_bootstrap_action:script_bootstrap_action_config ->
unit ->
bootstrap_action_config
val make_step_config :
?action_on_failure:string ->
hadoop_jar_step:hadoop_jar_step_config ->
name:string ->
unit ->
step_config
val make_scaling_trigger :
cloud_watch_alarm_definition:cloud_watch_alarm_definition ->
unit ->
scaling_trigger
val make_ebs_configuration :
?ebs_block_device_configs:ebs_block_device_config list ->
?ebs_optimized:bool ->
unit ->
ebs_configuration
val make_scaling_rule :
action:scaling_action ->
?description:string ->
name:string ->
trigger:scaling_trigger ->
unit ->
scaling_rule
val make_instance_type_config :
?bid_price:string ->
?bid_price_as_percentage_of_on_demand_price:float ->
?configurations:configuration list ->
?custom_ami_id:string ->
?ebs_configuration:ebs_configuration ->
instance_type:string ->
?weighted_capacity:int ->
unit ->
instance_type_config
val make_instance_fleet_config :
?instance_type_configs:instance_type_config list ->
?launch_specifications:instance_fleet_provisioning_specifications ->
?name:string ->
?target_on_demand_capacity:int ->
?target_spot_capacity:int ->
unit ->
instance_fleet_config
val make_auto_scaling_policy :
constraints:scaling_constraints ->
rules:scaling_rule list ->
unit ->
auto_scaling_policy
val make_instance_group_config :
?auto_scaling_policy:auto_scaling_policy ->
?bid_price:string ->
?configurations:configuration list ->
?custom_ami_id:string ->
?ebs_configuration:ebs_configuration ->
instance_count:int ->
instance_type:string ->
?market:string ->
?name:string ->
unit ->
instance_group_config
val make_job_flow_instances_config :
?additional_master_security_groups:string list ->
?additional_slave_security_groups:string list ->
?core_instance_fleet:instance_fleet_config ->
?core_instance_group:instance_group_config ->
?ec2_key_name:string ->
?ec2_subnet_id:string ->
?ec2_subnet_ids:string list ->
?emr_managed_master_security_group:string ->
?emr_managed_slave_security_group:string ->
?hadoop_version:string ->
?keep_job_flow_alive_when_no_steps:bool ->
?master_instance_fleet:instance_fleet_config ->
?master_instance_group:instance_group_config ->
?placement:placement_type ->
?service_access_security_group:string ->
?task_instance_fleets:instance_fleet_config list ->
?task_instance_groups:instance_group_config list ->
?termination_protected:bool ->
?unhealthy_node_replacement:bool ->
unit ->
job_flow_instances_config
val yojson_of_tag : tag -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_volume_specification : volume_specification -> Yojson.Safe.t
val yojson_of_spot_provisioning_specification :
spot_provisioning_specification ->
Yojson.Safe.t
val yojson_of_simple_scaling_policy_configuration :
simple_scaling_policy_configuration ->
Yojson.Safe.t
val yojson_of_script_bootstrap_action_config :
script_bootstrap_action_config ->
Yojson.Safe.t
val yojson_of_scaling_constraints : scaling_constraints -> Yojson.Safe.t
val yojson_of_placement_type : placement_type -> Yojson.Safe.t
val yojson_of_placement_group_config :
placement_group_config ->
[> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_on_demand_provisioning_specification :
on_demand_provisioning_specification ->
Yojson.Safe.t
val yojson_of_metric_dimension : metric_dimension -> Yojson.Safe.t
val yojson_of_key_value : key_value -> Yojson.Safe.t
val yojson_of_kerberos_attributes :
kerberos_attributes ->
[> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_compute_limits : compute_limits -> Yojson.Safe.t
val yojson_of_auto_termination_policy :
auto_termination_policy ->
[> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_application :
application ->
[> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_scaling_action : scaling_action -> Yojson.Safe.t
val yojson_of_managed_scaling_policy :
managed_scaling_policy ->
[> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_instance_fleet_provisioning_specifications :
instance_fleet_provisioning_specifications ->
Yojson.Safe.t
val yojson_of_hadoop_jar_step_config : hadoop_jar_step_config -> Yojson.Safe.t
val yojson_of_ebs_block_device_config :
ebs_block_device_config ->
Yojson.Safe.t
val yojson_of_configuration : configuration -> Yojson.Safe.t
val yojson_of_cloud_watch_alarm_definition :
cloud_watch_alarm_definition ->
Yojson.Safe.t
val yojson_of_bootstrap_action_config :
bootstrap_action_config ->
[> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_step_config :
step_config ->
[> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_scaling_trigger : scaling_trigger -> Yojson.Safe.t
val yojson_of_ebs_configuration : ebs_configuration -> Yojson.Safe.t
val yojson_of_scaling_rule : scaling_rule -> Yojson.Safe.t
val yojson_of_instance_type_config : instance_type_config -> Yojson.Safe.t
val yojson_of_instance_fleet_config : instance_fleet_config -> Yojson.Safe.t
val yojson_of_auto_scaling_policy : auto_scaling_policy -> Yojson.Safe.t
val yojson_of_instance_group_config : instance_group_config -> Yojson.Safe.t
val yojson_of_job_flow_instances_config :
job_flow_instances_config ->
[> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_properties :
properties ->
[> `Assoc of (string * Yojson.Safe.t) list ]
val create_attributes : string -> attributes