Detección de desviaciones en recursos de la pila individuales
Puede detectar desviaciones en recursos específicos de una pila, en lugar de toda la pila. Esto resulta especialmente útil cuando solo necesita determinar si ahora recursos específicos vuelven a coincidir con sus configuraciones de plantilla previstas.
Al realizar la detección de desviaciones en un recurso, CloudFormation también actualiza el estado de las desviaciones de la pila en general y la última hora de comprobación de las desviaciones, si es aplicable. Por ejemplo, supongamos que una pila tiene un estado de desviación de IN_SYNC
. Hace que CloudFormation detecte desviaciones en uno o varios recursos contenidos en dicha pila y CloudFormation detecta que uno o varios de esos recursos se han desviado. CloudFormation actualiza el estado de desviación de la pila a DRIFTED
. Por el contrario, supongamos que tiene una pila con un estado de desviaciones DRIFTED
debido a un único recurso desviado. Si vuelve a establecer dicho recurso en sus valores de propiedades previstos y después vuelve a detectar desviaciones en dicho recurso, CloudFormation actualizará el estado de desviación de recurso y el estado de desviación de pila a IN_SYNC
sin que sea preciso detectar la desviación en toda la pila de nuevo.
Para detectar desviaciones en un recurso individual con la AWS Management Console
Abra la consola de AWS CloudFormation en https://console.aws.amazon.com/cloudformation
. -
En la lista de pilas, seleccione la pila que contiene el recurso. CloudFormation muestra los detalles de la pila.
-
En el panel de navegación izquierdo, en Pilas, elija Acciones de pila y, a continuación, elija Detectar desviación.
-
En Resource drift status (Estado de desviación de recurso), elija el recurso y, a continuación, seleccione Detect drift for resource (Detectar desviación de recurso).
CloudFormation realiza la detección de desviaciones en el recurso seleccionado. Si se ejecuta correctamente, CloudFormation actualiza el estado de la desviación del recurso y el estado de la desviación de la pila en general, si es necesario. CloudFormation también actualiza la marca temporal de la última vez que se ejecutó una detección de desviaciones en el recurso y la pila en su conjunto. Si el recurso se ha modificado, CloudFormation muestra información detallada de la desviación de los valores de propiedades actuales y previstos del recurso.
-
Revise los resultados de la detección de desviaciones del recurso.
-
Para ver los detalles en un recurso modificado.
-
Con el recurso modificado seleccionado, elija View drift details (Ver detalles de desviación).
CloudFormation muestra los detalles de desviación del recurso, incluidos los valores de las propiedades actuales y previstas del recurso y las diferencias entre los dos.
Para resaltar una diferencia, en la sección Differences (Diferencias), seleccione el nombre de la propiedad.
-
Las propiedades agregadas se resaltan en verde en la columna Current (Actual) de la sección Details (Detalles).
-
Las propiedades eliminadas están marcadas en rojo en la columna Expected (Previsto) de la sección Details (Detalles).
-
Las propiedades cuyo valor ha cambiado aparecen resaltadas en amarillo en las columnas Previsto y Current (Actual).
-
-
-
Para detectar desviaciones en un recurso individual con la AWS CLI
-
Para detectar desviaciones en un recurso individual con la AWS CLI, ejecute el comando detect-stack-resource-drift. Especifique el ID lógico del recurso, así como la pila en la que se encuentra.
En el siguiente ejemplo se ejecuta una operación de detección de desviaciones en recursos específicos de una pila,
my-drifted-resource
. La respuesta devuelve información que confirma que el recurso se ha modificado, como los detalles sobre dos de sus propiedades cuyos valores se han cambiado.aws cloudformation detect-stack-resource-drift \ --stack-name
my-stack-with-resource-drift
\ --logical-resource-idmy-drifted-resource
Salida:
{ "StackResourceDrift": { "StackId": "arn:aws:cloudformation:us-east-1:099908667365:stack/my-stack-with-resource-drift/489e5570-df85-11e7-a7d9-50example", "ActualProperties": "{\"ReceiveMessageWaitTimeSeconds\":0,\"DelaySeconds\":120,\"RedrivePolicy\":{\"deadLetterTargetArn\":\"arn:aws:sqs:us-east-1:099908667365:my-stack-with-resource-drift-DLQ-1BCY7HHD5QIM3\",\"maxReceiveCount\":12},\"MessageRetentionPeriod\":345600,\"MaximumMessageSize\":262144,\"VisibilityTimeout\":60,\"QueueName\":\"my-stack-with-resource-drift-Queue-494PBHCO76H4\"}", "ResourceType": "AWS::SQS::Queue", "Timestamp": "2018-03-26T18:54:28.462Z", "PhysicalResourceId": "https://sqs.us-east-1.amazonaws.com/099908667365/my-stack-with-resource-drift-Queue-494PBHCO76H4", "StackResourceDriftStatus": "MODIFIED", "ExpectedProperties": "{\"ReceiveMessageWaitTimeSeconds\":0,\"DelaySeconds\":20,\"RedrivePolicy\":{\"deadLetterTargetArn\":\"arn:aws:sqs:us-east-1:099908667365:my-stack-with-resource-drift-DLQ-1BCY7HHD5QIM3\",\"maxReceiveCount\":10},\"MessageRetentionPeriod\":345600,\"MaximumMessageSize\":262144,\"VisibilityTimeout\":60,\"QueueName\":\"my-stack-with-resource-drift-Queue-494PBHCO76H4\"}", "PropertyDifferences": [ { "PropertyPath": "/DelaySeconds", "ActualValue": "120", "ExpectedValue": "20", "DifferenceType": "NOT_EQUAL" }, { "PropertyPath": "/RedrivePolicy/maxReceiveCount", "ActualValue": "12", "ExpectedValue": "10", "DifferenceType": "NOT_EQUAL" } ], "LogicalResourceId": "my-drifted-resource" } }