Class: Aws::Mgn::Client

Inherits:
Seahorse::Client::Base show all
Includes:
ClientStubs
Defined in:
gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb

Overview

An API client for Mgn. To construct a client, you need to configure a :region and :credentials.

client = Aws::Mgn::Client.new(
  region: region_name,
  credentials: credentials,
  # ...
)

For details on configuring region and credentials see the developer guide.

See #initialize for a full list of supported configuration options.

Instance Attribute Summary

Attributes inherited from Seahorse::Client::Base

#config, #handlers

API Operations collapse

Instance Method Summary collapse

Methods included from ClientStubs

#api_requests, #stub_data, #stub_responses

Methods inherited from Seahorse::Client::Base

add_plugin, api, clear_plugins, define, new, #operation_names, plugins, remove_plugin, set_api, set_plugins

Methods included from Seahorse::Client::HandlerBuilder

#handle, #handle_request, #handle_response

Constructor Details

#initialize(options) ⇒ Client

Returns a new instance of Client.

Parameters:

  • options (Hash)

Options Hash (options):

  • :plugins (Array<Seahorse::Client::Plugin>) — default: []]

    A list of plugins to apply to the client. Each plugin is either a class name or an instance of a plugin class.

  • :credentials (required, Aws::CredentialProvider)

    Your AWS credentials used for authentication. This can be any class that includes and implements Aws::CredentialProvider, or instance of any one of the following classes:

    • Aws::Credentials - Used for configuring static, non-refreshing credentials.

    • Aws::SharedCredentials - Used for loading static credentials from a shared file, such as ~/.aws/config.

    • Aws::AssumeRoleCredentials - Used when you need to assume a role.

    • Aws::AssumeRoleWebIdentityCredentials - Used when you need to assume a role after providing credentials via the web.

    • Aws::SSOCredentials - Used for loading credentials from AWS SSO using an access token generated from aws login.

    • Aws::ProcessCredentials - Used for loading credentials from a process that outputs to stdout.

    • Aws::InstanceProfileCredentials - Used for loading credentials from an EC2 IMDS on an EC2 instance.

    • Aws::ECSCredentials - Used for loading credentials from instances running in ECS.

    • Aws::CognitoIdentityCredentials - Used for loading credentials from the Cognito Identity service.

    When :credentials are not configured directly, the following locations will be searched for credentials:

    • Aws.config[:credentials]

    • The :access_key_id, :secret_access_key, :session_token, and :account_id options.

    • ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'], ENV['AWS_SESSION_TOKEN'], and ENV['AWS_ACCOUNT_ID'].

    • ~/.aws/credentials

    • ~/.aws/config

    • EC2/ECS IMDS instance profile - When used by default, the timeouts are very aggressive. Construct and pass an instance of Aws::InstanceProfileCredentials or Aws::ECSCredentials to enable retries and extended timeouts. Instance profile credential fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED'] to true.

  • :region (required, String)

    The AWS region to connect to. The configured :region is used to determine the service :endpoint. When not passed, a default :region is searched for in the following locations:

    • Aws.config[:region]
    • ENV['AWS_REGION']
    • ENV['AMAZON_REGION']
    • ENV['AWS_DEFAULT_REGION']
    • ~/.aws/credentials
    • ~/.aws/config
  • :access_key_id (String)
  • :account_id (String)
  • :active_endpoint_cache (Boolean) — default: false

    When set to true, a thread polling for endpoints will be running in the background every 60 secs (default). Defaults to false.

  • :adaptive_retry_wait_to_fill (Boolean) — default: true

    Used only in adaptive retry mode. When true, the request will sleep until there is sufficent client side capacity to retry the request. When false, the request will raise a RetryCapacityNotAvailableError and will not retry instead of sleeping.

  • :auth_scheme_preference (Array<String>)

    A list of preferred authentication schemes to use when making a request. Supported values are: sigv4, sigv4a, httpBearerAuth, and noAuth. When set using ENV['AWS_AUTH_SCHEME_PREFERENCE'] or in shared config as auth_scheme_preference, the value should be a comma-separated list.

  • :client_side_monitoring (Boolean) — default: false

    When true, client-side metrics will be collected for all API requests from this client.

  • :client_side_monitoring_client_id (String) — default: ""

    Allows you to provide an identifier for this client which will be attached to all generated client side metrics. Defaults to an empty string.

  • :client_side_monitoring_host (String) — default: "127.0.0.1"

    Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_port (Integer) — default: 31000

    Required for publishing client metrics. The port that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher) — default: Aws::ClientSideMonitoring::Publisher

    Allows you to provide a custom client-side monitoring publisher class. By default, will use the Client Side Monitoring Agent Publisher.

  • :convert_params (Boolean) — default: true

    When true, an attempt is made to coerce request parameters into the required types.

  • :correct_clock_skew (Boolean) — default: true

    Used only in standard and adaptive retry modes. Specifies whether to apply a clock skew correction and retry requests with skewed client clocks.

  • :defaults_mode (String) — default: "legacy"

    See DefaultsModeConfiguration for a list of the accepted modes and the configuration defaults that are included.

  • :disable_host_prefix_injection (Boolean) — default: false

    When true, the SDK will not prepend the modeled host prefix to the endpoint.

  • :disable_request_compression (Boolean) — default: false

    When set to 'true' the request body will not be compressed for supported operations.

  • :endpoint (String, URI::HTTPS, URI::HTTP)

    Normally you should not configure the :endpoint option directly. This is normally constructed from the :region option. Configuring :endpoint is normally reserved for connecting to test or custom endpoints. The endpoint should be a URI formatted like:

    'http://example.com'
    'https://example.com'
    'http://example.com:123'
    
  • :endpoint_cache_max_entries (Integer) — default: 1000

    Used for the maximum size limit of the LRU cache storing endpoints data for endpoint discovery enabled operations. Defaults to 1000.

  • :endpoint_cache_max_threads (Integer) — default: 10

    Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.

  • :endpoint_cache_poll_interval (Integer) — default: 60

    When :endpoint_discovery and :active_endpoint_cache is enabled, Use this option to config the time interval in seconds for making requests fetching endpoints information. Defaults to 60 sec.

  • :endpoint_discovery (Boolean) — default: false

    When set to true, endpoint discovery will be enabled for operations when available.

  • :ignore_configured_endpoint_urls (Boolean)

    Setting to true disables use of endpoint URLs provided via environment variables and the shared configuration file.

  • :log_formatter (Aws::Log::Formatter) — default: Aws::Log::Formatter.default

    The log formatter.

  • :log_level (Symbol) — default: :info

    The log level to send messages to the :logger at.

  • :logger (Logger)

    The Logger instance to send log messages to. If this option is not set, logging will be disabled.

  • :max_attempts (Integer) — default: 3

    An integer representing the maximum number attempts that will be made for a single request, including the initial attempt. For example, setting this value to 5 will result in a request being retried up to 4 times. Used in standard and adaptive retry modes.

  • :profile (String) — default: "default"

    Used when loading credentials from the shared credentials file at HOME/.aws/credentials. When not specified, 'default' is used.

  • :request_checksum_calculation (String) — default: "when_supported"

    Determines when a checksum will be calculated for request payloads. Values are:

    • when_supported - (default) When set, a checksum will be calculated for all request payloads of operations modeled with the httpChecksum trait where requestChecksumRequired is true and/or a requestAlgorithmMember is modeled.
    • when_required - When set, a checksum will only be calculated for request payloads of operations modeled with the httpChecksum trait where requestChecksumRequired is true or where a requestAlgorithmMember is modeled and supplied.
  • :request_min_compression_size_bytes (Integer) — default: 10240

    The minimum size in bytes that triggers compression for request bodies. The value must be non-negative integer value between 0 and 10485780 bytes inclusive.

  • :response_checksum_validation (String) — default: "when_supported"

    Determines when checksum validation will be performed on response payloads. Values are:

    • when_supported - (default) When set, checksum validation is performed on all response payloads of operations modeled with the httpChecksum trait where responseAlgorithms is modeled, except when no modeled checksum algorithms are supported.
    • when_required - When set, checksum validation is not performed on response payloads of operations unless the checksum algorithm is supported and the requestValidationModeMember member is set to ENABLED.
  • :retry_backoff (Proc)

    A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay. This option is only used in the legacy retry mode.

  • :retry_base_delay (Float) — default: 0.3

    The base delay in seconds used by the default backoff function. This option is only used in the legacy retry mode.

  • :retry_jitter (Symbol) — default: :none

    A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number. This option is only used in the legacy retry mode.

    @see https://www.awsarchitectureblog.com/2015/03/backoff.html

  • :retry_limit (Integer) — default: 3

    The maximum number of times to retry failed requests. Only ~ 500 level server errors and certain ~ 400 level client errors are retried. Generally, these are throttling errors, data checksum errors, networking errors, timeout errors, auth errors, endpoint discovery, and errors from expired credentials. This option is only used in the legacy retry mode.

  • :retry_max_delay (Integer) — default: 0

    The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function. This option is only used in the legacy retry mode.

  • :retry_mode (String) — default: "legacy"

    Specifies which retry algorithm to use. Values are:

    • legacy - The pre-existing retry behavior. This is the default value if no retry mode is provided.

    • standard - A standardized set of retry rules across the AWS SDKs. This includes support for retry quotas, which limit the number of unsuccessful retries a client can make.

    • adaptive - A retry mode that includes all the functionality of standard mode along with automatic client side throttling.

  • :sdk_ua_app_id (String)

    A unique and opaque application ID that is appended to the User-Agent header as app/sdk_ua_app_id. It should have a maximum length of 50. This variable is sourced from environment variable AWS_SDK_UA_APP_ID or the shared config profile attribute sdk_ua_app_id.

  • :secret_access_key (String)
  • :session_token (String)
  • :sigv4a_signing_region_set (Array)

    A list of regions that should be signed with SigV4a signing. When not passed, a default :sigv4a_signing_region_set is searched for in the following locations:

    • Aws.config[:sigv4a_signing_region_set]
    • ENV['AWS_SIGV4A_SIGNING_REGION_SET']
    • ~/.aws/config
  • :stub_responses (Boolean) — default: false

    Causes the client to return stubbed responses. By default fake responses are generated and returned. You can specify the response data to return or errors to raise by calling ClientStubs#stub_responses. See ClientStubs for more information.

    Please note When response stubbing is enabled, no HTTP requests are made, and retries are disabled.

  • :telemetry_provider (Aws::Telemetry::TelemetryProviderBase) — default: Aws::Telemetry::NoOpTelemetryProvider

    Allows you to provide a telemetry provider, which is used to emit telemetry data. By default, uses NoOpTelemetryProvider which will not record or emit any telemetry data. The SDK supports the following telemetry providers:

    • OpenTelemetry (OTel) - To use the OTel provider, install and require the opentelemetry-sdk gem and then, pass in an instance of a Aws::Telemetry::OTelProvider for telemetry provider.
  • :token_provider (Aws::TokenProvider)

    Your Bearer token used for authentication. This can be any class that includes and implements Aws::TokenProvider, or instance of any one of the following classes:

    • Aws::StaticTokenProvider - Used for configuring static, non-refreshing tokens.

    • Aws::SSOTokenProvider - Used for loading tokens from AWS SSO using an access token generated from aws login.

    When :token_provider is not configured directly, the Aws::TokenProviderChain will be used to search for tokens configured for your profile in shared configuration files.

  • :use_dualstack_endpoint (Boolean)

    When set to true, dualstack enabled endpoints (with .aws TLD) will be used if available.

  • :use_fips_endpoint (Boolean)

    When set to true, fips compatible endpoints will be used if available. When a fips region is used, the region is normalized and this config is set to true.

  • :validate_params (Boolean) — default: true

    When true, request parameters are validated before sending the request.

  • :endpoint_provider (Aws::Mgn::EndpointProvider)

    The endpoint provider used to resolve endpoints. Any object that responds to #resolve_endpoint(parameters) where parameters is a Struct similar to Aws::Mgn::EndpointParameters.

  • :http_continue_timeout (Float) — default: 1

    The number of seconds to wait for a 100-continue response before sending the request body. This option has no effect unless the request has "Expect" header set to "100-continue". Defaults to nil which disables this behaviour. This value can safely be set per request on the session.

  • :http_idle_timeout (Float) — default: 5

    The number of seconds a connection is allowed to sit idle before it is considered stale. Stale connections are closed and removed from the pool before making a request.

  • :http_open_timeout (Float) — default: 15

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_proxy (URI::HTTP, String)

    A proxy to send requests through. Formatted like 'http://proxy.com:123'.

  • :http_read_timeout (Float) — default: 60

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_wire_trace (Boolean) — default: false

    When true, HTTP debug output will be sent to the :logger.

  • :on_chunk_received (Proc)

    When a Proc object is provided, it will be used as callback when each chunk of the response body is received. It provides three arguments: the chunk, the number of bytes received, and the total number of bytes in the response (or nil if the server did not send a content-length).

  • :on_chunk_sent (Proc)

    When a Proc object is provided, it will be used as callback when each chunk of the request body is sent. It provides three arguments: the chunk, the number of bytes read from the body, and the total number of bytes in the body.

  • :raise_response_errors (Boolean) — default: true

    When true, response errors are raised.

  • :ssl_ca_bundle (String)

    Full path to the SSL certificate authority bundle file that should be used when verifying peer certificates. If you do not pass :ssl_ca_bundle or :ssl_ca_directory the the system default will be used if available.

  • :ssl_ca_directory (String)

    Full path of the directory that contains the unbundled SSL certificate authority files for verifying peer certificates. If you do not pass :ssl_ca_bundle or :ssl_ca_directory the the system default will be used if available.

  • :ssl_ca_store (String)

    Sets the X509::Store to verify peer certificate.

  • :ssl_cert (OpenSSL::X509::Certificate)

    Sets a client certificate when creating http connections.

  • :ssl_key (OpenSSL::PKey)

    Sets a client key when creating http connections.

  • :ssl_timeout (Float)

    Sets the SSL timeout in seconds

  • :ssl_verify_peer (Boolean) — default: true

    When true, SSL peer certificates are verified when establishing a connection.



471
472
473
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 471

def initialize(*args)
  super
end

Instance Method Details

#archive_application(params = {}) ⇒ Types::Application

Archive application.

Examples:

Request syntax with placeholder values


resp = client.archive_application({
  application_id: "ApplicationID", # required
  account_id: "AccountID",
})

Response structure


resp.application_id #=> String
resp.arn #=> String
resp.name #=> String
resp.description #=> String
resp.is_archived #=> Boolean
resp.application_aggregated_status.last_update_date_time #=> String
resp.application_aggregated_status.health_status #=> String, one of "HEALTHY", "LAGGING", "ERROR"
resp.application_aggregated_status.progress_status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "COMPLETED"
resp.application_aggregated_status.total_source_servers #=> Integer
resp.creation_date_time #=> String
resp.last_modified_date_time #=> String
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.wave_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    Application ID.

  • :account_id (String)

    Account ID.

Returns:

See Also:



526
527
528
529
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 526

def archive_application(params = {}, options = {})
  req = build_request(:archive_application, params)
  req.send_request(options)
end

#archive_wave(params = {}) ⇒ Types::Wave

Archive wave.

Examples:

Request syntax with placeholder values


resp = client.archive_wave({
  wave_id: "WaveID", # required
  account_id: "AccountID",
})

Response structure


resp.wave_id #=> String
resp.arn #=> String
resp.name #=> String
resp.description #=> String
resp.is_archived #=> Boolean
resp.wave_aggregated_status.last_update_date_time #=> String
resp.wave_aggregated_status.replication_started_date_time #=> String
resp.wave_aggregated_status.health_status #=> String, one of "HEALTHY", "LAGGING", "ERROR"
resp.wave_aggregated_status.progress_status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "COMPLETED"
resp.wave_aggregated_status.total_applications #=> Integer
resp.creation_date_time #=> String
resp.last_modified_date_time #=> String
resp.tags #=> Hash
resp.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :wave_id (required, String)

    Wave ID.

  • :account_id (String)

    Account ID.

Returns:

See Also:



579
580
581
582
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 579

def archive_wave(params = {}, options = {})
  req = build_request(:archive_wave, params)
  req.send_request(options)
end

#associate_applications(params = {}) ⇒ Struct

Associate applications to wave.

Examples:

Request syntax with placeholder values


