**Description**

In similar fashion to https://github.com/apache/airflow/pull/4083, it would be helpful for Airflow to reattach itself to the ECS Task rather than letting another instance to start. However, instead of making this the default behavior, it would be better to use a `reattach` flag.

**Use case / motivation**

Allow Airflow the option to reattach to an existing ECS task when a restart happens, which would avoid having "rogue" tasks.
airflow/providers/amazon/aws/operators/ecs.py
if not self.client or not self.arn:
            return
        waiter = self.client.get_waiter('tasks_stopped')
        waiter.config.max_attempts = sys.maxsize  
        waiter.wait(cluster=self.cluster, tasks=[self.arn])
    def _check_success_task(self) -> None:
        if not self.client or not self.arn:
            return
        response = self.client.describe_tasks(cluster=self.cluster, tasks=[self.arn])
        self.log.info('ECS Task stopped, check status: %s', response)
        
        if self.awslogs_group and self.awslogs_stream_prefix:
            self.log.info('ECS Task logs output:')
            task_id = self.arn.split("/")[-1]
            stream_name = "{}/{}".format(self.awslogs_stream_prefix, task_id)
            for event in self.get_logs_hook().get_log_events(self.awslogs_group, stream_name):
                event_dt = datetime.fromtimestamp(event['timestamp'] / 1000.0)
                self.log.info("[%s] %s", event_dt.isoformat(), event['message'])
        if len(response.get('failures', [])) > 0:
            raise AirflowException(response)
        for task in response['tasks']:
            
            
            
            
            if re.match(r'Host EC2 \(instance .+?\) (stopped|terminated)\.', task.get('stoppedReason', '')):
                raise AirflowException(
                    'The task was stopped because the host instance terminated: {}'.format(
                        task.get('stoppedReason', '')
                    )