Etapa 1: preparar o aplicativo - AWS Hub de resiliência

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Etapa 1: preparar o aplicativo

Para preparar um aplicativo, você deve primeiro criar um aplicativo, atribuir uma política de resiliência e, em seguida, importar os recursos do aplicativo de suas fontes de entrada. Para obter mais informações sobre as APIs do AWS Resilience Hub usadas para preparar um aplicativo, consulte os seguintes tópicos:

Criar um aplicativo

Para criar um novo aplicativo no AWS Resilience Hub, você deve chamar a API do CreateApp e fornecer um nome de aplicativo exclusivo. Para obter mais informações sobre essa API, consulte https://docs.aws.amazon.com/resilience-hub/latest/APIReference/API_CreateApp.html.

O exemplo a seguir mostra como criar um novo aplicativo do newApp no AWS Resilience Hub usando a API do CreateApp.

Solicitação

aws resiliencehub create-app --name newApp

Resposta

{ "app": { "appArn": "<App_ARN>", "name": "newApp", "creationTime": "2022-10-26T19:48:00.434000+03:00", "status": "Active", "complianceStatus": "NotAssessed", "resiliencyScore": 0.0, "tags": {}, "assessmentSchedule": "Disabled" } }

Criar política de resiliência

Depois de criar o aplicativo, você deve criar uma política de resiliência que permita entender a postura de resiliência do seu aplicativo usando a API do CreateResiliencyPolicy. Para obter mais informações sobre essa API, consulte https://docs.aws.amazon.com/resilience-hub/latest/APIReference/API_CreateResiliencyPolicy.html.

O exemplo a seguir mostra como criar um novo aplicativo do newPolicy no AWS Resilience Hub usando a API do CreateResiliencyPolicy.

Solicitação

aws resiliencehub create-resiliency-policy \ --policy-name newPolicy --tier NonCritical \ --policy '{"AZ": {"rtoInSecs": 172800,"rpoInSecs": 86400}, \ "Hardware": {"rtoInSecs": 172800,"rpoInSecs": 86400}, \ "Software": {"rtoInSecs": 172800,"rpoInSecs": 86400}}'

Resposta

{ "policy": { "policyArn": "<Policy_ARN>", "policyName": "newPolicy", "policyDescription": "", "dataLocationConstraint": "AnyLocation", "tier": "NonCritical", "estimatedCostTier": "L1", "policy": { "AZ": { "rtoInSecs": 172800, "rpoInSecs": 86400 }, "Hardware": { "rtoInSecs": 172800, "rpoInSecs": 86400 }, "Software": { "rtoInSecs": 172800, "rpoInSecs": 86400 } }, "creationTime": "2022-10-26T20:48:05.946000+03:00", "tags": {} } }

Importar recursos de uma fonte de entrada e monitorar o status da importação

O AWS Resilience Hub fornece as seguintes APIs para importar recursos para seu aplicativo:

O exemplo a seguir mostra como importar recursos para seu aplicativo no AWS Resilience Hub usando a API do ImportResourcesToDraftAppVersion.

Solicitação

aws resiliencehub import-resources-to-draft-app-version \ --app-arn <App_ARN> \ --terraform-sources '[{"s3StateFileUrl": <S3_URI>}]'

Resposta

{ "appArn": "<App_ARN>", "appVersion": "draft", "sourceArns": [], "status": "Pending", "terraformSources": [ { "s3StateFileUrl": <S3_URI> } ] }

O exemplo a seguir mostra como adicionar recursos manualmente ao seu aplicativo do AWS Resilience Hub usando a API CreateAppVersionResource.

Solicitação

aws resiliencehub create-app-version-resource \ --app-arn <App_ARN> \ --resource-name "backup-efs" \ --logical-resource-id '{"identifier": "backup-efs"}' \ --physical-resource-id '<Physical_resource_id_ARN>' \ --resource-type AWS::EFS::FileSystem \ --app-components '["new-app-component"]'

Resposta

{ "appArn": "<App_ARN>", "appVersion": "draft", "physicalResource": { "resourceName": "backup-efs", "logicalResourceId": { "identifier": "backup-efs" }, "physicalResourceId": { "identifier": "<Physical_resource_id_ARN>", "type": "Arn" }, "resourceType": "AWS::EFS::FileSystem", "appComponents": [ { "name": "new-app-component", "type": "AWS::ResilienceHub::StorageAppComponent", "id": "new-app-component" } ] } }

O exemplo a seguir mostra como monitorar o status de importação de seus recursos do AWS Resilience Hub usando a API DescribeDraftAppVersionResourcesImportStatus.

Solicitação

aws resiliencehub describe-draft-app-version-resources-import-status \ --app-arn <App_ARN>

Resposta

{ "appArn": "<App_ARN>", "appVersion": "draft", "status": "Success", "statusChangeTime": "2022-10-26T19:55:18.471000+03:00" }

Publicar a versão preliminar do seu aplicativo e atribuir uma política de resiliência

Antes de executar uma avaliação, você deve primeiro publicar a versão preliminar do seu aplicativo e atribuir uma política de resiliência à versão lançada do seu aplicativo.

Publicar a versão preliminar do seu aplicativo e atribuir uma política de resiliência
  1. Publicar a versão preliminar do seu aplicativo, usar a API PublishAppVersion. Para obter mais informações sobre essa API, consulte https://docs.aws.amazon.com/resilience-hub/latest/APIReference/API_PublishAppVersion.html.

    O exemplo a seguir mostra como publicar a versão preliminar do aplicativo do AWS Resilience Hub usando a API PublishAppVersion.

    Solicitação

    aws resiliencehub publish-app-version \ --app-arn <App_ARN>
    Resposta

    { "appArn": "<App_ARN>", "appVersion": "release" }
  2. Aplique uma política de resiliência à versão lançada do seu aplicativo usando a API UpdateApp. Para obter mais informações sobre essa API, consulte https://docs.aws.amazon.com/resilience-hub/latest/APIReference/API_UpdateApp.html.

    O exemplo a seguir mostra como aplicar uma política de resiliência à versão lançada de um aplicativo do AWS Resilience Hub usando a API UpdateApp.

    Solicitação

    aws resiliencehub update-app \ --app-arn <App_ARN> \ --policy-arn <Policy_ARN>
    Resposta

    { "app": { "appArn": "<App_ARN>", "name": "newApp", "policyArn": "<Policy_ARN>", "creationTime": "2022-10-26T19:48:00.434000+03:00", "status": "Active", "complianceStatus": "NotAssessed", "resiliencyScore": 0.0, "tags": { "resourceArn": "<App_ARN>" }, "assessmentSchedule": "Disabled" } }