resp = client.associate_applications({
  wave_id: "WaveID", # required
  application_i_ds: ["ApplicationID"], # required
  account_id: "AccountID",
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :wave_id (required, String)

    Wave ID.

  • :application_i_ds (required, Array<String>)

    Application IDs list.

  • :account_id (String)

    Account ID.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



609
610
611
612
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 609

def associate_applications(params = {}, options = {})
  req = build_request(:associate_applications, params)
  req.send_request(options)
end

#associate_source_servers(params = {}) ⇒ Struct

Associate source servers to application.

Examples:

Request syntax with placeholder values


resp = client.associate_source_servers({
  application_id: "ApplicationID", # required
  source_server_i_ds: ["SourceServerID"], # required
  account_id: "AccountID",
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    Application ID.

  • :source_server_i_ds (required, Array<String>)

    Source server IDs list.

  • :account_id (String)

    Account ID.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



639
640
641
642
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 639

def associate_source_servers(params = {}, options = {})
  req = build_request(:associate_source_servers, params)
  req.send_request(options)
end

#change_server_life_cycle_state(params = {}) ⇒ Types::SourceServer

Allows the user to set the SourceServer.LifeCycle.state property for specific Source Server IDs to one of the following: READY_FOR_TEST or READY_FOR_CUTOVER. This command only works if the Source Server is already launchable (dataReplicationInfo.lagDuration is not null.)

Examples:

Request syntax with placeholder values


resp = client.change_server_life_cycle_state({
  source_server_id: "SourceServerID", # required
  life_cycle: { # required
    state: "READY_FOR_TEST", # required, accepts READY_FOR_TEST, READY_FOR_CUTOVER, CUTOVER
  },
  account_id: "AccountID",
})

Response structure


resp.source_server_id #=> String
resp.arn #=> String
resp.is_archived #=> Boolean
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.launched_instance.ec2_instance_id #=> String
resp.launched_instance.job_id #=> String
resp.launched_instance.first_boot #=> String, one of "WAITING", "SUCCEEDED", "UNKNOWN", "STOPPED"
resp.launched_instance.last_known_checks #=> Array
resp.launched_instance.last_known_checks[0].type #=> String, one of "EC2", "FSx"
resp.launched_instance.last_known_checks[0].name #=> String
resp.launched_instance.last_known_checks[0].status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.launched_instance.last_known_checks[0].error #=> String
resp.launched_instance.last_known_checks[0].checked_at #=> Time
resp.launched_instance.last_known_fsx_checks_status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.data_replication_info.lag_duration #=> String
resp.data_replication_info.eta_date_time #=> String
resp.data_replication_info.replicated_disks #=> Array
resp.data_replication_info.replicated_disks[0].device_name #=> String
resp.data_replication_info.replicated_disks[0].total_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].replicated_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].rescanned_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].backlogged_storage_bytes #=> Integer
resp.data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED", "PENDING_SNAPSHOT_SHIPPING", "SHIPPING_SNAPSHOT"
resp.data_replication_info.data_replication_initiation.start_date_time #=> String
resp.data_replication_info.data_replication_initiation.next_attempt_date_time #=> String
resp.data_replication_info.data_replication_initiation.steps #=> Array
resp.data_replication_info.data_replication_initiation.steps[0].name #=> String, one of "WAIT", "CREATE_SECURITY_GROUP", "LAUNCH_REPLICATION_SERVER", "BOOT_REPLICATION_SERVER", "AUTHENTICATE_WITH_SERVICE", "DOWNLOAD_REPLICATION_SOFTWARE", "CREATE_STAGING_DISKS", "ATTACH_STAGING_DISKS", "PAIR_REPLICATION_SERVER_WITH_AGENT", "CONNECT_AGENT_TO_REPLICATION_SERVER", "START_DATA_TRANSFER", "SETUP_FSX_PROXY"
resp.data_replication_info.data_replication_initiation.steps[0].status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "SKIPPED"
resp.data_replication_info.data_replication_error.error #=> String, one of "AGENT_NOT_SEEN", "SNAPSHOTS_FAILURE", "NOT_CONVERGING", "UNSTABLE_NETWORK", "FAILED_TO_CREATE_SECURITY_GROUP", "FAILED_TO_LAUNCH_REPLICATION_SERVER", "FAILED_TO_BOOT_REPLICATION_SERVER", "FAILED_TO_AUTHENTICATE_WITH_SERVICE", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", "FAILED_TO_CREATE_STAGING_DISKS", "FAILED_TO_ATTACH_STAGING_DISKS", "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", "FAILED_TO_START_DATA_TRANSFER", "UNSUPPORTED_VM_CONFIGURATION", "LAST_SNAPSHOT_JOB_FAILED", "FAILED_TO_SETUP_FSX_PROXY", "FAILED_TO_CREATE_FSX_SNAPSHOT"
resp.data_replication_info.data_replication_error.raw_error #=> String
resp.data_replication_info.last_snapshot_date_time #=> String
resp.data_replication_info.replicator_id #=> String
resp.life_cycle.added_to_service_date_time #=> String
resp.life_cycle.first_byte_date_time #=> String
resp.life_cycle.elapsed_replication_duration #=> String
resp.life_cycle.last_seen_by_service_date_time #=> String
resp.life_cycle.last_test.initiated.api_call_date_time #=> String
resp.life_cycle.last_test.initiated.job_id #=> String
resp.life_cycle.last_test.reverted.api_call_date_time #=> String
resp.life_cycle.last_test.finalized.api_call_date_time #=> String
resp.life_cycle.last_cutover.initiated.api_call_date_time #=> String
resp.life_cycle.last_cutover.initiated.job_id #=> String
resp.life_cycle.last_cutover.reverted.api_call_date_time #=> String
resp.life_cycle.last_cutover.finalized.api_call_date_time #=> String
resp.life_cycle.state #=> String, one of "STOPPED", "NOT_READY", "READY_FOR_TEST", "TESTING", "READY_FOR_CUTOVER", "CUTTING_OVER", "CUTOVER", "DISCONNECTED", "DISCOVERED", "PENDING_INSTALLATION"
resp.source_properties.last_updated_date_time #=> String
resp.source_properties.recommended_instance_type #=> String
resp.source_properties.identification_hints.fqdn #=> String
resp.source_properties.identification_hints.hostname #=> String
resp.source_properties.identification_hints.vm_ware_uuid #=> String
resp.source_properties.identification_hints.aws_instance_id #=> String
resp.source_properties.identification_hints.vm_path #=> String
resp.source_properties.network_interfaces #=> Array
resp.source_properties.network_interfaces[0].mac_address #=> String
resp.source_properties.network_interfaces[0].ips #=> Array
resp.source_properties.network_interfaces[0].ips[0] #=> String
resp.source_properties.network_interfaces[0].is_primary #=> Boolean
resp.source_properties.disks #=> Array
resp.source_properties.disks[0].device_name #=> String
resp.source_properties.disks[0].bytes #=> Integer
resp.source_properties.cpus #=> Array
resp.source_properties.cpus[0].cores #=> Integer
resp.source_properties.cpus[0].model_name #=> String
resp.source_properties.ram_bytes #=> Integer
resp.source_properties.os.full_string #=> String
resp.replication_type #=> String, one of "AGENT_BASED", "SNAPSHOT_SHIPPING"
resp.vcenter_client_id #=> String
resp.application_id #=> String
resp.user_provided_id #=> String
resp.fqdn_for_action_framework #=> String
resp.connector_action.credentials_secret_arn #=> String
resp.connector_action.connector_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_server_id (required, String)

    The request to change the source server migration lifecycle state by source server ID.

  • :life_cycle (required, Types::ChangeServerLifeCycleStateSourceServerLifecycle)

    The request to change the source server migration lifecycle state.

  • :account_id (String)

    The request to change the source server migration account ID.

Returns:

See Also:



766
767
768
769
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 766

def change_server_life_cycle_state(params = {}, options = {})
  req = build_request(:change_server_life_cycle_state, params)
  req.send_request(options)
end

#create_application(params = {}) ⇒ Types::Application

Create application.

Examples:

Request syntax with placeholder values


resp = client.create_application({
  name: "ApplicationName", # required
  description: "ApplicationDescription",
  tags: {
    "TagKey" => "TagValue",
  },
  account_id: "AccountID",
})

Response structure


resp.application_id #=> String
resp.arn #=> String
resp.name #=> String
resp.description #=> String
resp.is_archived #=> Boolean
resp.application_aggregated_status.last_update_date_time #=> String
resp.application_aggregated_status.health_status #=> String, one of "HEALTHY", "LAGGING", "ERROR"
resp.application_aggregated_status.progress_status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "COMPLETED"
resp.application_aggregated_status.total_source_servers #=> Integer
resp.creation_date_time #=> String
resp.last_modified_date_time #=> String
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.wave_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    Application name.

  • :description (String)

    Application description.

  • :tags (Hash<String,String>)

    Application tags.

  • :account_id (String)

    Account ID.

Returns:

See Also:



830
831
832
833
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 830

def create_application(params = {}, options = {})
  req = build_request(:create_application, params)
  req.send_request(options)
end

#create_connector(params = {}) ⇒ Types::Connector

Create Connector.

Examples:

Request syntax with placeholder values


resp = client.create_connector({
  name: "ConnectorName", # required
  ssm_instance_id: "SsmInstanceID", # required
  tags: {
    "TagKey" => "TagValue",
  },
  ssm_command_config: {
    s3_output_enabled: false, # required
    output_s3_bucket_name: "S3BucketName",
    cloud_watch_output_enabled: false, # required
    cloud_watch_log_group_name: "CloudWatchLogGroupName",
  },
})

Response structure


resp.connector_id #=> String
resp.name #=> String
resp.ssm_instance_id #=> String
resp.arn #=> String
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.ssm_command_config.s3_output_enabled #=> Boolean
resp.ssm_command_config.output_s3_bucket_name #=> String
resp.ssm_command_config.cloud_watch_output_enabled #=> Boolean
resp.ssm_command_config.cloud_watch_log_group_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    Create Connector request name.

  • :ssm_instance_id (required, String)

    Create Connector request SSM instance ID.

  • :tags (Hash<String,String>)

    Create Connector request tags.

  • :ssm_command_config (Types::ConnectorSsmCommandConfig)

    Create Connector request SSM command config.

Returns:

See Also:



891
892
893
894
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 891

def create_connector(params = {}, options = {})
  req = build_request(:create_connector, params)
  req.send_request(options)
end

#create_launch_configuration_template(params = {}) ⇒ Types::LaunchConfigurationTemplate

Creates a new Launch Configuration Template.

Examples:

Request syntax with placeholder values


resp = client.create_launch_configuration_template({
  post_launch_actions: {
    deployment: "TEST_AND_CUTOVER", # accepts TEST_AND_CUTOVER, CUTOVER_ONLY, TEST_ONLY
    s3_log_bucket: "S3LogBucketName",
    s3_output_key_prefix: "BoundedString",
    cloud_watch_log_group_name: "CloudWatchLogGroupName",
    ssm_documents: [
      {
        action_name: "BoundedString", # required
        ssm_document_name: "SsmDocumentName", # required
        timeout_seconds: 1,
        must_succeed_for_cutover: false,
        parameters: {
          "SsmDocumentParameterName" => [
            {
              parameter_type: "STRING", # required, accepts STRING, SECURE_STRING
              parameter_name: "SsmParameterStoreParameterName", # required
            },
          ],
        },
        external_parameters: {
          "SsmDocumentParameterName" => {
            dynamic_path: "JmesPathString",
          },
        },
      },
    ],
  },
  enable_map_auto_tagging: false,
  map_auto_tagging_mpe_id: "TagValue",
  tags: {
    "TagKey" => "TagValue",
  },
  launch_disposition: "STOPPED", # accepts STOPPED, STARTED
  target_instance_type_right_sizing_method: "NONE", # accepts NONE, BASIC
  copy_private_ip: false,
  associate_public_ip_address: false,
  copy_tags: false,
  licensing: {
    os_byol: false,
  },
  boot_mode: "LEGACY_BIOS", # accepts LEGACY_BIOS, UEFI, USE_SOURCE
  small_volume_max_size: 1,
  small_volume_conf: {
    volume_type: "io1", # accepts io1, io2, gp3, gp2, st1, sc1, standard
    iops: 1,
    throughput: 1,
    volume_initialization_rate: 1,
    delete_on_termination: false,
  },
  large_volume_conf: {
    volume_type: "io1", # accepts io1, io2, gp3, gp2, st1, sc1, standard
    iops: 1,
    throughput: 1,
    volume_initialization_rate: 1,
    delete_on_termination: false,
  },
  enable_parameters_encryption: false,
  parameters_encryption_key: "KmsKeyArn",
})

Response structure


resp.launch_configuration_template_id #=> String
resp.arn #=> String
resp.post_launch_actions.deployment #=> String, one of "TEST_AND_CUTOVER", "CUTOVER_ONLY", "TEST_ONLY"
resp.post_launch_actions.s3_log_bucket #=> String
resp.post_launch_actions.s3_output_key_prefix #=> String
resp.post_launch_actions.cloud_watch_log_group_name #=> String
resp.post_launch_actions.ssm_documents #=> Array
resp.post_launch_actions.ssm_documents[0].action_name #=> String
resp.post_launch_actions.ssm_documents[0].ssm_document_name #=> String
resp.post_launch_actions.ssm_documents[0].timeout_seconds #=> Integer
resp.post_launch_actions.ssm_documents[0].must_succeed_for_cutover #=> Boolean
resp.post_launch_actions.ssm_documents[0].parameters #=> Hash
resp.post_launch_actions.ssm_documents[0].parameters["SsmDocumentParameterName"] #=> Array
resp.post_launch_actions.ssm_documents[0].parameters["SsmDocumentParameterName"][0].parameter_type #=> String, one of "STRING", "SECURE_STRING"
resp.post_launch_actions.ssm_documents[0].parameters["SsmDocumentParameterName"][0].parameter_name #=> String
resp.post_launch_actions.ssm_documents[0].external_parameters #=> Hash
resp.post_launch_actions.ssm_documents[0].external_parameters["SsmDocumentParameterName"].dynamic_path #=> String
resp.enable_map_auto_tagging #=> Boolean
resp.map_auto_tagging_mpe_id #=> String
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.ec2_launch_template_id #=> String
resp.launch_disposition #=> String, one of "STOPPED", "STARTED"
resp.target_instance_type_right_sizing_method #=> String, one of "NONE", "BASIC"
resp.copy_private_ip #=> Boolean
resp.associate_public_ip_address #=> Boolean
resp.copy_tags #=> Boolean
resp.licensing.os_byol #=> Boolean
resp.boot_mode #=> String, one of "LEGACY_BIOS", "UEFI", "USE_SOURCE"
resp.small_volume_max_size #=> Integer
resp.small_volume_conf.volume_type #=> String, one of "io1", "io2", "gp3", "gp2", "st1", "sc1", "standard"
resp.small_volume_conf.iops #=> Integer
resp.small_volume_conf.throughput #=> Integer
resp.small_volume_conf.volume_initialization_rate #=> Integer
resp.small_volume_conf.delete_on_termination #=> Boolean
resp.large_volume_conf.volume_type #=> String, one of "io1", "io2", "gp3", "gp2", "st1", "sc1", "standard"
resp.large_volume_conf.iops #=> Integer
resp.large_volume_conf.throughput #=> Integer
resp.large_volume_conf.volume_initialization_rate #=> Integer
resp.large_volume_conf.delete_on_termination #=> Boolean
resp.enable_parameters_encryption #=> Boolean
resp.parameters_encryption_key #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :post_launch_actions (Types::PostLaunchActions)

    Launch configuration template post launch actions.

  • :enable_map_auto_tagging (Boolean)

    Enable map auto tagging.

  • :map_auto_tagging_mpe_id (String)

    Launch configuration template map auto tagging MPE ID.

  • :tags (Hash<String,String>)

    Request to associate tags during creation of a Launch Configuration Template.

  • :launch_disposition (String)

    Launch disposition.

  • :target_instance_type_right_sizing_method (String)

    Target instance type right-sizing method.

  • :copy_private_ip (Boolean)

    Copy private Ip.

  • :associate_public_ip_address (Boolean)

    Associate public Ip address.

  • :copy_tags (Boolean)

    Copy tags.

  • :licensing (Types::Licensing)

    Configure Licensing.

  • :boot_mode (String)

    Launch configuration template boot mode.

  • :small_volume_max_size (Integer)

    Small volume maximum size.

  • :small_volume_conf (Types::LaunchTemplateDiskConf)

    Small volume config.

  • :large_volume_conf (Types::LaunchTemplateDiskConf)

    Large volume config.

  • :enable_parameters_encryption (Boolean)

    Enable parameters encryption.

  • :parameters_encryption_key (String)

    Parameters encryption key.

Returns:

See Also:



1081
1082
1083
1084
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 1081

def create_launch_configuration_template(params = {}, options = {})
  req = build_request(:create_launch_configuration_template, params)
  req.send_request(options)
end

#create_network_migration_definition(params = {}) ⇒ Types::NetworkMigrationDefinition

Creates a new network migration definition that specifies the source and target network configuration for a migration.

Examples:

Example: Sample CreateNetworkMigrationDefinition call


resp = client.create_network_migration_definition({
  name: "network1", 
  description: "network 1 description", 
  source_configurations: [
    {
      source_environment: "NSX", 
      source_s3_configuration: {
        s3_bucket: "source_bucket", 
        s3_bucket_owner: "012345678901", 
        s3_key: "source_key", 
      }, 
    }, 
  ], 
  target_deployment: "SINGLE_ACCOUNT", 
  target_network: {
    inbound_cidr: "192.168.1.0/24", 
    topology: "ISOLATED_VPC", 
  }, 
  target_s3_configuration: {
    s3_bucket: "target_bucket", 
    s3_bucket_owner: "012345678901", 
  }, 
})

resp.to_h outputs the following:
{
  name: "network1", 
  created_at: Time.parse(1735334198), 
  description: "network 1 description", 
  network_migration_definition_id: "nmd-01234567891234567", 
  source_configurations: [
    {
      source_environment: "NSX", 
      source_s3_configuration: {
        s3_bucket: "source_bucket", 
        s3_bucket_owner: "012345678901", 
        s3_key: "source_key", 
      }, 
    }, 
  ], 
  tags: {
  }, 
  target_network: {
    inbound_cidr: "192.168.1.0/24", 
    topology: "ISOLATED_VPC", 
  }, 
  target_s3_configuration: {
    s3_bucket: "target_bucket", 
    s3_bucket_owner: "012345678901", 
  }, 
  updated_at: Time.parse(1735334198), 
}

Request syntax with placeholder values


resp = client.create_network_migration_definition({
  name: "NetworkMigrationDefinitionName", # required
  description: "NetworkMigrationDefinitionDescription",
  source_configurations: [
    {
      source_environment: "NSX", # required, accepts NSX, VSPHERE, FORTIGATE_FIREWALL, PALO_ALTO_FIREWALL, CISCO_ACI, LOGICAL_MODEL, MODELIZE_IT, AWS_DISCOVERY_COLLECTOR
      source_s3_configuration: { # required
        s3_bucket: "S3BucketName", # required
        s3_bucket_owner: "AccountID", # required
        s3_key: "S3KeyName", # required
      },
    },
  ],
  target_s3_configuration: { # required
    s3_bucket: "S3BucketName", # required
    s3_bucket_owner: "AccountID", # required
  },
  target_network: { # required
    topology: "ISOLATED_VPC", # required, accepts ISOLATED_VPC, HUB_AND_SPOKE
    inbound_cidr: "Cidr",
    outbound_cidr: "Cidr",
    inspection_cidr: "Cidr",
  },
  target_deployment: "SINGLE_ACCOUNT", # accepts SINGLE_ACCOUNT, MULTI_ACCOUNT
  vpc_provisioning_strategy: "CREATE_NEW", # accepts CREATE_NEW, USE_EXISTING
  cidr_mappings: [
    {
      original_cidr: "Cidr", # required
      updated_cidr: "Cidr", # required
    },
  ],
  tags: {
    "TagKey" => "TagValue",
  },
  scope_tags: {
    "ScopeTagKey" => "ScopeTagValue",
  },
})

Response structure


resp.arn #=> String
resp.network_migration_definition_id #=> String
resp.name #=> String
resp.description #=> String
resp.source_configurations #=> Array
resp.source_configurations[0].source_environment #=> String, one of "NSX", "VSPHERE", "FORTIGATE_FIREWALL", "PALO_ALTO_FIREWALL", "CISCO_ACI", "LOGICAL_MODEL", "MODELIZE_IT", "AWS_DISCOVERY_COLLECTOR"
resp.source_configurations[0].source_s3_configuration.s3_bucket #=> String
resp.source_configurations[0].source_s3_configuration.s3_bucket_owner #=> String
resp.source_configurations[0].source_s3_configuration.s3_key #=> String
resp.target_s3_configuration.s3_bucket #=> String
resp.target_s3_configuration.s3_bucket_owner #=> String
resp.target_network.topology #=> String, one of "ISOLATED_VPC", "HUB_AND_SPOKE"
resp.target_network.inbound_cidr #=> String
resp.target_network.outbound_cidr #=> String
resp.target_network.inspection_cidr #=> String
resp.target_deployment #=> String, one of "SINGLE_ACCOUNT", "MULTI_ACCOUNT"
resp.vpc_provisioning_strategy #=> String, one of "CREATE_NEW", "USE_EXISTING"
resp.cidr_mappings #=> Array
resp.cidr_mappings[0].original_cidr #=> String
resp.cidr_mappings[0].updated_cidr #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.scope_tags #=> Hash
resp.scope_tags["ScopeTagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the network migration definition.

  • :description (String)

    A description of the network migration definition.

  • :source_configurations (Array<Types::SourceConfiguration>)

    A list of source configurations for the network migration.

  • :target_s3_configuration (required, Types::TargetS3Configuration)

    The S3 configuration for storing the target network artifacts.

  • :target_network (required, Types::TargetNetwork)

    The target network configuration including topology and CIDR ranges.

  • :target_deployment (String)

    The target deployment configuration for the migrated network.

  • :vpc_provisioning_strategy (String)

    Specifies whether to create new target VPCs or use existing ones. Set to CREATE_NEW to provision new target VPCs as part of the migration, or USE_EXISTING to migrate into existing VPCs in the target account.

  • :cidr_mappings (Array<Types::CidrMapping>)

    A list of CIDR mappings that map original source CIDR ranges to updated target CIDR ranges. CIDR mappings can be provided only when vpcProvisioningStrategy is set to USE_EXISTING.

  • :tags (Hash<String,String>)

    Tags to assign to the network migration definition.

  • :scope_tags (Hash<String,String>)

    Scope tags for the network migration definition to control access and organization.

Returns:

See Also:



1271
1272
1273
1274
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 1271

def create_network_migration_definition(params = {}, options = {})
  req = build_request(:create_network_migration_definition, params)
  req.send_request(options)
end

#create_replication_configuration_template(params = {}) ⇒ Types::ReplicationConfigurationTemplate

Creates a new ReplicationConfigurationTemplate.

Examples:

Request syntax with placeholder values


resp = client.create_replication_configuration_template({
  staging_area_subnet_id: "SubnetID", # required
  associate_default_security_group: false, # required
  replication_servers_security_groups_i_ds: ["SecurityGroupID"], # required
  replication_server_instance_type: "EC2InstanceType", # required
  use_dedicated_replication_server: false, # required
  default_large_staging_disk_type: "GP2", # required, accepts GP2, ST1, GP3
  ebs_encryption: "DEFAULT", # required, accepts DEFAULT, CUSTOM
  ebs_encryption_key_arn: "ARN",
  bandwidth_throttling: 1, # required
  data_plane_routing: "PRIVATE_IP", # required, accepts PRIVATE_IP, PUBLIC_IP
  create_public_ip: false, # required
  staging_area_tags: { # required
    "TagKey" => "TagValue",
  },
  use_fips_endpoint: false,
  tags: {
    "TagKey" => "TagValue",
  },
  internet_protocol: "IPV4", # accepts IPV4, IPV6
  store_snapshot_on_local_zone: false,
  storage_configuration: {
    storage_type: "EBS", # required, accepts EBS, FSX_ONTAP
    fsx_ontap_configuration: {
      storage_virtual_machine_id: "StorageVirtualMachineId", # required
      credentials_secret_arn: "SecretArn", # required
    },
  },
})

Response structure


resp.replication_configuration_template_id #=> String
resp.arn #=> String
resp.staging_area_subnet_id #=> String
resp.associate_default_security_group #=> Boolean
resp.replication_servers_security_groups_i_ds #=> Array
resp.replication_servers_security_groups_i_ds[0] #=> String
resp.replication_server_instance_type #=> String
resp.use_dedicated_replication_server #=> Boolean
resp.default_large_staging_disk_type #=> String, one of "GP2", "ST1", "GP3"
resp.ebs_encryption #=> String, one of "DEFAULT", "CUSTOM"
resp.ebs_encryption_key_arn #=> String
resp.bandwidth_throttling #=> Integer
resp.data_plane_routing #=> String, one of "PRIVATE_IP", "PUBLIC_IP"
resp.create_public_ip #=> Boolean
resp.staging_area_tags #=> Hash
resp.staging_area_tags["TagKey"] #=> String
resp.use_fips_endpoint #=> Boolean
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.internet_protocol #=> String, one of "IPV4", "IPV6"
resp.store_snapshot_on_local_zone #=> Boolean
resp.storage_configuration.storage_type #=> String, one of "EBS", "FSX_ONTAP"
resp.storage_configuration.fsx_ontap_configuration.storage_virtual_machine_id #=> String
resp.storage_configuration.fsx_ontap_configuration.credentials_secret_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :staging_area_subnet_id (required, String)

    Request to configure the Staging Area subnet ID during Replication Settings template creation.

  • :associate_default_security_group (required, Boolean)

    Request to associate the default Application Migration Service Security group with the Replication Settings template.

  • :replication_servers_security_groups_i_ds (required, Array<String>)

    Request to configure the Replication Server Security group ID during Replication Settings template creation.

  • :replication_server_instance_type (required, String)

    Request to configure the Replication Server instance type during Replication Settings template creation.

  • :use_dedicated_replication_server (required, Boolean)

    Request to use Dedicated Replication Servers during Replication Settings template creation.

  • :default_large_staging_disk_type (required, String)

    Request to configure the default large staging disk EBS volume type during Replication Settings template creation.

  • :ebs_encryption (required, String)

    Request to configure EBS encryption during Replication Settings template creation.

  • :ebs_encryption_key_arn (String)

    Request to configure an EBS encryption key during Replication Settings template creation.

  • :bandwidth_throttling (required, Integer)

    Request to configure bandwidth throttling during Replication Settings template creation.

  • :data_plane_routing (required, String)

    Request to configure data plane routing during Replication Settings template creation.

  • :create_public_ip (required, Boolean)

    Request to create Public IP during Replication Settings template creation.

  • :staging_area_tags (required, Hash<String,String>)

    Request to configure Staging Area tags during Replication Settings template creation.

  • :use_fips_endpoint (Boolean)

    Request to use Fips Endpoint during Replication Settings template creation.

  • :tags (Hash<String,String>)

    Request to configure tags during Replication Settings template creation.

  • :internet_protocol (String)

    Request to configure the internet protocol to IPv4 or IPv6.

  • :store_snapshot_on_local_zone (Boolean)

    Request to store snapshot on local zone during Replication Settings template creation.

  • :storage_configuration (Types::StorageConfiguration)

    Request to configure storage during Replication Settings template creation.

Returns:

See Also:



1430
1431
1432
1433
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 1430

def create_replication_configuration_template(params = {}, options = {})
  req = build_request(:create_replication_configuration_template, params)
  req.send_request(options)
end

#create_wave(params = {}) ⇒ Types::Wave

Create wave.

Examples:

Request syntax with placeholder values


resp = client.create_wave({
  name: "WaveName", # required
  description: "WaveDescription",
  tags: {
    "TagKey" => "TagValue",
  },
  account_id: "AccountID",
})

Response structure


resp.wave_id #=> String
resp.arn #=> String
resp.name #=> String
resp.description #=> String
resp.is_archived #=> Boolean
resp.wave_aggregated_status.last_update_date_time #=> String
resp.wave_aggregated_status.replication_started_date_time #=> String
resp.wave_aggregated_status.health_status #=> String, one of "HEALTHY", "LAGGING", "ERROR"
resp.wave_aggregated_status.progress_status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "COMPLETED"
resp.wave_aggregated_status.total_applications #=> Integer
resp.creation_date_time #=> String
resp.last_modified_date_time #=> String
resp.tags #=> Hash
resp.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    Wave name.

  • :description (String)

    Wave description.

  • :tags (Hash<String,String>)

    Wave tags.

  • :account_id (String)

    Account ID.

Returns:

See Also:



1493
1494
1495
1496
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 1493

def create_wave(params = {}, options = {})
  req = build_request(:create_wave, params)
  req.send_request(options)
end

#delete_application(params = {}) ⇒ Struct

Delete application.

Examples:

Request syntax with placeholder values


resp = client.delete_application({
  application_id: "ApplicationID", # required
  account_id: "AccountID",
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    Application ID.

  • :account_id (String)

    Account ID.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1519
1520
1521
1522
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 1519

def delete_application(params = {}, options = {})
  req = build_request(:delete_application, params)
  req.send_request(options)
end

#delete_connector(params = {}) ⇒ Struct

Delete Connector.

Examples:

Request syntax with placeholder values


resp = client.delete_connector({
  connector_id: "ConnectorID", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :connector_id (required, String)

    Delete Connector request connector ID.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1541
1542
1543
1544
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 1541

def delete_connector(params = {}, options = {})
  req = build_request(:delete_connector, params)
  req.send_request(options)
end

#delete_job(params = {}) ⇒ Struct

Deletes a single Job by ID.

Examples:

Request syntax with placeholder values


resp = client.delete_job({
  job_id: "JobID", # required
  account_id: "AccountID",
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :job_id (required, String)

    Request to delete Job from service by Job ID.

  • :account_id (String)

    Request to delete Job from service by Account ID.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1567
1568
1569
1570
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 1567

def delete_job(params = {}, options = {})
  req = build_request(:delete_job, params)
  req.send_request(options)
end

#delete_launch_configuration_template(params = {}) ⇒ Struct

Deletes a single Launch Configuration Template by ID.

Examples:

Request syntax with placeholder values


resp = client.delete_launch_configuration_template({
  launch_configuration_template_id: "LaunchConfigurationTemplateID", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :launch_configuration_template_id (required, String)

    ID of resource to be deleted.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1589
1590
1591
1592
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 1589

def delete_launch_configuration_template(params = {}, options = {})
  req = build_request(:delete_launch_configuration_template, params)
  req.send_request(options)
end

#delete_network_migration_definition(params = {}) ⇒ Struct

Deletes a network migration definition. This operation removes the migration definition and all associated metadata.

Examples:

Example: Sample DeleteNetworkMigrationDefinition call


resp = client.delete_network_migration_definition({
  network_migration_definition_id: "nmd-01234567891234567", 
})

resp.to_h outputs the following:
{
}

Request syntax with placeholder values


resp = client.delete_network_migration_definition({
  network_migration_definition_id: "NetworkMigrationDefinitionID", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :network_migration_definition_id (required, String)

    The unique identifier of the network migration definition to delete.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1623
1624
1625
1626
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 1623

def delete_network_migration_definition(params = {}, options = {})
  req = build_request(:delete_network_migration_definition, params)
  req.send_request(options)
end

#delete_replication_configuration_template(params = {}) ⇒ Struct

Deletes a single Replication Configuration Template by ID

Examples:

Request syntax with placeholder values


resp = client.delete_replication_configuration_template({
  replication_configuration_template_id: "ReplicationConfigurationTemplateID", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :replication_configuration_template_id (required, String)

    Request to delete Replication Configuration Template from service by Replication Configuration Template ID.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1646
1647
1648
1649
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 1646

def delete_replication_configuration_template(params = {}, options = {})
  req = build_request(:delete_replication_configuration_template, params)
  req.send_request(options)
end

#delete_source_server(params = {}) ⇒ Struct

Deletes a single source server by ID.

Examples:

Request syntax with placeholder values


resp = client.delete_source_server({
  source_server_id: "SourceServerID", # required
  account_id: "AccountID",
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_server_id (required, String)

    Request to delete Source Server from service by Server ID.

  • :account_id (String)

    Request to delete Source Server from service by Account ID.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1672
1673
1674
1675
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 1672

def delete_source_server(params = {}, options = {})
  req = build_request(:delete_source_server, params)
  req.send_request(options)
end

#delete_vcenter_client(params = {}) ⇒ Struct

Deletes a given vCenter client by ID.

Examples:

Request syntax with placeholder values


resp = client.delete_vcenter_client({
  vcenter_client_id: "VcenterClientID", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :vcenter_client_id (required, String)

    ID of resource to be deleted.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1694
1695
1696
1697
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 1694

def delete_vcenter_client(params = {}, options = {})
  req = build_request(:delete_vcenter_client, params)
  req.send_request(options)
end

#delete_wave(params = {}) ⇒ Struct

Delete wave.

Examples:

Request syntax with placeholder values


resp = client.delete_wave({
  wave_id: "WaveID", # required
  account_id: "AccountID",
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :wave_id (required, String)

    Wave ID.

  • :account_id (String)

    Account ID.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1720
1721
1722
1723
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 1720

def delete_wave(params = {}, options = {})
  req = build_request(:delete_wave, params)
  req.send_request(options)
end

#describe_job_log_items(params = {}) ⇒ Types::DescribeJobLogItemsResponse

Retrieves detailed job log items with paging.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.describe_job_log_items({
  job_id: "JobID", # required
  max_results: 1,
  next_token: "PaginationToken",
  account_id: "AccountID",
})

Response structure


resp.items #=> Array
resp.items[0].log_date_time #=> String
resp.items[0].event #=> String, one of "JOB_START", "SERVER_SKIPPED", "CLEANUP_START", "CLEANUP_END", "CLEANUP_FAIL", "SNAPSHOT_START", "SNAPSHOT_END", "SNAPSHOT_FAIL", "USING_PREVIOUS_SNAPSHOT", "CONVERSION_START", "CONVERSION_END", "CONVERSION_FAIL", "LAUNCH_START", "LAUNCH_FAILED", "JOB_CANCEL", "JOB_END"
resp.items[0].event_data.source_server_id #=> String
resp.items[0].event_data.conversion_server_id #=> String
resp.items[0].event_data.target_instance_id #=> String
resp.items[0].event_data.raw_error #=> String
resp.items[0].event_data.attempt_count #=> Integer
resp.items[0].event_data.max_attempts_count #=> Integer
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :job_id (required, String)

    Request to describe Job log job ID.

  • :max_results (Integer)

    Request to describe Job log item maximum results.

  • :next_token (String)

    Request to describe Job log next token.

  • :account_id (String)

    Request to describe Job log Account ID.

Returns:

See Also:



1772
1773
1774
1775
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 1772

def describe_job_log_items(params = {}, options = {})
  req = build_request(:describe_job_log_items, params)
  req.send_request(options)
end

#describe_jobs(params = {}) ⇒ Types::DescribeJobsResponse

Returns a list of Jobs. Use the jobIDs and fromDate and toDate filters to limit which jobs are returned. The response is sorted by creationDateTime - latest date first. Jobs are normally created by the StartTest, StartCutover, and TerminateTargetInstances APIs. Jobs are also created by DiagnosticLaunch and TerminateDiagnosticInstances, which are APIs available only to Support and only used in response to relevant support tickets.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.describe_jobs({
  filters: {
    job_i_ds: ["JobID"],
    from_date: "ISO8601DatetimeString",
    to_date: "ISO8601DatetimeString",
  },
  max_results: 1,
  next_token: "PaginationToken",
  account_id: "AccountID",
})

Response structure


resp.items #=> Array
resp.items[0].job_id #=> String
resp.items[0].arn #=> String
resp.items[0].type #=> String, one of "LAUNCH", "TERMINATE"
resp.items[0].initiated_by #=> String, one of "START_TEST", "START_CUTOVER", "DIAGNOSTIC", "TERMINATE"
resp.items[0].creation_date_time #=> String
resp.items[0].end_date_time #=> String
resp.items[0].status #=> String, one of "PENDING", "STARTED", "COMPLETED"
resp.items[0].participating_servers #=> Array
resp.items[0].participating_servers[0].source_server_id #=> String
resp.items[0].participating_servers[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
resp.items[0].participating_servers[0].launched_ec2_instance_id #=> String
resp.items[0].participating_servers[0].post_launch_actions_status.ssm_agent_discovery_datetime #=> String
resp.items[0].participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list #=> Array
resp.items[0].participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.action_name #=> String
resp.items[0].participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.ssm_document_name #=> String
resp.items[0].participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.timeout_seconds #=> Integer
resp.items[0].participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.must_succeed_for_cutover #=> Boolean
resp.items[0].participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.parameters #=> Hash
resp.items[0].participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.parameters["SsmDocumentParameterName"] #=> Array
resp.items[0].participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.parameters["SsmDocumentParameterName"][0].parameter_type #=> String, one of "STRING", "SECURE_STRING"
resp.items[0].participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.parameters["SsmDocumentParameterName"][0].parameter_name #=> String
resp.items[0].participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.external_parameters #=> Hash
resp.items[0].participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.external_parameters["SsmDocumentParameterName"].dynamic_path #=> String
resp.items[0].participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document_type #=> String, one of "AUTOMATION", "COMMAND"
resp.items[0].participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].execution_id #=> String
resp.items[0].participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].execution_status #=> String, one of "IN_PROGRESS", "SUCCESS", "FAILED"
resp.items[0].participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].failure_reason #=> String
resp.items[0].tags #=> Hash
resp.items[0].tags["TagKey"] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :filters (Types::DescribeJobsRequestFilters)

    Request to describe Job log filters.

  • :max_results (Integer)

    Request to describe job log items by max results.

  • :next_token (String)

    Request to describe job log items by next token.

  • :account_id (String)

    Request to describe job log items by Account ID.

Returns:

See Also:



1855
1856
1857
1858
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 1855

def describe_jobs(params = {}, options = {})
  req = build_request(:describe_jobs, params)
  req.send_request(options)
end

#describe_launch_configuration_templates(params = {}) ⇒ Types::DescribeLaunchConfigurationTemplatesResponse

Lists all Launch Configuration Templates, filtered by Launch Configuration Template IDs

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.describe_launch_configuration_templates({
  launch_configuration_template_i_ds: ["LaunchConfigurationTemplateID"],
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.items #=> Array
resp.items[0].launch_configuration_template_id #=> String
resp.items[0].arn #=> String
resp.items[0].post_launch_actions.deployment #=> String, one of "TEST_AND_CUTOVER", "CUTOVER_ONLY", "TEST_ONLY"
resp.items[0].post_launch_actions.s3_log_bucket #=> String
resp.items[0].post_launch_actions.s3_output_key_prefix #=> String
resp.items[0].post_launch_actions.cloud_watch_log_group_name #=> String
resp.items[0].post_launch_actions.ssm_documents #=> Array
resp.items[0].post_launch_actions.ssm_documents[0].action_name #=> String
resp.items[0].post_launch_actions.ssm_documents[0].ssm_document_name #=> String
resp.items[0].post_launch_actions.ssm_documents[0].timeout_seconds #=> Integer
resp.items[0].post_launch_actions.ssm_documents[0].must_succeed_for_cutover #=> Boolean
resp.items[0].post_launch_actions.ssm_documents[0].parameters #=> Hash
resp.items[0].post_launch_actions.ssm_documents[0].parameters["SsmDocumentParameterName"] #=> Array
resp.items[0].post_launch_actions.ssm_documents[0].parameters["SsmDocumentParameterName"][0].parameter_type #=> String, one of "STRING", "SECURE_STRING"
resp.items[0].post_launch_actions.ssm_documents[0].parameters["SsmDocumentParameterName"][0].parameter_name #=> String
resp.items[0].post_launch_actions.ssm_documents[0].external_parameters #=> Hash
resp.items[0].post_launch_actions.ssm_documents[0].external_parameters["SsmDocumentParameterName"].dynamic_path #=> String
resp.items[0].enable_map_auto_tagging #=> Boolean
resp.items[0].map_auto_tagging_mpe_id #=> String
resp.items[0].tags #=> Hash
resp.items[0].tags["TagKey"] #=> String
resp.items[0].ec2_launch_template_id #=> String
resp.items[0].launch_disposition #=> String, one of "STOPPED", "STARTED"
resp.items[0].target_instance_type_right_sizing_method #=> String, one of "NONE", "BASIC"
resp.items[0].copy_private_ip #=> Boolean
resp.items[0].associate_public_ip_address #=> Boolean
resp.items[0].copy_tags #=> Boolean
resp.items[0].licensing.os_byol #=> Boolean
resp.items[0].boot_mode #=> String, one of "LEGACY_BIOS", "UEFI", "USE_SOURCE"
resp.items[0].small_volume_max_size #=> Integer
resp.items[0].small_volume_conf.volume_type #=> String, one of "io1", "io2", "gp3", "gp2", "st1", "sc1", "standard"
resp.items[0].small_volume_conf.iops #=> Integer
resp.items[0].small_volume_conf.throughput #=> Integer
resp.items[0].small_volume_conf.volume_initialization_rate #=> Integer
resp.items[0].small_volume_conf.delete_on_termination #=> Boolean
resp.items[0].large_volume_conf.volume_type #=> String, one of "io1", "io2", "gp3", "gp2", "st1", "sc1", "standard"
resp.items[0].large_volume_conf.iops #=> Integer
resp.items[0].large_volume_conf.throughput #=> Integer
resp.items[0].large_volume_conf.volume_initialization_rate #=> Integer
resp.items[0].large_volume_conf.delete_on_termination #=> Boolean
resp.items[0].enable_parameters_encryption #=> Boolean
resp.items[0].parameters_encryption_key #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :launch_configuration_template_i_ds (Array<String>)

    Request to filter Launch Configuration Templates list by Launch Configuration Template ID.

  • :max_results (Integer)

    Maximum results to be returned in DescribeLaunchConfigurationTemplates.

  • :next_token (String)

    Next pagination token returned from DescribeLaunchConfigurationTemplates.

Returns:

See Also:



1941
1942
1943
1944
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 1941

def describe_launch_configuration_templates(params = {}, options = {})
  req = build_request(:describe_launch_configuration_templates, params)
  req.send_request(options)
end

#describe_replication_configuration_templates(params = {}) ⇒ Types::DescribeReplicationConfigurationTemplatesResponse

Lists all ReplicationConfigurationTemplates, filtered by replication configuration template IDs.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.describe_replication_configuration_templates({
  replication_configuration_template_i_ds: ["ReplicationConfigurationTemplateID"],
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.items #=> Array
resp.items[0].replication_configuration_template_id #=> String
resp.items[0].arn #=> String
resp.items[0].staging_area_subnet_id #=> String
resp.items[0].associate_default_security_group #=> Boolean
resp.items[0].replication_servers_security_groups_i_ds #=> Array
resp.items[0].replication_servers_security_groups_i_ds[0] #=> String
resp.items[0].replication_server_instance_type #=> String
resp.items[0].use_dedicated_replication_server #=> Boolean
resp.items[0].default_large_staging_disk_type #=> String, one of "GP2", "ST1", "GP3"
resp.items[0].ebs_encryption #=> String, one of "DEFAULT", "CUSTOM"
resp.items[0].ebs_encryption_key_arn #=> String
resp.items[0].bandwidth_throttling #=> Integer
resp.items[0].data_plane_routing #=> String, one of "PRIVATE_IP", "PUBLIC_IP"
resp.items[0].create_public_ip #=> Boolean
resp.items[0].staging_area_tags #=> Hash
resp.items[0].staging_area_tags["TagKey"] #=> String
resp.items[0].use_fips_endpoint #=> Boolean
resp.items[0].tags #=> Hash
resp.items[0].tags["TagKey"] #=> String
resp.items[0].internet_protocol #=> String, one of "IPV4", "IPV6"
resp.items[0].store_snapshot_on_local_zone #=> Boolean
resp.items[0].storage_configuration.storage_type #=> String, one of "EBS", "FSX_ONTAP"
resp.items[0].storage_configuration.fsx_ontap_configuration.storage_virtual_machine_id #=> String
resp.items[0].storage_configuration.fsx_ontap_configuration.credentials_secret_arn #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :replication_configuration_template_i_ds (Array<String>)

    Request to describe Replication Configuration template by template IDs.

  • :max_results (Integer)

    Request to describe Replication Configuration template by max results.

  • :next_token (String)

    Request to describe Replication Configuration template by next token.

Returns:

See Also:



2007
2008
2009
2010
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 2007

def describe_replication_configuration_templates(params = {}, options = {})
  req = build_request(:describe_replication_configuration_templates, params)
  req.send_request(options)
end

#describe_source_servers(params = {}) ⇒ Types::DescribeSourceServersResponse

Retrieves all SourceServers or multiple SourceServers by ID.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.describe_source_servers({
  filters: {
    source_server_i_ds: ["SourceServerID"],
    is_archived: false,
    replication_types: ["AGENT_BASED"], # accepts AGENT_BASED, SNAPSHOT_SHIPPING
    life_cycle_states: ["STOPPED"], # accepts STOPPED, NOT_READY, READY_FOR_TEST, TESTING, READY_FOR_CUTOVER, CUTTING_OVER, CUTOVER, DISCONNECTED, DISCOVERED, PENDING_INSTALLATION
    application_i_ds: ["ApplicationID"],
  },
  max_results: 1,
  next_token: "PaginationToken",
  account_id: "AccountID",
})

Response structure


resp.items #=> Array
resp.items[0].source_server_id #=> String
resp.items[0].arn #=> String
resp.items[0].is_archived #=> Boolean
resp.items[0].tags #=> Hash
resp.items[0].tags["TagKey"] #=> String
resp.items[0].launched_instance.ec2_instance_id #=> String
resp.items[0].launched_instance.job_id #=> String
resp.items[0].launched_instance.first_boot #=> String, one of "WAITING", "SUCCEEDED", "UNKNOWN", "STOPPED"
resp.items[0].launched_instance.last_known_checks #=> Array
resp.items[0].launched_instance.last_known_checks[0].type #=> String, one of "EC2", "FSx"
resp.items[0].launched_instance.last_known_checks[0].name #=> String
resp.items[0].launched_instance.last_known_checks[0].status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.items[0].launched_instance.last_known_checks[0].error #=> String
resp.items[0].launched_instance.last_known_checks[0].checked_at #=> Time
resp.items[0].launched_instance.last_known_fsx_checks_status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.items[0].data_replication_info.lag_duration #=> String
resp.items[0].data_replication_info.eta_date_time #=> String
resp.items[0].data_replication_info.replicated_disks #=> Array
resp.items[0].data_replication_info.replicated_disks[0].device_name #=> String
resp.items[0].data_replication_info.replicated_disks[0].total_storage_bytes #=> Integer
resp.items[0].data_replication_info.replicated_disks[0].replicated_storage_bytes #=> Integer
resp.items[0].data_replication_info.replicated_disks[0].rescanned_storage_bytes #=> Integer
resp.items[0].data_replication_info.replicated_disks[0].backlogged_storage_bytes #=> Integer
resp.items[0].data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED", "PENDING_SNAPSHOT_SHIPPING", "SHIPPING_SNAPSHOT"
resp.items[0].data_replication_info.data_replication_initiation.start_date_time #=> String
resp.items[0].data_replication_info.data_replication_initiation.next_attempt_date_time #=> String
resp.items[0].data_replication_info.data_replication_initiation.steps #=> Array
resp.items[0].data_replication_info.data_replication_initiation.steps[0].name #=> String, one of "WAIT", "CREATE_SECURITY_GROUP", "LAUNCH_REPLICATION_SERVER", "BOOT_REPLICATION_SERVER", "AUTHENTICATE_WITH_SERVICE", "DOWNLOAD_REPLICATION_SOFTWARE", "CREATE_STAGING_DISKS", "ATTACH_STAGING_DISKS", "PAIR_REPLICATION_SERVER_WITH_AGENT", "CONNECT_AGENT_TO_REPLICATION_SERVER", "START_DATA_TRANSFER", "SETUP_FSX_PROXY"
resp.items[0].data_replication_info.data_replication_initiation.steps[0].status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "SKIPPED"
resp.items[0].data_replication_info.data_replication_error.error #=> String, one of "AGENT_NOT_SEEN", "SNAPSHOTS_FAILURE", "NOT_CONVERGING", "UNSTABLE_NETWORK", "FAILED_TO_CREATE_SECURITY_GROUP", "FAILED_TO_LAUNCH_REPLICATION_SERVER", "FAILED_TO_BOOT_REPLICATION_SERVER", "FAILED_TO_AUTHENTICATE_WITH_SERVICE", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", "FAILED_TO_CREATE_STAGING_DISKS", "FAILED_TO_ATTACH_STAGING_DISKS", "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", "FAILED_TO_START_DATA_TRANSFER", "UNSUPPORTED_VM_CONFIGURATION", "LAST_SNAPSHOT_JOB_FAILED", "FAILED_TO_SETUP_FSX_PROXY", "FAILED_TO_CREATE_FSX_SNAPSHOT"
resp.items[0].data_replication_info.data_replication_error.raw_error #=> String
resp.items[0].data_replication_info.last_snapshot_date_time #=> String
resp.items[0].data_replication_info.replicator_id #=> String
resp.items[0].life_cycle.added_to_service_date_time #=> String
resp.items[0].life_cycle.first_byte_date_time #=> String
resp.items[0].life_cycle.elapsed_replication_duration #=> String
resp.items[0].life_cycle.last_seen_by_service_date_time #=> String
resp.items[0].life_cycle.last_test.initiated.api_call_date_time #=> String
resp.items[0].life_cycle.last_test.initiated.job_id #=> String
resp.items[0].life_cycle.last_test.reverted.api_call_date_time #=> String
resp.items[0].life_cycle.last_test.finalized.api_call_date_time #=> String
resp.items[0].life_cycle.last_cutover.initiated.api_call_date_time #=> String
resp.items[0].life_cycle.last_cutover.initiated.job_id #=> String
resp.items[0].life_cycle.last_cutover.reverted.api_call_date_time #=> String
resp.items[0].life_cycle.last_cutover.finalized.api_call_date_time #=> String
resp.items[0].life_cycle.state #=> String, one of "STOPPED", "NOT_READY", "READY_FOR_TEST", "TESTING", "READY_FOR_CUTOVER", "CUTTING_OVER", "CUTOVER", "DISCONNECTED", "DISCOVERED", "PENDING_INSTALLATION"
resp.items[0].source_properties.last_updated_date_time #=> String
resp.items[0].source_properties.recommended_instance_type #=> String
resp.items[0].source_properties.identification_hints.fqdn #=> String
resp.items[0].source_properties.identification_hints.hostname #=> String
resp.items[0].source_properties.identification_hints.vm_ware_uuid #=> String
resp.items[0].source_properties.identification_hints.aws_instance_id #=> String
resp.items[0].source_properties.identification_hints.vm_path #=> String
resp.items[0].source_properties.network_interfaces #=> Array
resp.items[0].source_properties.network_interfaces[0].mac_address #=> String
resp.items[0].source_properties.network_interfaces[0].ips #=> Array
resp.items[0].source_properties.network_interfaces[0].ips[0] #=> String
resp.items[0].source_properties.network_interfaces[0].is_primary #=> Boolean
resp.items[0].source_properties.disks #=> Array
resp.items[0].source_properties.disks[0].device_name #=> String
resp.items[0].source_properties.disks[0].bytes #=> Integer
resp.items[0].source_properties.cpus #=> Array
resp.items[0].source_properties.cpus[0].cores #=> Integer
resp.items[0].source_properties.cpus[0].model_name #=> String
resp.items[0].source_properties.ram_bytes #=> Integer
resp.items[0].source_properties.os.full_string #=> String
resp.items[0].replication_type #=> String, one of "AGENT_BASED", "SNAPSHOT_SHIPPING"
resp.items[0].vcenter_client_id #=> String
resp.items[0].application_id #=> String
resp.items[0].user_provided_id #=> String
resp.items[0].fqdn_for_action_framework #=> String
resp.items[0].connector_action.credentials_secret_arn #=> String
resp.items[0].connector_action.connector_arn #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :filters (Types::DescribeSourceServersRequestFilters)

    Request to filter Source Servers list.

  • :max_results (Integer)

    Request to filter Source Servers list by maximum results.

  • :next_token (String)

    Request to filter Source Servers list by next token.

  • :account_id (String)

    Request to filter Source Servers list by Account ID.

Returns:

See Also:



2130
2131
2132
2133
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 2130

def describe_source_servers(params = {}, options = {})
  req = build_request(:describe_source_servers, params)
  req.send_request(options)
end

#describe_vcenter_clients(params = {}) ⇒ Types::DescribeVcenterClientsResponse

Returns a list of the installed vCenter clients.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.describe_vcenter_clients({
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.items #=> Array
resp.items[0].vcenter_client_id #=> String
resp.items[0].arn #=> String
resp.items[0].hostname #=> String
resp.items[0].vcenter_uuid #=> String
resp.items[0].datacenter_name #=> String
resp.items[0].last_seen_datetime #=> String
resp.items[0].source_server_tags #=> Hash
resp.items[0].source_server_tags["TagKey"] #=> String
resp.items[0].tags #=> Hash
resp.items[0].tags["TagKey"] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    Maximum results to be returned in DescribeVcenterClients.

  • :next_token (String)

    Next pagination token to be provided for DescribeVcenterClients.

Returns:

See Also:



2176
2177
2178
2179
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 2176

def describe_vcenter_clients(params = {}, options = {})
  req = build_request(:describe_vcenter_clients, params)
  req.send_request(options)
end

#disassociate_applications(params = {}) ⇒ Struct

Disassociate applications from wave.

Examples:

Request syntax with placeholder values


resp = client.disassociate_applications({
  wave_id: "WaveID", # required
  application_i_ds: ["ApplicationID"], # required
  account_id: "AccountID",
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :wave_id (required, String)

    Wave ID.

  • :application_i_ds (required, Array<String>)

    Application IDs list.

  • :account_id (String)

    Account ID.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2206
2207
2208
2209
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 2206

def disassociate_applications(params = {}, options = {})
  req = build_request(:disassociate_applications, params)
  req.send_request(options)
end

#disassociate_source_servers(params = {}) ⇒ Struct

Disassociate source servers from application.

Examples:

Request syntax with placeholder values


resp = client.disassociate_source_servers({
  application_id: "ApplicationID", # required
  source_server_i_ds: ["SourceServerID"], # required
  account_id: "AccountID",
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    Application ID.

  • :source_server_i_ds (required, Array<String>)

    Source server IDs list.

  • :account_id (String)

    Account ID.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2236
2237
2238
2239
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 2236

def disassociate_source_servers(params = {}, options = {})
  req = build_request(:disassociate_source_servers, params)
  req.send_request(options)
end

#disconnect_from_service(params = {}) ⇒ Types::SourceServer

Disconnects specific Source Servers from Application Migration Service. Data replication is stopped immediately. All AWS resources created by Application Migration Service for enabling the replication of these source servers will be terminated / deleted within 90 minutes. Launched Test or Cutover instances will NOT be terminated. If the agent on the source server has not been prevented from communicating with Application Migration Service, then it will receive a command to uninstall itself (within approximately 10 minutes). The following properties of the SourceServer will be changed immediately: dataReplicationInfo.dataReplicationState will be set to DISCONNECTED; The totalStorageBytes property for each of dataReplicationInfo.replicatedDisks will be set to zero; dataReplicationInfo.lagDuration and dataReplicationInfo.lagDuration will be nullified.

Examples:

Request syntax with placeholder values


resp = client.disconnect_from_service({
  source_server_id: "SourceServerID", # required
  account_id: "AccountID",
})

Response structure


resp.source_server_id #=> String
resp.arn #=> String
resp.is_archived #=> Boolean
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.launched_instance.ec2_instance_id #=> String
resp.launched_instance.job_id #=> String
resp.launched_instance.first_boot #=> String, one of "WAITING", "SUCCEEDED", "UNKNOWN", "STOPPED"
resp.launched_instance.last_known_checks #=> Array
resp.launched_instance.last_known_checks[0].type #=> String, one of "EC2", "FSx"
resp.launched_instance.last_known_checks[0].name #=> String
resp.launched_instance.last_known_checks[0].status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.launched_instance.last_known_checks[0].error #=> String
resp.launched_instance.last_known_checks[0].checked_at #=> Time
resp.launched_instance.last_known_fsx_checks_status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.data_replication_info.lag_duration #=> String
resp.data_replication_info.eta_date_time #=> String
resp.data_replication_info.replicated_disks #=> Array
resp.data_replication_info.replicated_disks[0].device_name #=> String
resp.data_replication_info.replicated_disks[0].total_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].replicated_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].rescanned_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].backlogged_storage_bytes #=> Integer
resp.data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED", "PENDING_SNAPSHOT_SHIPPING", "SHIPPING_SNAPSHOT"
resp.data_replication_info.data_replication_initiation.start_date_time #=> String
resp.data_replication_info.data_replication_initiation.next_attempt_date_time #=> String
resp.data_replication_info.data_replication_initiation.steps #=> Array
resp.data_replication_info.data_replication_initiation.steps[0].name #=> String, one of "WAIT", "CREATE_SECURITY_GROUP", "LAUNCH_REPLICATION_SERVER", "BOOT_REPLICATION_SERVER", "AUTHENTICATE_WITH_SERVICE", "DOWNLOAD_REPLICATION_SOFTWARE", "CREATE_STAGING_DISKS", "ATTACH_STAGING_DISKS", "PAIR_REPLICATION_SERVER_WITH_AGENT", "CONNECT_AGENT_TO_REPLICATION_SERVER", "START_DATA_TRANSFER", "SETUP_FSX_PROXY"
resp.data_replication_info.data_replication_initiation.steps[0].status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "SKIPPED"
resp.data_replication_info.data_replication_error.error #=> String, one of "AGENT_NOT_SEEN", "SNAPSHOTS_FAILURE", "NOT_CONVERGING", "UNSTABLE_NETWORK", "FAILED_TO_CREATE_SECURITY_GROUP", "FAILED_TO_LAUNCH_REPLICATION_SERVER", "FAILED_TO_BOOT_REPLICATION_SERVER", "FAILED_TO_AUTHENTICATE_WITH_SERVICE", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", "FAILED_TO_CREATE_STAGING_DISKS", "FAILED_TO_ATTACH_STAGING_DISKS", "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", "FAILED_TO_START_DATA_TRANSFER", "UNSUPPORTED_VM_CONFIGURATION", "LAST_SNAPSHOT_JOB_FAILED", "FAILED_TO_SETUP_FSX_PROXY", "FAILED_TO_CREATE_FSX_SNAPSHOT"
resp.data_replication_info.data_replication_error.raw_error #=> String
resp.data_replication_info.last_snapshot_date_time #=> String
resp.data_replication_info.replicator_id #=> String
resp.life_cycle.added_to_service_date_time #=> String
resp.life_cycle.first_byte_date_time #=> String
resp.life_cycle.elapsed_replication_duration #=> String
resp.life_cycle.last_seen_by_service_date_time #=> String
resp.life_cycle.last_test.initiated.api_call_date_time #=> String
resp.life_cycle.last_test.initiated.job_id #=> String
resp.life_cycle.last_test.reverted.api_call_date_time #=> String
resp.life_cycle.last_test.finalized.api_call_date_time #=> String
resp.life_cycle.last_cutover.initiated.api_call_date_time #=> String
resp.life_cycle.last_cutover.initiated.job_id #=> String
resp.life_cycle.last_cutover.reverted.api_call_date_time #=> String
resp.life_cycle.last_cutover.finalized.api_call_date_time #=> String
resp.life_cycle.state #=> String, one of "STOPPED", "NOT_READY", "READY_FOR_TEST", "TESTING", "READY_FOR_CUTOVER", "CUTTING_OVER", "CUTOVER", "DISCONNECTED", "DISCOVERED", "PENDING_INSTALLATION"
resp.source_properties.last_updated_date_time #=> String
resp.source_properties.recommended_instance_type #=> String
resp.source_properties.identification_hints.fqdn #=> String
resp.source_properties.identification_hints.hostname #=> String
resp.source_properties.identification_hints.vm_ware_uuid #=> String
resp.source_properties.identification_hints.aws_instance_id #=> String
resp.source_properties.identification_hints.vm_path #=> String
resp.source_properties.network_interfaces #=> Array
resp.source_properties.network_interfaces[0].mac_address #=> String
resp.source_properties.network_interfaces[0].ips #=> Array
resp.source_properties.network_interfaces[0].ips[0] #=> String
resp.source_properties.network_interfaces[0].is_primary #=> Boolean
resp.source_properties.disks #=> Array
resp.source_properties.disks[0].device_name #=> String
resp.source_properties.disks[0].bytes #=> Integer
resp.source_properties.cpus #=> Array
resp.source_properties.cpus[0].cores #=> Integer
resp.source_properties.cpus[0].model_name #=> String
resp.source_properties.ram_bytes #=> Integer
resp.source_properties.os.full_string #=> String
resp.replication_type #=> String, one of "AGENT_BASED", "SNAPSHOT_SHIPPING"
resp.vcenter_client_id #=> String
resp.application_id #=> String
resp.user_provided_id #=> String
resp.fqdn_for_action_framework #=> String
resp.connector_action.credentials_secret_arn #=> String
resp.connector_action.connector_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_server_id (required, String)

    Request to disconnect Source Server from service by Server ID.

  • :account_id (String)

    Request to disconnect Source Server from service by Account ID.

Returns:

See Also:



2366
2367
2368
2369
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 2366

def disconnect_from_service(params = {}, options = {})
  req = build_request(:disconnect_from_service, params)
  req.send_request(options)
end

#finalize_cutover(params = {}) ⇒ Types::SourceServer

Finalizes the cutover immediately for specific Source Servers. All AWS resources created by Application Migration Service for enabling the replication of these source servers will be terminated / deleted within 90 minutes. Launched Test or Cutover instances will NOT be terminated. The AWS Replication Agent will receive a command to uninstall itself (within 10 minutes). The following properties of the SourceServer will be changed immediately: dataReplicationInfo.dataReplicationState will be changed to DISCONNECTED; The SourceServer.lifeCycle.state will be changed to CUTOVER; The totalStorageBytes property for each of dataReplicationInfo.replicatedDisks will be set to zero; dataReplicationInfo.lagDuration and dataReplicationInfo.lagDuration will be nullified.

Examples:

Request syntax with placeholder values


resp = client.finalize_cutover({
  source_server_id: "SourceServerID", # required
  account_id: "AccountID",
})

Response structure


resp.source_server_id #=> String
resp.arn #=> String
resp.is_archived #=> Boolean
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.launched_instance.ec2_instance_id #=> String
resp.launched_instance.job_id #=> String
resp.launched_instance.first_boot #=> String, one of "WAITING", "SUCCEEDED", "UNKNOWN", "STOPPED"
resp.launched_instance.last_known_checks #=> Array
resp.launched_instance.last_known_checks[0].type #=> String, one of "EC2", "FSx"
resp.launched_instance.last_known_checks[0].name #=> String
resp.launched_instance.last_known_checks[0].status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.launched_instance.last_known_checks[0].error #=> String
resp.launched_instance.last_known_checks[0].checked_at #=> Time
resp.launched_instance.last_known_fsx_checks_status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.data_replication_info.lag_duration #=> String
resp.data_replication_info.eta_date_time #=> String
resp.data_replication_info.replicated_disks #=> Array
resp.data_replication_info.replicated_disks[0].device_name #=> String
resp.data_replication_info.replicated_disks[0].total_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].replicated_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].rescanned_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].backlogged_storage_bytes #=> Integer
resp.data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED", "PENDING_SNAPSHOT_SHIPPING", "SHIPPING_SNAPSHOT"
resp.data_replication_info.data_replication_initiation.start_date_time #=> String
resp.data_replication_info.data_replication_initiation.next_attempt_date_time #=> String
resp.data_replication_info.data_replication_initiation.steps #=> Array
resp.data_replication_info.data_replication_initiation.steps[0].name #=> String, one of "WAIT", "CREATE_SECURITY_GROUP", "LAUNCH_REPLICATION_SERVER", "BOOT_REPLICATION_SERVER", "AUTHENTICATE_WITH_SERVICE", "DOWNLOAD_REPLICATION_SOFTWARE", "CREATE_STAGING_DISKS", "ATTACH_STAGING_DISKS", "PAIR_REPLICATION_SERVER_WITH_AGENT", "CONNECT_AGENT_TO_REPLICATION_SERVER", "START_DATA_TRANSFER", "SETUP_FSX_PROXY"
resp.data_replication_info.data_replication_initiation.steps[0].status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "SKIPPED"
resp.data_replication_info.data_replication_error.error #=> String, one of "AGENT_NOT_SEEN", "SNAPSHOTS_FAILURE", "NOT_CONVERGING", "UNSTABLE_NETWORK", "FAILED_TO_CREATE_SECURITY_GROUP", "FAILED_TO_LAUNCH_REPLICATION_SERVER", "FAILED_TO_BOOT_REPLICATION_SERVER", "FAILED_TO_AUTHENTICATE_WITH_SERVICE", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", "FAILED_TO_CREATE_STAGING_DISKS", "FAILED_TO_ATTACH_STAGING_DISKS", "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", "FAILED_TO_START_DATA_TRANSFER", "UNSUPPORTED_VM_CONFIGURATION", "LAST_SNAPSHOT_JOB_FAILED", "FAILED_TO_SETUP_FSX_PROXY", "FAILED_TO_CREATE_FSX_SNAPSHOT"
resp.data_replication_info.data_replication_error.raw_error #=> String
resp.data_replication_info.last_snapshot_date_time #=> String
resp.data_replication_info.replicator_id #=> String
resp.life_cycle.added_to_service_date_time #=> String
resp.life_cycle.first_byte_date_time #=> String
resp.life_cycle.elapsed_replication_duration #=> String
resp.life_cycle.last_seen_by_service_date_time #=> String
resp.life_cycle.last_test.initiated.api_call_date_time #=> String
resp.life_cycle.last_test.initiated.job_id #=> String
resp.life_cycle.last_test.reverted.api_call_date_time #=> String
resp.life_cycle.last_test.finalized.api_call_date_time #=> String
resp.life_cycle.last_cutover.initiated.api_call_date_time #=> String
resp.life_cycle.last_cutover.initiated.job_id #=> String
resp.life_cycle.last_cutover.reverted.api_call_date_time #=> String
resp.life_cycle.last_cutover.finalized.api_call_date_time #=> String
resp.life_cycle.state #=> String, one of "STOPPED", "NOT_READY", "READY_FOR_TEST", "TESTING", "READY_FOR_CUTOVER", "CUTTING_OVER", "CUTOVER", "DISCONNECTED", "DISCOVERED", "PENDING_INSTALLATION"
resp.source_properties.last_updated_date_time #=> String
resp.source_properties.recommended_instance_type #=> String
resp.source_properties.identification_hints.fqdn #=> String
resp.source_properties.identification_hints.hostname #=> String
resp.source_properties.identification_hints.vm_ware_uuid #=> String
resp.source_properties.identification_hints.aws_instance_id #=> String
resp.source_properties.identification_hints.vm_path #=> String
resp.source_properties.network_interfaces #=> Array
resp.source_properties.network_interfaces[0].mac_address #=> String
resp.source_properties.network_interfaces[0].ips #=> Array
resp.source_properties.network_interfaces[0].ips[0] #=> String
resp.source_properties.network_interfaces[0].is_primary #=> Boolean
resp.source_properties.disks #=> Array
resp.source_properties.disks[0].device_name #=> String
resp.source_properties.disks[0].bytes #=> Integer
resp.source_properties.cpus #=> Array
resp.source_properties.cpus[0].cores #=> Integer
resp.source_properties.cpus[0].model_name #=> String
resp.source_properties.ram_bytes #=> Integer
resp.source_properties.os.full_string #=> String
resp.replication_type #=> String, one of "AGENT_BASED", "SNAPSHOT_SHIPPING"
resp.vcenter_client_id #=> String
resp.application_id #=> String
resp.user_provided_id #=> String
resp.fqdn_for_action_framework #=> String
resp.connector_action.credentials_secret_arn #=> String
resp.connector_action.connector_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_server_id (required, String)

    Request to finalize Cutover by Source Server ID.

  • :account_id (String)

    Request to finalize Cutover by Source Account ID.

Returns:

See Also:



2495
2496
2497
2498
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 2495

def finalize_cutover(params = {}, options = {})
  req = build_request(:finalize_cutover, params)
  req.send_request(options)
end

#get_launch_configuration(params = {}) ⇒ Types::LaunchConfiguration

Lists all LaunchConfigurations available, filtered by Source Server IDs.

Examples:

Request syntax with placeholder values


resp = client.get_launch_configuration({
  source_server_id: "SourceServerID", # required
  account_id: "AccountID",
})

Response structure


resp.source_server_id #=> String
resp.name #=> String
resp.ec2_launch_template_id #=> String
resp.launch_disposition #=> String, one of "STOPPED", "STARTED"
resp.target_instance_type_right_sizing_method #=> String, one of "NONE", "BASIC"
resp.copy_private_ip #=> Boolean
resp.copy_tags #=> Boolean
resp.licensing.os_byol #=> Boolean
resp.boot_mode #=> String, one of "LEGACY_BIOS", "UEFI", "USE_SOURCE"
resp.post_launch_actions.deployment #=> String, one of "TEST_AND_CUTOVER", "CUTOVER_ONLY", "TEST_ONLY"
resp.post_launch_actions.s3_log_bucket #=> String
resp.post_launch_actions.s3_output_key_prefix #=> String
resp.post_launch_actions.cloud_watch_log_group_name #=> String
resp.post_launch_actions.ssm_documents #=> Array
resp.post_launch_actions.ssm_documents[0].action_name #=> String
resp.post_launch_actions.ssm_documents[0].ssm_document_name #=> String
resp.post_launch_actions.ssm_documents[0].timeout_seconds #=> Integer
resp.post_launch_actions.ssm_documents[0].must_succeed_for_cutover #=> Boolean
resp.post_launch_actions.ssm_documents[0].parameters #=> Hash
resp.post_launch_actions.ssm_documents[0].parameters["SsmDocumentParameterName"] #=> Array
resp.post_launch_actions.ssm_documents[0].parameters["SsmDocumentParameterName"][0].parameter_type #=> String, one of "STRING", "SECURE_STRING"
resp.post_launch_actions.ssm_documents[0].parameters["SsmDocumentParameterName"][0].parameter_name #=> String
resp.post_launch_actions.ssm_documents[0].external_parameters #=> Hash
resp.post_launch_actions.ssm_documents[0].external_parameters["SsmDocumentParameterName"].dynamic_path #=> String
resp.enable_map_auto_tagging #=> Boolean
resp.map_auto_tagging_mpe_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_server_id (required, String)

    Request to get Launch Configuration information by Source Server ID.

  • :account_id (String)

    Request to get Launch Configuration information by Account ID.

Returns:

See Also:



2564
2565
2566
2567
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 2564

def get_launch_configuration(params = {}, options = {})
  req = build_request(:get_launch_configuration, params)
  req.send_request(options)
end

#get_network_migration_definition(params = {}) ⇒ Types::NetworkMigrationDefinition

Retrieves the details of a network migration definition including source and target configurations.

Examples:

Example: Sample GetNetworkMigrationDefinition call


resp = client.get_network_migration_definition({
  network_migration_definition_id: "nmd-01234567891234567", 
})

resp.to_h outputs the following:
{
  name: "network1", 
  created_at: Time.parse(1735334198), 
  description: "network 1 description", 
  network_migration_definition_id: "nmd-01234567891234567", 
  source_configurations: [
    {
      source_environment: "NSX", 
      source_s3_configuration: {
        s3_bucket: "source_bucket", 
        s3_bucket_owner: "012345678901", 
        s3_key: "source_key", 
      }, 
    }, 
  ], 
  tags: {
  }, 
  target_network: {
    inbound_cidr: "192.168.1.0/24", 
    topology: "ISOLATED_VPC", 
  }, 
  target_s3_configuration: {
    s3_bucket: "target_bucket", 
    s3_bucket_owner: "012345678901", 
  }, 
  updated_at: Time.parse(1735334198), 
}

Request syntax with placeholder values


resp = client.get_network_migration_definition({
  network_migration_definition_id: "NetworkMigrationDefinitionID", # required
})

Response structure


resp.arn #=> String
resp.network_migration_definition_id #=> String
resp.name #=> String
resp.description #=> String
resp.source_configurations #=> Array
resp.source_configurations[0].source_environment #=> String, one of "NSX", "VSPHERE", "FORTIGATE_FIREWALL", "PALO_ALTO_FIREWALL", "CISCO_ACI", "LOGICAL_MODEL", "MODELIZE_IT", "AWS_DISCOVERY_COLLECTOR"
resp.source_configurations[0].source_s3_configuration.s3_bucket #=> String
resp.source_configurations[0].source_s3_configuration.s3_bucket_owner #=> String
resp.source_configurations[0].source_s3_configuration.s3_key #=> String
resp.target_s3_configuration.s3_bucket #=> String
resp.target_s3_configuration.s3_bucket_owner #=> String
resp.target_network.topology #=> String, one of "ISOLATED_VPC", "HUB_AND_SPOKE"
resp.target_network.inbound_cidr #=> String
resp.target_network.outbound_cidr #=> String
resp.target_network.inspection_cidr #=> String
resp.target_deployment #=> String, one of "SINGLE_ACCOUNT", "MULTI_ACCOUNT"
resp.vpc_provisioning_strategy #=> String, one of "CREATE_NEW", "USE_EXISTING"
resp.cidr_mappings #=> Array
resp.cidr_mappings[0].original_cidr #=> String
resp.cidr_mappings[0].updated_cidr #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.scope_tags #=> Hash
resp.scope_tags["ScopeTagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :network_migration_definition_id (required, String)

    The unique identifier of the network migration definition to retrieve.

Returns:

See Also:



2667
2668
2669
2670
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 2667

def get_network_migration_definition(params = {}, options = {})
  req = build_request(:get_network_migration_definition, params)
  req.send_request(options)
end

#get_network_migration_mapper_segment_construct(params = {}) ⇒ Types::GetNetworkMigrationMapperSegmentConstructResponse

Retrieves detailed information about a specific construct within a mapper segment, including its properties and configuration data.

Examples:

Example: Sample GetNetworkMigrationMapperSegmentConstruct call


resp = client.get_network_migration_mapper_segment_construct({
  construct_id: "abc45678-abcd-abcd-efab-012345678abc", 
  network_migration_definition_id: "nmd-01234567891234567", 
  network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
  segment_id: "12345678-abcd-abcd-efab-0123456789ab", 
})

resp.to_h outputs the following:
{
  construct: {
    name: "SegmentConstructName", 
    construct_id: "abc45678-abcd-abcd-efab-012345678abc", 
    construct_type: "AWS::EC2::VPC", 
    created_at: Time.parse(1735334198), 
    description: "Segment construct description", 
    logical_id: "logical-id1", 
    properties: {
      "CidrBlock" => "192.168.101.0/24", 
      "MapPublicIpOnLaunch" => "False", 
      "Tags" => "[{'Key': 'Name', 'Value': '/infra/tier-1s/cgw/segments/Lab1-veeam-test-192.168.101.0/24'}]", 
    }, 
    updated_at: Time.parse(1735334198), 
  }, 
}

Request syntax with placeholder values


resp = client.get_network_migration_mapper_segment_construct({
  network_migration_definition_id: "NetworkMigrationDefinitionID", # required
  network_migration_execution_id: "NetworkMigrationExecutionID", # required
  segment_id: "SegmentID", # required
  construct_id: "ConstructID", # required
})

Response structure


resp.construct.construct_id #=> String
resp.construct.construct_type #=> String
resp.construct.name #=> String
resp.construct.description #=> String
resp.construct.logical_id #=> String
resp.construct.excluded #=> Boolean
resp.construct.created_at #=> Time
resp.construct.updated_at #=> Time
resp.construct.properties #=> Hash
resp.construct.properties["ConstructPropertyKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :network_migration_definition_id (required, String)

    The unique identifier of the network migration definition.

  • :network_migration_execution_id (required, String)

    The unique identifier of the network migration execution.

  • :segment_id (required, String)

    The unique identifier of the mapper segment.

  • :construct_id (required, String)

    The unique identifier of the construct within the segment.

Returns:

See Also:



2745
2746
2747
2748
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 2745

def get_network_migration_mapper_segment_construct(params = {}, options = {})
  req = build_request(:get_network_migration_mapper_segment_construct, params)
  req.send_request(options)
end

#get_replication_configuration(params = {}) ⇒ Types::ReplicationConfiguration

Lists all ReplicationConfigurations, filtered by Source Server ID.

Examples:

Request syntax with placeholder values


resp = client.get_replication_configuration({
  source_server_id: "SourceServerID", # required
  account_id: "AccountID",
})

Response structure


resp.source_server_id #=> String
resp.name #=> String
resp.staging_area_subnet_id #=> String
resp.associate_default_security_group #=> Boolean
resp.replication_servers_security_groups_i_ds #=> Array
resp.replication_servers_security_groups_i_ds[0] #=> String
resp.replication_server_instance_type #=> String
resp.use_dedicated_replication_server #=> Boolean
resp.default_large_staging_disk_type #=> String, one of "GP2", "ST1", "GP3"
resp.replicated_disks #=> Array
resp.replicated_disks[0].device_name #=> String
resp.replicated_disks[0].is_boot_disk #=> Boolean
resp.replicated_disks[0].staging_disk_type #=> String, one of "AUTO", "GP2", "IO1", "SC1", "ST1", "STANDARD", "GP3", "IO2", "FSX_ONTAP"
resp.replicated_disks[0].iops #=> Integer
resp.replicated_disks[0].throughput #=> Integer
resp.ebs_encryption #=> String, one of "DEFAULT", "CUSTOM"
resp.ebs_encryption_key_arn #=> String
resp.bandwidth_throttling #=> Integer
resp.data_plane_routing #=> String, one of "PRIVATE_IP", "PUBLIC_IP"
resp.create_public_ip #=> Boolean
resp.staging_area_tags #=> Hash
resp.staging_area_tags["TagKey"] #=> String
resp.use_fips_endpoint #=> Boolean
resp.internet_protocol #=> String, one of "IPV4", "IPV6"
resp.store_snapshot_on_local_zone #=> Boolean
resp.storage_configuration.storage_type #=> String, one of "EBS", "FSX_ONTAP"
resp.storage_configuration.fsx_ontap_configuration.storage_virtual_machine_id #=> String
resp.storage_configuration.fsx_ontap_configuration.credentials_secret_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_server_id (required, String)

    Request to get Replication Configuration by Source Server ID.

  • :account_id (String)

    Request to get Replication Configuration by Account ID.

Returns:

See Also:



2822
2823
2824
2825
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 2822

def get_replication_configuration(params = {}, options = {})
  req = build_request(:get_replication_configuration, params)
  req.send_request(options)
end

#initialize_service(params = {}) ⇒ Struct

Initialize Application Migration Service.

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2835
2836
2837
2838
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 2835

def initialize_service(params = {}, options = {})
  req = build_request(:initialize_service, params)
  req.send_request(options)
end

#list_applications(params = {}) ⇒ Types::ListApplicationsResponse

Retrieves all applications or multiple applications by ID.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_applications({
  filters: {
    application_i_ds: ["ApplicationID"],
    is_archived: false,
    wave_i_ds: ["WaveID"],
  },
  max_results: 1,
  next_token: "PaginationToken",
  account_id: "AccountID",
})

Response structure


resp.items #=> Array
resp.items[0].application_id #=> String
resp.items[0].arn #=> String
resp.items[0].name #=> String
resp.items[0].description #=> String
resp.items[0].is_archived #=> Boolean
resp.items[0].application_aggregated_status.last_update_date_time #=> String
resp.items[0].application_aggregated_status.health_status #=> String, one of "HEALTHY", "LAGGING", "ERROR"
resp.items[0].application_aggregated_status.progress_status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "COMPLETED"
resp.items[0].application_aggregated_status.total_source_servers #=> Integer
resp.items[0].creation_date_time #=> String
resp.items[0].last_modified_date_time #=> String
resp.items[0].tags #=> Hash
resp.items[0].tags["TagKey"] #=> String
resp.items[0].wave_id #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :filters (Types::ListApplicationsRequestFilters)

    Applications list filters.

  • :max_results (Integer)

    Maximum results to return when listing applications.

  • :next_token (String)

    Request next token.

  • :account_id (String)

    Applications list Account ID.

Returns:

See Also:



2897
2898
2899
2900
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 2897

def list_applications(params = {}, options = {})
  req = build_request(:list_applications, params)
  req.send_request(options)
end

#list_connectors(params = {}) ⇒ Types::ListConnectorsResponse

List Connectors.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_connectors({
  filters: {
    connector_i_ds: ["ConnectorID"],
  },
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.items #=> Array
resp.items[0].connector_id #=> String
resp.items[0].name #=> String
resp.items[0].ssm_instance_id #=> String
resp.items[0].arn #=> String
resp.items[0].tags #=> Hash
resp.items[0].tags["TagKey"] #=> String
resp.items[0].ssm_command_config.s3_output_enabled #=> Boolean
resp.items[0].ssm_command_config.output_s3_bucket_name #=> String
resp.items[0].ssm_command_config.cloud_watch_output_enabled #=> Boolean
resp.items[0].ssm_command_config.cloud_watch_log_group_name #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :filters (Types::ListConnectorsRequestFilters)

    List Connectors Request filters.

  • :max_results (Integer)

    List Connectors Request max results.

  • :next_token (String)

    List Connectors Request next token.

Returns:

See Also:



2949
2950
2951
2952
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 2949

def list_connectors(params = {}, options = {})
  req = build_request(:list_connectors, params)
  req.send_request(options)
end

#list_export_errors(params = {}) ⇒ Types::ListExportErrorsResponse

List export errors.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_export_errors({
  export_id: "ExportID", # required
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.items #=> Array
resp.items[0].error_date_time #=> String
resp.items[0].error_data.raw_error #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :export_id (required, String)

    List export errors request export id.

  • :max_results (Integer)

    List export errors request max results.

  • :next_token (String)

    List export errors request next token.

Returns:

See Also:



2991
2992
2993
2994
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 2991

def list_export_errors(params = {}, options = {})
  req = build_request(:list_export_errors, params)
  req.send_request(options)
end

#list_exports(params = {}) ⇒ Types::ListExportsResponse

List exports.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_exports({
  filters: {
    export_i_ds: ["ExportID"],
  },
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.items #=> Array
resp.items[0].export_id #=> String
resp.items[0].arn #=> String
resp.items[0].s3_bucket #=> String
resp.items[0].s3_key #=> String
resp.items[0].s3_bucket_owner #=> String
resp.items[0].creation_date_time #=> String
resp.items[0].end_date_time #=> String
resp.items[0].status #=> String, one of "PENDING", "STARTED", "FAILED", "SUCCEEDED"
resp.items[0].progress_percentage #=> Float
resp.items[0].summary.servers_count #=> Integer
resp.items[0].summary.applications_count #=> Integer
resp.items[0].summary.waves_count #=> Integer
resp.items[0].tags #=> Hash
resp.items[0].tags["TagKey"] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :filters (Types::ListExportsRequestFilters)

    List exports request filters.

  • :max_results (Integer)

    List export request max results.

  • :next_token (String)

    List export request next token.

Returns:

See Also:



3047
3048
3049
3050
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 3047

def list_exports(params = {}, options = {})
  req = build_request(:list_exports, params)
  req.send_request(options)
end

#list_import_errors(params = {}) ⇒ Types::ListImportErrorsResponse

List import errors.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_import_errors({
  import_id: "ImportID", # required
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.items #=> Array
resp.items[0].error_date_time #=> String
resp.items[0].error_type #=> String, one of "VALIDATION_ERROR", "PROCESSING_ERROR"
resp.items[0].error_data.source_server_id #=> String
resp.items[0].error_data.application_id #=> String
resp.items[0].error_data.wave_id #=> String
resp.items[0].error_data.ec2_launch_template_id #=> String
resp.items[0].error_data.row_number #=> Integer
resp.items[0].error_data.raw_error #=> String
resp.items[0].error_data. #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :import_id (required, String)

    List import errors request import id.

  • :max_results (Integer)

    List import errors request max results.

  • :next_token (String)

    List import errors request next token.

Returns:

See Also:



3096
3097
3098
3099
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 3096

def list_import_errors(params = {}, options = {})
  req = build_request(:list_import_errors, params)
  req.send_request(options)
end

#list_import_file_enrichments(params = {}) ⇒ Types::ListImportFileEnrichmentsResponse

Lists import file enrichment jobs with optional filtering by job IDs.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: Sample ListImportFileEnrichments call


resp = client.list_import_file_enrichments({
  filters: {
    job_i_ds: [
      "01234567-abcd-abcd-efab-0123456789ab", 
    ], 
  }, 
  max_results: 10, 
})

resp.to_h outputs the following:
{
  items: [
    {
      created_at: Time.parse(1735334198), 
      ended_at: Time.parse(1735334258), 
      job_id: "01234567-abcd-abcd-efab-0123456789ab", 
      s3_bucket_target: {
        s3_bucket: "my-target-bucket", 
        s3_bucket_owner: "123456789012", 
        s3_key: "enriched/output.csv", 
      }, 
      status: "SUCCEEDED", 
      status_details: "Import file enrichment completed successfully", 
    }, 
  ], 
  next_token: "NextTokenId", 
}

Request syntax with placeholder values


resp = client.list_import_file_enrichments({
  filters: {
    job_i_ds: ["ImportFileEnrichmentJobID"],
  },
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.items #=> Array
resp.items[0].job_id #=> String
resp.items[0].created_at #=> Time
resp.items[0].ended_at #=> Time
resp.items[0].status #=> String, one of "PENDING", "STARTED", "FAILED", "SUCCEEDED", "SUCCEEDED_WITH_WARNINGS"
resp.items[0].status_details #=> String
resp.items[0].checksum.encryption_algorithm #=> String, one of "SHA256"
resp.items[0].checksum.hash #=> String
resp.items[0].s3_bucket_target.s3_bucket #=> String
resp.items[0].s3_bucket_target.s3_bucket_owner #=> String
resp.items[0].s3_bucket_target.s3_key #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :filters (Types::ListImportFileEnrichmentsFilters)

    Filters to apply when listing import file enrichment jobs.

  • :max_results (Integer)

    The maximum number of results to return in a single call.

  • :next_token (String)

    The token for the next page of results.

Returns:

See Also:



3179
3180
3181
3182
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 3179

def list_import_file_enrichments(params = {}, options = {})
  req = build_request(:list_import_file_enrichments, params)
  req.send_request(options)
end

#list_imports(params = {}) ⇒ Types::ListImportsResponse

List imports.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_imports({
  filters: {
    import_i_ds: ["ImportID"],
  },
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.items #=> Array
resp.items[0].import_id #=> String
resp.items[0].arn #=> String
resp.items[0].s3_bucket_source.s3_bucket #=> String
resp.items[0].s3_bucket_source.s3_key #=> String
resp.items[0].s3_bucket_source.s3_bucket_owner #=> String
resp.items[0].creation_date_time #=> String
resp.items[0].end_date_time #=> String
resp.items[0].status #=> String, one of "PENDING", "STARTED", "FAILED", "SUCCEEDED"
resp.items[0].progress_percentage #=> Float
resp.items[0].summary.waves.created_count #=> Integer
resp.items[0].summary.waves.modified_count #=> Integer
resp.items[0].summary.applications.created_count #=> Integer
resp.items[0].summary.applications.modified_count #=> Integer
resp.items[0].summary.servers.created_count #=> Integer
resp.items[0].summary.servers.modified_count #=> Integer
resp.items[0].tags #=> Hash
resp.items[0].tags["TagKey"] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :filters (Types::ListImportsRequestFilters)

    List imports request filters.

  • :max_results (Integer)

    List imports request max results.

  • :next_token (String)

    List imports request next token.

Returns:

See Also:



3238
3239
3240
3241
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 3238

def list_imports(params = {}, options = {})
  req = build_request(:list_imports, params)
  req.send_request(options)
end

#list_managed_accounts(params = {}) ⇒ Types::ListManagedAccountsResponse

List Managed Accounts.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_managed_accounts({
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.items #=> Array
resp.items[0]. #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    List managed accounts request max results.

  • :next_token (String)

    List managed accounts request next token.

Returns:

See Also:



3275
3276
3277
3278
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 3275

def list_managed_accounts(params = {}, options = {})
  req = build_request(:list_managed_accounts, params)
  req.send_request(options)
end

#list_network_migration_analyses(params = {}) ⇒ Types::ListNetworkMigrationAnalysesResponse

Lists network migration analysis jobs for a specified execution. Returns information about analysis job status and results.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: Sample ListNetworkMigrationAnalyses call


resp = client.list_network_migration_analyses({
  network_migration_definition_id: "nmd-01234567891234567", 
  network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
})

resp.to_h outputs the following:
{
  items: [
    {
      created_at: Time.parse(1735334198), 
      ended_at: Time.parse(1735334258), 
      job_id: "01234567-abcd-abcd-efab-0123456789ab", 
      network_migration_definition_id: "nmd-01234567891234567", 
      network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
      status: "SUCCEEDED", 
      status_details: "Job status details", 
    }, 
  ], 
  next_token: "NextTokenId", 
}

Request syntax with placeholder values


resp = client.list_network_migration_analyses({
  network_migration_execution_id: "NetworkMigrationExecutionID", # required
  network_migration_definition_id: "NetworkMigrationDefinitionID", # required
  filters: {
    job_i_ds: ["NetworkMigrationJobID"],
  },
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.items #=> Array
resp.items[0].job_id #=> String
resp.items[0].network_migration_execution_id #=> String
resp.items[0].network_migration_definition_id #=> String
resp.items[0].created_at #=> Time
resp.items[0].ended_at #=> Time
resp.items[0].status #=> String, one of "PENDING", "STARTED", "SUCCEEDED", "FAILED"
resp.items[0].status_details #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :network_migration_execution_id (required, String)

    The unique identifier of the network migration execution to list analyses for.

  • :network_migration_definition_id (required, String)

    The unique identifier of the network migration definition.

  • :filters (Types::ListNetworkMigrationAnalysesFilters)

    Filters to apply when listing analysis jobs.

  • :max_results (Integer)

    The maximum number of results to return in a single call.

  • :next_token (String)

    The token for the next page of results.

Returns:

See Also:



3358
3359
3360
3361
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 3358

def list_network_migration_analyses(params = {}, options = {})
  req = build_request(:list_network_migration_analyses, params)
  req.send_request(options)
end

#list_network_migration_analysis_results(params = {}) ⇒ Types::ListNetworkMigrationAnalysisResultsResponse

Lists the results of network migration analyses, showing connectivity and compatibility findings for migrated resources.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: Sample ListNetworkMigrationAnalysisResults call


resp = client.list_network_migration_analysis_results({
  network_migration_definition_id: "nmd-01234567891234567", 
  network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
})

resp.to_h outputs the following:
{
  items: [
    {
      analysis_result: "analysis result", 
      analyzer_type: "REACHABILITY_ANALYZER", 
      job_id: "01234567-abcd-abcd-efab-0123456789ab", 
      network_migration_definition_id: "nmd-01234567891234567", 
      network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
      source: {
        subnet_id: "subnet-12345678", 
        vpc_id: "vpc-12345678", 
      }, 
      status: "SUCCEEDED", 
      target: {
        subnet_id: "subnet-01234567", 
        vpc_id: "vpc-01234567", 
      }, 
    }, 
  ], 
  next_token: "NextTokenId", 
}

Request syntax with placeholder values


resp = client.list_network_migration_analysis_results({
  network_migration_execution_id: "NetworkMigrationExecutionID", # required
  network_migration_definition_id: "NetworkMigrationDefinitionID", # required
  filters: {
    vpc_i_ds: ["VpcID"],
  },
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.items #=> Array
resp.items[0].job_id #=> String
resp.items[0].network_migration_execution_id #=> String
resp.items[0].network_migration_definition_id #=> String
resp.items[0].analyzer_type #=> String, one of "REACHABILITY_ANALYZER"
resp.items[0].source.vpc_id #=> String
resp.items[0].source.subnet_id #=> String
resp.items[0].target.vpc_id #=> String
resp.items[0].target.subnet_id #=> String
resp.items[0].status #=> String, one of "PENDING", "STARTED", "SUCCEEDED", "FAILED"
resp.items[0].analysis_result #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :network_migration_execution_id (required, String)

    The unique identifier of the network migration execution.

  • :network_migration_definition_id (required, String)

    The unique identifier of the network migration definition.

  • :filters (Types::ListNetworkMigrationAnalysisResultsFilters)

    Filters to apply when listing analysis results, such as VPC IDs.

  • :max_results (Integer)

    The maximum number of results to return in a single call.

  • :next_token (String)

    The token for the next page of results.

Returns:

See Also:



3450
3451
3452
3453
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 3450

def list_network_migration_analysis_results(params = {}, options = {})
  req = build_request(:list_network_migration_analysis_results, params)
  req.send_request(options)
end

#list_network_migration_code_generation_segments(params = {}) ⇒ Types::ListNetworkMigrationCodeGenerationSegmentsResponse

Lists code generation segments, which represent individual infrastructure components generated as code templates.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: Sample ListNetworkMigrationCodeGenerationSegments call


resp = client.list_network_migration_code_generation_segments({
  network_migration_definition_id: "nmd-01234567891234567", 
  network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
})

resp.to_h outputs the following:
{
  items: [
    {
      artifacts: [
        {
          artifact_id: "a2345678-abcd-abcd-efab-0123456789ab", 
          artifact_sub_type: "STACK", 
          artifact_type: "CDK_TYPESCRIPT", 
          checksum: {
            encryption_algorithm: "SHA256", 
            hash: "0123456789aAbBcCdDeEfF0123456789", 
          }, 
          created_at: Time.parse(1735334198), 
          logical_id: "logical-id2", 
          output_s3_configuration: {
            s3_bucket: "s3_bucket", 
            s3_bucket_owner: "012345678901", 
            s3_key: "S3KeyName", 
          }, 
        }, 
      ], 
      created_at: Time.parse(1735334198), 
      job_id: "01234567-abcd-abcd-efab-0123456789ab", 
      logical_id: "logical-id1", 
      mapper_segment_id: "12345678-abcd-abcd-efab-0123456789ab", 
      network_migration_definition_id: "nmd-01234567891234567", 
      network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
      segment_id: "12345678-abcd-abcd-efab-0123456789ab", 
      segment_type: "WORKLOAD", 
    }, 
  ], 
  next_token: "NextTokenId", 
}

Request syntax with placeholder values


resp = client.list_network_migration_code_generation_segments({
  network_migration_execution_id: "NetworkMigrationExecutionID", # required
  network_migration_definition_id: "NetworkMigrationDefinitionID", # required
  filters: {
    segment_i_ds: ["SegmentID"],
  },
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.items #=> Array
resp.items[0].job_id #=> String
resp.items[0].network_migration_execution_id #=> String
resp.items[0].network_migration_definition_id #=> String
resp.items[0].segment_id #=> String
resp.items[0].segment_type #=> String, one of "WORKLOAD", "APPLIANCE", "NETWORK"
resp.items[0].logical_id #=> String
resp.items[0].mapper_segment_id #=> String
resp.items[0].artifacts #=> Array
resp.items[0].artifacts[0].artifact_id #=> String
resp.items[0].artifacts[0].artifact_type #=> String, one of "CDK_TYPESCRIPT", "CLOUDFORMATION_TEMPLATE", "CDKTF_TYPESCRIPT", "TERRAFORM_CONFIGURATION", "CDK_L2_TYPESCRIPT"
resp.items[0].artifacts[0].artifact_sub_type #=> String, one of "APPLICATION", "NESTED_STACK", "STACK"
resp.items[0].artifacts[0].logical_id #=> String
resp.items[0].artifacts[0].output_s3_configuration.s3_bucket #=> String
resp.items[0].artifacts[0].output_s3_configuration.s3_bucket_owner #=> String
resp.items[0].artifacts[0].output_s3_configuration.s3_key #=> String
resp.items[0].artifacts[0].checksum.encryption_algorithm #=> String, one of "SHA256"
resp.items[0].artifacts[0].checksum.hash #=> String
resp.items[0].artifacts[0].created_at #=> Time
resp.items[0].referenced_segments #=> Array
resp.items[0].referenced_segments[0] #=> String
resp.items[0].created_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :network_migration_execution_id (required, String)

    The unique identifier of the network migration execution.

  • :network_migration_definition_id (required, String)

    The unique identifier of the network migration definition.

  • :filters (Types::ListNetworkMigrationCodeGenerationSegmentsFilters)

    Filters to apply when listing code generation segments.

  • :max_results (Integer)

    The maximum number of results to return in a single call.

  • :next_token (String)

    The token for the next page of results.

Returns:

See Also:



3565
3566
3567
3568
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 3565

def list_network_migration_code_generation_segments(params = {}, options = {})
  req = build_request(:list_network_migration_code_generation_segments, params)
  req.send_request(options)
end

#list_network_migration_code_generations(params = {}) ⇒ Types::ListNetworkMigrationCodeGenerationsResponse

Lists network migration code generation jobs, which convert network mappings into infrastructure-as-code templates.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: Sample ListNetworkMigrationCodeGenerations call


resp = client.list_network_migration_code_generations({
  network_migration_definition_id: "nmd-01234567891234567", 
  network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
})

resp.to_h outputs the following:
{
  items: [
    {
      created_at: Time.parse(1735334198), 
      ended_at: Time.parse(1735334258), 
      job_id: "01234567-abcd-abcd-efab-0123456789ab", 
      network_migration_definition_id: "nmd-01234567891234567", 
      network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
      status: "SUCCEEDED", 
      status_details: "Job status details", 
    }, 
  ], 
  next_token: "NextTokenId", 
}

Request syntax with placeholder values


resp = client.list_network_migration_code_generations({
  network_migration_execution_id: "NetworkMigrationExecutionID", # required
  network_migration_definition_id: "NetworkMigrationDefinitionID", # required
  filters: {
    job_i_ds: ["NetworkMigrationJobID"],
  },
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.items #=> Array
resp.items[0].job_id #=> String
resp.items[0].network_migration_execution_id #=> String
resp.items[0].network_migration_definition_id #=> String
resp.items[0].created_at #=> Time
resp.items[0].ended_at #=> Time
resp.items[0].status #=> String, one of "PENDING", "STARTED", "SUCCEEDED", "FAILED"
resp.items[0].status_details #=> String
resp.items[0].code_generation_output_format_status_details_map #=> Hash
resp.items[0].code_generation_output_format_status_details_map["CodeGenerationOutputFormatType"].status #=> String, one of "SUCCEEDED", "FAILED"
resp.items[0].code_generation_output_format_status_details_map["CodeGenerationOutputFormatType"].status_detail_list #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :network_migration_execution_id (required, String)

    The unique identifier of the network migration execution.

  • :network_migration_definition_id (required, String)

    The unique identifier of the network migration definition.

  • :filters (Types::ListNetworkMigrationCodeGenerationsFilters)

    Filters to apply when listing code generation jobs.

  • :max_results (Integer)

    The maximum number of results to return in a single call.

  • :next_token (String)

    The token for the next page of results.

Returns:

See Also:



3650
3651
3652
3653
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 3650

def list_network_migration_code_generations(params = {}, options = {})
  req = build_request(:list_network_migration_code_generations, params)
  req.send_request(options)
end

#list_network_migration_definitions(params = {}) ⇒ Types::ListNetworkMigrationDefinitionsResponse

Lists all network migration definitions in the account, with optional filtering.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: Sample ListNetworkMigrationDefinitions call


resp = client.list_network_migration_definitions({
  filters: {
    network_migration_definition_i_ds: [
      "nmd-01234567891234567", 
    ], 
  }, 
})

resp.to_h outputs the following:
{
  items: [
    {
      name: "network1", 
      network_migration_definition_id: "nmd-01234567891234567", 
      source_environment: "NSX", 
    }, 
  ], 
  next_token: "NextTokenId", 
}

Request syntax with placeholder values


resp = client.list_network_migration_definitions({
  filters: {
    network_migration_definition_i_ds: ["NetworkMigrationDefinitionID"],
  },
  next_token: "PaginationToken",
  max_results: 1,
})

Response structure


resp.items #=> Array
resp.items[0].network_migration_definition_id #=> String
resp.items[0].name #=> String
resp.items[0].source_environment #=> String, one of "NSX", "VSPHERE", "FORTIGATE_FIREWALL", "PALO_ALTO_FIREWALL", "CISCO_ACI", "LOGICAL_MODEL", "MODELIZE_IT", "AWS_DISCOVERY_COLLECTOR"
resp.items[0].arn #=> String
resp.items[0].tags #=> Hash
resp.items[0].tags["TagKey"] #=> String
resp.items[0].scope_tags #=> Hash
resp.items[0].scope_tags["ScopeTagKey"] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :filters (Types::ListNetworkMigrationDefinitionsRequestFilters)

    Filters to apply when listing network migration definitions.

  • :next_token (String)

    The token for the next page of results.

  • :max_results (Integer)

    The maximum number of results to return in a single call.

Returns:

See Also:



3724
3725
3726
3727
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 3724

def list_network_migration_definitions(params = {}, options = {})
  req = build_request(:list_network_migration_definitions, params)
  req.send_request(options)
end

#list_network_migration_deployed_stacks(params = {}) ⇒ Types::ListNetworkMigrationDeployedStacksResponse

Lists CloudFormation stacks that have been deployed as part of the network migration.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: Sample ListNetworkMigrationDeployedStacks call


resp = client.list_network_migration_deployed_stacks({
  network_migration_definition_id: "nmd-01234567891234567", 
  network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
})

resp.to_h outputs the following:
{
  items: [
    {
      failed_resources: [
      ], 
      segment_id: "12345678-abcd-abcd-efab-0123456789ab", 
      stack_logical_id: "logical-id1", 
      stack_physical_id: "arn:aws:cloudformation:us-east-1:012345678901:stack/ExampleStack/b2345678-abcd-abcd-efab-0123456789ab", 
      status: "CREATE_STARTED", 
      target_account: "234567890123", 
    }, 
  ], 
  next_token: "NextTokenId", 
}

Request syntax with placeholder values


resp = client.list_network_migration_deployed_stacks({
  network_migration_execution_id: "NetworkMigrationExecutionID", # required
  network_migration_definition_id: "NetworkMigrationDefinitionID", # required
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.items #=> Array
resp.items[0].status #=> String, one of "CREATE_COMPLETE", "CREATE_FAILED", "CREATE_STARTED", "DELETE_COMPLETE", "DELETE_FAILED", "DELETE_STARTED"
resp.items[0].stack_physical_id #=> String
resp.items[0].stack_logical_id #=> String
resp.items[0].segment_id #=> String
resp.items[0]. #=> String
resp.items[0].failed_resources #=> Array
resp.items[0].failed_resources[0].logical_id #=> String
resp.items[0].failed_resources[0].status #=> String, one of "CREATE_FAILED", "DELETE_FAILED"
resp.items[0].failed_resources[0].status_reason #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :network_migration_execution_id (required, String)

    The unique identifier of the network migration execution.

  • :network_migration_definition_id (required, String)

    The unique identifier of the network migration definition.

  • :max_results (Integer)

    The maximum number of results to return in a single call.

  • :next_token (String)

    The token for the next page of results.

Returns:

See Also:



3802
3803
3804
3805
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 3802

def list_network_migration_deployed_stacks(params = {}, options = {})
  req = build_request(:list_network_migration_deployed_stacks, params)
  req.send_request(options)
end

#list_network_migration_deployments(params = {}) ⇒ Types::ListNetworkMigrationDeployerJobResponse

Lists network migration deployment jobs and their current status.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: Sample ListNetworkMigrationDeployments call


resp = client.list_network_migration_deployments({
  network_migration_definition_id: "nmd-01234567891234567", 
  network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
})

resp.to_h outputs the following:
{
  items: [
    {
      created_at: Time.parse(1735334198), 
      ended_at: Time.parse(1735334258), 
      job_id: "01234567-abcd-abcd-efab-0123456789ab", 
      network_migration_definition_id: "nmd-01234567891234567", 
      network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
      status: "SUCCEEDED", 
      status_details: "Job status details", 
    }, 
  ], 
  next_token: "NextTokenId", 
}

Request syntax with placeholder values


resp = client.list_network_migration_deployments({
  network_migration_execution_id: "NetworkMigrationExecutionID", # required
  network_migration_definition_id: "NetworkMigrationDefinitionID", # required
  filters: {
    job_i_ds: ["NetworkMigrationJobID"],
  },
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.items #=> Array
resp.items[0].job_id #=> String
resp.items[0].network_migration_execution_id #=> String
resp.items[0].network_migration_definition_id #=> String
resp.items[0].created_at #=> Time
resp.items[0].ended_at #=> Time
resp.items[0].status #=> String, one of "PENDING", "STARTED", "SUCCEEDED", "FAILED"
resp.items[0].status_details #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :network_migration_execution_id (required, String)

    The unique identifier of the network migration execution.

  • :network_migration_definition_id (required, String)

    The unique identifier of the network migration definition.

  • :filters (Types::ListNetworkMigrationDeployerJobFilters)

    Filters to apply when listing deployment jobs.

  • :max_results (Integer)

    The maximum number of results to return in a single call.

  • :next_token (String)

    The token for the next page of results.

Returns:

See Also:



3883
3884
3885
3886
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 3883

def list_network_migration_deployments(params = {}, options = {})
  req = build_request(:list_network_migration_deployments, params)
  req.send_request(options)
end

#list_network_migration_executions(params = {}) ⇒ Types::ListNetworkMigrationExecutionsResponse

Lists network migration execution instances for a given definition, showing the status and progress of each execution.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: Sample ListNetworkMigrationExecutions call


resp = client.list_network_migration_executions({
  network_migration_definition_id: "nmd-01234567891234567", 
})

resp.to_h outputs the following:
{
  items: [
    {
      activity: "CODE_GENERATION", 
      created_at: Time.parse(1735334198), 
      network_migration_definition_id: "nmd-01234567891234567", 
      network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
      stage: "CODE_GENERATION", 
      status: "SUCCEEDED", 
      tags: {
      }, 
      updated_at: Time.parse(1735334198), 
    }, 
  ], 
  next_token: "NextTokenId", 
}

Request syntax with placeholder values


resp = client.list_network_migration_executions({
  network_migration_definition_id: "NetworkMigrationDefinitionID", # required
  filters: {
    network_migration_execution_i_ds: ["NetworkMigrationExecutionID"],
    network_migration_execution_statuses: ["PENDING"], # accepts PENDING, STARTED, SUCCEEDED, FAILED
  },
  next_token: "PaginationToken",
  max_results: 1,
})

Response structure


resp.items #=> Array
resp.items[0].network_migration_definition_id #=> String
resp.items[0].network_migration_execution_id #=> String
resp.items[0].status #=> String, one of "PENDING", "STARTED", "SUCCEEDED", "FAILED"
resp.items[0].stage #=> String, one of "MAPPING", "CODE_GENERATION", "DEPLOY", "DEPLOYED_STACKS_DELETION", "ANALYZE"
resp.items[0].activity #=> String, one of "MAPPING", "MAPPING_UPDATE", "CODE_GENERATION", "DEPLOY", "DEPLOYED_STACKS_DELETION", "ANALYZE"
resp.items[0].created_at #=> Time
resp.items[0].updated_at #=> Time
resp.items[0].tags #=> Hash
resp.items[0].tags["TagKey"] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :network_migration_definition_id (required, String)

    The unique identifier of the network migration definition to list executions for.

  • :filters (Types::ListNetworkMigrationExecutionRequestFilters)

    Filters to apply when listing executions, such as status or execution ID.

  • :next_token (String)

    The token for the next page of results.

  • :max_results (Integer)

    The maximum number of results to return in a single call.

Returns:

See Also:



3967
3968
3969
3970
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 3967

def list_network_migration_executions(params = {}, options = {})
  req = build_request(:list_network_migration_executions, params)
  req.send_request(options)
end

#list_network_migration_mapper_segment_constructs(params = {}) ⇒ Types::ListNetworkMigrationMapperSegmentConstructsResponse

Lists constructs within a mapper segment, representing individual infrastructure components like VPCs, subnets, or security groups.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: Sample ListNetworkMigrationMapperSegmentConstructs call with properties enabled


resp = client.list_network_migration_mapper_segment_constructs({
  network_migration_definition_id: "nmd-01234567891234567", 
  network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
  segment_id: "12345678-abcd-abcd-efab-0123456789ab", 
})

resp.to_h outputs the following:
{
  items: [
    {
      name: "SegmentConstructName", 
      construct_id: "abc45678-abcd-abcd-efab-012345678abc", 
      construct_type: "AWS::EC2::VPC", 
      created_at: Time.parse(1735334198), 
      description: "Segment construct description", 
      logical_id: "logical-id1", 
      properties: {
        "CidrBlock" => "192.168.101.0/24", 
        "MapPublicIpOnLaunch" => "False", 
        "Tags" => "[{'Key': 'Name', 'Value': '/infra/tier-1s/cgw/segments/Lab1-veeam-test-192.168.101.0/24'}]", 
      }, 
      updated_at: Time.parse(1735334198), 
    }, 
  ], 
  next_token: "NextTokenId", 
}

Example: Sample ListNetworkMigrationMapperSegmentConstructs call with properties disabled (default)


resp = client.list_network_migration_mapper_segment_constructs({
  network_migration_definition_id: "nmd-01234567891234567", 
  network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
  segment_id: "12345678-abcd-abcd-efab-0123456789ab", 
})

resp.to_h outputs the following:
{
  items: [
    {
      name: "SegmentConstructName", 
      construct_id: "abc45678-abcd-abcd-efab-012345678abc", 
      construct_type: "AWS::EC2::VPC", 
      created_at: Time.parse(1735334198), 
      description: "Segment construct description", 
      logical_id: "logical-id1", 
      updated_at: Time.parse(1735334198), 
    }, 
  ], 
  next_token: "NextTokenId", 
}

Request syntax with placeholder values


resp = client.list_network_migration_mapper_segment_constructs({
  network_migration_execution_id: "NetworkMigrationExecutionID", # required
  network_migration_definition_id: "NetworkMigrationDefinitionID", # required
  segment_id: "SegmentID", # required
  filters: {
    construct_i_ds: ["ConstructID"],
    construct_types: ["NetworkMigrationMapperSegmentConstructType"],
  },
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.items #=> Array
resp.items[0].construct_id #=> String
resp.items[0].construct_type #=> String
resp.items[0].name #=> String
resp.items[0].description #=> String
resp.items[0].logical_id #=> String
resp.items[0].excluded #=> Boolean
resp.items[0].created_at #=> Time
resp.items[0].updated_at #=> Time
resp.items[0].properties #=> Hash
resp.items[0].properties["ConstructPropertyKey"] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :network_migration_execution_id (required, String)

    The unique identifier of the network migration execution.

  • :network_migration_definition_id (required, String)

    The unique identifier of the network migration definition.

  • :segment_id (required, String)

    The unique identifier of the segment to list constructs for.

  • :filters (Types::ListNetworkMigrationMapperSegmentConstructsFilters)

    Filters to apply when listing constructs, such as construct type or ID.

  • :max_results (Integer)

    The maximum number of results to return in a single call.

  • :next_token (String)

    The token for the next page of results.

Returns:

See Also:



4088
4089
4090
4091
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 4088

def list_network_migration_mapper_segment_constructs(params = {}, options = {})
  req = build_request(:list_network_migration_mapper_segment_constructs, params)
  req.send_request(options)
end

#list_network_migration_mapper_segments(params = {}) ⇒ Types::ListNetworkMigrationMapperSegmentsResponse

Lists mapper segments, which represent logical groupings of network resources to be migrated together.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: Sample ListNetworkMigrationMapperSegments call


resp = client.list_network_migration_mapper_segments({
  network_migration_definition_id: "nmd-01234567891234567", 
  network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
})

resp.to_h outputs the following:
{
  items: [
    {
      name: "SegmentName", 
      checksum: {
        encryption_algorithm: "SHA256", 
        hash: "0123456789aAbBcCdDeEfF0123456789", 
      }, 
      created_at: Time.parse(1735334198), 
      description: "Segment description", 
      job_id: "01234567-abcd-abcd-efab-0123456789ab", 
      logical_id: "logical-id1", 
      network_migration_definition_id: "nmd-01234567891234567", 
      network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
      output_s3_configuration: {
        s3_bucket: "s3_bucket", 
        s3_bucket_owner: "012345678901", 
        s3_key: "S3KeyName", 
      }, 
      segment_id: "12345678-abcd-abcd-efab-0123456789ab", 
      segment_type: "WORKLOAD", 
      updated_at: Time.parse(1735334198), 
    }, 
  ], 
  next_token: "NextTokenId", 
}

Request syntax with placeholder values


resp = client.list_network_migration_mapper_segments({
  network_migration_execution_id: "NetworkMigrationExecutionID", # required
  network_migration_definition_id: "NetworkMigrationDefinitionID", # required
  filters: {
    segment_i_ds: ["SegmentID"],
  },
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.items #=> Array
resp.items[0].job_id #=> String
resp.items[0].network_migration_execution_id #=> String
resp.items[0].network_migration_definition_id #=> String
resp.items[0].segment_id #=> String
resp.items[0].segment_type #=> String, one of "WORKLOAD", "APPLIANCE"
resp.items[0].name #=> String
resp.items[0].description #=> String
resp.items[0].logical_id #=> String
resp.items[0].checksum.encryption_algorithm #=> String, one of "SHA256"
resp.items[0].checksum.hash #=> String
resp.items[0].output_s3_configuration.s3_bucket #=> String
resp.items[0].output_s3_configuration.s3_bucket_owner #=> String
resp.items[0].output_s3_configuration.s3_key #=> String
resp.items[0].created_at #=> Time
resp.items[0].updated_at #=> Time
resp.items[0].scope_tags #=> Hash
resp.items[0].scope_tags["ScopeTagKey"] #=> String
resp.items[0]. #=> String
resp.items[0].referenced_segments #=> Array
resp.items[0].referenced_segments[0] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :network_migration_execution_id (required, String)

    The unique identifier of the network migration execution.

  • :network_migration_definition_id (required, String)

    The unique identifier of the network migration definition.

  • :filters (Types::ListNetworkMigrationMapperSegmentsFilters)

    Filters to apply when listing segments.

  • :max_results (Integer)

    The maximum number of results to return in a single call.

  • :next_token (String)

    The token for the next page of results.

Returns:

See Also:



4195
4196
4197
4198
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 4195

def list_network_migration_mapper_segments(params = {}, options = {})
  req = build_request(:list_network_migration_mapper_segments, params)
  req.send_request(options)
end

#list_network_migration_mapping_updates(params = {}) ⇒ Types::ListNetworkMigrationMappingUpdatesResponse

Lists mapping update jobs, which apply customer modifications to the generated network mappings.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: Sample ListNetworkMigrationMappingUpdates call


resp = client.list_network_migration_mapping_updates({
  network_migration_definition_id: "nmd-01234567891234567", 
  network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
})

resp.to_h outputs the following:
{
  items: [
    {
      created_at: Time.parse(1735334198), 
      ended_at: Time.parse(1735334258), 
      job_id: "01234567-abcd-abcd-efab-0123456789ab", 
      network_migration_definition_id: "nmd-01234567891234567", 
      network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
      status: "SUCCEEDED", 
      status_details: "Job status details", 
    }, 
  ], 
  next_token: "NextTokenId", 
}

Request syntax with placeholder values


resp = client.list_network_migration_mapping_updates({
  network_migration_execution_id: "NetworkMigrationExecutionID", # required
  network_migration_definition_id: "NetworkMigrationDefinitionID", # required
  filters: {
    job_i_ds: ["NetworkMigrationJobID"],
  },
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.items #=> Array
resp.items[0].job_id #=> String
resp.items[0].network_migration_execution_id #=> String
resp.items[0].network_migration_definition_id #=> String
resp.items[0].created_at #=> Time
resp.items[0].ended_at #=> Time
resp.items[0].status #=> String, one of "PENDING", "STARTED", "SUCCEEDED", "FAILED"
resp.items[0].status_details #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :network_migration_execution_id (required, String)

    The unique identifier of the network migration execution.

  • :network_migration_definition_id (required, String)

    The unique identifier of the network migration definition.

  • :filters (Types::ListNetworkMigrationMappingUpdatesFilters)

    Filters to apply when listing mapping update jobs.

  • :max_results (Integer)

    The maximum number of results to return in a single call.

  • :next_token (String)

    The token for the next page of results.

Returns:

See Also:



4277
4278
4279
4280
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 4277

def list_network_migration_mapping_updates(params = {}, options = {})
  req = build_request(:list_network_migration_mapping_updates, params)
  req.send_request(options)
end

#list_network_migration_mappings(params = {}) ⇒ Types::ListNetworkMigrationMappingsResponse

Lists network migration mapping jobs, which analyze and create relationships between source and target network resources.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: Sample ListNetworkMigrationMappings call


resp = client.list_network_migration_mappings({
  network_migration_definition_id: "nmd-01234567891234567", 
  network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
})

resp.to_h outputs the following:
{
  items: [
    {
      created_at: Time.parse(1735334198), 
      ended_at: Time.parse(1735334258), 
      job_id: "01234567-abcd-abcd-efab-0123456789ab", 
      network_migration_definition_id: "nmd-01234567891234567", 
      network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
      status: "SUCCEEDED", 
      status_details: "Job status details", 
    }, 
  ], 
  next_token: "NextTokenId", 
}

Request syntax with placeholder values


resp = client.list_network_migration_mappings({
  network_migration_execution_id: "NetworkMigrationExecutionID", # required
  network_migration_definition_id: "NetworkMigrationDefinitionID", # required
  filters: {
    job_i_ds: ["NetworkMigrationJobID"],
  },
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.items #=> Array
resp.items[0].job_id #=> String
resp.items[0].network_migration_execution_id #=> String
resp.items[0].network_migration_definition_id #=> String
resp.items[0].created_at #=> Time
resp.items[0].ended_at #=> Time
resp.items[0].status #=> String, one of "PENDING", "STARTED", "SUCCEEDED", "FAILED"
resp.items[0].status_details #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :network_migration_execution_id (required, String)

    The unique identifier of the network migration execution.

  • :network_migration_definition_id (required, String)

    The unique identifier of the network migration definition.

  • :filters (Types::ListNetworkMigrationMappingsFilters)

    Filters to apply when listing mapping jobs.

  • :max_results (Integer)

    The maximum number of results to return in a single call.

  • :next_token (String)

    The token for the next page of results.

Returns:

See Also:



4359
4360
4361
4362
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 4359

def list_network_migration_mappings(params = {}, options = {})
  req = build_request(:list_network_migration_mappings, params)
  req.send_request(options)
end

#list_source_server_actions(params = {}) ⇒ Types::ListSourceServerActionsResponse

List source server post migration custom actions.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_source_server_actions({
  source_server_id: "SourceServerID", # required
  filters: {
    action_i_ds: ["ActionID"],
  },
  max_results: 1,
  next_token: "PaginationToken",
  account_id: "AccountID",
})

Response structure


resp.items #=> Array
resp.items[0].action_id #=> String
resp.items[0].action_name #=> String
resp.items[0].document_identifier #=> String
resp.items[0].order #=> Integer
resp.items[0].document_version #=> String
resp.items[0].active #=> Boolean
resp.items[0].timeout_seconds #=> Integer
resp.items[0].must_succeed_for_cutover #=> Boolean
resp.items[0].parameters #=> Hash
resp.items[0].parameters["SsmDocumentParameterName"] #=> Array
resp.items[0].parameters["SsmDocumentParameterName"][0].parameter_type #=> String, one of "STRING", "SECURE_STRING"
resp.items[0].parameters["SsmDocumentParameterName"][0].parameter_name #=> String
resp.items[0].external_parameters #=> Hash
resp.items[0].external_parameters["SsmDocumentParameterName"].dynamic_path #=> String
resp.items[0].description #=> String
resp.items[0].category #=> String, one of "DISASTER_RECOVERY", "OPERATING_SYSTEM", "LICENSE_AND_SUBSCRIPTION", "VALIDATION", "OBSERVABILITY", "REFACTORING", "SECURITY", "NETWORKING", "CONFIGURATION", "BACKUP", "OTHER"
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_server_id (required, String)

    Source server ID.

  • :filters (Types::SourceServerActionsRequestFilters)

    Filters to apply when listing source server post migration custom actions.

  • :max_results (Integer)

    Maximum amount of items to return when listing source server post migration custom actions.

  • :next_token (String)

    Next token to use when listing source server post migration custom actions.

  • :account_id (String)

    Account ID to return when listing source server post migration custom actions.

Returns:

See Also:



4429
4430
4431
4432
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 4429

def list_source_server_actions(params = {}, options = {})
  req = build_request(:list_source_server_actions, params)
  req.send_request(options)
end

#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse

List all tags for your Application Migration Service resources.

Examples:

Request syntax with placeholder values


resp = client.list_tags_for_resource({
  resource_arn: "ARN", # required
})

Response structure


resp.tags #=> Hash
resp.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    List tags for resource request by ARN.

Returns:

See Also:



4458
4459
4460
4461
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 4458

def list_tags_for_resource(params = {}, options = {})
  req = build_request(:list_tags_for_resource, params)
  req.send_request(options)
end

#list_template_actions(params = {}) ⇒ Types::ListTemplateActionsResponse

List template post migration custom actions.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_template_actions({
  launch_configuration_template_id: "LaunchConfigurationTemplateID", # required
  filters: {
    action_i_ds: ["ActionID"],
  },
  max_results: 1,
  next_token: "PaginationToken",
})

Response structure


resp.items #=> Array
resp.items[0].action_id #=> String
resp.items[0].action_name #=> String
resp.items[0].document_identifier #=> String
resp.items[0].order #=> Integer
resp.items[0].document_version #=> String
resp.items[0].active #=> Boolean
resp.items[0].timeout_seconds #=> Integer
resp.items[0].must_succeed_for_cutover #=> Boolean
resp.items[0].parameters #=> Hash
resp.items[0].parameters["SsmDocumentParameterName"] #=> Array
resp.items[0].parameters["SsmDocumentParameterName"][0].parameter_type #=> String, one of "STRING", "SECURE_STRING"
resp.items[0].parameters["SsmDocumentParameterName"][0].parameter_name #=> String
resp.items[0].operating_system #=> String
resp.items[0].external_parameters #=> Hash
resp.items[0].external_parameters["SsmDocumentParameterName"].dynamic_path #=> String
resp.items[0].description #=> String
resp.items[0].category #=> String, one of "DISASTER_RECOVERY", "OPERATING_SYSTEM", "LICENSE_AND_SUBSCRIPTION", "VALIDATION", "OBSERVABILITY", "REFACTORING", "SECURITY", "NETWORKING", "CONFIGURATION", "BACKUP", "OTHER"
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :launch_configuration_template_id (required, String)

    Launch configuration template ID.

  • :filters (Types::TemplateActionsRequestFilters)

    Filters to apply when listing template post migration custom actions.

  • :max_results (Integer)

    Maximum amount of items to return when listing template post migration custom actions.

  • :next_token (String)

    Next token to use when listing template post migration custom actions.

Returns:

See Also:



4522
4523
4524
4525
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 4522

def list_template_actions(params = {}, options = {})
  req = build_request(:list_template_actions, params)
  req.send_request(options)
end

#list_waves(params = {}) ⇒ Types::ListWavesResponse

Retrieves all waves or multiple waves by ID.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_waves({
  filters: {
    wave_i_ds: ["WaveID"],
    is_archived: false,
  },
  max_results: 1,
  next_token: "PaginationToken",
  account_id: "AccountID",
})

Response structure


resp.items #=> Array
resp.items[0].wave_id #=> String
resp.items[0].arn #=> String
resp.items[0].name #=> String
resp.items[0].description #=> String
resp.items[0].is_archived #=> Boolean
resp.items[0].wave_aggregated_status.last_update_date_time #=> String
resp.items[0].wave_aggregated_status.replication_started_date_time #=> String
resp.items[0].wave_aggregated_status.health_status #=> String, one of "HEALTHY", "LAGGING", "ERROR"
resp.items[0].wave_aggregated_status.progress_status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "COMPLETED"
resp.items[0].wave_aggregated_status.total_applications #=> Integer
resp.items[0].creation_date_time #=> String
resp.items[0].last_modified_date_time #=> String
resp.items[0].tags #=> Hash
resp.items[0].tags["TagKey"] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :filters (Types::ListWavesRequestFilters)

    Waves list filters.

  • :max_results (Integer)

    Maximum results to return when listing waves.

  • :next_token (String)

    Request next token.

  • :account_id (String)

    Request account ID.

Returns:

See Also:



4583
4584
4585
4586
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 4583

def list_waves(params = {}, options = {})
  req = build_request(:list_waves, params)
  req.send_request(options)
end

#mark_as_archived(params = {}) ⇒ Types::SourceServer

Archives specific Source Servers by setting the SourceServer.isArchived property to true for specified SourceServers by ID. This command only works for SourceServers with a lifecycle state that equals DISCONNECTED or CUTOVER.

Examples:

Request syntax with placeholder values


resp = client.mark_as_archived({
  source_server_id: "SourceServerID", # required
  account_id: "AccountID",
})

Response structure


resp.source_server_id #=> String
resp.arn #=> String
resp.is_archived #=> Boolean
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.launched_instance.ec2_instance_id #=> String
resp.launched_instance.job_id #=> String
resp.launched_instance.first_boot #=> String, one of "WAITING", "SUCCEEDED", "UNKNOWN", "STOPPED"
resp.launched_instance.last_known_checks #=> Array
resp.launched_instance.last_known_checks[0].type #=> String, one of "EC2", "FSx"
resp.launched_instance.last_known_checks[0].name #=> String
resp.launched_instance.last_known_checks[0].status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.launched_instance.last_known_checks[0].error #=> String
resp.launched_instance.last_known_checks[0].checked_at #=> Time
resp.launched_instance.last_known_fsx_checks_status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.data_replication_info.lag_duration #=> String
resp.data_replication_info.eta_date_time #=> String
resp.data_replication_info.replicated_disks #=> Array
resp.data_replication_info.replicated_disks[0].device_name #=> String
resp.data_replication_info.replicated_disks[0].total_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].replicated_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].rescanned_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].backlogged_storage_bytes #=> Integer
resp.data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED", "PENDING_SNAPSHOT_SHIPPING", "SHIPPING_SNAPSHOT"
resp.data_replication_info.data_replication_initiation.start_date_time #=> String
resp.data_replication_info.data_replication_initiation.next_attempt_date_time #=> String
resp.data_replication_info.data_replication_initiation.steps #=> Array
resp.data_replication_info.data_replication_initiation.steps[0].name #=> String, one of "WAIT", "CREATE_SECURITY_GROUP", "LAUNCH_REPLICATION_SERVER", "BOOT_REPLICATION_SERVER", "AUTHENTICATE_WITH_SERVICE", "DOWNLOAD_REPLICATION_SOFTWARE", "CREATE_STAGING_DISKS", "ATTACH_STAGING_DISKS", "PAIR_REPLICATION_SERVER_WITH_AGENT", "CONNECT_AGENT_TO_REPLICATION_SERVER", "START_DATA_TRANSFER", "SETUP_FSX_PROXY"
resp.data_replication_info.data_replication_initiation.steps[0].status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "SKIPPED"
resp.data_replication_info.data_replication_error.error #=> String, one of "AGENT_NOT_SEEN", "SNAPSHOTS_FAILURE", "NOT_CONVERGING", "UNSTABLE_NETWORK", "FAILED_TO_CREATE_SECURITY_GROUP", "FAILED_TO_LAUNCH_REPLICATION_SERVER", "FAILED_TO_BOOT_REPLICATION_SERVER", "FAILED_TO_AUTHENTICATE_WITH_SERVICE", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", "FAILED_TO_CREATE_STAGING_DISKS", "FAILED_TO_ATTACH_STAGING_DISKS", "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", "FAILED_TO_START_DATA_TRANSFER", "UNSUPPORTED_VM_CONFIGURATION", "LAST_SNAPSHOT_JOB_FAILED", "FAILED_TO_SETUP_FSX_PROXY", "FAILED_TO_CREATE_FSX_SNAPSHOT"
resp.data_replication_info.data_replication_error.raw_error #=> String
resp.data_replication_info.last_snapshot_date_time #=> String
resp.data_replication_info.replicator_id #=> String
resp.life_cycle.added_to_service_date_time #=> String
resp.life_cycle.first_byte_date_time #=> String
resp.life_cycle.elapsed_replication_duration #=> String
resp.life_cycle.last_seen_by_service_date_time #=> String
resp.life_cycle.last_test.initiated.api_call_date_time #=> String
resp.life_cycle.last_test.initiated.job_id #=> String
resp.life_cycle.last_test.reverted.api_call_date_time #=> String
resp.life_cycle.last_test.finalized.api_call_date_time #=> String
resp.life_cycle.last_cutover.initiated.api_call_date_time #=> String
resp.life_cycle.last_cutover.initiated.job_id #=> String
resp.life_cycle.last_cutover.reverted.api_call_date_time #=> String
resp.life_cycle.last_cutover.finalized.api_call_date_time #=> String
resp.life_cycle.state #=> String, one of "STOPPED", "NOT_READY", "READY_FOR_TEST", "TESTING", "READY_FOR_CUTOVER", "CUTTING_OVER", "CUTOVER", "DISCONNECTED", "DISCOVERED", "PENDING_INSTALLATION"
resp.source_properties.last_updated_date_time #=> String
resp.source_properties.recommended_instance_type #=> String
resp.source_properties.identification_hints.fqdn #=> String
resp.source_properties.identification_hints.hostname #=> String
resp.source_properties.identification_hints.vm_ware_uuid #=> String
resp.source_properties.identification_hints.aws_instance_id #=> String
resp.source_properties.identification_hints.vm_path #=> String
resp.source_properties.network_interfaces #=> Array
resp.source_properties.network_interfaces[0].mac_address #=> String
resp.source_properties.network_interfaces[0].ips #=> Array
resp.source_properties.network_interfaces[0].ips[0] #=> String
resp.source_properties.network_interfaces[0].is_primary #=> Boolean
resp.source_properties.disks #=> Array
resp.source_properties.disks[0].device_name #=> String
resp.source_properties.disks[0].bytes #=> Integer
resp.source_properties.cpus #=> Array
resp.source_properties.cpus[0].cores #=> Integer
resp.source_properties.cpus[0].model_name #=> String
resp.source_properties.ram_bytes #=> Integer
resp.source_properties.os.full_string #=> String
resp.replication_type #=> String, one of "AGENT_BASED", "SNAPSHOT_SHIPPING"
resp.vcenter_client_id #=> String
resp.application_id #=> String
resp.user_provided_id #=> String
resp.fqdn_for_action_framework #=> String
resp.connector_action.credentials_secret_arn #=> String
resp.connector_action.connector_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_server_id (required, String)

    Mark as archived by Source Server ID.

  • :account_id (String)

    Mark as archived by Account ID.

Returns:

See Also:



4703
4704
4705
4706
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 4703

def mark_as_archived(params = {}, options = {})
  req = build_request(:mark_as_archived, params)
  req.send_request(options)
end

#pause_replication(params = {}) ⇒ Types::SourceServer

Pause Replication.

Examples:

Request syntax with placeholder values


resp = client.pause_replication({
  source_server_id: "SourceServerID", # required
  account_id: "AccountID",
})

Response structure


resp.source_server_id #=> String
resp.arn #=> String
resp.is_archived #=> Boolean
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.launched_instance.ec2_instance_id #=> String
resp.launched_instance.job_id #=> String
resp.launched_instance.first_boot #=> String, one of "WAITING", "SUCCEEDED", "UNKNOWN", "STOPPED"
resp.launched_instance.last_known_checks #=> Array
resp.launched_instance.last_known_checks[0].type #=> String, one of "EC2", "FSx"
resp.launched_instance.last_known_checks[0].name #=> String
resp.launched_instance.last_known_checks[0].status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.launched_instance.last_known_checks[0].error #=> String
resp.launched_instance.last_known_checks[0].checked_at #=> Time
resp.launched_instance.last_known_fsx_checks_status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.data_replication_info.lag_duration #=> String
resp.data_replication_info.eta_date_time #=> String
resp.data_replication_info.replicated_disks #=> Array
resp.data_replication_info.replicated_disks[0].device_name #=> String
resp.data_replication_info.replicated_disks[0].total_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].replicated_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].rescanned_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].backlogged_storage_bytes #=> Integer
resp.data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED", "PENDING_SNAPSHOT_SHIPPING", "SHIPPING_SNAPSHOT"
resp.data_replication_info.data_replication_initiation.start_date_time #=> String
resp.data_replication_info.data_replication_initiation.next_attempt_date_time #=> String
resp.data_replication_info.data_replication_initiation.steps #=> Array
resp.data_replication_info.data_replication_initiation.steps[0].name #=> String, one of "WAIT", "CREATE_SECURITY_GROUP", "LAUNCH_REPLICATION_SERVER", "BOOT_REPLICATION_SERVER", "AUTHENTICATE_WITH_SERVICE", "DOWNLOAD_REPLICATION_SOFTWARE", "CREATE_STAGING_DISKS", "ATTACH_STAGING_DISKS", "PAIR_REPLICATION_SERVER_WITH_AGENT", "CONNECT_AGENT_TO_REPLICATION_SERVER", "START_DATA_TRANSFER", "SETUP_FSX_PROXY"
resp.data_replication_info.data_replication_initiation.steps[0].status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "SKIPPED"
resp.data_replication_info.data_replication_error.error #=> String, one of "AGENT_NOT_SEEN", "SNAPSHOTS_FAILURE", "NOT_CONVERGING", "UNSTABLE_NETWORK", "FAILED_TO_CREATE_SECURITY_GROUP", "FAILED_TO_LAUNCH_REPLICATION_SERVER", "FAILED_TO_BOOT_REPLICATION_SERVER", "FAILED_TO_AUTHENTICATE_WITH_SERVICE", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", "FAILED_TO_CREATE_STAGING_DISKS", "FAILED_TO_ATTACH_STAGING_DISKS", "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", "FAILED_TO_START_DATA_TRANSFER", "UNSUPPORTED_VM_CONFIGURATION", "LAST_SNAPSHOT_JOB_FAILED", "FAILED_TO_SETUP_FSX_PROXY", "FAILED_TO_CREATE_FSX_SNAPSHOT"
resp.data_replication_info.data_replication_error.raw_error #=> String
resp.data_replication_info.last_snapshot_date_time #=> String
resp.data_replication_info.replicator_id #=> String
resp.life_cycle.added_to_service_date_time #=> String
resp.life_cycle.first_byte_date_time #=> String
resp.life_cycle.elapsed_replication_duration #=> String
resp.life_cycle.last_seen_by_service_date_time #=> String
resp.life_cycle.last_test.initiated.api_call_date_time #=> String
resp.life_cycle.last_test.initiated.job_id #=> String
resp.life_cycle.last_test.reverted.api_call_date_time #=> String
resp.life_cycle.last_test.finalized.api_call_date_time #=> String
resp.life_cycle.last_cutover.initiated.api_call_date_time #=> String
resp.life_cycle.last_cutover.initiated.job_id #=> String
resp.life_cycle.last_cutover.reverted.api_call_date_time #=> String
resp.life_cycle.last_cutover.finalized.api_call_date_time #=> String
resp.life_cycle.state #=> String, one of "STOPPED", "NOT_READY", "READY_FOR_TEST", "TESTING", "READY_FOR_CUTOVER", "CUTTING_OVER", "CUTOVER", "DISCONNECTED", "DISCOVERED", "PENDING_INSTALLATION"
resp.source_properties.last_updated_date_time #=> String
resp.source_properties.recommended_instance_type #=> String
resp.source_properties.identification_hints.fqdn #=> String
resp.source_properties.identification_hints.hostname #=> String
resp.source_properties.identification_hints.vm_ware_uuid #=> String
resp.source_properties.identification_hints.aws_instance_id #=> String
resp.source_properties.identification_hints.vm_path #=> String
resp.source_properties.network_interfaces #=> Array
resp.source_properties.network_interfaces[0].mac_address #=> String
resp.source_properties.network_interfaces[0].ips #=> Array
resp.source_properties.network_interfaces[0].ips[0] #=> String
resp.source_properties.network_interfaces[0].is_primary #=> Boolean
resp.source_properties.disks #=> Array
resp.source_properties.disks[0].device_name #=> String
resp.source_properties.disks[0].bytes #=> Integer
resp.source_properties.cpus #=> Array
resp.source_properties.cpus[0].cores #=> Integer
resp.source_properties.cpus[0].model_name #=> String
resp.source_properties.ram_bytes #=> Integer
resp.source_properties.os.full_string #=> String
resp.replication_type #=> String, one of "AGENT_BASED", "SNAPSHOT_SHIPPING"
resp.vcenter_client_id #=> String
resp.application_id #=> String
resp.user_provided_id #=> String
resp.fqdn_for_action_framework #=> String
resp.connector_action.credentials_secret_arn #=> String
resp.connector_action.connector_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_server_id (required, String)

    Pause Replication Request source server ID.

  • :account_id (String)

    Pause Replication Request account ID.

Returns:

See Also:



4820
4821
4822
4823
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 4820

def pause_replication(params = {}, options = {})
  req = build_request(:pause_replication, params)
  req.send_request(options)
end

#put_source_server_action(params = {}) ⇒ Types::SourceServerActionDocument

Put source server post migration custom action.

Examples:

Request syntax with placeholder values


resp = client.put_source_server_action({
  source_server_id: "SourceServerID", # required
  action_name: "ActionName", # required
  document_identifier: "BoundedString", # required
  order: 1, # required
  action_id: "ActionID", # required
  document_version: "DocumentVersion",
  active: false,
  timeout_seconds: 1,
  must_succeed_for_cutover: false,
  parameters: {
    "SsmDocumentParameterName" => [
      {
        parameter_type: "STRING", # required, accepts STRING, SECURE_STRING
        parameter_name: "SsmParameterStoreParameterName", # required
      },
    ],
  },
  external_parameters: {
    "SsmDocumentParameterName" => {
      dynamic_path: "JmesPathString",
    },
  },
  description: "ActionDescription",
  category: "DISASTER_RECOVERY", # accepts DISASTER_RECOVERY, OPERATING_SYSTEM, LICENSE_AND_SUBSCRIPTION, VALIDATION, OBSERVABILITY, REFACTORING, SECURITY, NETWORKING, CONFIGURATION, BACKUP, OTHER
  account_id: "AccountID",
})

Response structure


resp.action_id #=> String
resp.action_name #=> String
resp.document_identifier #=> String
resp.order #=> Integer
resp.document_version #=> String
resp.active #=> Boolean
resp.timeout_seconds #=> Integer
resp.must_succeed_for_cutover #=> Boolean
resp.parameters #=> Hash
resp.parameters["SsmDocumentParameterName"] #=> Array
resp.parameters["SsmDocumentParameterName"][0].parameter_type #=> String, one of "STRING", "SECURE_STRING"
resp.parameters["SsmDocumentParameterName"][0].parameter_name #=> String
resp.external_parameters #=> Hash
resp.external_parameters["SsmDocumentParameterName"].dynamic_path #=> String
resp.description #=> String
resp.category #=> String, one of "DISASTER_RECOVERY", "OPERATING_SYSTEM", "LICENSE_AND_SUBSCRIPTION", "VALIDATION", "OBSERVABILITY", "REFACTORING", "SECURITY", "NETWORKING", "CONFIGURATION", "BACKUP", "OTHER"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_server_id (required, String)

    Source server ID.

  • :action_name (required, String)

    Source server post migration custom action name.

  • :document_identifier (required, String)

    Source server post migration custom action document identifier.

  • :order (required, Integer)

    Source server post migration custom action order.

  • :action_id (required, String)

    Source server post migration custom action ID.

  • :document_version (String)

    Source server post migration custom action document version.

  • :active (Boolean)

    Source server post migration custom action active status.

  • :timeout_seconds (Integer)

    Source server post migration custom action timeout in seconds.

  • :must_succeed_for_cutover (Boolean)

    Source server post migration custom action must succeed for cutover.

  • :parameters (Hash<String,Array>)

    Source server post migration custom action parameters.

  • :external_parameters (Hash<String,Types::SsmExternalParameter>)

    Source server post migration custom action external parameters.

  • :description (String)

    Source server post migration custom action description.

  • :category (String)

    Source server post migration custom action category.

  • :account_id (String)

    Source server post migration custom account ID.

Returns:

See Also:



4937
4938
4939
4940
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 4937

def put_source_server_action(params = {}, options = {})
  req = build_request(:put_source_server_action, params)
  req.send_request(options)
end

#put_template_action(params = {}) ⇒ Types::TemplateActionDocument

Put template post migration custom action.

Examples:

Request syntax with placeholder values


resp = client.put_template_action({
  launch_configuration_template_id: "LaunchConfigurationTemplateID", # required
  action_name: "BoundedString", # required
  document_identifier: "BoundedString", # required
  order: 1, # required
  action_id: "ActionID", # required
  document_version: "DocumentVersion",
  active: false,
  timeout_seconds: 1,
  must_succeed_for_cutover: false,
  parameters: {
    "SsmDocumentParameterName" => [
      {
        parameter_type: "STRING", # required, accepts STRING, SECURE_STRING
        parameter_name: "SsmParameterStoreParameterName", # required
      },
    ],
  },
  operating_system: "OperatingSystemString",
  external_parameters: {
    "SsmDocumentParameterName" => {
      dynamic_path: "JmesPathString",
    },
  },
  description: "ActionDescription",
  category: "DISASTER_RECOVERY", # accepts DISASTER_RECOVERY, OPERATING_SYSTEM, LICENSE_AND_SUBSCRIPTION, VALIDATION, OBSERVABILITY, REFACTORING, SECURITY, NETWORKING, CONFIGURATION, BACKUP, OTHER
})

Response structure


resp.action_id #=> String
resp.action_name #=> String
resp.document_identifier #=> String
resp.order #=> Integer
resp.document_version #=> String
resp.active #=> Boolean
resp.timeout_seconds #=> Integer
resp.must_succeed_for_cutover #=> Boolean
resp.parameters #=> Hash
resp.parameters["SsmDocumentParameterName"] #=> Array
resp.parameters["SsmDocumentParameterName"][0].parameter_type #=> String, one of "STRING", "SECURE_STRING"
resp.parameters["SsmDocumentParameterName"][0].parameter_name #=> String
resp.operating_system #=> String
resp.external_parameters #=> Hash
resp.external_parameters["SsmDocumentParameterName"].dynamic_path #=> String
resp.description #=> String
resp.category #=> String, one of "DISASTER_RECOVERY", "OPERATING_SYSTEM", "LICENSE_AND_SUBSCRIPTION", "VALIDATION", "OBSERVABILITY", "REFACTORING", "SECURITY", "NETWORKING", "CONFIGURATION", "BACKUP", "OTHER"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :launch_configuration_template_id (required, String)

    Launch configuration template ID.

  • :action_name (required, String)

    Template post migration custom action name.

  • :document_identifier (required, String)

    Template post migration custom action document identifier.

  • :order (required, Integer)

    Template post migration custom action order.

  • :action_id (required, String)

    Template post migration custom action ID.

  • :document_version (String)

    Template post migration custom action document version.

  • :active (Boolean)

    Template post migration custom action active status.

  • :timeout_seconds (Integer)

    Template post migration custom action timeout in seconds.

  • :must_succeed_for_cutover (Boolean)

    Template post migration custom action must succeed for cutover.

  • :parameters (Hash<String,Array>)

    Template post migration custom action parameters.

  • :operating_system (String)

    Operating system eligible for this template post migration custom action.

  • :external_parameters (Hash<String,Types::SsmExternalParameter>)

    Template post migration custom action external parameters.

  • :description (String)

    Template post migration custom action description.

  • :category (String)

    Template post migration custom action category.

Returns:

See Also:



5057
5058
5059
5060
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 5057

def put_template_action(params = {}, options = {})
  req = build_request(:put_template_action, params)
  req.send_request(options)
end

#remove_source_server_action(params = {}) ⇒ Struct

Remove source server post migration custom action.

Examples:

Request syntax with placeholder values


resp = client.remove_source_server_action({
  source_server_id: "SourceServerID", # required
  action_id: "ActionID", # required
  account_id: "AccountID",
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_server_id (required, String)

    Source server ID of the post migration custom action to remove.

  • :action_id (required, String)

    Source server post migration custom action ID to remove.

  • :account_id (String)

    Source server post migration account ID.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



5087
5088
5089
5090
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 5087

def remove_source_server_action(params = {}, options = {})
  req = build_request(:remove_source_server_action, params)
  req.send_request(options)
end

#remove_template_action(params = {}) ⇒ Struct

Remove template post migration custom action.

Examples:

Request syntax with placeholder values


resp = client.remove_template_action({
  launch_configuration_template_id: "LaunchConfigurationTemplateID", # required
  action_id: "ActionID", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :launch_configuration_template_id (required, String)

    Launch configuration template ID of the post migration custom action to remove.

  • :action_id (required, String)

    Template post migration custom action ID to remove.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



5114
5115
5116
5117
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 5114

def remove_template_action(params = {}, options = {})
  req = build_request(:remove_template_action, params)
  req.send_request(options)
end

#resume_replication(params = {}) ⇒ Types::SourceServer

Resume Replication.

Examples:

Request syntax with placeholder values


resp = client.resume_replication({
  source_server_id: "SourceServerID", # required
  account_id: "AccountID",
})

Response structure


resp.source_server_id #=> String
resp.arn #=> String
resp.is_archived #=> Boolean
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.launched_instance.ec2_instance_id #=> String
resp.launched_instance.job_id #=> String
resp.launched_instance.first_boot #=> String, one of "WAITING", "SUCCEEDED", "UNKNOWN", "STOPPED"
resp.launched_instance.last_known_checks #=> Array
resp.launched_instance.last_known_checks[0].type #=> String, one of "EC2", "FSx"
resp.launched_instance.last_known_checks[0].name #=> String
resp.launched_instance.last_known_checks[0].status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.launched_instance.last_known_checks[0].error #=> String
resp.launched_instance.last_known_checks[0].checked_at #=> Time
resp.launched_instance.last_known_fsx_checks_status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.data_replication_info.lag_duration #=> String
resp.data_replication_info.eta_date_time #=> String
resp.data_replication_info.replicated_disks #=> Array
resp.data_replication_info.replicated_disks[0].device_name #=> String
resp.data_replication_info.replicated_disks[0].total_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].replicated_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].rescanned_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].backlogged_storage_bytes #=> Integer
resp.data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED", "PENDING_SNAPSHOT_SHIPPING", "SHIPPING_SNAPSHOT"
resp.data_replication_info.data_replication_initiation.start_date_time #=> String
resp.data_replication_info.data_replication_initiation.next_attempt_date_time #=> String
resp.data_replication_info.data_replication_initiation.steps #=> Array
resp.data_replication_info.data_replication_initiation.steps[0].name #=> String, one of "WAIT", "CREATE_SECURITY_GROUP", "LAUNCH_REPLICATION_SERVER", "BOOT_REPLICATION_SERVER", "AUTHENTICATE_WITH_SERVICE", "DOWNLOAD_REPLICATION_SOFTWARE", "CREATE_STAGING_DISKS", "ATTACH_STAGING_DISKS", "PAIR_REPLICATION_SERVER_WITH_AGENT", "CONNECT_AGENT_TO_REPLICATION_SERVER", "START_DATA_TRANSFER", "SETUP_FSX_PROXY"
resp.data_replication_info.data_replication_initiation.steps[0].status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "SKIPPED"
resp.data_replication_info.data_replication_error.error #=> String, one of "AGENT_NOT_SEEN", "SNAPSHOTS_FAILURE", "NOT_CONVERGING", "UNSTABLE_NETWORK", "FAILED_TO_CREATE_SECURITY_GROUP", "FAILED_TO_LAUNCH_REPLICATION_SERVER", "FAILED_TO_BOOT_REPLICATION_SERVER", "FAILED_TO_AUTHENTICATE_WITH_SERVICE", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", "FAILED_TO_CREATE_STAGING_DISKS", "FAILED_TO_ATTACH_STAGING_DISKS", "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", "FAILED_TO_START_DATA_TRANSFER", "UNSUPPORTED_VM_CONFIGURATION", "LAST_SNAPSHOT_JOB_FAILED", "FAILED_TO_SETUP_FSX_PROXY", "FAILED_TO_CREATE_FSX_SNAPSHOT"
resp.data_replication_info.data_replication_error.raw_error #=> String
resp.data_replication_info.last_snapshot_date_time #=> String
resp.data_replication_info.replicator_id #=> String
resp.life_cycle.added_to_service_date_time #=> String
resp.life_cycle.first_byte_date_time #=> String
resp.life_cycle.elapsed_replication_duration #=> String
resp.life_cycle.last_seen_by_service_date_time #=> String
resp.life_cycle.last_test.initiated.api_call_date_time #=> String
resp.life_cycle.last_test.initiated.job_id #=> String
resp.life_cycle.last_test.reverted.api_call_date_time #=> String
resp.life_cycle.last_test.finalized.api_call_date_time #=> String
resp.life_cycle.last_cutover.initiated.api_call_date_time #=> String
resp.life_cycle.last_cutover.initiated.job_id #=> String
resp.life_cycle.last_cutover.reverted.api_call_date_time #=> String
resp.life_cycle.last_cutover.finalized.api_call_date_time #=> String
resp.life_cycle.state #=> String, one of "STOPPED", "NOT_READY", "READY_FOR_TEST", "TESTING", "READY_FOR_CUTOVER", "CUTTING_OVER", "CUTOVER", "DISCONNECTED", "DISCOVERED", "PENDING_INSTALLATION"
resp.source_properties.last_updated_date_time #=> String
resp.source_properties.recommended_instance_type #=> String
resp.source_properties.identification_hints.fqdn #=> String
resp.source_properties.identification_hints.hostname #=> String
resp.source_properties.identification_hints.vm_ware_uuid #=> String
resp.source_properties.identification_hints.aws_instance_id #=> String
resp.source_properties.identification_hints.vm_path #=> String
resp.source_properties.network_interfaces #=> Array
resp.source_properties.network_interfaces[0].mac_address #=> String
resp.source_properties.network_interfaces[0].ips #=> Array
resp.source_properties.network_interfaces[0].ips[0] #=> String
resp.source_properties.network_interfaces[0].is_primary #=> Boolean
resp.source_properties.disks #=> Array
resp.source_properties.disks[0].device_name #=> String
resp.source_properties.disks[0].bytes #=> Integer
resp.source_properties.cpus #=> Array
resp.source_properties.cpus[0].cores #=> Integer
resp.source_properties.cpus[0].model_name #=> String
resp.source_properties.ram_bytes #=> Integer
resp.source_properties.os.full_string #=> String
resp.replication_type #=> String, one of "AGENT_BASED", "SNAPSHOT_SHIPPING"
resp.vcenter_client_id #=> String
resp.application_id #=> String
resp.user_provided_id #=> String
resp.fqdn_for_action_framework #=> String
resp.connector_action.credentials_secret_arn #=> String
resp.connector_action.connector_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_server_id (required, String)

    Resume Replication Request source server ID.

  • :account_id (String)

    Resume Replication Request account ID.

Returns:

See Also:



5231
5232
5233
5234
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 5231

def resume_replication(params = {}, options = {})
  req = build_request(:resume_replication, params)
  req.send_request(options)
end

#retry_data_replication(params = {}) ⇒ Types::SourceServer

Causes the data replication initiation sequence to begin immediately upon next Handshake for specified SourceServer IDs, regardless of when the previous initiation started. This command will not work if the SourceServer is not stalled or is in a DISCONNECTED or STOPPED state.

Examples:

Request syntax with placeholder values


resp = client.retry_data_replication({
  source_server_id: "SourceServerID", # required
  account_id: "AccountID",
})

Response structure


resp.source_server_id #=> String
resp.arn #=> String
resp.is_archived #=> Boolean
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.launched_instance.ec2_instance_id #=> String
resp.launched_instance.job_id #=> String
resp.launched_instance.first_boot #=> String, one of "WAITING", "SUCCEEDED", "UNKNOWN", "STOPPED"
resp.launched_instance.last_known_checks #=> Array
resp.launched_instance.last_known_checks[0].type #=> String, one of "EC2", "FSx"
resp.launched_instance.last_known_checks[0].name #=> String
resp.launched_instance.last_known_checks[0].status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.launched_instance.last_known_checks[0].error #=> String
resp.launched_instance.last_known_checks[0].checked_at #=> Time
resp.launched_instance.last_known_fsx_checks_status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.data_replication_info.lag_duration #=> String
resp.data_replication_info.eta_date_time #=> String
resp.data_replication_info.replicated_disks #=> Array
resp.data_replication_info.replicated_disks[0].device_name #=> String
resp.data_replication_info.replicated_disks[0].total_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].replicated_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].rescanned_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].backlogged_storage_bytes #=> Integer
resp.data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED", "PENDING_SNAPSHOT_SHIPPING", "SHIPPING_SNAPSHOT"
resp.data_replication_info.data_replication_initiation.start_date_time #=> String
resp.data_replication_info.data_replication_initiation.next_attempt_date_time #=> String
resp.data_replication_info.data_replication_initiation.steps #=> Array
resp.data_replication_info.data_replication_initiation.steps[0].name #=> String, one of "WAIT", "CREATE_SECURITY_GROUP", "LAUNCH_REPLICATION_SERVER", "BOOT_REPLICATION_SERVER", "AUTHENTICATE_WITH_SERVICE", "DOWNLOAD_REPLICATION_SOFTWARE", "CREATE_STAGING_DISKS", "ATTACH_STAGING_DISKS", "PAIR_REPLICATION_SERVER_WITH_AGENT", "CONNECT_AGENT_TO_REPLICATION_SERVER", "START_DATA_TRANSFER", "SETUP_FSX_PROXY"
resp.data_replication_info.data_replication_initiation.steps[0].status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "SKIPPED"
resp.data_replication_info.data_replication_error.error #=> String, one of "AGENT_NOT_SEEN", "SNAPSHOTS_FAILURE", "NOT_CONVERGING", "UNSTABLE_NETWORK", "FAILED_TO_CREATE_SECURITY_GROUP", "FAILED_TO_LAUNCH_REPLICATION_SERVER", "FAILED_TO_BOOT_REPLICATION_SERVER", "FAILED_TO_AUTHENTICATE_WITH_SERVICE", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", "FAILED_TO_CREATE_STAGING_DISKS", "FAILED_TO_ATTACH_STAGING_DISKS", "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", "FAILED_TO_START_DATA_TRANSFER", "UNSUPPORTED_VM_CONFIGURATION", "LAST_SNAPSHOT_JOB_FAILED", "FAILED_TO_SETUP_FSX_PROXY", "FAILED_TO_CREATE_FSX_SNAPSHOT"
resp.data_replication_info.data_replication_error.raw_error #=> String
resp.data_replication_info.last_snapshot_date_time #=> String
resp.data_replication_info.replicator_id #=> String
resp.life_cycle.added_to_service_date_time #=> String
resp.life_cycle.first_byte_date_time #=> String
resp.life_cycle.elapsed_replication_duration #=> String
resp.life_cycle.last_seen_by_service_date_time #=> String
resp.life_cycle.last_test.initiated.api_call_date_time #=> String
resp.life_cycle.last_test.initiated.job_id #=> String
resp.life_cycle.last_test.reverted.api_call_date_time #=> String
resp.life_cycle.last_test.finalized.api_call_date_time #=> String
resp.life_cycle.last_cutover.initiated.api_call_date_time #=> String
resp.life_cycle.last_cutover.initiated.job_id #=> String
resp.life_cycle.last_cutover.reverted.api_call_date_time #=> String
resp.life_cycle.last_cutover.finalized.api_call_date_time #=> String
resp.life_cycle.state #=> String, one of "STOPPED", "NOT_READY", "READY_FOR_TEST", "TESTING", "READY_FOR_CUTOVER", "CUTTING_OVER", "CUTOVER", "DISCONNECTED", "DISCOVERED", "PENDING_INSTALLATION"
resp.source_properties.last_updated_date_time #=> String
resp.source_properties.recommended_instance_type #=> String
resp.source_properties.identification_hints.fqdn #=> String
resp.source_properties.identification_hints.hostname #=> String
resp.source_properties.identification_hints.vm_ware_uuid #=> String
resp.source_properties.identification_hints.aws_instance_id #=> String
resp.source_properties.identification_hints.vm_path #=> String
resp.source_properties.network_interfaces #=> Array
resp.source_properties.network_interfaces[0].mac_address #=> String
resp.source_properties.network_interfaces[0].ips #=> Array
resp.source_properties.network_interfaces[0].ips[0] #=> String
resp.source_properties.network_interfaces[0].is_primary #=> Boolean
resp.source_properties.disks #=> Array
resp.source_properties.disks[0].device_name #=> String
resp.source_properties.disks[0].bytes #=> Integer
resp.source_properties.cpus #=> Array
resp.source_properties.cpus[0].cores #=> Integer
resp.source_properties.cpus[0].model_name #=> String
resp.source_properties.ram_bytes #=> Integer
resp.source_properties.os.full_string #=> String
resp.replication_type #=> String, one of "AGENT_BASED", "SNAPSHOT_SHIPPING"
resp.vcenter_client_id #=> String
resp.application_id #=> String
resp.user_provided_id #=> String
resp.fqdn_for_action_framework #=> String
resp.connector_action.credentials_secret_arn #=> String
resp.connector_action.connector_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_server_id (required, String)

    Retry data replication for Source Server ID.

  • :account_id (String)

    Retry data replication for Account ID.

Returns:

See Also:



5351
5352
5353
5354
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 5351

def retry_data_replication(params = {}, options = {})
  req = build_request(:retry_data_replication, params)
  req.send_request(options)
end

#start_cutover(params = {}) ⇒ Types::StartCutoverResponse

Launches a Cutover Instance for specific Source Servers. This command starts a LAUNCH job whose initiatedBy property is StartCutover and changes the SourceServer.lifeCycle.state property to CUTTING_OVER.

Examples:

Request syntax with placeholder values


resp = client.start_cutover({
  source_server_i_ds: ["SourceServerID"], # required
  tags: {
    "TagKey" => "TagValue",
  },
  account_id: "AccountID",
})

Response structure


resp.job.job_id #=> String
resp.job.arn #=> String
resp.job.type #=> String, one of "LAUNCH", "TERMINATE"
resp.job.initiated_by #=> String, one of "START_TEST", "START_CUTOVER", "DIAGNOSTIC", "TERMINATE"
resp.job.creation_date_time #=> String
resp.job.end_date_time #=> String
resp.job.status #=> String, one of "PENDING", "STARTED", "COMPLETED"
resp.job.participating_servers #=> Array
resp.job.participating_servers[0].source_server_id #=> String
resp.job.participating_servers[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
resp.job.participating_servers[0].launched_ec2_instance_id #=> String
resp.job.participating_servers[0].post_launch_actions_status.ssm_agent_discovery_datetime #=> String
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list #=> Array
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.action_name #=> String
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.ssm_document_name #=> String
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.timeout_seconds #=> Integer
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.must_succeed_for_cutover #=> Boolean
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.parameters #=> Hash
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.parameters["SsmDocumentParameterName"] #=> Array
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.parameters["SsmDocumentParameterName"][0].parameter_type #=> String, one of "STRING", "SECURE_STRING"
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.parameters["SsmDocumentParameterName"][0].parameter_name #=> String
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.external_parameters #=> Hash
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.external_parameters["SsmDocumentParameterName"].dynamic_path #=> String
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document_type #=> String, one of "AUTOMATION", "COMMAND"
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].execution_id #=> String
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].execution_status #=> String, one of "IN_PROGRESS", "SUCCESS", "FAILED"
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].failure_reason #=> String
resp.job.tags #=> Hash
resp.job.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_server_i_ds (required, Array<String>)

    Start Cutover by Source Server IDs.

  • :tags (Hash<String,String>)

    Start Cutover by Tags.

  • :account_id (String)

    Start Cutover by Account IDs

Returns:

See Also:



5419
5420
5421
5422
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 5419

def start_cutover(params = {}, options = {})
  req = build_request(:start_cutover, params)
  req.send_request(options)
end

#start_export(params = {}) ⇒ Types::StartExportResponse

Start export.

Examples:

Request syntax with placeholder values


resp = client.start_export({
  s3_bucket: "S3BucketName", # required
  s3_key: "S3Key", # required
  s3_bucket_owner: "AccountID",
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.export_task.export_id #=> String
resp.export_task.arn #=> String
resp.export_task.s3_bucket #=> String
resp.export_task.s3_key #=> String
resp.export_task.s3_bucket_owner #=> String
resp.export_task.creation_date_time #=> String
resp.export_task.end_date_time #=> String
resp.export_task.status #=> String, one of "PENDING", "STARTED", "FAILED", "SUCCEEDED"
resp.export_task.progress_percentage #=> Float
resp.export_task.summary.servers_count #=> Integer
resp.export_task.summary.applications_count #=> Integer
resp.export_task.summary.waves_count #=> Integer
resp.export_task.tags #=> Hash
resp.export_task.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :s3_bucket (required, String)

    Start export request s3 bucket.

  • :s3_key (required, String)

    Start export request s3key.

  • :s3_bucket_owner (String)

    Start export request s3 bucket owner.

  • :tags (Hash<String,String>)

    Start export request tags.

Returns:

See Also:



5474
5475
5476
5477
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 5474

def start_export(params = {}, options = {})
  req = build_request(:start_export, params)
  req.send_request(options)
end

#start_import(params = {}) ⇒ Types::StartImportResponse

Start import.

Examples:

Request syntax with placeholder values


resp = client.start_import({
  client_token: "ClientIdempotencyToken",
  s3_bucket_source: { # required
    s3_bucket: "S3BucketName", # required
    s3_key: "S3Key", # required
    s3_bucket_owner: "AccountID",
  },
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.import_task.import_id #=> String
resp.import_task.arn #=> String
resp.import_task.s3_bucket_source.s3_bucket #=> String
resp.import_task.s3_bucket_source.s3_key #=> String
resp.import_task.s3_bucket_source.s3_bucket_owner #=> String
resp.import_task.creation_date_time #=> String
resp.import_task.end_date_time #=> String
resp.import_task.status #=> String, one of "PENDING", "STARTED", "FAILED", "SUCCEEDED"
resp.import_task.progress_percentage #=> Float
resp.import_task.summary.waves.created_count #=> Integer
resp.import_task.summary.waves.modified_count #=> Integer
resp.import_task.summary.applications.created_count #=> Integer
resp.import_task.summary.applications.modified_count #=> Integer
resp.import_task.summary.servers.created_count #=> Integer
resp.import_task.summary.servers.modified_count #=> Integer
resp.import_task.tags #=> Hash
resp.import_task.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    Start import request client token.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

  • :s3_bucket_source (required, Types::S3BucketSource)

    Start import request s3 bucket source.

  • :tags (Hash<String,String>)

    Start import request tags.

Returns:

See Also:



5535
5536
5537
5538
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 5535

def start_import(params = {}, options = {})
  req = build_request(:start_import, params)
  req.send_request(options)
end

#start_import_file_enrichment(params = {}) ⇒ Types::StartImportFileEnrichmentResponse

Starts an import file enrichment job to process and enrich network migration import files with additional metadata and IP assignment strategies.

Examples:

Example: Sample StartImportFileEnrichment call


resp = client.start_import_file_enrichment({
  ip_assignment_strategy: "STATIC", 
  s3_bucket_source: {
    s3_bucket: "my-source-bucket", 
    s3_bucket_owner: "123456789012", 
    s3_key: "imports/source-file.csv", 
  }, 
  s3_bucket_target: {
    s3_bucket: "my-target-bucket", 
    s3_bucket_owner: "123456789012", 
    s3_key: "enriched/output.csv", 
  }, 
})

resp.to_h outputs the following:
{
  job_id: "01234567-abcd-abcd-efab-0123456789ab", 
}

Request syntax with placeholder values


resp = client.start_import_file_enrichment({
  client_token: "ClientIdempotencyToken",
  s3_bucket_source: { # required
    s3_bucket: "S3BucketName", # required
    s3_bucket_owner: "AccountID", # required
    s3_key: "S3KeyName", # required
  },
  s3_bucket_target: { # required
    s3_bucket: "S3BucketName", # required
    s3_bucket_owner: "AccountID", # required
    s3_key: "S3KeyName", # required
  },
  ip_assignment_strategy: "STATIC", # accepts STATIC, DYNAMIC
})

Response structure


resp.job_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

  • :s3_bucket_source (required, Types::EnrichmentSourceS3Configuration)

    The S3 configuration specifying the source location of the import file to be enriched.

  • :s3_bucket_target (required, Types::EnrichmentTargetS3Configuration)

    The S3 configuration specifying the target location where the enriched import file will be stored.

  • :ip_assignment_strategy (String)

    The IP assignment strategy to use when enriching the import file. Can be STATIC or DYNAMIC.

Returns:

See Also:



5614
5615
5616
5617
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 5614

def start_import_file_enrichment(params = {}, options = {})
  req = build_request(:start_import_file_enrichment, params)
  req.send_request(options)
end

#start_network_migration_analysis(params = {}) ⇒ Types::StartNetworkMigrationAnalysisResponse

Starts a network migration analysis job to evaluate connectivity and compatibility of the migration mappings.

Examples:

Example: Sample StartNetworkMigrationAnalysis call


resp = client.start_network_migration_analysis({
  network_migration_definition_id: "nmd-01234567891234567", 
  network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
})

resp.to_h outputs the following:
{
  job_id: "01234567-abcd-abcd-efab-0123456789ab", 
}

Request syntax with placeholder values


resp = client.start_network_migration_analysis({
  network_migration_execution_id: "NetworkMigrationExecutionID", # required
  network_migration_definition_id: "NetworkMigrationDefinitionID", # required
})

Response structure


resp.job_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :network_migration_execution_id (required, String)

    The unique identifier of the network migration execution to analyze.

  • :network_migration_definition_id (required, String)

    The unique identifier of the network migration definition.

Returns:

See Also:



5660
5661
5662
5663
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 5660

def start_network_migration_analysis(params = {}, options = {})
  req = build_request(:start_network_migration_analysis, params)
  req.send_request(options)
end

#start_network_migration_code_generation(params = {}) ⇒ Types::StartNetworkMigrationCodeGenerationResponse

Starts a code generation job to convert network migration mappings into infrastructure-as-code templates.

Examples:

Example: Sample StartNetworkMigrationCodeGeneration call


resp = client.start_network_migration_code_generation({
  network_migration_definition_id: "nmd-01234567891234567", 
  network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
})

resp.to_h outputs the following:
{
  job_id: "01234567-abcd-abcd-efab-0123456789ab", 
}

Request syntax with placeholder values


resp = client.start_network_migration_code_generation({
  network_migration_execution_id: "NetworkMigrationExecutionID", # required
  network_migration_definition_id: "NetworkMigrationDefinitionID", # required
  code_generation_output_format_types: ["CDK_L1"], # accepts CDK_L1, CDK_L2, TERRAFORM, LZA
})

Response structure


resp.job_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :network_migration_execution_id (required, String)

    The unique identifier of the network migration execution.

  • :network_migration_definition_id (required, String)

    The unique identifier of the network migration definition.

  • :code_generation_output_format_types (Array<String>)

    The output format types for code generation, such as CloudFormation or Terraform.

Returns:

See Also:



5711
5712
5713
5714
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 5711

def start_network_migration_code_generation(params = {}, options = {})
  req = build_request(:start_network_migration_code_generation, params)
  req.send_request(options)
end

#start_network_migration_deployment(params = {}) ⇒ Types::StartNetworkMigrationDeployerJobResponse

Starts a deployment job to create the target network infrastructure based on the generated code templates.

Examples:

Example: Sample StartNetworkMigrationDeployment call


resp = client.start_network_migration_deployment({
  network_migration_definition_id: "nmd-01234567891234567", 
  network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
})

resp.to_h outputs the following:
{
  job_id: "01234567-abcd-abcd-efab-0123456789ab", 
}

Request syntax with placeholder values


resp = client.start_network_migration_deployment({
  network_migration_execution_id: "NetworkMigrationExecutionID", # required
  network_migration_definition_id: "NetworkMigrationDefinitionID", # required
})

Response structure


resp.job_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :network_migration_execution_id (required, String)

    The unique identifier of the network migration execution.

  • :network_migration_definition_id (required, String)

    The unique identifier of the network migration definition.

Returns:

See Also:



5757
5758
5759
5760
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 5757

def start_network_migration_deployment(params = {}, options = {})
  req = build_request(:start_network_migration_deployment, params)
  req.send_request(options)
end

#start_network_migration_mapping(params = {}) ⇒ Types::StartNetworkMigrationMappingResponse

Starts the network migration mapping process for a given network migration execution.

Examples:

Example: Sample StartNetworkMigrationMapping call


resp = client.start_network_migration_mapping({
  network_migration_definition_id: "nmd-01234567891234567", 
  network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
})

resp.to_h outputs the following:
{
  job_id: "01234567-abcd-abcd-efab-0123456789ab", 
}

Request syntax with placeholder values


resp = client.start_network_migration_mapping({
  network_migration_execution_id: "NetworkMigrationExecutionID", # required
  network_migration_definition_id: "NetworkMigrationDefinitionID", # required
  security_group_mapping_strategy: "MAP", # accepts MAP, SKIP, MAP_DHCP
})

Response structure


resp.job_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :network_migration_execution_id (required, String)

    The unique identifier of the network migration execution.

  • :network_migration_definition_id (required, String)

    The unique identifier of the network migration definition.

  • :security_group_mapping_strategy (String)

    The security group mapping strategy to use.

Returns:

See Also:



5807
5808
5809
5810
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 5807

def start_network_migration_mapping(params = {}, options = {})
  req = build_request(:start_network_migration_mapping, params)
  req.send_request(options)
end

#start_network_migration_mapping_update(params = {}) ⇒ Types::StartNetworkMigrationMappingUpdateResponse

Starts a job to apply customer modifications to network migration mappings, such as changing properties.

Examples:

Example: Sample StartNetworkMigrationMappingUpdate call


resp = client.start_network_migration_mapping_update({
  constructs: [
    {
      construct_id: "abc45678-abcd-abcd-efab-012345678abc", 
      construct_type: "AWS::EC2::VPC", 
      operation: {
        update: {
          properties: {
            "CidrBlock" => "10.31.0.0/22", 
          }, 
        }, 
      }, 
      segment_id: "12345678-abcd-abcd-efab-0123456789ab", 
    }, 
  ], 
  network_migration_definition_id: "nmd-01234567891234567", 
  network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
  segments: [
    {
      scope_tags: {
        "key1" => "val1", 
        "key2" => "val2", 
      }, 
      segment_id: "12345678-abcd-abcd-efab-0123456789ab", 
      target_account: "234567890123", 
    }, 
  ], 
})

resp.to_h outputs the following:
{
  job_id: "01234567-abcd-abcd-efab-0123456789ab", 
}

Request syntax with placeholder values


resp = client.start_network_migration_mapping_update({
  network_migration_execution_id: "NetworkMigrationExecutionID", # required
  network_migration_definition_id: "NetworkMigrationDefinitionID", # required
  constructs: [
    {
      segment_id: "SegmentID", # required
      construct_id: "ConstructID", # required
      construct_type: "NetworkMigrationMapperSegmentConstructType", # required
      operation: {
        merge: {
          merge_constructs: [
            {
              segment_id: "SegmentID",
              construct_id: "ConstructID",
            },
          ],
        },
        split: {
          split_constructs: [
            {
              cidr_block: "CidrBlock",
            },
          ],
        },
        delete: {
        },
        update: {
          name: "SegmentConstructName",
          excluded: false,
          properties: {
            "ConstructPropertyKey" => "MarshalledResourceDefinition",
          },
        },
      },
    },
  ],
  segments: [
    {
      segment_id: "SegmentID", # required
      target_account: "AccountID",
      scope_tags: {
        "ScopeTagKey" => "ScopeTagValue",
      },
    },
  ],
})

Response structure


resp.job_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

Returns:

See Also:



5925
5926
5927
5928
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 5925

def start_network_migration_mapping_update(params = {}, options = {})
  req = build_request(:start_network_migration_mapping_update, params)
  req.send_request(options)
end

#start_replication(params = {}) ⇒ Types::SourceServer

Start replication for source server irrespective of its replication type.

Examples:

Request syntax with placeholder values


resp = client.start_replication({
  source_server_id: "SourceServerID", # required
  account_id: "AccountID",
})

Response structure


resp.source_server_id #=> String
resp.arn #=> String
resp.is_archived #=> Boolean
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.launched_instance.ec2_instance_id #=> String
resp.launched_instance.job_id #=> String
resp.launched_instance.first_boot #=> String, one of "WAITING", "SUCCEEDED", "UNKNOWN", "STOPPED"
resp.launched_instance.last_known_checks #=> Array
resp.launched_instance.last_known_checks[0].type #=> String, one of "EC2", "FSx"
resp.launched_instance.last_known_checks[0].name #=> String
resp.launched_instance.last_known_checks[0].status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.launched_instance.last_known_checks[0].error #=> String
resp.launched_instance.last_known_checks[0].checked_at #=> Time
resp.launched_instance.last_known_fsx_checks_status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.data_replication_info.lag_duration #=> String
resp.data_replication_info.eta_date_time #=> String
resp.data_replication_info.replicated_disks #=> Array
resp.data_replication_info.replicated_disks[0].device_name #=> String
resp.data_replication_info.replicated_disks[0].total_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].replicated_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].rescanned_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].backlogged_storage_bytes #=> Integer
resp.data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED", "PENDING_SNAPSHOT_SHIPPING", "SHIPPING_SNAPSHOT"
resp.data_replication_info.data_replication_initiation.start_date_time #=> String
resp.data_replication_info.data_replication_initiation.next_attempt_date_time #=> String
resp.data_replication_info.data_replication_initiation.steps #=> Array
resp.data_replication_info.data_replication_initiation.steps[0].name #=> String, one of "WAIT", "CREATE_SECURITY_GROUP", "LAUNCH_REPLICATION_SERVER", "BOOT_REPLICATION_SERVER", "AUTHENTICATE_WITH_SERVICE", "DOWNLOAD_REPLICATION_SOFTWARE", "CREATE_STAGING_DISKS", "ATTACH_STAGING_DISKS", "PAIR_REPLICATION_SERVER_WITH_AGENT", "CONNECT_AGENT_TO_REPLICATION_SERVER", "START_DATA_TRANSFER", "SETUP_FSX_PROXY"
resp.data_replication_info.data_replication_initiation.steps[0].status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "SKIPPED"
resp.data_replication_info.data_replication_error.error #=> String, one of "AGENT_NOT_SEEN", "SNAPSHOTS_FAILURE", "NOT_CONVERGING", "UNSTABLE_NETWORK", "FAILED_TO_CREATE_SECURITY_GROUP", "FAILED_TO_LAUNCH_REPLICATION_SERVER", "FAILED_TO_BOOT_REPLICATION_SERVER", "FAILED_TO_AUTHENTICATE_WITH_SERVICE", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", "FAILED_TO_CREATE_STAGING_DISKS", "FAILED_TO_ATTACH_STAGING_DISKS", "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", "FAILED_TO_START_DATA_TRANSFER", "UNSUPPORTED_VM_CONFIGURATION", "LAST_SNAPSHOT_JOB_FAILED", "FAILED_TO_SETUP_FSX_PROXY", "FAILED_TO_CREATE_FSX_SNAPSHOT"
resp.data_replication_info.data_replication_error.raw_error #=> String
resp.data_replication_info.last_snapshot_date_time #=> String
resp.data_replication_info.replicator_id #=> String
resp.life_cycle.added_to_service_date_time #=> String
resp.life_cycle.first_byte_date_time #=> String
resp.life_cycle.elapsed_replication_duration #=> String
resp.life_cycle.last_seen_by_service_date_time #=> String
resp.life_cycle.last_test.initiated.api_call_date_time #=> String
resp.life_cycle.last_test.initiated.job_id #=> String
resp.life_cycle.last_test.reverted.api_call_date_time #=> String
resp.life_cycle.last_test.finalized.api_call_date_time #=> String
resp.life_cycle.last_cutover.initiated.api_call_date_time #=> String
resp.life_cycle.last_cutover.initiated.job_id #=> String
resp.life_cycle.last_cutover.reverted.api_call_date_time #=> String
resp.life_cycle.last_cutover.finalized.api_call_date_time #=> String
resp.life_cycle.state #=> String, one of "STOPPED", "NOT_READY", "READY_FOR_TEST", "TESTING", "READY_FOR_CUTOVER", "CUTTING_OVER", "CUTOVER", "DISCONNECTED", "DISCOVERED", "PENDING_INSTALLATION"
resp.source_properties.last_updated_date_time #=> String
resp.source_properties.recommended_instance_type #=> String
resp.source_properties.identification_hints.fqdn #=> String
resp.source_properties.identification_hints.hostname #=> String
resp.source_properties.identification_hints.vm_ware_uuid #=> String
resp.source_properties.identification_hints.aws_instance_id #=> String
resp.source_properties.identification_hints.vm_path #=> String
resp.source_properties.network_interfaces #=> Array
resp.source_properties.network_interfaces[0].mac_address #=> String
resp.source_properties.network_interfaces[0].ips #=> Array
resp.source_properties.network_interfaces[0].ips[0] #=> String
resp.source_properties.network_interfaces[0].is_primary #=> Boolean
resp.source_properties.disks #=> Array
resp.source_properties.disks[0].device_name #=> String
resp.source_properties.disks[0].bytes #=> Integer
resp.source_properties.cpus #=> Array
resp.source_properties.cpus[0].cores #=> Integer
resp.source_properties.cpus[0].model_name #=> String
resp.source_properties.ram_bytes #=> Integer
resp.source_properties.os.full_string #=> String
resp.replication_type #=> String, one of "AGENT_BASED", "SNAPSHOT_SHIPPING"
resp.vcenter_client_id #=> String
resp.application_id #=> String
resp.user_provided_id #=> String
resp.fqdn_for_action_framework #=> String
resp.connector_action.credentials_secret_arn #=> String
resp.connector_action.connector_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_server_id (required, String)

    ID of source server on which to start replication.

  • :account_id (String)

    Account ID on which to start replication.

Returns:

See Also:



6043
6044
6045
6046
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 6043

def start_replication(params = {}, options = {})
  req = build_request(:start_replication, params)
  req.send_request(options)
end

#start_test(params = {}) ⇒ Types::StartTestResponse

Launches a Test Instance for specific Source Servers. This command starts a LAUNCH job whose initiatedBy property is StartTest and changes the SourceServer.lifeCycle.state property to TESTING.

Examples:

Request syntax with placeholder values


resp = client.start_test({
  source_server_i_ds: ["SourceServerID"], # required
  tags: {
    "TagKey" => "TagValue",
  },
  account_id: "AccountID",
})

Response structure


resp.job.job_id #=> String
resp.job.arn #=> String
resp.job.type #=> String, one of "LAUNCH", "TERMINATE"
resp.job.initiated_by #=> String, one of "START_TEST", "START_CUTOVER", "DIAGNOSTIC", "TERMINATE"
resp.job.creation_date_time #=> String
resp.job.end_date_time #=> String
resp.job.status #=> String, one of "PENDING", "STARTED", "COMPLETED"
resp.job.participating_servers #=> Array
resp.job.participating_servers[0].source_server_id #=> String
resp.job.participating_servers[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
resp.job.participating_servers[0].launched_ec2_instance_id #=> String
resp.job.participating_servers[0].post_launch_actions_status.ssm_agent_discovery_datetime #=> String
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list #=> Array
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.action_name #=> String
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.ssm_document_name #=> String
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.timeout_seconds #=> Integer
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.must_succeed_for_cutover #=> Boolean
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.parameters #=> Hash
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.parameters["SsmDocumentParameterName"] #=> Array
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.parameters["SsmDocumentParameterName"][0].parameter_type #=> String, one of "STRING", "SECURE_STRING"
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.parameters["SsmDocumentParameterName"][0].parameter_name #=> String
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.external_parameters #=> Hash
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.external_parameters["SsmDocumentParameterName"].dynamic_path #=> String
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document_type #=> String, one of "AUTOMATION", "COMMAND"
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].execution_id #=> String
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].execution_status #=> String, one of "IN_PROGRESS", "SUCCESS", "FAILED"
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].failure_reason #=> String
resp.job.tags #=> Hash
resp.job.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_server_i_ds (required, Array<String>)

    Start Test for Source Server IDs.

  • :tags (Hash<String,String>)

    Start Test by Tags.

  • :account_id (String)

    Start Test for Account ID.

Returns:

See Also:



6111
6112
6113
6114
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 6111

def start_test(params = {}, options = {})
  req = build_request(:start_test, params)
  req.send_request(options)
end

#stop_replication(params = {}) ⇒ Types::SourceServer

Stop Replication.

Examples:

Request syntax with placeholder values


resp = client.stop_replication({
  source_server_id: "SourceServerID", # required
  account_id: "AccountID",
})

Response structure


resp.source_server_id #=> String
resp.arn #=> String
resp.is_archived #=> Boolean
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.launched_instance.ec2_instance_id #=> String
resp.launched_instance.job_id #=> String
resp.launched_instance.first_boot #=> String, one of "WAITING", "SUCCEEDED", "UNKNOWN", "STOPPED"
resp.launched_instance.last_known_checks #=> Array
resp.launched_instance.last_known_checks[0].type #=> String, one of "EC2", "FSx"
resp.launched_instance.last_known_checks[0].name #=> String
resp.launched_instance.last_known_checks[0].status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.launched_instance.last_known_checks[0].error #=> String
resp.launched_instance.last_known_checks[0].checked_at #=> Time
resp.launched_instance.last_known_fsx_checks_status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.data_replication_info.lag_duration #=> String
resp.data_replication_info.eta_date_time #=> String
resp.data_replication_info.replicated_disks #=> Array
resp.data_replication_info.replicated_disks[0].device_name #=> String
resp.data_replication_info.replicated_disks[0].total_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].replicated_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].rescanned_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].backlogged_storage_bytes #=> Integer
resp.data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED", "PENDING_SNAPSHOT_SHIPPING", "SHIPPING_SNAPSHOT"
resp.data_replication_info.data_replication_initiation.start_date_time #=> String
resp.data_replication_info.data_replication_initiation.next_attempt_date_time #=> String
resp.data_replication_info.data_replication_initiation.steps #=> Array
resp.data_replication_info.data_replication_initiation.steps[0].name #=> String, one of "WAIT", "CREATE_SECURITY_GROUP", "LAUNCH_REPLICATION_SERVER", "BOOT_REPLICATION_SERVER", "AUTHENTICATE_WITH_SERVICE", "DOWNLOAD_REPLICATION_SOFTWARE", "CREATE_STAGING_DISKS", "ATTACH_STAGING_DISKS", "PAIR_REPLICATION_SERVER_WITH_AGENT", "CONNECT_AGENT_TO_REPLICATION_SERVER", "START_DATA_TRANSFER", "SETUP_FSX_PROXY"
resp.data_replication_info.data_replication_initiation.steps[0].status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "SKIPPED"
resp.data_replication_info.data_replication_error.error #=> String, one of "AGENT_NOT_SEEN", "SNAPSHOTS_FAILURE", "NOT_CONVERGING", "UNSTABLE_NETWORK", "FAILED_TO_CREATE_SECURITY_GROUP", "FAILED_TO_LAUNCH_REPLICATION_SERVER", "FAILED_TO_BOOT_REPLICATION_SERVER", "FAILED_TO_AUTHENTICATE_WITH_SERVICE", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", "FAILED_TO_CREATE_STAGING_DISKS", "FAILED_TO_ATTACH_STAGING_DISKS", "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", "FAILED_TO_START_DATA_TRANSFER", "UNSUPPORTED_VM_CONFIGURATION", "LAST_SNAPSHOT_JOB_FAILED", "FAILED_TO_SETUP_FSX_PROXY", "FAILED_TO_CREATE_FSX_SNAPSHOT"
resp.data_replication_info.data_replication_error.raw_error #=> String
resp.data_replication_info.last_snapshot_date_time #=> String
resp.data_replication_info.replicator_id #=> String
resp.life_cycle.added_to_service_date_time #=> String
resp.life_cycle.first_byte_date_time #=> String
resp.life_cycle.elapsed_replication_duration #=> String
resp.life_cycle.last_seen_by_service_date_time #=> String
resp.life_cycle.last_test.initiated.api_call_date_time #=> String
resp.life_cycle.last_test.initiated.job_id #=> String
resp.life_cycle.last_test.reverted.api_call_date_time #=> String
resp.life_cycle.last_test.finalized.api_call_date_time #=> String
resp.life_cycle.last_cutover.initiated.api_call_date_time #=> String
resp.life_cycle.last_cutover.initiated.job_id #=> String
resp.life_cycle.last_cutover.reverted.api_call_date_time #=> String
resp.life_cycle.last_cutover.finalized.api_call_date_time #=> String
resp.life_cycle.state #=> String, one of "STOPPED", "NOT_READY", "READY_FOR_TEST", "TESTING", "READY_FOR_CUTOVER", "CUTTING_OVER", "CUTOVER", "DISCONNECTED", "DISCOVERED", "PENDING_INSTALLATION"
resp.source_properties.last_updated_date_time #=> String
resp.source_properties.recommended_instance_type #=> String
resp.source_properties.identification_hints.fqdn #=> String
resp.source_properties.identification_hints.hostname #=> String
resp.source_properties.identification_hints.vm_ware_uuid #=> String
resp.source_properties.identification_hints.aws_instance_id #=> String
resp.source_properties.identification_hints.vm_path #=> String
resp.source_properties.network_interfaces #=> Array
resp.source_properties.network_interfaces[0].mac_address #=> String
resp.source_properties.network_interfaces[0].ips #=> Array
resp.source_properties.network_interfaces[0].ips[0] #=> String
resp.source_properties.network_interfaces[0].is_primary #=> Boolean
resp.source_properties.disks #=> Array
resp.source_properties.disks[0].device_name #=> String
resp.source_properties.disks[0].bytes #=> Integer
resp.source_properties.cpus #=> Array
resp.source_properties.cpus[0].cores #=> Integer
resp.source_properties.cpus[0].model_name #=> String
resp.source_properties.ram_bytes #=> Integer
resp.source_properties.os.full_string #=> String
resp.replication_type #=> String, one of "AGENT_BASED", "SNAPSHOT_SHIPPING"
resp.vcenter_client_id #=> String
resp.application_id #=> String
resp.user_provided_id #=> String
resp.fqdn_for_action_framework #=> String
resp.connector_action.credentials_secret_arn #=> String
resp.connector_action.connector_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_server_id (required, String)

    Stop Replication Request source server ID.

  • :account_id (String)

    Stop Replication Request account ID.

Returns:

See Also:



6228
6229
6230
6231
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 6228

def stop_replication(params = {}, options = {})
  req = build_request(:stop_replication, params)
  req.send_request(options)
end

#tag_resource(params = {}) ⇒ Struct

Adds or overwrites only the specified tags for the specified Application Migration Service resource or resources. When you specify an existing tag key, the value is overwritten with the new value. Each resource can have a maximum of 50 tags. Each tag consists of a key and optional value.

Examples:

Request syntax with placeholder values


resp = client.tag_resource({
  resource_arn: "ARN", # required
  tags: { # required
    "TagKey" => "TagValue",
  },
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    Tag resource by ARN.

  • :tags (required, Hash<String,String>)

    Tag resource by Tags.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



6260
6261
6262
6263
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 6260

def tag_resource(params = {}, options = {})
  req = build_request(:tag_resource, params)
  req.send_request(options)
end

#terminate_target_instances(params = {}) ⇒ Types::TerminateTargetInstancesResponse

Starts a job that terminates specific launched EC2 Test and Cutover instances. This command will not work for any Source Server with a lifecycle.state of TESTING, CUTTING_OVER, or CUTOVER.

Examples:

Request syntax with placeholder values


resp = client.terminate_target_instances({
  source_server_i_ds: ["SourceServerID"], # required
  tags: {
    "TagKey" => "TagValue",
  },
  account_id: "AccountID",
})

Response structure


resp.job.job_id #=> String
resp.job.arn #=> String
resp.job.type #=> String, one of "LAUNCH", "TERMINATE"
resp.job.initiated_by #=> String, one of "START_TEST", "START_CUTOVER", "DIAGNOSTIC", "TERMINATE"
resp.job.creation_date_time #=> String
resp.job.end_date_time #=> String
resp.job.status #=> String, one of "PENDING", "STARTED", "COMPLETED"
resp.job.participating_servers #=> Array
resp.job.participating_servers[0].source_server_id #=> String
resp.job.participating_servers[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
resp.job.participating_servers[0].launched_ec2_instance_id #=> String
resp.job.participating_servers[0].post_launch_actions_status.ssm_agent_discovery_datetime #=> String
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list #=> Array
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.action_name #=> String
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.ssm_document_name #=> String
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.timeout_seconds #=> Integer
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.must_succeed_for_cutover #=> Boolean
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.parameters #=> Hash
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.parameters["SsmDocumentParameterName"] #=> Array
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.parameters["SsmDocumentParameterName"][0].parameter_type #=> String, one of "STRING", "SECURE_STRING"
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.parameters["SsmDocumentParameterName"][0].parameter_name #=> String
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.external_parameters #=> Hash
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document.external_parameters["SsmDocumentParameterName"].dynamic_path #=> String
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].ssm_document_type #=> String, one of "AUTOMATION", "COMMAND"
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].execution_id #=> String
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].execution_status #=> String, one of "IN_PROGRESS", "SUCCESS", "FAILED"
resp.job.participating_servers[0].post_launch_actions_status.post_launch_actions_launch_status_list[0].failure_reason #=> String
resp.job.tags #=> Hash
resp.job.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_server_i_ds (required, Array<String>)

    Terminate Target instance by Source Server IDs.

  • :tags (Hash<String,String>)

    Terminate Target instance by Tags.

  • :account_id (String)

    Terminate Target instance by Account ID

Returns:

See Also:



6328
6329
6330
6331
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 6328

def terminate_target_instances(params = {}, options = {})
  req = build_request(:terminate_target_instances, params)
  req.send_request(options)
end

#unarchive_application(params = {}) ⇒ Types::Application

Unarchive application.

Examples:

Request syntax with placeholder values


resp = client.unarchive_application({
  application_id: "ApplicationID", # required
  account_id: "AccountID",
})

Response structure


resp.application_id #=> String
resp.arn #=> String
resp.name #=> String
resp.description #=> String
resp.is_archived #=> Boolean
resp.application_aggregated_status.last_update_date_time #=> String
resp.application_aggregated_status.health_status #=> String, one of "HEALTHY", "LAGGING", "ERROR"
resp.application_aggregated_status.progress_status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "COMPLETED"
resp.application_aggregated_status.total_source_servers #=> Integer
resp.creation_date_time #=> String
resp.last_modified_date_time #=> String
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.wave_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    Application ID.

  • :account_id (String)

    Account ID.

Returns:

See Also:



6382
6383
6384
6385
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 6382

def unarchive_application(params = {}, options = {})
  req = build_request(:unarchive_application, params)
  req.send_request(options)
end

#unarchive_wave(params = {}) ⇒ Types::Wave

Unarchive wave.

Examples:

Request syntax with placeholder values


resp = client.unarchive_wave({
  wave_id: "WaveID", # required
  account_id: "AccountID",
})

Response structure


resp.wave_id #=> String
resp.arn #=> String
resp.name #=> String
resp.description #=> String
resp.is_archived #=> Boolean
resp.wave_aggregated_status.last_update_date_time #=> String
resp.wave_aggregated_status.replication_started_date_time #=> String
resp.wave_aggregated_status.health_status #=> String, one of "HEALTHY", "LAGGING", "ERROR"
resp.wave_aggregated_status.progress_status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "COMPLETED"
resp.wave_aggregated_status.total_applications #=> Integer
resp.creation_date_time #=> String
resp.last_modified_date_time #=> String
resp.tags #=> Hash
resp.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :wave_id (required, String)

    Wave ID.

  • :account_id (String)

    Account ID.

Returns:

See Also:



6435
6436
6437
6438
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 6435

def unarchive_wave(params = {}, options = {})
  req = build_request(:unarchive_wave, params)
  req.send_request(options)
end

#untag_resource(params = {}) ⇒ Struct

Deletes the specified set of tags from the specified set of Application Migration Service resources.

Examples:

Request syntax with placeholder values


resp = client.untag_resource({
  resource_arn: "ARN", # required
  tag_keys: ["TagKey"], # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    Untag resource by ARN.

  • :tag_keys (required, Array<String>)

    Untag resource by Keys.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



6462
6463
6464
6465
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 6462

def untag_resource(params = {}, options = {})
  req = build_request(:untag_resource, params)
  req.send_request(options)
end

#update_application(params = {}) ⇒ Types::Application

Update application.

Examples:

Request syntax with placeholder values


resp = client.update_application({
  application_id: "ApplicationID", # required
  name: "ApplicationName",
  description: "ApplicationDescription",
  account_id: "AccountID",
})

Response structure


resp.application_id #=> String
resp.arn #=> String
resp.name #=> String
resp.description #=> String
resp.is_archived #=> Boolean
resp.application_aggregated_status.last_update_date_time #=> String
resp.application_aggregated_status.health_status #=> String, one of "HEALTHY", "LAGGING", "ERROR"
resp.application_aggregated_status.progress_status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "COMPLETED"
resp.application_aggregated_status.total_source_servers #=> Integer
resp.creation_date_time #=> String
resp.last_modified_date_time #=> String
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.wave_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :application_id (required, String)

    Application ID.

  • :name (String)

    Application name.

  • :description (String)

    Application description.

  • :account_id (String)

    Account ID.

Returns:

See Also:



6524
6525
6526
6527
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 6524

def update_application(params = {}, options = {})
  req = build_request(:update_application, params)
  req.send_request(options)
end

#update_connector(params = {}) ⇒ Types::Connector

Update Connector.

Examples:

Request syntax with placeholder values


resp = client.update_connector({
  connector_id: "ConnectorID", # required
  name: "ConnectorName",
  ssm_command_config: {
    s3_output_enabled: false, # required
    output_s3_bucket_name: "S3BucketName",
    cloud_watch_output_enabled: false, # required
    cloud_watch_log_group_name: "CloudWatchLogGroupName",
  },
})

Response structure


resp.connector_id #=> String
resp.name #=> String
resp.ssm_instance_id #=> String
resp.arn #=> String
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.ssm_command_config.s3_output_enabled #=> Boolean
resp.ssm_command_config.output_s3_bucket_name #=> String
resp.ssm_command_config.cloud_watch_output_enabled #=> Boolean
resp.ssm_command_config.cloud_watch_log_group_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :connector_id (required, String)

    Update Connector request connector ID.

  • :name (String)

    Update Connector request name.

  • :ssm_command_config (Types::ConnectorSsmCommandConfig)

    Update Connector request SSM command config.

Returns:

See Also:



6579
6580
6581
6582
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 6579

def update_connector(params = {}, options = {})
  req = build_request(:update_connector, params)
  req.send_request(options)
end

#update_launch_configuration(params = {}) ⇒ Types::LaunchConfiguration

Updates multiple LaunchConfigurations by Source Server ID.

bootMode valid values are LEGACY_BIOS | UEFI | USE_SOURCE

Examples:

Request syntax with placeholder values


resp = client.update_launch_configuration({
  source_server_id: "SourceServerID", # required
  name: "SmallBoundedString",
  launch_disposition: "STOPPED", # accepts STOPPED, STARTED
  target_instance_type_right_sizing_method: "NONE", # accepts NONE, BASIC
  copy_private_ip: false,
  copy_tags: false,
  licensing: {
    os_byol: false,
  },
  boot_mode: "LEGACY_BIOS", # accepts LEGACY_BIOS, UEFI, USE_SOURCE
  post_launch_actions: {
    deployment: "TEST_AND_CUTOVER", # accepts TEST_AND_CUTOVER, CUTOVER_ONLY, TEST_ONLY
    s3_log_bucket: "S3LogBucketName",
    s3_output_key_prefix: "BoundedString",
    cloud_watch_log_group_name: "CloudWatchLogGroupName",
    ssm_documents: [
      {
        action_name: "BoundedString", # required
        ssm_document_name: "SsmDocumentName", # required
        timeout_seconds: 1,
        must_succeed_for_cutover: false,
        parameters: {
          "SsmDocumentParameterName" => [
            {
              parameter_type: "STRING", # required, accepts STRING, SECURE_STRING
              parameter_name: "SsmParameterStoreParameterName", # required
            },
          ],
        },
        external_parameters: {
          "SsmDocumentParameterName" => {
            dynamic_path: "JmesPathString",
          },
        },
      },
    ],
  },
  enable_map_auto_tagging: false,
  map_auto_tagging_mpe_id: "TagValue",
  account_id: "AccountID",
})

Response structure


resp.source_server_id #=> String
resp.name #=> String
resp.ec2_launch_template_id #=> String
resp.launch_disposition #=> String, one of "STOPPED", "STARTED"
resp.target_instance_type_right_sizing_method #=> String, one of "NONE", "BASIC"
resp.copy_private_ip #=> Boolean
resp.copy_tags #=> Boolean
resp.licensing.os_byol #=> Boolean
resp.boot_mode #=> String, one of "LEGACY_BIOS", "UEFI", "USE_SOURCE"
resp.post_launch_actions.deployment #=> String, one of "TEST_AND_CUTOVER", "CUTOVER_ONLY", "TEST_ONLY"
resp.post_launch_actions.s3_log_bucket #=> String
resp.post_launch_actions.s3_output_key_prefix #=> String
resp.post_launch_actions.cloud_watch_log_group_name #=> String
resp.post_launch_actions.ssm_documents #=> Array
resp.post_launch_actions.ssm_documents[0].action_name #=> String
resp.post_launch_actions.ssm_documents[0].ssm_document_name #=> String
resp.post_launch_actions.ssm_documents[0].timeout_seconds #=> Integer
resp.post_launch_actions.ssm_documents[0].must_succeed_for_cutover #=> Boolean
resp.post_launch_actions.ssm_documents[0].parameters #=> Hash
resp.post_launch_actions.ssm_documents[0].parameters["SsmDocumentParameterName"] #=> Array
resp.post_launch_actions.ssm_documents[0].parameters["SsmDocumentParameterName"][0].parameter_type #=> String, one of "STRING", "SECURE_STRING"
resp.post_launch_actions.ssm_documents[0].parameters["SsmDocumentParameterName"][0].parameter_name #=> String
resp.post_launch_actions.ssm_documents[0].external_parameters #=> Hash
resp.post_launch_actions.ssm_documents[0].external_parameters["SsmDocumentParameterName"].dynamic_path #=> String
resp.enable_map_auto_tagging #=> Boolean
resp.map_auto_tagging_mpe_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_server_id (required, String)

    Update Launch configuration by Source Server ID request.

  • :name (String)

    Update Launch configuration name request.

  • :launch_disposition (String)

    Update Launch configuration launch disposition request.

  • :target_instance_type_right_sizing_method (String)

    Update Launch configuration Target instance right sizing request.

  • :copy_private_ip (Boolean)

    Update Launch configuration copy Private IP request.

  • :copy_tags (Boolean)

    Update Launch configuration copy Tags request.

  • :licensing (Types::Licensing)

    Update Launch configuration licensing request.

  • :boot_mode (String)

    Update Launch configuration boot mode request.

  • :post_launch_actions (Types::PostLaunchActions)

    Post Launch Actions to be executed on the Test or Cutover instance.

  • :enable_map_auto_tagging (Boolean)

    Enable map auto tagging.

  • :map_auto_tagging_mpe_id (String)

    Launch configuration map auto tagging MPE ID.

  • :account_id (String)

    Update Launch configuration Account ID.

Returns:

See Also:



6719
6720
6721
6722
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 6719

def update_launch_configuration(params = {}, options = {})
  req = build_request(:update_launch_configuration, params)
  req.send_request(options)
end

#update_launch_configuration_template(params = {}) ⇒ Types::LaunchConfigurationTemplate

Updates an existing Launch Configuration Template by ID.

Examples:

Request syntax with placeholder values


resp = client.update_launch_configuration_template({
  launch_configuration_template_id: "LaunchConfigurationTemplateID", # required
  post_launch_actions: {
    deployment: "TEST_AND_CUTOVER", # accepts TEST_AND_CUTOVER, CUTOVER_ONLY, TEST_ONLY
    s3_log_bucket: "S3LogBucketName",
    s3_output_key_prefix: "BoundedString",
    cloud_watch_log_group_name: "CloudWatchLogGroupName",
    ssm_documents: [
      {
        action_name: "BoundedString", # required
        ssm_document_name: "SsmDocumentName", # required
        timeout_seconds: 1,
        must_succeed_for_cutover: false,
        parameters: {
          "SsmDocumentParameterName" => [
            {
              parameter_type: "STRING", # required, accepts STRING, SECURE_STRING
              parameter_name: "SsmParameterStoreParameterName", # required
            },
          ],
        },
        external_parameters: {
          "SsmDocumentParameterName" => {
            dynamic_path: "JmesPathString",
          },
        },
      },
    ],
  },
  enable_map_auto_tagging: false,
  map_auto_tagging_mpe_id: "TagValue",
  launch_disposition: "STOPPED", # accepts STOPPED, STARTED
  target_instance_type_right_sizing_method: "NONE", # accepts NONE, BASIC
  copy_private_ip: false,
  associate_public_ip_address: false,
  copy_tags: false,
  licensing: {
    os_byol: false,
  },
  boot_mode: "LEGACY_BIOS", # accepts LEGACY_BIOS, UEFI, USE_SOURCE
  small_volume_max_size: 1,
  small_volume_conf: {
    volume_type: "io1", # accepts io1, io2, gp3, gp2, st1, sc1, standard
    iops: 1,
    throughput: 1,
    volume_initialization_rate: 1,
    delete_on_termination: false,
  },
  large_volume_conf: {
    volume_type: "io1", # accepts io1, io2, gp3, gp2, st1, sc1, standard
    iops: 1,
    throughput: 1,
    volume_initialization_rate: 1,
    delete_on_termination: false,
  },
  enable_parameters_encryption: false,
  parameters_encryption_key: "ARN",
})

Response structure


resp.launch_configuration_template_id #=> String
resp.arn #=> String
resp.post_launch_actions.deployment #=> String, one of "TEST_AND_CUTOVER", "CUTOVER_ONLY", "TEST_ONLY"
resp.post_launch_actions.s3_log_bucket #=> String
resp.post_launch_actions.s3_output_key_prefix #=> String
resp.post_launch_actions.cloud_watch_log_group_name #=> String
resp.post_launch_actions.ssm_documents #=> Array
resp.post_launch_actions.ssm_documents[0].action_name #=> String
resp.post_launch_actions.ssm_documents[0].ssm_document_name #=> String
resp.post_launch_actions.ssm_documents[0].timeout_seconds #=> Integer
resp.post_launch_actions.ssm_documents[0].must_succeed_for_cutover #=> Boolean
resp.post_launch_actions.ssm_documents[0].parameters #=> Hash
resp.post_launch_actions.ssm_documents[0].parameters["SsmDocumentParameterName"] #=> Array
resp.post_launch_actions.ssm_documents[0].parameters["SsmDocumentParameterName"][0].parameter_type #=> String, one of "STRING", "SECURE_STRING"
resp.post_launch_actions.ssm_documents[0].parameters["SsmDocumentParameterName"][0].parameter_name #=> String
resp.post_launch_actions.ssm_documents[0].external_parameters #=> Hash
resp.post_launch_actions.ssm_documents[0].external_parameters["SsmDocumentParameterName"].dynamic_path #=> String
resp.enable_map_auto_tagging #=> Boolean
resp.map_auto_tagging_mpe_id #=> String
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.ec2_launch_template_id #=> String
resp.launch_disposition #=> String, one of "STOPPED", "STARTED"
resp.target_instance_type_right_sizing_method #=> String, one of "NONE", "BASIC"
resp.copy_private_ip #=> Boolean
resp.associate_public_ip_address #=> Boolean
resp.copy_tags #=> Boolean
resp.licensing.os_byol #=> Boolean
resp.boot_mode #=> String, one of "LEGACY_BIOS", "UEFI", "USE_SOURCE"
resp.small_volume_max_size #=> Integer
resp.small_volume_conf.volume_type #=> String, one of "io1", "io2", "gp3", "gp2", "st1", "sc1", "standard"
resp.small_volume_conf.iops #=> Integer
resp.small_volume_conf.throughput #=> Integer
resp.small_volume_conf.volume_initialization_rate #=> Integer
resp.small_volume_conf.delete_on_termination #=> Boolean
resp.large_volume_conf.volume_type #=> String, one of "io1", "io2", "gp3", "gp2", "st1", "sc1", "standard"
resp.large_volume_conf.iops #=> Integer
resp.large_volume_conf.throughput #=> Integer
resp.large_volume_conf.volume_initialization_rate #=> Integer
resp.large_volume_conf.delete_on_termination #=> Boolean
resp.enable_parameters_encryption #=> Boolean
resp.parameters_encryption_key #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :launch_configuration_template_id (required, String)

    Launch Configuration Template ID.

  • :post_launch_actions (Types::PostLaunchActions)

    Post Launch Action to execute on the Test or Cutover instance.

  • :enable_map_auto_tagging (Boolean)

    Enable map auto tagging.

  • :map_auto_tagging_mpe_id (String)

    Launch configuration template map auto tagging MPE ID.

  • :launch_disposition (String)

    Launch disposition.

  • :target_instance_type_right_sizing_method (String)

    Target instance type right-sizing method.

  • :copy_private_ip (Boolean)

    Copy private Ip.

  • :associate_public_ip_address (Boolean)

    Associate public Ip address.

  • :copy_tags (Boolean)

    Copy tags.

  • :licensing (Types::Licensing)

    Configure Licensing.

  • :boot_mode (String)

    Launch configuration template boot mode.

  • :small_volume_max_size (Integer)

    Small volume maximum size.

  • :small_volume_conf (Types::LaunchTemplateDiskConf)

    Small volume config.

  • :large_volume_conf (Types::LaunchTemplateDiskConf)

    Large volume config.

  • :enable_parameters_encryption (Boolean)

    Enable parameters encryption.

  • :parameters_encryption_key (String)

    Parameters encryption key.

Returns:

See Also:



6906
6907
6908
6909
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 6906

def update_launch_configuration_template(params = {}, options = {})
  req = build_request(:update_launch_configuration_template, params)
  req.send_request(options)
end

#update_network_migration_definition(params = {}) ⇒ Types::NetworkMigrationDefinition

Updates an existing network migration definition with new source or target configurations.

Examples:

Example: Sample UpdateNetworkMigrationDefinition call


resp = client.update_network_migration_definition({
  name: "network1", 
  description: "network 1 description", 
  network_migration_definition_id: "nmd-01234567891234567", 
  source_configurations: [
    {
      source_environment: "NSX", 
      source_s3_configuration: {
        s3_bucket: "source_bucket", 
        s3_bucket_owner: "012345678901", 
        s3_key: "source_key", 
      }, 
    }, 
  ], 
  target_network: {
    inbound_cidr: "192.168.1.0/24", 
    topology: "ISOLATED_VPC", 
  }, 
  target_s3_configuration: {
    s3_bucket: "target_bucket", 
    s3_bucket_owner: "012345678901", 
  }, 
})

resp.to_h outputs the following:
{
  name: "network1", 
  created_at: Time.parse(1735334198), 
  description: "network 1 description", 
  network_migration_definition_id: "nmd-01234567891234567", 
  source_configurations: [
    {
      source_environment: "NSX", 
      source_s3_configuration: {
        s3_bucket: "source_bucket", 
        s3_bucket_owner: "012345678901", 
        s3_key: "source_key", 
      }, 
    }, 
  ], 
  tags: {
  }, 
  target_network: {
    inbound_cidr: "192.168.1.0/24", 
    topology: "ISOLATED_VPC", 
  }, 
  target_s3_configuration: {
    s3_bucket: "target_bucket", 
    s3_bucket_owner: "012345678901", 
  }, 
  updated_at: Time.parse(1735680998), 
}

Request syntax with placeholder values


resp = client.update_network_migration_definition({
  network_migration_definition_id: "NetworkMigrationDefinitionID", # required
  name: "NetworkMigrationDefinitionName",
  description: "NetworkMigrationDefinitionDescription",
  source_configurations: [
    {
      source_environment: "NSX", # required, accepts NSX, VSPHERE, FORTIGATE_FIREWALL, PALO_ALTO_FIREWALL, CISCO_ACI, LOGICAL_MODEL, MODELIZE_IT, AWS_DISCOVERY_COLLECTOR
      source_s3_configuration: { # required
        s3_bucket: "S3BucketName", # required
        s3_bucket_owner: "AccountID", # required
        s3_key: "S3KeyName", # required
      },
    },
  ],
  target_s3_configuration: {
    s3_bucket: "S3BucketName",
    s3_bucket_owner: "AccountID",
  },
  target_network: {
    topology: "ISOLATED_VPC", # accepts ISOLATED_VPC, HUB_AND_SPOKE
    inbound_cidr: "Cidr",
    outbound_cidr: "Cidr",
    inspection_cidr: "Cidr",
  },
  target_deployment: "SINGLE_ACCOUNT", # accepts SINGLE_ACCOUNT, MULTI_ACCOUNT
  vpc_provisioning_strategy: "CREATE_NEW", # accepts CREATE_NEW, USE_EXISTING
  cidr_mappings: [
    {
      original_cidr: "Cidr", # required
      updated_cidr: "Cidr", # required
    },
  ],
  scope_tags: {
    "ScopeTagKey" => "ScopeTagValue",
  },
})

Response structure


resp.arn #=> String
resp.network_migration_definition_id #=> String
resp.name #=> String
resp.description #=> String
resp.source_configurations #=> Array
resp.source_configurations[0].source_environment #=> String, one of "NSX", "VSPHERE", "FORTIGATE_FIREWALL", "PALO_ALTO_FIREWALL", "CISCO_ACI", "LOGICAL_MODEL", "MODELIZE_IT", "AWS_DISCOVERY_COLLECTOR"
resp.source_configurations[0].source_s3_configuration.s3_bucket #=> String
resp.source_configurations[0].source_s3_configuration.s3_bucket_owner #=> String
resp.source_configurations[0].source_s3_configuration.s3_key #=> String
resp.target_s3_configuration.s3_bucket #=> String
resp.target_s3_configuration.s3_bucket_owner #=> String
resp.target_network.topology #=> String, one of "ISOLATED_VPC", "HUB_AND_SPOKE"
resp.target_network.inbound_cidr #=> String
resp.target_network.outbound_cidr #=> String
resp.target_network.inspection_cidr #=> String
resp.target_deployment #=> String, one of "SINGLE_ACCOUNT", "MULTI_ACCOUNT"
resp.vpc_provisioning_strategy #=> String, one of "CREATE_NEW", "USE_EXISTING"
resp.cidr_mappings #=> Array
resp.cidr_mappings[0].original_cidr #=> String
resp.cidr_mappings[0].updated_cidr #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.scope_tags #=> Hash
resp.scope_tags["ScopeTagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :network_migration_definition_id (required, String)

    The unique identifier of the network migration definition to update.

  • :name (String)

    The updated name of the network migration definition.

  • :description (String)

    The updated description of the network migration definition.

  • :source_configurations (Array<Types::SourceConfiguration>)

    The updated list of source configurations.

  • :target_s3_configuration (Types::TargetS3ConfigurationUpdate)

    The updated S3 configuration for storing the target network artifacts.

  • :target_network (Types::TargetNetworkUpdate)

    The updated target network configuration.

  • :target_deployment (String)

    The updated target deployment configuration.

  • :vpc_provisioning_strategy (String)

    Updates whether the migration creates new target VPCs or uses existing ones. Set to USE_EXISTING to migrate into existing VPCs in the target account, or to CREATE_NEW to provision new target VPCs.

  • :cidr_mappings (Array<Types::CidrMapping>)

    The updated list of CIDR mappings that map original source CIDR ranges to updated target CIDR ranges. CIDR mappings can be provided only when vpcProvisioningStrategy is set to USE_EXISTING.

  • :scope_tags (Hash<String,String>)

    The updated scope tags for the network migration definition.

Returns:

See Also:



7093
7094
7095
7096
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 7093

def update_network_migration_definition(params = {}, options = {})
  req = build_request(:update_network_migration_definition, params)
  req.send_request(options)
end

#update_network_migration_mapper_segment(params = {}) ⇒ Types::NetworkMigrationMapperSegment

Updates a mapper segment's configuration, such as changing its scope tags.

Examples:

Example: Sample UpdateNetworkMigrationMapperSegment call


resp = client.update_network_migration_mapper_segment({
  network_migration_definition_id: "nmd-01234567891234567", 
  network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
  segment_id: "12345678-abcd-abcd-efab-0123456789ab", 
})

resp.to_h outputs the following:
{
  name: "SegmentName", 
  checksum: {
    encryption_algorithm: "SHA256", 
    hash: "0123456789aAbBcCdDeEfF0123456789", 
  }, 
  created_at: Time.parse(1735334198), 
  description: "Segment description", 
  job_id: "01234567-abcd-abcd-efab-0123456789ab", 
  logical_id: "logical-id1", 
  network_migration_definition_id: "nmd-01234567891234567", 
  network_migration_execution_id: "01234567-abcd-abcd-abcd-0123456789ab", 
  output_s3_configuration: {
    s3_bucket: "s3_bucket", 
    s3_bucket_owner: "012345678901", 
    s3_key: "S3KeyName", 
  }, 
  segment_id: "12345678-abcd-abcd-efab-0123456789ab", 
  segment_type: "WORKLOAD", 
  updated_at: Time.parse(1735334198), 
}

Request syntax with placeholder values


resp = client.update_network_migration_mapper_segment({
  network_migration_definition_id: "NetworkMigrationDefinitionID", # required
  network_migration_execution_id: "NetworkMigrationExecutionID", # required
  segment_id: "SegmentID", # required
  scope_tags: {
    "ScopeTagKey" => "ScopeTagValue",
  },
})

Response structure


resp.job_id #=> String
resp.network_migration_execution_id #=> String
resp.network_migration_definition_id #=> String
resp.segment_id #=> String
resp.segment_type #=> String, one of "WORKLOAD", "APPLIANCE"
resp.name #=> String
resp.description #=> String
resp.logical_id #=> String
resp.checksum.encryption_algorithm #=> String, one of "SHA256"
resp.checksum.hash #=> String
resp.output_s3_configuration.s3_bucket #=> String
resp.output_s3_configuration.s3_bucket_owner #=> String
resp.output_s3_configuration.s3_key #=> String
resp.created_at #=> Time
resp.updated_at #=> Time
resp.scope_tags #=> Hash
resp.scope_tags["ScopeTagKey"] #=> String
resp. #=> String
resp.referenced_segments #=> Array
resp.referenced_segments[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :network_migration_definition_id (required, String)

    The unique identifier of the network migration definition.

  • :network_migration_execution_id (required, String)

    The unique identifier of the network migration execution.

  • :segment_id (required, String)

    The unique identifier of the segment to update.

  • :scope_tags (Hash<String,String>)

    The updated scope tags for the segment.

Returns:

See Also:



7201
7202
7203
7204
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 7201

def update_network_migration_mapper_segment(params = {}, options = {})
  req = build_request(:update_network_migration_mapper_segment, params)
  req.send_request(options)
end

#update_replication_configuration(params = {}) ⇒ Types::ReplicationConfiguration

Allows you to update multiple ReplicationConfigurations by Source Server ID.

Examples:

Request syntax with placeholder values


resp = client.update_replication_configuration({
  source_server_id: "SourceServerID", # required
  name: "SmallBoundedString",
  staging_area_subnet_id: "SubnetID",
  associate_default_security_group: false,
  replication_servers_security_groups_i_ds: ["SecurityGroupID"],
  replication_server_instance_type: "EC2InstanceType",
  use_dedicated_replication_server: false,
  default_large_staging_disk_type: "GP2", # accepts GP2, ST1, GP3
  replicated_disks: [
    {
      device_name: "BoundedString",
      is_boot_disk: false,
      staging_disk_type: "AUTO", # accepts AUTO, GP2, IO1, SC1, ST1, STANDARD, GP3, IO2, FSX_ONTAP
      iops: 1,
      throughput: 1,
    },
  ],
  ebs_encryption: "DEFAULT", # accepts DEFAULT, CUSTOM
  ebs_encryption_key_arn: "ARN",
  bandwidth_throttling: 1,
  data_plane_routing: "PRIVATE_IP", # accepts PRIVATE_IP, PUBLIC_IP
  create_public_ip: false,
  staging_area_tags: {
    "TagKey" => "TagValue",
  },
  use_fips_endpoint: false,
  account_id: "AccountID",
  internet_protocol: "IPV4", # accepts IPV4, IPV6
  store_snapshot_on_local_zone: false,
  storage_configuration: {
    storage_type: "EBS", # required, accepts EBS, FSX_ONTAP
    fsx_ontap_configuration: {
      storage_virtual_machine_id: "StorageVirtualMachineId", # required
      credentials_secret_arn: "SecretArn", # required
    },
  },
})

Response structure


resp.source_server_id #=> String
resp.name #=> String
resp.staging_area_subnet_id #=> String
resp.associate_default_security_group #=> Boolean
resp.replication_servers_security_groups_i_ds #=> Array
resp.replication_servers_security_groups_i_ds[0] #=> String
resp.replication_server_instance_type #=> String
resp.use_dedicated_replication_server #=> Boolean
resp.default_large_staging_disk_type #=> String, one of "GP2", "ST1", "GP3"
resp.replicated_disks #=> Array
resp.replicated_disks[0].device_name #=> String
resp.replicated_disks[0].is_boot_disk #=> Boolean
resp.replicated_disks[0].staging_disk_type #=> String, one of "AUTO", "GP2", "IO1", "SC1", "ST1", "STANDARD", "GP3", "IO2", "FSX_ONTAP"
resp.replicated_disks[0].iops #=> Integer
resp.replicated_disks[0].throughput #=> Integer
resp.ebs_encryption #=> String, one of "DEFAULT", "CUSTOM"
resp.ebs_encryption_key_arn #=> String
resp.bandwidth_throttling #=> Integer
resp.data_plane_routing #=> String, one of "PRIVATE_IP", "PUBLIC_IP"
resp.create_public_ip #=> Boolean
resp.staging_area_tags #=> Hash
resp.staging_area_tags["TagKey"] #=> String
resp.use_fips_endpoint #=> Boolean
resp.internet_protocol #=> String, one of "IPV4", "IPV6"
resp.store_snapshot_on_local_zone #=> Boolean
resp.storage_configuration.storage_type #=> String, one of "EBS", "FSX_ONTAP"
resp.storage_configuration.fsx_ontap_configuration.storage_virtual_machine_id #=> String
resp.storage_configuration.fsx_ontap_configuration.credentials_secret_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_server_id (required, String)

    Update replication configuration Source Server ID request.

  • :name (String)

    Update replication configuration name request.

  • :staging_area_subnet_id (String)

    Update replication configuration Staging Area subnet request.

  • :associate_default_security_group (Boolean)

    Update replication configuration associate default Application Migration Service Security group request.

  • :replication_servers_security_groups_i_ds (Array<String>)

    Update replication configuration Replication Server Security Groups IDs request.

  • :replication_server_instance_type (String)

    Update replication configuration Replication Server instance type request.

  • :use_dedicated_replication_server (Boolean)

    Update replication configuration use dedicated Replication Server request.

  • :default_large_staging_disk_type (String)

    Update replication configuration use default large Staging Disk type request.

  • :replicated_disks (Array<Types::ReplicationConfigurationReplicatedDisk>)

    Update replication configuration replicated disks request.

  • :ebs_encryption (String)

    Update replication configuration EBS encryption request.

  • :ebs_encryption_key_arn (String)

    Update replication configuration EBS encryption key ARN request.

  • :bandwidth_throttling (Integer)

    Update replication configuration bandwidth throttling request.

  • :data_plane_routing (String)

    Update replication configuration data plane routing request.

  • :create_public_ip (Boolean)

    Update replication configuration create Public IP request.

  • :staging_area_tags (Hash<String,String>)

    Update replication configuration Staging Area Tags request.

  • :use_fips_endpoint (Boolean)

    Update replication configuration use Fips Endpoint.

  • :account_id (String)

    Update replication configuration Account ID request.

  • :internet_protocol (String)

    Update replication configuration internet protocol.

  • :store_snapshot_on_local_zone (Boolean)

    Update replication configuration store snapshot on local zone.

  • :storage_configuration (Types::StorageConfiguration)

    Update replication configuration storage configuration.

Returns:

See Also:



7372
7373
7374
7375
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 7372

def update_replication_configuration(params = {}, options = {})
  req = build_request(:update_replication_configuration, params)
  req.send_request(options)
end

#update_replication_configuration_template(params = {}) ⇒ Types::ReplicationConfigurationTemplate

Updates a ReplicationConfigurationTemplate by ID.

Examples:

Request syntax with placeholder values


resp = client.update_replication_configuration_template({
  replication_configuration_template_id: "ReplicationConfigurationTemplateID", # required
  arn: "ARN",
  staging_area_subnet_id: "SubnetID",
  associate_default_security_group: false,
  replication_servers_security_groups_i_ds: ["SecurityGroupID"],
  replication_server_instance_type: "EC2InstanceType",
  use_dedicated_replication_server: false,
  default_large_staging_disk_type: "GP2", # accepts GP2, ST1, GP3
  ebs_encryption: "DEFAULT", # accepts DEFAULT, CUSTOM
  ebs_encryption_key_arn: "ARN",
  bandwidth_throttling: 1,
  data_plane_routing: "PRIVATE_IP", # accepts PRIVATE_IP, PUBLIC_IP
  create_public_ip: false,
  staging_area_tags: {
    "TagKey" => "TagValue",
  },
  use_fips_endpoint: false,
  internet_protocol: "IPV4", # accepts IPV4, IPV6
  store_snapshot_on_local_zone: false,
  storage_configuration: {
    storage_type: "EBS", # required, accepts EBS, FSX_ONTAP
    fsx_ontap_configuration: {
      storage_virtual_machine_id: "StorageVirtualMachineId", # required
      credentials_secret_arn: "SecretArn", # required
    },
  },
})

Response structure


resp.replication_configuration_template_id #=> String
resp.arn #=> String
resp.staging_area_subnet_id #=> String
resp.associate_default_security_group #=> Boolean
resp.replication_servers_security_groups_i_ds #=> Array
resp.replication_servers_security_groups_i_ds[0] #=> String
resp.replication_server_instance_type #=> String
resp.use_dedicated_replication_server #=> Boolean
resp.default_large_staging_disk_type #=> String, one of "GP2", "ST1", "GP3"
resp.ebs_encryption #=> String, one of "DEFAULT", "CUSTOM"
resp.ebs_encryption_key_arn #=> String
resp.bandwidth_throttling #=> Integer
resp.data_plane_routing #=> String, one of "PRIVATE_IP", "PUBLIC_IP"
resp.create_public_ip #=> Boolean
resp.staging_area_tags #=> Hash
resp.staging_area_tags["TagKey"] #=> String
resp.use_fips_endpoint #=> Boolean
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.internet_protocol #=> String, one of "IPV4", "IPV6"
resp.store_snapshot_on_local_zone #=> Boolean
resp.storage_configuration.storage_type #=> String, one of "EBS", "FSX_ONTAP"
resp.storage_configuration.fsx_ontap_configuration.storage_virtual_machine_id #=> String
resp.storage_configuration.fsx_ontap_configuration.credentials_secret_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :replication_configuration_template_id (required, String)

    Update replication configuration template template ID request.

  • :arn (String)

    Update replication configuration template ARN request.

  • :staging_area_subnet_id (String)

    Update replication configuration template Staging Area subnet ID request.

  • :associate_default_security_group (Boolean)

    Update replication configuration template associate default Application Migration Service Security group request.

  • :replication_servers_security_groups_i_ds (Array<String>)

    Update replication configuration template Replication Server Security groups IDs request.

  • :replication_server_instance_type (String)

    Update replication configuration template Replication Server instance type request.

  • :use_dedicated_replication_server (Boolean)

    Update replication configuration template use dedicated Replication Server request.

  • :default_large_staging_disk_type (String)

    Update replication configuration template use default large Staging Disk type request.

  • :ebs_encryption (String)

    Update replication configuration template EBS encryption request.

  • :ebs_encryption_key_arn (String)

    Update replication configuration template EBS encryption key ARN request.

  • :bandwidth_throttling (Integer)

    Update replication configuration template bandwidth throttling request.

  • :data_plane_routing (String)

    Update replication configuration template data plane routing request.

  • :create_public_ip (Boolean)

    Update replication configuration template create Public IP request.

  • :staging_area_tags (Hash<String,String>)

    Update replication configuration template Staging Area Tags request.

  • :use_fips_endpoint (Boolean)

    Update replication configuration template use Fips Endpoint request.

  • :internet_protocol (String)

    Update replication configuration template internet protocol request.

  • :store_snapshot_on_local_zone (Boolean)

    Update replication configuration template store snapshot on local zone request.

  • :storage_configuration (Types::StorageConfiguration)

    Update replication configuration template storage configuration request.

Returns:

See Also:



7527
7528
7529
7530
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 7527

def update_replication_configuration_template(params = {}, options = {})
  req = build_request(:update_replication_configuration_template, params)
  req.send_request(options)
end

#update_source_server(params = {}) ⇒ Types::SourceServer

Update Source Server.

Examples:

Request syntax with placeholder values


resp = client.update_source_server({
  account_id: "AccountID",
  source_server_id: "SourceServerID", # required
  connector_action: {
    credentials_secret_arn: "SecretArn",
    connector_arn: "ConnectorArn",
  },
  user_provided_id: "UserProvidedId",
  fqdn_for_action_framework: "FqdnForActionFramework",
  platform: "OperatingSystemString",
})

Response structure


resp.source_server_id #=> String
resp.arn #=> String
resp.is_archived #=> Boolean
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.launched_instance.ec2_instance_id #=> String
resp.launched_instance.job_id #=> String
resp.launched_instance.first_boot #=> String, one of "WAITING", "SUCCEEDED", "UNKNOWN", "STOPPED"
resp.launched_instance.last_known_checks #=> Array
resp.launched_instance.last_known_checks[0].type #=> String, one of "EC2", "FSx"
resp.launched_instance.last_known_checks[0].name #=> String
resp.launched_instance.last_known_checks[0].status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.launched_instance.last_known_checks[0].error #=> String
resp.launched_instance.last_known_checks[0].checked_at #=> Time
resp.launched_instance.last_known_fsx_checks_status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.data_replication_info.lag_duration #=> String
resp.data_replication_info.eta_date_time #=> String
resp.data_replication_info.replicated_disks #=> Array
resp.data_replication_info.replicated_disks[0].device_name #=> String
resp.data_replication_info.replicated_disks[0].total_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].replicated_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].rescanned_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].backlogged_storage_bytes #=> Integer
resp.data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED", "PENDING_SNAPSHOT_SHIPPING", "SHIPPING_SNAPSHOT"
resp.data_replication_info.data_replication_initiation.start_date_time #=> String
resp.data_replication_info.data_replication_initiation.next_attempt_date_time #=> String
resp.data_replication_info.data_replication_initiation.steps #=> Array
resp.data_replication_info.data_replication_initiation.steps[0].name #=> String, one of "WAIT", "CREATE_SECURITY_GROUP", "LAUNCH_REPLICATION_SERVER", "BOOT_REPLICATION_SERVER", "AUTHENTICATE_WITH_SERVICE", "DOWNLOAD_REPLICATION_SOFTWARE", "CREATE_STAGING_DISKS", "ATTACH_STAGING_DISKS", "PAIR_REPLICATION_SERVER_WITH_AGENT", "CONNECT_AGENT_TO_REPLICATION_SERVER", "START_DATA_TRANSFER", "SETUP_FSX_PROXY"
resp.data_replication_info.data_replication_initiation.steps[0].status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "SKIPPED"
resp.data_replication_info.data_replication_error.error #=> String, one of "AGENT_NOT_SEEN", "SNAPSHOTS_FAILURE", "NOT_CONVERGING", "UNSTABLE_NETWORK", "FAILED_TO_CREATE_SECURITY_GROUP", "FAILED_TO_LAUNCH_REPLICATION_SERVER", "FAILED_TO_BOOT_REPLICATION_SERVER", "FAILED_TO_AUTHENTICATE_WITH_SERVICE", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", "FAILED_TO_CREATE_STAGING_DISKS", "FAILED_TO_ATTACH_STAGING_DISKS", "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", "FAILED_TO_START_DATA_TRANSFER", "UNSUPPORTED_VM_CONFIGURATION", "LAST_SNAPSHOT_JOB_FAILED", "FAILED_TO_SETUP_FSX_PROXY", "FAILED_TO_CREATE_FSX_SNAPSHOT"
resp.data_replication_info.data_replication_error.raw_error #=> String
resp.data_replication_info.last_snapshot_date_time #=> String
resp.data_replication_info.replicator_id #=> String
resp.life_cycle.added_to_service_date_time #=> String
resp.life_cycle.first_byte_date_time #=> String
resp.life_cycle.elapsed_replication_duration #=> String
resp.life_cycle.last_seen_by_service_date_time #=> String
resp.life_cycle.last_test.initiated.api_call_date_time #=> String
resp.life_cycle.last_test.initiated.job_id #=> String
resp.life_cycle.last_test.reverted.api_call_date_time #=> String
resp.life_cycle.last_test.finalized.api_call_date_time #=> String
resp.life_cycle.last_cutover.initiated.api_call_date_time #=> String
resp.life_cycle.last_cutover.initiated.job_id #=> String
resp.life_cycle.last_cutover.reverted.api_call_date_time #=> String
resp.life_cycle.last_cutover.finalized.api_call_date_time #=> String
resp.life_cycle.state #=> String, one of "STOPPED", "NOT_READY", "READY_FOR_TEST", "TESTING", "READY_FOR_CUTOVER", "CUTTING_OVER", "CUTOVER", "DISCONNECTED", "DISCOVERED", "PENDING_INSTALLATION"
resp.source_properties.last_updated_date_time #=> String
resp.source_properties.recommended_instance_type #=> String
resp.source_properties.identification_hints.fqdn #=> String
resp.source_properties.identification_hints.hostname #=> String
resp.source_properties.identification_hints.vm_ware_uuid #=> String
resp.source_properties.identification_hints.aws_instance_id #=> String
resp.source_properties.identification_hints.vm_path #=> String
resp.source_properties.network_interfaces #=> Array
resp.source_properties.network_interfaces[0].mac_address #=> String
resp.source_properties.network_interfaces[0].ips #=> Array
resp.source_properties.network_interfaces[0].ips[0] #=> String
resp.source_properties.network_interfaces[0].is_primary #=> Boolean
resp.source_properties.disks #=> Array
resp.source_properties.disks[0].device_name #=> String
resp.source_properties.disks[0].bytes #=> Integer
resp.source_properties.cpus #=> Array
resp.source_properties.cpus[0].cores #=> Integer
resp.source_properties.cpus[0].model_name #=> String
resp.source_properties.ram_bytes #=> Integer
resp.source_properties.os.full_string #=> String
resp.replication_type #=> String, one of "AGENT_BASED", "SNAPSHOT_SHIPPING"
resp.vcenter_client_id #=> String
resp.application_id #=> String
resp.user_provided_id #=> String
resp.fqdn_for_action_framework #=> String
resp.connector_action.credentials_secret_arn #=> String
resp.connector_action.connector_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :account_id (String)

    Update Source Server request account ID.

  • :source_server_id (required, String)

    Update Source Server request source server ID.

  • :connector_action (Types::SourceServerConnectorAction)

    Update Source Server request connector action.

  • :user_provided_id (String)

    Update Source Server request user provided ID.

  • :fqdn_for_action_framework (String)

    Update Source Server request FQDN for action framework.

  • :platform (String)

    Update Source Server request platform operating system.

Returns:

See Also:



7663
7664
7665
7666
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 7663

def update_source_server(params = {}, options = {})
  req = build_request(:update_source_server, params)
  req.send_request(options)
end

#update_source_server_replication_type(params = {}) ⇒ Types::SourceServer

Allows you to change between the AGENT_BASED replication type and the SNAPSHOT_SHIPPING replication type.

SNAPSHOT_SHIPPING should be used for agentless replication.

Examples:

Request syntax with placeholder values


resp = client.update_source_server_replication_type({
  source_server_id: "SourceServerID", # required
  replication_type: "AGENT_BASED", # required, accepts AGENT_BASED, SNAPSHOT_SHIPPING
  account_id: "AccountID",
})

Response structure


resp.source_server_id #=> String
resp.arn #=> String
resp.is_archived #=> Boolean
resp.tags #=> Hash
resp.tags["TagKey"] #=> String
resp.launched_instance.ec2_instance_id #=> String
resp.launched_instance.job_id #=> String
resp.launched_instance.first_boot #=> String, one of "WAITING", "SUCCEEDED", "UNKNOWN", "STOPPED"
resp.launched_instance.last_known_checks #=> Array
resp.launched_instance.last_known_checks[0].type #=> String, one of "EC2", "FSx"
resp.launched_instance.last_known_checks[0].name #=> String
resp.launched_instance.last_known_checks[0].status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.launched_instance.last_known_checks[0].error #=> String
resp.launched_instance.last_known_checks[0].checked_at #=> Time
resp.launched_instance.last_known_fsx_checks_status #=> String, one of "PASSED", "FAILED", "PENDING"
resp.data_replication_info.lag_duration #=> String
resp.data_replication_info.eta_date_time #=> String
resp.data_replication_info.replicated_disks #=> Array
resp.data_replication_info.replicated_disks[0].device_name #=> String
resp.data_replication_info.replicated_disks[0].total_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].replicated_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].rescanned_storage_bytes #=> Integer
resp.data_replication_info.replicated_disks[0].backlogged_storage_bytes #=> Integer
resp.data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED", "PENDING_SNAPSHOT_SHIPPING", "SHIPPING_SNAPSHOT"
resp.data_replication_info.data_replication_initiation.start_date_time #=> String
resp.data_replication_info.data_replication_initiation.next_attempt_date_time #=> String
resp.data_replication_info.data_replication_initiation.steps #=> Array
resp.data_replication_info.data_replication_initiation.steps[0].name #=> String, one of "WAIT", "CREATE_SECURITY_GROUP", "LAUNCH_REPLICATION_SERVER", "BOOT_REPLICATION_SERVER", "AUTHENTICATE_WITH_SERVICE", "DOWNLOAD_REPLICATION_SOFTWARE", "CREATE_STAGING_DISKS", "ATTACH_STAGING_DISKS", "PAIR_REPLICATION_SERVER_WITH_AGENT", "CONNECT_AGENT_TO_REPLICATION_SERVER", "START_DATA_TRANSFER", "SETUP_FSX_PROXY"
resp.data_replication_info.data_replication_initiation.steps[0].status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "SKIPPED"
resp.data_replication_info.data_replication_error.error #=> String, one of "AGENT_NOT_SEEN", "SNAPSHOTS_FAILURE", "NOT_CONVERGING", "UNSTABLE_NETWORK", "FAILED_TO_CREATE_SECURITY_GROUP", "FAILED_TO_LAUNCH_REPLICATION_SERVER", "FAILED_TO_BOOT_REPLICATION_SERVER", "FAILED_TO_AUTHENTICATE_WITH_SERVICE", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", "FAILED_TO_CREATE_STAGING_DISKS", "FAILED_TO_ATTACH_STAGING_DISKS", "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", "FAILED_TO_START_DATA_TRANSFER", "UNSUPPORTED_VM_CONFIGURATION", "LAST_SNAPSHOT_JOB_FAILED", "FAILED_TO_SETUP_FSX_PROXY", "FAILED_TO_CREATE_FSX_SNAPSHOT"
resp.data_replication_info.data_replication_error.raw_error #=> String
resp.data_replication_info.last_snapshot_date_time #=> String
resp.data_replication_info.replicator_id #=> String
resp.life_cycle.added_to_service_date_time #=> String
resp.life_cycle.first_byte_date_time #=> String
resp.life_cycle.elapsed_replication_duration #=> String
resp.life_cycle.last_seen_by_service_date_time #=> String
resp.life_cycle.last_test.initiated.api_call_date_time #=> String
resp.life_cycle.last_test.initiated.job_id #=> String
resp.life_cycle.last_test.reverted.api_call_date_time #=> String
resp.life_cycle.last_test.finalized.api_call_date_time #=> String
resp.life_cycle.last_cutover.initiated.api_call_date_time #=> String
resp.life_cycle.last_cutover.initiated.job_id #=> String
resp.life_cycle.last_cutover.reverted.api_call_date_time #=> String
resp.life_cycle.last_cutover.finalized.api_call_date_time #=> String
resp.life_cycle.state #=> String, one of "STOPPED", "NOT_READY", "READY_FOR_TEST", "TESTING", "READY_FOR_CUTOVER", "CUTTING_OVER", "CUTOVER", "DISCONNECTED", "DISCOVERED", "PENDING_INSTALLATION"
resp.source_properties.last_updated_date_time #=> String
resp.source_properties.recommended_instance_type #=> String
resp.source_properties.identification_hints.fqdn #=> String
resp.source_properties.identification_hints.hostname #=> String
resp.source_properties.identification_hints.vm_ware_uuid #=> String
resp.source_properties.identification_hints.aws_instance_id #=> String
resp.source_properties.identification_hints.vm_path #=> String
resp.source_properties.network_interfaces #=> Array
resp.source_properties.network_interfaces[0].mac_address #=> String
resp.source_properties.network_interfaces[0].ips #=> Array
resp.source_properties.network_interfaces[0].ips[0] #=> String
resp.source_properties.network_interfaces[0].is_primary #=> Boolean
resp.source_properties.disks #=> Array
resp.source_properties.disks[0].device_name #=> String
resp.source_properties.disks[0].bytes #=> Integer
resp.source_properties.cpus #=> Array
resp.source_properties.cpus[0].cores #=> Integer
resp.source_properties.cpus[0].model_name #=> String
resp.source_properties.ram_bytes #=> Integer
resp.source_properties.os.full_string #=> String
resp.replication_type #=> String, one of "AGENT_BASED", "SNAPSHOT_SHIPPING"
resp.vcenter_client_id #=> String
resp.application_id #=> String
resp.user_provided_id #=> String
resp.fqdn_for_action_framework #=> String
resp.connector_action.credentials_secret_arn #=> String
resp.connector_action.connector_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :source_server_id (required, String)

    ID of source server on which to update replication type.

  • :replication_type (required, String)

    Replication type to which to update source server.

  • :account_id (String)

    Account ID on which to update replication type.

Returns:

See Also:



7787
7788
7789
7790
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 7787

def update_source_server_replication_type(params = {}, options = {})
  req = build_request(:update_source_server_replication_type, params)
  req.send_request(options)
end

#update_wave(params = {}) ⇒ Types::Wave

Update wave.

Examples:

Request syntax with placeholder values


resp = client.update_wave({
  wave_id: "WaveID", # required
  name: "WaveName",
  description: "WaveDescription",
  account_id: "AccountID",
})

Response structure


resp.wave_id #=> String
resp.arn #=> String
resp.name #=> String
resp.description #=> String
resp.is_archived #=> Boolean
resp.wave_aggregated_status.last_update_date_time #=> String
resp.wave_aggregated_status.replication_started_date_time #=> String
resp.wave_aggregated_status.health_status #=> String, one of "HEALTHY", "LAGGING", "ERROR"
resp.wave_aggregated_status.progress_status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "COMPLETED"
resp.wave_aggregated_status.total_applications #=> Integer
resp.creation_date_time #=> String
resp.last_modified_date_time #=> String
resp.tags #=> Hash
resp.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :wave_id (required, String)

    Wave ID.

  • :name (String)

    Wave name.

  • :description (String)

    Wave description.

  • :account_id (String)

    Account ID.

Returns:

See Also:



7848
7849
7850
7851
# File 'gems/aws-sdk-mgn/lib/aws-sdk-mgn/client.rb', line 7848

def update_wave(params = {}, options = {})
  req = build_request(:update_wave, params)
  req.send_request(options)
end