Come faccio a eseguire un aggiornamento o una sostituzione sul posto per la mia risorsa AWS::Elasticsearch::Domain in CloudFormation?

3 minuti di lettura
0

Come faccio a eseguire un aggiornamento o una sostituzione sul posto per la mia risorsa AWS::Elasticsearch::Domain in AWS CloudFormation?

Breve descrizione

Per abilitare un aggiornamento sul posto per la risorsa AWS። Elasticsearch። Domain, è necessario utilizzare un attributo updatePolicy chiamato enableVersionUpgrade nel modello CloudFormation. Vi è la possibilità di utilizzare la politica EnableVersionUpgrade per abilitare o disabilitare gli aggiornamenti sul posto per un dominio Amazon OpenSearch Service.

Prima di eseguire un aggiornamento sul posto o un aggiornamento sostitutivo, considerare quanto segue:

  • Amazon OpenSearch Service supporta gli aggiornamenti sul posto di OpenSearch Service per le versioni 5.1 o successive.
  • Se si modifica il valore della proprietà EngineVersion durante un aggiornamento dello stack, CloudFormation esegue un aggiornamento sostitutivo per un dominio del servizio OpenSearch. Quindi, CloudFormation crea un nuovo dominio.
  • Con un aggiornamento sul posto, è possibile tenere traccia della cronologia degli aggiornamenti del proprio dominio e mantenere lo stesso URL dell'endpoint del dominio. Non è necessario apportare modifiche alla configurazione dei servizi che si interfacciano con il dominio. Questi servizi avranno accesso alla nuova versione del proprio dominio.
  • Un aggiornamento sostitutivo non consente di tenere traccia della cronologia degli aggiornamenti. Il vecchio dominio viene sostituito con un nuovo dominio e un nuovo URL endpoint per quel dominio. Per consentire ai servizi che si interfacciano con il dominio di accedere al nuovo dominio, è necessario apportare modifiche alla configurazione dei servizi. Per ulteriori informazioni, consulta la sezione Creazione e gestione di domini del servizio OpenSearch.

Risoluzione

1.    Nel modello stack di CloudFormation, aggiungi la policy di aggiornamento EnableVersionUpgrade.

2.    Per consentire a CloudFormation di eseguire un aggiornamento sul posto, impostare enableVersionUpgrade su true e impostare ElasticSearchVersion sul valore della propria versione.

-oppure-

Per sostituire la risorsa AWS። Elasticsearch። Domain con una nuova risorsa AWS። Elasticsearch። Domain, impostare EnableVersionUpgrade su false o non specificare alcun valore.

Ad esempio, l'attributo updatePolicy è configurato per un aggiornamento sul posto nel seguente modello:

>AWSTemplateFormatVersion: 2010-09-09
Description: AWS CloudFormation sample template to launch an Amazon OpenSearch Service Domain. Performing an update using the same template and supplying a different ElasticsearchVersion will perform an in-place upgrade for an Elasticsearch Domain resource.
Parameters:
  ElasticsearchVersion:
    Type: String
    AllowedValues: ['5.6', '5.5', '5.3', '5.1', '6.8', '6.7', '6.5', '6.4', '6.3', '6.2', '6.0', '7.4', '7.1']
    Default: 5.3
    Description: The version of Amazon OpenSearch Service to use.
  InstanceTypeForDataNode:
    Type: String
    Default: m3.medium.elasticsearch
    Description: The instance type for your data nodes.
  NumberOfDataNodes:
    Type: String
    Default: 1
    Description: The number of data nodes (instances) to use in the OpenSearch Service domain.
Resources:
  ElasticSearchDomain:
    Type: AWS::Elasticsearch::Domain
    UpdatePolicy:
       EnableVersionUpgrade: true   ### In-place Upgrade
    Properties:
      ElasticsearchClusterConfig:
        InstanceCount: !Ref NumberOfDataNodes
        InstanceType: !Ref InstanceTypeForDataNode
      ElasticsearchVersion: !Ref ElasticsearchVersion

3.    Per completare l'aggiornamento sul posto o il processo di aggiornamento sostitutivo, aggiornare lo stack utilizzando la console CloudFormation o l'interfaccia a riga di comando AWS (AWS CLI).


Informazioni correlate

Aggiornamento dei domini Amazon OpenSearch Service

AWS UFFICIALE
AWS UFFICIALEAggiornata 2 anni fa