Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Introducción a la API de control en la nube
Utilice este breve tutorial para empezar a realizar operaciones de recursos con AWS Cloud Control API. Aprenderá los conceptos básicos del uso de la API de control en la nube para crear, leer, actualizar, eliminar y enumerar recursos.
Temas
Paso 1: Cree un recurso
Para este tutorial, cree un recurso de tipo
. Asigne el nombre AWS::Logs::LogGroup
CloudControlExample
a este grupo de registro y establezca su política de retención en 90 días.
-
En AWS Command Line Interface (AWS CLI), ejecute el
create-resource
comando con los siguientes parámetros:-
Especifique el
type-name
comoAWS::Logs::LogGroup
. -
Especifique el
desired-state
como una cadena que contiene JSON que establece las propiedades deseadas:{"LogGroupName": "CloudControlExample", "RetentionInDays": 90}
$
aws cloudcontrol create-resource --type-name AWS::Logs::LogGroup \ --desired-state '{"LogGroupName": "CloudControlExample","RetentionInDays":90}'
La API de control en la nube devuelve un objeto
ProgressEvent
que contiene información sobre el estado de su solicitud de operación de recursos.{ "ProgressEvent": { "EventTime": "2021-08-26T22:07:23.347Z", "TypeName": "AWS::Logs::LogGroup", "OperationStatus": "IN_PROGRESS", "Operation": "CREATE", "Identifier": "CloudControlExample", "RequestToken": "758f4a4e-fef4-491a-9b07-00123456789" } }
-
-
Para hacer un seguimiento del estado de su solicitud de operación de recursos, ejecute el comando
get-resource-request-status
con el siguiente parámetro:-
Especifique el parámetro
request-token
como el valor de la propiedadRequestToken
devuelto en el objetoProgressEvent
.
$
aws cloudcontrol get-resource-request-status --request-token
758f4a4e-fef4-491a-9b07-00123456789
La API de control en la nube devuelve un objeto
ProgressEvent
que contiene información sobre el estado de su solicitud de operación de recursos. Cuando la API de control en la nube haya creado correctamente el recurso, establece el valorOperationStatus
enSUCCESS
.{ "ProgressEvent": { "EventTime": "2021-08-26T22:29:23.326Z", "TypeName": "AWS::Logs::LogGroup", "OperationStatus": "SUCCESS", "Operation": "CREATE", "Identifier": "CloudControlExample", "RequestToken": "758f4a4e-fef4-491a-9b07-00123456789" } }
-
Paso 2: Lea (describa) un recurso
A continuación, lea el estado actual del recurso que acaba de crear.
-
En AWS CLI, ejecute el
get-resource
comando con el siguiente parámetro:-
Especifique
identifier
como el valor de la propiedadidentifier
devuelto por el objetoProgressEvent
al crear el recurso. En este caso, esCloudControlExample
, el nombre que especificó para el grupo de registro.
$
aws cloudcontrol get-resource --type-name AWS::Logs::LogGroup --identifier CloudControlExample
La API de control en la nube devuelve información detallada sobre el estado actual del recurso, incluido un modelo de sus propiedades y su configuración. En este caso, esto incluye una propiedad,
Arn
, que fue generada por Amazon CloudWatch Events cuando se creó el recurso.{ "TypeName": "AWS::Logs::LogGroup", "ResourceDescription": { "Identifier": "CloudControlExample", "ResourceModel": '{"RetentionInDays": 90, "LogGroupName": "CloudControlExample", "Arn": "arn:aws:logs:us-west-2:090123456789:log-group:CloudControlExample:*"}' } }
-
Paso 3: Actualice un recurso
A continuación, actualice su grupo de registro para duplicar la política de retención (180 días).
-
En AWS CLI, ejecute el
update-resource
comando con el siguiente parámetro:-
Especifique el
type-name
comoAWS::Logs::LogGroup
. -
Especifique
identifier
como el valor de la propiedadidentifier
devuelto por el objetoProgressEvent
al crear el recurso. En este caso, esCloudControlExample
, el nombre que especificó para el grupo de registro. -
Especifique el parámetro
patch-document
como una cadena que contiene JSON que representa una operación de sustitución que actualiza la política de retención a 180 días.[{"op": "replace", "path": "RetentionInDays", "value": 180}]
Para obtener información detallada sobre la composición de los documentos de revisión, consulteRedacción del documento de parche.
$
aws cloudcontrol update-resource --type-name AWS::Logs::LogGroup \ --identifier CloudControlExample \ --patch-document '[{"op": "replace", "path": "RetentionInDays", "value":180}]'
La API de control en la nube devuelve un objeto
ProgressEvent
que contiene información sobre el estado de su solicitud de operación de recursos.{ "ProgressEvent": { "EventTime": "2021-08-26T22:29:22.547Z", "ResourceModel": '{"RetentionInDays":180,"LogGroupName":"CloudControlExample"}', "TypeName": "AWS::Logs::LogGroup", "OperationStatus": "IN_PROGRESS", "Operation": "UPDATE", "Identifier": "CloudControlExample", "RequestToken": "2026055d-f21c-4b50-bd40-111111111111" } }
-
-
Para hacer un seguimiento del estado de su solicitud de operación de recursos, ejecute el comando
get-resource-request-status
con el siguiente parámetro:-
Especifique el parámetro
request-token
como el valor de la propiedadRequestToken
devuelto en el objetoProgressEvent
.
$
aws cloudcontrol get-resource-request-status --request-token 2026055d-f21c-4b50-bd40-123456789012
La API de control en la nube devuelve un objeto
ProgressEvent
que contiene información sobre el estado de su solicitud de operación de recursos. Cuando la API de control en la nube haya actualizado correctamente el recurso, establece el valorOperationStatus
enSUCCESS
.{ "ProgressEvent": { "EventTime": "2021-08-26T22:29:23.326Z", "TypeName": "AWS::Logs::LogGroup", "OperationStatus": "SUCCESS", "Operation": "UPDATE", "Identifier": "CloudControlExample", "RequestToken": "2026055d-f21c-4b50-bd40-123456789012" } }
-
Paso 4: Enumere todos los recursos de un tipo determinado
A continuación, use la API de control en la nube para detectar los recursos en su Cuenta de AWS.
-
En AWS CLI, ejecute el
list-resources
comando con el siguiente parámetro:-
Especifique el
type-name
comoAWS::Logs::LogGroup
.
$
aws cloudcontrol list-resources --type-name AWS::Logs::LogGroup
La API de control en la nube devuelve una lista de los recursos del
AWS::Logs::LogGroup
de su cuenta, por identificador principal. Esto incluyeCloudControlExample
, el recurso que creó como parte de este tutorial, además de cualquier otro grupo de registro que ya exista en su cuenta. Además, en el caso de los recursos delAWS::Logs::LogGroup
, la información que loslist-resources
devuelven incluye las propiedades de cada recurso.{ "TypeName": "AWS::Logs::LogGroup", "ResourceDescriptions": [ { "Identifier": "CloudControlExample", "Properties": '{"RetentionInDays":180, "LogGroupName": "CloudControlExample", "Arn":"arn:aws:logs:us-west-2:090123456789:log-group:CloudControlExample:*"}' }, { "Identifier": "AnotherLogGroupResourceExample", "Properties": '{"RetentionInDays": 90, "LogGroupName": "AnotherLogGroupResourceExample", "Arn": "arn:aws:logs:us-west-2:011111111111:log-group:AnotherLogGroupResourceExample:*"}' }, ] }
-
Paso 5: Elimine un recurso
Por último, elimine el grupo de registro que desee quitar de este tutorial.
-
En AWS CLI, ejecute el
delete-resource
comando con el siguiente parámetro:-
Especifique el
type-name
comoAWS::Logs::LogGroup
. -
Especifique
identifier
como el valor de la propiedadidentifier
devuelto por el objetoProgressEvent
al crear el recurso. En este caso, es
, el nombre que especificó para el grupo de registro.CloudControlExample
$
aws cloudcontrol delete-resource --type-name AWS::Logs::LogGroup --identifier CloudControlExample
La API de control en la nube devuelve un objeto
ProgressEvent
que contiene información sobre el estado de su solicitud de operación de recursos.{ "ProgressEvent": { "EventTime": "2021-08-26T22:50:20.037Z", "TypeName": "AWS::Logs::LogGroup", "OperationStatus": "IN_PROGRESS", "Operation": "DELETE", "Identifier": "CloudControlExample", "RequestToken": "bb0ed9cd-84f9-44c2-b638-000000000000" } }
-
-
Para hacer un seguimiento del estado de su solicitud de operación de recursos, ejecute el comando
get-resource-request-status
con el siguiente parámetro:-
Especifique el parámetro
request-token
como el valor de la propiedadRequestToken
devuelto en el objetoProgressEvent
.
$
aws cloudcontrol get-resource-request-status --request-token 2026055d-f21c-4b50-bd40-111111111111
La API de control en la nube devuelve un objeto
ProgressEvent
que contiene información sobre el estado de su solicitud de operación de recursos. Cuando la API de control en la nube haya eliminado correctamente el recurso, establece el valorOperationStatus
enSUCCESS
.{ "ProgressEvent": { "EventTime": "2021-08-26T22:50:20.831Z", "TypeName": "AWS::Logs::LogGroup", "OperationStatus": "SUCCESS", "Operation": "DELETE", "Identifier": "CloudControlExample", "RequestToken": "bb0ed9cd-84f9-44c2-b638-000000000000" } }
-
Siguientes pasos
Para obtener información detallada y ejemplos sobre el uso de la API de Cloud Control con recursos, consultaOperaciones de API recursos de Cloud Control.